From b42fec34b833edee8008e3cf9181fca4598e42f7 Mon Sep 17 00:00:00 2001 From: lk11235 Date: Wed, 1 Mar 2023 15:56:29 -0500 Subject: [PATCH 001/281] Update HipPy to work with python3 --- .../scripts/makeHippyCampaign.py | 9 +++++++-- .../test/hippysubmitterscript.sh | 15 +++++++++++++++ 2 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 Alignment/HIPAlignmentAlgorithm/test/hippysubmitterscript.sh diff --git a/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py b/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py index 06324d036ca3a..395a1445393d9 100755 --- a/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py +++ b/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py @@ -26,7 +26,7 @@ def main(): args = parser.parse_args() if args.print_sys_path: - print repr(sys.path) + print(repr(sys.path)) return folder = os.path.join(basedir, args.subfolder, args.foldername) @@ -100,6 +100,11 @@ def main(): shutil.copy(os.path.join(HIPAlignmentAlgorithm, "test", "hippysubmittertemplate.sh"), "submit_template.sh") os.chmod("submit_template.sh", os.stat("submit_template.sh").st_mode | stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH) subprocess.check_call(["git", "add", "submit_template.sh"]) + + if not os.path.exists("submit_script.sh"): + shutil.copy(os.path.join(HIPAlignmentAlgorithm, "test", "hippysubmitterscript.sh"), "submit_script.sh") + os.chmod("submit_script.sh", os.stat("submit_script.sh").st_mode | stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH) + subprocess.check_call(["git", "add", "submit_script.sh"]) try: subprocess.check_output(["git", "diff", "--staged", "--quiet"]) @@ -128,7 +133,7 @@ def cd(newdir): def cmsenv(): output = subprocess.check_output(["scram", "ru", "-sh"]) - for line in output.split(";\n"): + for line in output.decode('utf8').split(";\n"): if not line.strip(): continue match1 = re.match(r'^export (\w*)="([^"]*)"$', line) match2 = re.match(r'^unset *((\w* *)*)$', line) diff --git a/Alignment/HIPAlignmentAlgorithm/test/hippysubmitterscript.sh b/Alignment/HIPAlignmentAlgorithm/test/hippysubmitterscript.sh new file mode 100644 index 0000000000000..97ef75d1e4b07 --- /dev/null +++ b/Alignment/HIPAlignmentAlgorithm/test/hippysubmitterscript.sh @@ -0,0 +1,15 @@ +#! /bin/bash + +hipName="$(grep -m 1 "alignmentname=" $1 | cut -d= -f2)" + +if [ -z "$hipName" ] +then + echo "Value for 'alignmentname' not found in template. Please check your submission template." +else + nohup ./$1 >> ../$hipName.log 2>&1 & + echo $hipName $! >> ../pid.nohup + echo "Please follow the log in '../$hipName.log'. To track progress live, use 'tail -f ../$hipName.log'." + echo "The nohup job PID is appended to '../pid.nohup' in case the submission should be killed." + echo "You can also use 'ps -ef | grep submit_' to find PIDs of currently running alignments." +fi + From 43e8f5fdb974889dcece640972df7325a62bb61f Mon Sep 17 00:00:00 2001 From: Ivan Razumov Date: Thu, 23 Mar 2023 16:47:33 +0100 Subject: [PATCH 002/281] Add tests for (py3-)torch --- .../PythonAnalysis/test/BuildFile.xml | 9 +++ PhysicsTools/PythonAnalysis/test/testTorch.cc | 64 +++++++++++++++++++ .../PythonAnalysis/test/test_torch.py | 55 ++++++++++++++++ 3 files changed, 128 insertions(+) create mode 100644 PhysicsTools/PythonAnalysis/test/testTorch.cc create mode 100755 PhysicsTools/PythonAnalysis/test/test_torch.py diff --git a/PhysicsTools/PythonAnalysis/test/BuildFile.xml b/PhysicsTools/PythonAnalysis/test/BuildFile.xml index eea1fdc2970b1..0b2465e8227e5 100644 --- a/PhysicsTools/PythonAnalysis/test/BuildFile.xml +++ b/PhysicsTools/PythonAnalysis/test/BuildFile.xml @@ -14,6 +14,10 @@ + + + + @@ -139,6 +143,11 @@ + + + + + diff --git a/PhysicsTools/PythonAnalysis/test/testTorch.cc b/PhysicsTools/PythonAnalysis/test/testTorch.cc new file mode 100644 index 0000000000000..ae38f0f790393 --- /dev/null +++ b/PhysicsTools/PythonAnalysis/test/testTorch.cc @@ -0,0 +1,64 @@ +// Based on https://github.com/Maverobot/libtorch_examples/blob/master/src/simple_optimization_example.cpp +#include +#include +#include + +constexpr double kLearningRate = 0.001; +constexpr int kMaxIterations = 100000; + +void native_run(double minimal) { + // Initial x value + auto x = torch::randn({1, 1}, torch::requires_grad(true)); + + for (size_t t = 0; t < kMaxIterations; t++) { + // Expression/value to be minimized + auto y = (x - minimal) * (x - minimal); + if (y.item() < 1e-3) { + break; + } + // Calculate gradient + y.backward(); + + // Step x value without considering gradient + torch::NoGradGuard no_grad_guard; + x -= kLearningRate * x.grad(); + + // Reset the gradient of variable x + x.mutable_grad().reset(); + } + + std::cout << "[native] Actual minimal x value: " << minimal << ", calculated optimal x value: " << x.item() + << std::endl; +} + +void optimizer_run(double minimal) { + // Initial x value + std::vector x; + x.push_back(torch::randn({1, 1}, torch::requires_grad(true))); + auto opt = torch::optim::SGD(x, torch::optim::SGDOptions(kLearningRate)); + + for (size_t t = 0; t < kMaxIterations; t++) { + // Expression/value to be minimized + auto y = (x[0] - minimal) * (x[0] - minimal); + if (y.item() < 1e-3) { + break; + } + // Calculate gradient + y.backward(); + + // Step x value without considering gradient + opt.step(); + // Reset the gradient of variable x + opt.zero_grad(); + } + + std::cout << "[optimizer] Actual minimal x value: " << minimal + << ", calculated optimal x value: " << x[0].item() << std::endl; +} + +// optimize y = (x - 10)^2 +int main(int argc, char* argv[]) { + native_run(0.01); + optimizer_run(0.01); + return 0; +} diff --git a/PhysicsTools/PythonAnalysis/test/test_torch.py b/PhysicsTools/PythonAnalysis/test/test_torch.py new file mode 100755 index 0000000000000..8726982e2c276 --- /dev/null +++ b/PhysicsTools/PythonAnalysis/test/test_torch.py @@ -0,0 +1,55 @@ +#!/usr/bin/env python3 + +import torch +import math +import sys + + +dtype = torch.float +device = torch.device(sys.argv[1]) + +# Create random input and output data +try: + x = torch.linspace(-math.pi, math.pi, 2000, device=device, dtype=dtype) +except RuntimeError as e: + if 'cuda' in str(e).lower(): + print("CUDA-related error - is CUDA device available?") + print(str(e)) + exit(0) + else: + raise e + +y = torch.sin(x) + +# Randomly initialize weights +a = torch.randn((), device=device, dtype=dtype) +b = torch.randn((), device=device, dtype=dtype) +c = torch.randn((), device=device, dtype=dtype) +d = torch.randn((), device=device, dtype=dtype) + +learning_rate = 1e-6 +for t in range(2000): + # Forward pass: compute predicted y + y_pred = a + b * x + c * x ** 2 + d * x ** 3 + + # Compute and print loss + loss = (y_pred - y).pow(2).sum().item() + if t % 100 == 99: + print(t, loss) + + # Backprop to compute gradients of a, b, c, d with respect to loss + grad_y_pred = 2.0 * (y_pred - y) + grad_a = grad_y_pred.sum() + grad_b = (grad_y_pred * x).sum() + grad_c = (grad_y_pred * x ** 2).sum() + grad_d = (grad_y_pred * x ** 3).sum() + + # Update weights using gradient descent + a -= learning_rate * grad_a + b -= learning_rate * grad_b + c -= learning_rate * grad_c + d -= learning_rate * grad_d + + +print(f'Result: y = {a.item()} + {b.item()} x + {c.item()} x^2 + {d.item()} x^3') + From 070ac49627d09e1b5da25eb7d0d9afd34a4db38c Mon Sep 17 00:00:00 2001 From: iarspider Date: Thu, 20 Apr 2023 12:02:07 +0200 Subject: [PATCH 003/281] Update BuildFile.xml Profit from cms-sw/cmssw#41340 --- PhysicsTools/PythonAnalysis/test/BuildFile.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/PhysicsTools/PythonAnalysis/test/BuildFile.xml b/PhysicsTools/PythonAnalysis/test/BuildFile.xml index 0b2465e8227e5..b913a38ec10f5 100644 --- a/PhysicsTools/PythonAnalysis/test/BuildFile.xml +++ b/PhysicsTools/PythonAnalysis/test/BuildFile.xml @@ -15,9 +15,9 @@ - - - + + + From cb7022b42d06322dac134a72e59946abca87bbb8 Mon Sep 17 00:00:00 2001 From: mmusich Date: Mon, 7 Aug 2023 11:05:17 +0200 Subject: [PATCH 004/281] change title per resonance type --- .../Alignment/python/ALCARECOTkAlDQM_cff.py | 22 +++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/DQMOffline/Alignment/python/ALCARECOTkAlDQM_cff.py b/DQMOffline/Alignment/python/ALCARECOTkAlDQM_cff.py index 1f61d6dfadb88..fdeb39277793c 100644 --- a/DQMOffline/Alignment/python/ALCARECOTkAlDQM_cff.py +++ b/DQMOffline/Alignment/python/ALCARECOTkAlDQM_cff.py @@ -78,7 +78,11 @@ muonTracks = 'ALCARECO'+__trackCollName, vertices = 'offlinePrimaryVertices', FolderName = "AlCaReco/"+__selectionName, - maxSVdist = 50 + maxSVdist = 50, + SVDistConfig = dict(maxDeltaEta = 3.7, title = 'PV - Z Vertex distance'), + SVDistSigConfig = dict(maxDeltaEta = 3.7, title = 'PV - Z Vertex distance significance'), + SVDist3DConfig = dict(maxDeltaEta = 3.7, title = 'PV - Z Vertex 3D distance'), + SVDist3DSigConfig = dict(maxDeltaEta = 3.7, title = 'PV - Z Vertex 3D distance significance') ) ALCARECOTkAlDiMuonMassBiasDQM = DQMOffline.Alignment.DiMuonMassBiasMonitor_cfi.DiMuonMassBiasMonitor.clone( @@ -166,10 +170,10 @@ FolderName = "AlCaReco/"+__selectionName, maxSVdist = 50, CosPhi3DConfig = dict(maxDeltaEta = 1.3), - SVDistConfig = dict(maxDeltaEta = 1.3), - SVDistSigConfig = dict(maxDeltaEta = 1.3), - SVDist3DConfig = dict(maxDeltaEta = 1.3), - SVDist3DSigConfig = dict(maxDeltaEta = 1.3) + SVDistConfig = dict(maxDeltaEta = 1.3, title = 'PV - J/#psi Vertex distance'), + SVDistSigConfig = dict(maxDeltaEta = 1.3, title = 'PV - J/#psi Vertex distance significance'), + SVDist3DConfig = dict(maxDeltaEta = 1.3, title = 'PV - J/#psi Vertex 3D distance'), + SVDist3DSigConfig = dict(maxDeltaEta = 1.3, title = 'PV - J/#psi Vertex 3D distance significance') ) ALCARECOTkAlJpsiMassBiasDQM = DQMOffline.Alignment.DiMuonMassBiasMonitor_cfi.DiMuonMassBiasMonitor.clone( @@ -241,10 +245,10 @@ FolderName = "AlCaReco/"+__selectionName, maxSVdist = 50, CosPhi3DConfig = dict(maxDeltaEta = 1.6), - SVDistConfig = dict(maxDeltaEta = 1.6), - SVDistSigConfig = dict(maxDeltaEta = 1.6), - SVDist3DConfig = dict(maxDeltaEta = 1.6), - SVDist3DSigConfig = dict(maxDeltaEta = 1.6) + SVDistConfig = dict(maxDeltaEta = 1.6, title = 'PV - #Upsilon Vertex distance'), + SVDistSigConfig = dict(maxDeltaEta = 1.6, title = 'PV - #Upsilon Vertex distance significance'), + SVDist3DConfig = dict(maxDeltaEta = 1.6, title = 'PV - #Upsilon Vertex 3D distance'), + SVDist3DSigConfig = dict(maxDeltaEta = 1.6, title = 'PV - #Upsilon Vertex 3D distance significance') ) ALCARECOTkAlUpsilonMassBiasDQM = DQMOffline.Alignment.DiMuonMassBiasMonitor_cfi.DiMuonMassBiasMonitor.clone( From 7a6f2959fefa7d9bd70f5667520d51220af7e424 Mon Sep 17 00:00:00 2001 From: lk11235 Date: Tue, 22 Aug 2023 07:41:04 -0400 Subject: [PATCH 005/281] Update common_cff_py.txt Fix parentheses in print statement --- Alignment/HIPAlignmentAlgorithm/python/common_cff_py.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Alignment/HIPAlignmentAlgorithm/python/common_cff_py.txt b/Alignment/HIPAlignmentAlgorithm/python/common_cff_py.txt index 8f547eef1d3ab..786682f1cf804 100644 --- a/Alignment/HIPAlignmentAlgorithm/python/common_cff_py.txt +++ b/Alignment/HIPAlignmentAlgorithm/python/common_cff_py.txt @@ -176,7 +176,7 @@ for sra in SelectorRigidAlignables: if not tmpstrsrafound: tmprigidalignables.append(sra) else: - print "{} is already in the non-rigid alignables list. Omitting it in the rigid structures to align.".format(tmpstrsra) + print("{} is already in the non-rigid alignables list. Omitting it in the rigid structures to align.").format(tmpstrsra) SelectorRigidAlignables = tmprigidalignables process.AlignmentProducer.ParameterBuilder.SelectorBowed = cms.PSet( From 139ee0f78e0e570c56a31bbcb6f9dee40dc25699 Mon Sep 17 00:00:00 2001 From: lk11235 Date: Tue, 22 Aug 2023 07:44:34 -0400 Subject: [PATCH 006/281] Update makeHippyCampaign.py Added basedir option with default value pointing to the ALCA_TRACKERALIGN2 area --- .../scripts/makeHippyCampaign.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py b/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py index 395a1445393d9..13fdc03e4fc45 100755 --- a/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py +++ b/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py @@ -11,8 +11,6 @@ import subprocess import sys -basedir = "/afs/cern.ch/cms/CAF/CMSALCA/ALCA_TRACKERALIGN2/HipPy" - thisfile = os.path.abspath(__file__) def main(): @@ -20,11 +18,19 @@ def main(): parser.add_argument("foldername", help="folder name for the campaign. Example: CRUZET20xy") parser.add_argument("--cmssw", default=os.environ["CMSSW_VERSION"]) parser.add_argument("--scram-arch", default=os.environ["SCRAM_ARCH"]) - parser.add_argument("--subfolder", default="", help="subfolder within "+basedir+" to make 'foldername' in.") + parser.add_argument("--subfolder", default="", help="subfolder within to make 'foldername' in.") parser.add_argument("--merge-topic", action="append", help="things to cms-merge-topic within the CMSSW release created", default=[]) parser.add_argument("--print-sys-path", action="store_true", help=argparse.SUPPRESS) #internal, don't use this + parser.add_argument('--basedir', default="/afs/cern.ch/cms/CAF/CMSALCA/ALCA_TRACKERALIGN2/HipPy") args = parser.parse_args() + basedir = args.basedir + if not os.path.exists(basedir): + raise FileExistsError("Base Directory does not exist!") + + if basedir[-1] == '/': + basedir = basedir[:-1] #No trailing slashed allowed + if args.print_sys_path: print(repr(sys.path)) return @@ -106,6 +112,8 @@ def main(): os.chmod("submit_script.sh", os.stat("submit_script.sh").st_mode | stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH) subprocess.check_call(["git", "add", "submit_script.sh"]) + print("Dumped files into", folder) + try: subprocess.check_output(["git", "diff", "--staged", "--quiet"]) except subprocess.CalledProcessError: From db7ec98f325a60d8a6fe8bc53cdcb638b1cb6102 Mon Sep 17 00:00:00 2001 From: lk11235 Date: Sun, 27 Aug 2023 12:58:48 -0400 Subject: [PATCH 007/281] Update common_cff_py.txt Corrected parentheses on print function --- Alignment/HIPAlignmentAlgorithm/python/common_cff_py.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Alignment/HIPAlignmentAlgorithm/python/common_cff_py.txt b/Alignment/HIPAlignmentAlgorithm/python/common_cff_py.txt index 786682f1cf804..09abda64c3411 100644 --- a/Alignment/HIPAlignmentAlgorithm/python/common_cff_py.txt +++ b/Alignment/HIPAlignmentAlgorithm/python/common_cff_py.txt @@ -176,7 +176,7 @@ for sra in SelectorRigidAlignables: if not tmpstrsrafound: tmprigidalignables.append(sra) else: - print("{} is already in the non-rigid alignables list. Omitting it in the rigid structures to align.").format(tmpstrsra) + print("{} is already in the non-rigid alignables list. Omitting it in the rigid structures to align.".format(tmpstrsra)) SelectorRigidAlignables = tmprigidalignables process.AlignmentProducer.ParameterBuilder.SelectorBowed = cms.PSet( From 68b51a14c284d1dd7dbfa8012deb78cafed5b3f9 Mon Sep 17 00:00:00 2001 From: lk11235 Date: Sun, 27 Aug 2023 13:06:38 -0400 Subject: [PATCH 008/281] Update makeHippyCampaign.py minor fix to a comment on the input arguments --- Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py b/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py index 13fdc03e4fc45..3cedd300a5497 100755 --- a/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py +++ b/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py @@ -18,7 +18,7 @@ def main(): parser.add_argument("foldername", help="folder name for the campaign. Example: CRUZET20xy") parser.add_argument("--cmssw", default=os.environ["CMSSW_VERSION"]) parser.add_argument("--scram-arch", default=os.environ["SCRAM_ARCH"]) - parser.add_argument("--subfolder", default="", help="subfolder within to make 'foldername' in.") + parser.add_argument("--subfolder", default="", help="subfolder within basedir to make 'foldername' in.") parser.add_argument("--merge-topic", action="append", help="things to cms-merge-topic within the CMSSW release created", default=[]) parser.add_argument("--print-sys-path", action="store_true", help=argparse.SUPPRESS) #internal, don't use this parser.add_argument('--basedir', default="/afs/cern.ch/cms/CAF/CMSALCA/ALCA_TRACKERALIGN2/HipPy") From 43a61c75d1b07079250c8158223a6c54b45ddd79 Mon Sep 17 00:00:00 2001 From: lk11235 Date: Sun, 27 Aug 2023 13:08:11 -0400 Subject: [PATCH 009/281] Update makeHippyCampaign.py another minor language edit, adding a space to a printed message --- Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py b/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py index 3cedd300a5497..a0893443359e3 100755 --- a/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py +++ b/Alignment/HIPAlignmentAlgorithm/scripts/makeHippyCampaign.py @@ -112,7 +112,7 @@ def main(): os.chmod("submit_script.sh", os.stat("submit_script.sh").st_mode | stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH) subprocess.check_call(["git", "add", "submit_script.sh"]) - print("Dumped files into", folder) + print("Dumped files into ", folder) try: subprocess.check_output(["git", "diff", "--staged", "--quiet"]) From a09ea59d669e06f8a62c805688aae6c8f433b157 Mon Sep 17 00:00:00 2001 From: lk11235 Date: Sun, 27 Aug 2023 13:59:18 -0400 Subject: [PATCH 010/281] Update hippysubmittertemplate.sh minor fix for tmux compatibility --- Alignment/HIPAlignmentAlgorithm/test/hippysubmittertemplate.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Alignment/HIPAlignmentAlgorithm/test/hippysubmittertemplate.sh b/Alignment/HIPAlignmentAlgorithm/test/hippysubmittertemplate.sh index 3468295a195a9..9c2bf4ef8c32b 100644 --- a/Alignment/HIPAlignmentAlgorithm/test/hippysubmittertemplate.sh +++ b/Alignment/HIPAlignmentAlgorithm/test/hippysubmittertemplate.sh @@ -6,7 +6,7 @@ set -euo pipefail voms-proxy-info | grep timeleft | grep -v -q 00:00:00 || (echo 'no proxy'; exit 1) -(echo $STY > /dev/null) || (echo "run this on a screen"; exit 1) +(echo $TMUX > /dev/null) || (echo "run this on a screen"; exit 1) #hpnumber= hptype=hp #or sm From 663e50f7ef00d39281269bff8e728b36af39dc4e Mon Sep 17 00:00:00 2001 From: mitaylor Date: Wed, 18 Oct 2023 00:16:07 +0200 Subject: [PATCH 011/281] Add caloParams v0_4_2 changing jet seed threshold from 4->2.5 and v0_4_3 changing the UCC centrality intervals --- .../Configuration/python/customiseSettings.py | 8 ++ .../python/caloParamsHI_2023_v0_4_2_cfi.py | 128 ++++++++++++++++++ .../python/caloParamsHI_2023_v0_4_3_cfi.py | 128 ++++++++++++++++++ 3 files changed, 264 insertions(+) create mode 100644 L1Trigger/L1TCalorimeter/python/caloParamsHI_2023_v0_4_2_cfi.py create mode 100644 L1Trigger/L1TCalorimeter/python/caloParamsHI_2023_v0_4_3_cfi.py diff --git a/L1Trigger/Configuration/python/customiseSettings.py b/L1Trigger/Configuration/python/customiseSettings.py index 5aa071788bfe2..bb253774c073b 100644 --- a/L1Trigger/Configuration/python/customiseSettings.py +++ b/L1Trigger/Configuration/python/customiseSettings.py @@ -2,6 +2,14 @@ import os.path import FWCore.ParameterSet.Config as cms +def L1TSettingsToCaloParamsHI_2023_v0_4_3(process): + process.load("L1Trigger.L1TCalorimeter.caloParamsHI_2023_v0_4_3_cfi") + return process + +def L1TSettingsToCaloParamsHI_2023_v0_4_2(process): + process.load("L1Trigger.L1TCalorimeter.caloParamsHI_2023_v0_4_2_cfi") + return process + def L1TSettingsToCaloParamsHI_2023_v0_4_1(process): process.load("L1Trigger.L1TCalorimeter.caloParamsHI_2023_v0_4_1_cfi") return process diff --git a/L1Trigger/L1TCalorimeter/python/caloParamsHI_2023_v0_4_2_cfi.py b/L1Trigger/L1TCalorimeter/python/caloParamsHI_2023_v0_4_2_cfi.py new file mode 100644 index 0000000000000..f769df6d05dbd --- /dev/null +++ b/L1Trigger/L1TCalorimeter/python/caloParamsHI_2023_v0_4_2_cfi.py @@ -0,0 +1,128 @@ +import FWCore.ParameterSet.Config as cms + +from L1Trigger.L1TCalorimeter.caloParams_cfi import caloParamsSource +import L1Trigger.L1TCalorimeter.caloParams_cfi +caloStage2Params = L1Trigger.L1TCalorimeter.caloParams_cfi.caloParams.clone( + + # EG + egEtaCut = 24, + egHcalThreshold = 0., + egTrimmingLUTFile = "L1Trigger/L1TCalorimeter/data/egTrimmingLUT_10_v16.01.19.txt", + egHOverEcutBarrel = 1, + egHOverEcutEndcap = 1, + egBypassExtHOverE = 1, + egBypassShape = 1, + egBypassECALFG = 1, + + egMaxHOverELUTFile = "L1Trigger/L1TCalorimeter/data/HoverEIdentification_0.995_v15.12.23.txt", + egCompressShapesLUTFile = "L1Trigger/L1TCalorimeter/data/egCompressLUT_v4.txt", + egShapeIdType = "compressed", + egShapeIdLUTFile = "L1Trigger/L1TCalorimeter/data/shapeIdentification_adapt0.99_compressedieta_compressedE_compressedshape_v15.12.08.txt", #Not used any more in the current emulator version, merged with calibration LUT + + egIsolationType = "compressed", + egIsoLUTFile = "L1Trigger/L1TCalorimeter/data/EG_Iso_LUT_Flat_WP_v2_Tight1358_20p0_0p7_40p0_v1_APR23.txt", + egIsoLUTFile2 = "L1Trigger/L1TCalorimeter/data/EG_Iso_LUT_Flat_WP_v2_Loose610_10p0_0p7_40p0_v1_APR23.txt", + + egIsoVetoNrTowersPhi = 2, + egPUSParams = cms.vdouble(1,4,32), #Isolation window in firmware goes up to abs(ieta)=32 for now + egCalibrationType = "compressed", + egCalibrationVersion = 0, + egCalibrationLUTFile = "L1Trigger/L1TCalorimeter/data/EG_Calibration_LUT_correctedEtCalibLUT_v1_APR2023.txt", + + # Tau + isoTauEtaMax = 25, + tauSeedThreshold = 0., + tauIsoLUTFile = "L1Trigger/L1TCalorimeter/data/Tau_Iso_LUT_2023_calibThr1p7_V2gs_effMin0p9_eMin16_eMax60.txt", + tauIsoLUTFile2 = "L1Trigger/L1TCalorimeter/data/Tau_Iso_LUT_2023_calibThr1p7_V2gs_effMin0p9_eMin16_eMax60.txt", + tauCalibrationLUTFile = "L1Trigger/L1TCalorimeter/data/Tau_Cal_LUT_2023_calibThr1p7_V2.txt", + tauCompressLUTFile = "L1Trigger/L1TCalorimeter/data/tauCompressAllLUT_12bit_v3.txt", + tauPUSParams = [1,4,32], + + # jets + jetSeedThreshold = 2.5, + jetPUSType = "PhiRing1", + jetPUSUsePhiRing = 1, + + # Calibration options + jetCalibrationType = "LUT", + jetCompressPtLUTFile = "L1Trigger/L1TCalorimeter/data/lut_pt_compress_2017v1.txt", + jetCompressEtaLUTFile = "L1Trigger/L1TCalorimeter/data/lut_eta_compress_2017v1.txt", + jetCalibrationLUTFile = "L1Trigger/L1TCalorimeter/data/lut_calib_2023v0_ECALZS_PhiRing.txt", + + + # sums: 0=ET, 1=HT, 2=MET, 3=MHT + etSumEtaMin = [1, 1, 1, 1, 1], + etSumEtaMax = [28, 26, 28, 26, 28], + etSumEtThreshold = [0., 30., 0., 30., 0.], # only 2nd (HT) and 4th (MHT) values applied + etSumMetPUSType = "LUT", # et threshold from this LUT supercedes et threshold in line above + etSumBypassEttPUS = 1, + etSumBypassEcalSumPUS = 1, + + etSumMetPUSLUTFile = "L1Trigger/L1TCalorimeter/data/metPumLUT_2023v0_puppiMet_fit.txt", + + etSumCentralityUpper = [5.5, 37.0, 182.5, 502.5, 1244.0, 6000.0, 6000.0, 65535.0], + etSumCentralityLower = [0.0, 5.0, 28.5, 148.0, 427.0, 4662.5, 4810.5, 65535.0], + + # Layer 1 SF + layer1ECalScaleETBins = cms.vint32([3, 6, 9, 12, 15, 20, 25, 30, 35, 40, 45, 55, 70, 256]), + layer1ECalScaleFactors = cms.vdouble([ + 1.12, 1.13, 1.13, 1.12, 1.12, 1.12, 1.13, 1.12, 1.13, 1.12, 1.13, 1.13, 1.14, 1.13, 1.13, 1.13, 1.14, 1.26, 1.11, 1.20, 1.21, 1.22, 1.19, 1.20, 1.19, 0.00, 0.00, 0.00, + 1.12, 1.13, 1.13, 1.12, 1.12, 1.12, 1.13, 1.12, 1.13, 1.12, 1.13, 1.13, 1.14, 1.13, 1.13, 1.13, 1.14, 1.26, 1.11, 1.20, 1.21, 1.22, 1.19, 1.20, 1.19, 1.22, 0.00, 0.00, + 1.08, 1.09, 1.08, 1.08, 1.11, 1.08, 1.09, 1.09, 1.09, 1.09, 1.15, 1.09, 1.10, 1.10, 1.10, 1.10, 1.10, 1.23, 1.07, 1.15, 1.14, 1.16, 1.14, 1.14, 1.15, 1.14, 1.14, 0.00, + 1.06, 1.06, 1.06, 1.06, 1.06, 1.06, 1.06, 1.06, 1.07, 1.07, 1.07, 1.07, 1.07, 1.08, 1.07, 1.09, 1.08, 1.17, 1.06, 1.11, 1.10, 1.13, 1.10, 1.10, 1.11, 1.11, 1.11, 1.09, + 1.04, 1.05, 1.04, 1.05, 1.04, 1.05, 1.06, 1.06, 1.05, 1.05, 1.05, 1.06, 1.06, 1.06, 1.06, 1.06, 1.07, 1.15, 1.04, 1.09, 1.09, 1.10, 1.09, 1.09, 1.10, 1.10, 1.10, 1.08, + 1.04, 1.03, 1.04, 1.04, 1.04, 1.04, 1.04, 1.04, 1.04, 1.04, 1.04, 1.04, 1.05, 1.06, 1.04, 1.05, 1.05, 1.13, 1.03, 1.07, 1.08, 1.08, 1.08, 1.07, 1.07, 1.09, 1.08, 1.07, + 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.04, 1.04, 1.05, 1.05, 1.05, 1.05, 1.05, 1.12, 1.03, 1.06, 1.06, 1.08, 1.07, 1.07, 1.06, 1.08, 1.07, 1.06, + 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.04, 1.04, 1.04, 1.04, 1.04, 1.03, 1.10, 1.02, 1.05, 1.06, 1.06, 1.06, 1.06, 1.05, 1.06, 1.06, 1.06, + 1.02, 1.02, 1.02, 1.02, 1.02, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.04, 1.03, 1.03, 1.02, 1.07, 1.02, 1.04, 1.04, 1.05, 1.06, 1.05, 1.05, 1.06, 1.06, 1.05, + 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.09, 1.02, 1.04, 1.05, 1.05, 1.05, 1.05, 1.04, 1.05, 1.06, 1.05, + 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.03, 1.03, 1.03, 1.03, 1.03, 1.08, 1.01, 1.04, 1.04, 1.05, 1.05, 1.04, 1.04, 1.05, 1.06, 1.05, + 1.01, 1.01, 1.01, 1.01, 1.01, 1.01, 1.02, 1.01, 1.02, 1.02, 1.02, 1.02, 1.03, 1.03, 1.03, 1.03, 1.03, 1.06, 1.01, 1.04, 1.04, 1.05, 1.04, 1.03, 1.03, 1.04, 1.05, 1.04, + 1.01, 1.00, 1.01, 1.01, 1.01, 1.01, 1.01, 1.00, 1.01, 1.02, 1.01, 1.01, 1.02, 1.02, 1.02, 1.02, 1.03, 1.04, 1.01, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.00, 1.01, + 1.02, 1.00, 1.00, 1.02, 1.00, 1.01, 1.01, 1.00, 1.00, 1.02, 1.01, 1.01, 1.02, 1.02, 1.02, 1.02, 1.02, 1.04, 1.01, 1.03, 1.03, 1.03, 1.03, 1.02, 1.02, 1.02, 1.00, 1.01 + ]), + + layer1HCalScaleETBins = cms.vint32([1, 6, 9, 12, 15, 20, 25, 30, 35, 40, 45, 55, 70, 256]), + layer1HCalScaleFactors = cms.vdouble([ + 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, # ZERO-SUPPRESS <1GeV (i.e. 0.5GeV) IN THE BARREL ONLY (ieta<=15 == eta<=1.305) + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 + ]), + + layer1HFScaleETBins = cms.vint32([6, 9, 12, 15, 20, 25, 30, 35, 40, 45, 55, 70, 256]), + layer1HFScaleFactors = cms.vdouble([ + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 + ]), + + # HCal FB LUT + layer1HCalFBLUTUpper = cms.vuint32([ + 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, + ]), + + layer1HCalFBLUTLower = cms.vuint32([ + 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, + ]) +) diff --git a/L1Trigger/L1TCalorimeter/python/caloParamsHI_2023_v0_4_3_cfi.py b/L1Trigger/L1TCalorimeter/python/caloParamsHI_2023_v0_4_3_cfi.py new file mode 100644 index 0000000000000..b229997cb4d82 --- /dev/null +++ b/L1Trigger/L1TCalorimeter/python/caloParamsHI_2023_v0_4_3_cfi.py @@ -0,0 +1,128 @@ +import FWCore.ParameterSet.Config as cms + +from L1Trigger.L1TCalorimeter.caloParams_cfi import caloParamsSource +import L1Trigger.L1TCalorimeter.caloParams_cfi +caloStage2Params = L1Trigger.L1TCalorimeter.caloParams_cfi.caloParams.clone( + + # EG + egEtaCut = 24, + egHcalThreshold = 0., + egTrimmingLUTFile = "L1Trigger/L1TCalorimeter/data/egTrimmingLUT_10_v16.01.19.txt", + egHOverEcutBarrel = 1, + egHOverEcutEndcap = 1, + egBypassExtHOverE = 1, + egBypassShape = 1, + egBypassECALFG = 1, + + egMaxHOverELUTFile = "L1Trigger/L1TCalorimeter/data/HoverEIdentification_0.995_v15.12.23.txt", + egCompressShapesLUTFile = "L1Trigger/L1TCalorimeter/data/egCompressLUT_v4.txt", + egShapeIdType = "compressed", + egShapeIdLUTFile = "L1Trigger/L1TCalorimeter/data/shapeIdentification_adapt0.99_compressedieta_compressedE_compressedshape_v15.12.08.txt", #Not used any more in the current emulator version, merged with calibration LUT + + egIsolationType = "compressed", + egIsoLUTFile = "L1Trigger/L1TCalorimeter/data/EG_Iso_LUT_Flat_WP_v2_Tight1358_20p0_0p7_40p0_v1_APR23.txt", + egIsoLUTFile2 = "L1Trigger/L1TCalorimeter/data/EG_Iso_LUT_Flat_WP_v2_Loose610_10p0_0p7_40p0_v1_APR23.txt", + + egIsoVetoNrTowersPhi = 2, + egPUSParams = cms.vdouble(1,4,32), #Isolation window in firmware goes up to abs(ieta)=32 for now + egCalibrationType = "compressed", + egCalibrationVersion = 0, + egCalibrationLUTFile = "L1Trigger/L1TCalorimeter/data/EG_Calibration_LUT_correctedEtCalibLUT_v1_APR2023.txt", + + # Tau + isoTauEtaMax = 25, + tauSeedThreshold = 0., + tauIsoLUTFile = "L1Trigger/L1TCalorimeter/data/Tau_Iso_LUT_2023_calibThr1p7_V2gs_effMin0p9_eMin16_eMax60.txt", + tauIsoLUTFile2 = "L1Trigger/L1TCalorimeter/data/Tau_Iso_LUT_2023_calibThr1p7_V2gs_effMin0p9_eMin16_eMax60.txt", + tauCalibrationLUTFile = "L1Trigger/L1TCalorimeter/data/Tau_Cal_LUT_2023_calibThr1p7_V2.txt", + tauCompressLUTFile = "L1Trigger/L1TCalorimeter/data/tauCompressAllLUT_12bit_v3.txt", + tauPUSParams = [1,4,32], + + # jets + jetSeedThreshold = 2.5, + jetPUSType = "PhiRing1", + jetPUSUsePhiRing = 1, + + # Calibration options + jetCalibrationType = "LUT", + jetCompressPtLUTFile = "L1Trigger/L1TCalorimeter/data/lut_pt_compress_2017v1.txt", + jetCompressEtaLUTFile = "L1Trigger/L1TCalorimeter/data/lut_eta_compress_2017v1.txt", + jetCalibrationLUTFile = "L1Trigger/L1TCalorimeter/data/lut_calib_2023v0_ECALZS_PhiRing.txt", + + + # sums: 0=ET, 1=HT, 2=MET, 3=MHT + etSumEtaMin = [1, 1, 1, 1, 1], + etSumEtaMax = [28, 26, 28, 26, 28], + etSumEtThreshold = [0., 30., 0., 30., 0.], # only 2nd (HT) and 4th (MHT) values applied + etSumMetPUSType = "LUT", # et threshold from this LUT supercedes et threshold in line above + etSumBypassEttPUS = 1, + etSumBypassEcalSumPUS = 1, + + etSumMetPUSLUTFile = "L1Trigger/L1TCalorimeter/data/metPumLUT_2023v0_puppiMet_fit.txt", + + etSumCentralityUpper = [5.5, 37.0, 182.5, 502.5, 1244.0, 6000.0, 6000.0, 65535.0], + etSumCentralityLower = [0.0, 5.0, 28.5, 148.0, 427.0, 4547.0, 4736.0, 65535.0], + + # Layer 1 SF + layer1ECalScaleETBins = cms.vint32([3, 6, 9, 12, 15, 20, 25, 30, 35, 40, 45, 55, 70, 256]), + layer1ECalScaleFactors = cms.vdouble([ + 1.12, 1.13, 1.13, 1.12, 1.12, 1.12, 1.13, 1.12, 1.13, 1.12, 1.13, 1.13, 1.14, 1.13, 1.13, 1.13, 1.14, 1.26, 1.11, 1.20, 1.21, 1.22, 1.19, 1.20, 1.19, 0.00, 0.00, 0.00, + 1.12, 1.13, 1.13, 1.12, 1.12, 1.12, 1.13, 1.12, 1.13, 1.12, 1.13, 1.13, 1.14, 1.13, 1.13, 1.13, 1.14, 1.26, 1.11, 1.20, 1.21, 1.22, 1.19, 1.20, 1.19, 1.22, 0.00, 0.00, + 1.08, 1.09, 1.08, 1.08, 1.11, 1.08, 1.09, 1.09, 1.09, 1.09, 1.15, 1.09, 1.10, 1.10, 1.10, 1.10, 1.10, 1.23, 1.07, 1.15, 1.14, 1.16, 1.14, 1.14, 1.15, 1.14, 1.14, 0.00, + 1.06, 1.06, 1.06, 1.06, 1.06, 1.06, 1.06, 1.06, 1.07, 1.07, 1.07, 1.07, 1.07, 1.08, 1.07, 1.09, 1.08, 1.17, 1.06, 1.11, 1.10, 1.13, 1.10, 1.10, 1.11, 1.11, 1.11, 1.09, + 1.04, 1.05, 1.04, 1.05, 1.04, 1.05, 1.06, 1.06, 1.05, 1.05, 1.05, 1.06, 1.06, 1.06, 1.06, 1.06, 1.07, 1.15, 1.04, 1.09, 1.09, 1.10, 1.09, 1.09, 1.10, 1.10, 1.10, 1.08, + 1.04, 1.03, 1.04, 1.04, 1.04, 1.04, 1.04, 1.04, 1.04, 1.04, 1.04, 1.04, 1.05, 1.06, 1.04, 1.05, 1.05, 1.13, 1.03, 1.07, 1.08, 1.08, 1.08, 1.07, 1.07, 1.09, 1.08, 1.07, + 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.04, 1.04, 1.05, 1.05, 1.05, 1.05, 1.05, 1.12, 1.03, 1.06, 1.06, 1.08, 1.07, 1.07, 1.06, 1.08, 1.07, 1.06, + 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.04, 1.04, 1.04, 1.04, 1.04, 1.03, 1.10, 1.02, 1.05, 1.06, 1.06, 1.06, 1.06, 1.05, 1.06, 1.06, 1.06, + 1.02, 1.02, 1.02, 1.02, 1.02, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.04, 1.03, 1.03, 1.02, 1.07, 1.02, 1.04, 1.04, 1.05, 1.06, 1.05, 1.05, 1.06, 1.06, 1.05, + 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.09, 1.02, 1.04, 1.05, 1.05, 1.05, 1.05, 1.04, 1.05, 1.06, 1.05, + 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.03, 1.03, 1.03, 1.03, 1.03, 1.08, 1.01, 1.04, 1.04, 1.05, 1.05, 1.04, 1.04, 1.05, 1.06, 1.05, + 1.01, 1.01, 1.01, 1.01, 1.01, 1.01, 1.02, 1.01, 1.02, 1.02, 1.02, 1.02, 1.03, 1.03, 1.03, 1.03, 1.03, 1.06, 1.01, 1.04, 1.04, 1.05, 1.04, 1.03, 1.03, 1.04, 1.05, 1.04, + 1.01, 1.00, 1.01, 1.01, 1.01, 1.01, 1.01, 1.00, 1.01, 1.02, 1.01, 1.01, 1.02, 1.02, 1.02, 1.02, 1.03, 1.04, 1.01, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.03, 1.00, 1.01, + 1.02, 1.00, 1.00, 1.02, 1.00, 1.01, 1.01, 1.00, 1.00, 1.02, 1.01, 1.01, 1.02, 1.02, 1.02, 1.02, 1.02, 1.04, 1.01, 1.03, 1.03, 1.03, 1.03, 1.02, 1.02, 1.02, 1.00, 1.01 + ]), + + layer1HCalScaleETBins = cms.vint32([1, 6, 9, 12, 15, 20, 25, 30, 35, 40, 45, 55, 70, 256]), + layer1HCalScaleFactors = cms.vdouble([ + 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, # ZERO-SUPPRESS <1GeV (i.e. 0.5GeV) IN THE BARREL ONLY (ieta<=15 == eta<=1.305) + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 + ]), + + layer1HFScaleETBins = cms.vint32([6, 9, 12, 15, 20, 25, 30, 35, 40, 45, 55, 70, 256]), + layer1HFScaleFactors = cms.vdouble([ + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 + ]), + + # HCal FB LUT + layer1HCalFBLUTUpper = cms.vuint32([ + 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, + ]), + + layer1HCalFBLUTLower = cms.vuint32([ + 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, 0xBBBABBBA, + ]) +) From 92ea3ea246da92709df731f794980c01fdb6f7af Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Wed, 30 Nov 2022 16:06:37 +0100 Subject: [PATCH 012/281] Add SC8 jets. Rename SC jets to SC4. Add multiple outputs to jet file writer Fix merge issues --- .../plugins/L1CTJetFileWriter.cc | 61 +++++++++++++------ .../python/l1ctJetFileWriter_cfi.py | 11 ++++ .../python/l1pfJetMet_cff.py | 52 ++++++++-------- 3 files changed, 78 insertions(+), 46 deletions(-) create mode 100644 L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc index 82957e57178e1..b767bc69414aa 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc @@ -29,6 +29,7 @@ class L1CTJetFileWriter : public edm::one::EDAnalyzer private: // ----------constants, enums and typedefs --------- + std::vector collections_; unsigned nJets_; size_t nFramesPerBX_; size_t ctl2BoardTMUX_; @@ -41,43 +42,53 @@ class L1CTJetFileWriter : public edm::one::EDAnalyzer void endJob() override; std::vector> encodeJets(const std::vector jets); - edm::EDGetTokenT> jetsToken_; l1t::demo::BoardDataWriter fileWriterOutputToGT_; + std::vector>> jetsTokens_; }; L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) - : nJets_(iConfig.getParameter("nJets")), + : + collections_(iConfig.getUntrackedParameter>("collections", + std::vector())), + nJets_(iConfig.getParameter("nJets")), nFramesPerBX_(iConfig.getParameter("nFramesPerBX")), ctl2BoardTMUX_(iConfig.getParameter("TMUX")), - gapLengthOutput_(ctl2BoardTMUX_ * nFramesPerBX_ - 2 * nJets_), + gapLengthOutput_(ctl2BoardTMUX_ * nFramesPerBX_ - 2 * nJets_ * collections_.size()), maxLinesPerFile_(iConfig.getParameter("maxLinesPerFile")), channelSpecsOutputToGT_{{{"jets", 0}, {{ctl2BoardTMUX_, gapLengthOutput_}, {0}}}}, - jetsToken_(consumes>(iConfig.getParameter("jets"))), fileWriterOutputToGT_(l1t::demo::parseFileFormat(iConfig.getParameter("format")), iConfig.getParameter("outputFilename"), iConfig.getParameter("outputFileExtension"), nFramesPerBX_, ctl2BoardTMUX_, maxLinesPerFile_, - channelSpecsOutputToGT_) {} + channelSpecsOutputToGT_) { + for(const auto &pset : collections_){ + jetsTokens_.push_back(consumes>(pset.getParameter("jets"))); + } + } void L1CTJetFileWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { using namespace edm; - // 1) Encode jet information onto vectors containing link data - // TODO remove the sort here and sort the input collection where it's created - const edm::View& jets = iEvent.get(jetsToken_); - std::vector sortedJets; - sortedJets.reserve(jets.size()); - std::copy(jets.begin(), jets.end(), std::back_inserter(sortedJets)); - - std::stable_sort( - sortedJets.begin(), sortedJets.end(), [](l1t::PFJet i, l1t::PFJet j) { return (i.hwPt() > j.hwPt()); }); - const auto outputJets(encodeJets(sortedJets)); - - // 2) Pack jet information into 'event data' object, and pass that to file writer + // 1) Pack collections in otder they're specified. jets then sums within collection + std::vector> link_words; + for(const auto &token : jetsTokens_){ + // 2) Encode jet information onto vectors containing link data + // TODO remove the sort here and sort the input collection where it's created + const edm::View& jets = iEvent.get(token); + std::vector sortedJets; + sortedJets.reserve(jets.size()); + std::copy(jets.begin(), jets.end(), std::back_inserter(sortedJets)); + + std::stable_sort( + sortedJets.begin(), sortedJets.end(), [](l1t::PFJet i, l1t::PFJet j) { return (i.hwPt() > j.hwPt()); }); + const auto outputJets(encodeJets(sortedJets)); + link_words.insert(link_words.end(), outputJets.begin(), outputJets.end()); + } + // 3) Pack jet information into 'event data' object, and pass that to file writer l1t::demo::EventData eventDataJets; - eventDataJets.add({"jets", 0}, outputJets); + eventDataJets.add({"jets", 0}, link_words); fileWriterOutputToGT_.addEvent(eventDataJets); } @@ -107,7 +118,19 @@ void L1CTJetFileWriter::fillDescriptions(edm::ConfigurationDescriptions& descrip //The following says we do not know what parameters are allowed so do no validation // Please change this to state exactly what you do use, even if it is no parameters edm::ParameterSetDescription desc; - desc.add("jets"); + { + edm::ParameterSetDescription vpsd1; + vpsd1.add("jets", edm::InputTag("scPFL1PuppiEmulatorCorrected")); + std::vector temp1; + temp1.reserve(1); + { + edm::ParameterSet temp2; + temp2.addParameter("jets", edm::InputTag("scPFL1PuppiEmulatorCorrected")); + temp1.push_back(temp2); + } + desc.addVPSetUntracked("collections", vpsd1, temp1); + } + //desc.add>("collections"); desc.add("outputFilename"); desc.add("outputFileExtension", "txt"); desc.add("nJets", 12); diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py b/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py new file mode 100644 index 0000000000000..c7ac489b696a5 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py @@ -0,0 +1,11 @@ +import FWCore.ParameterSet.Config as cms + +l1ctSeededConeJetFileWriter = cms.EDAnalyzer('L1CTJetFileWriter', + collections = cms.untracked.VPSet([cms.PSet(jets = cms.InputTag("scPFL1PuppiEmulatorCorrected"))]), + nJets = cms.uint32(12), + nFramesPerBX = cms.uint32(9), # 360 MHz clock or 25 Gb/s link + TMUX = cms.uint32(6), + maxLinesPerFile = cms.uint32(1024), + outputFilename = cms.string("L1CTSCJetsPatterns"), + format = cms.string("EMP") +) diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1pfJetMet_cff.py b/L1Trigger/Phase2L1ParticleFlow/python/l1pfJetMet_cff.py index 1ca27e1cf018f..1876d59c9ab30 100644 --- a/L1Trigger/Phase2L1ParticleFlow/python/l1pfJetMet_cff.py +++ b/L1Trigger/Phase2L1ParticleFlow/python/l1pfJetMet_cff.py @@ -1,15 +1,18 @@ import FWCore.ParameterSet.Config as cms - -from L1Trigger.Phase2L1ParticleFlow.l1SeedConePFJetProducer_cfi import l1SeedConePFJetProducer -from L1Trigger.Phase2L1ParticleFlow.l1SeedConePFJetEmulatorProducer_cfi import l1SeedConePFJetEmulatorProducer -from L1Trigger.Phase2L1ParticleFlow.l1tDeregionizerProducer_cfi import l1tDeregionizerProducer as l1tLayer2Deregionizer, l1tDeregionizerProducerExtended as l1tLayer2DeregionizerExtended -l1tSCPFL1PF = l1SeedConePFJetProducer.clone(L1PFObjects = 'l1tLayer1:PF') -l1tSCPFL1Puppi = l1SeedConePFJetProducer.clone() -l1tSCPFL1PuppiEmulator = l1SeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi') -l1tSCPFL1PuppiCorrectedEmulator = l1SeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi', - doCorrections = True, - correctorFile = "L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root", - correctorDir = "L1PuppiSC4EmuJets") +from L1Trigger.Phase2L1ParticleFlow.L1SeedConePFJetProducer_cfi import L1SeedConePFJetProducer, L1SeedConePFJetEmulatorProducer +from L1Trigger.Phase2L1ParticleFlow.DeregionizerProducer_cfi import DeregionizerProducer as l1ctLayer2Deregionizer, DeregionizerProducerExtended as l1ctLayer2DeregionizerExtended +sc4PFL1PF = L1SeedConePFJetProducer.clone(L1PFObjects = 'l1ctLayer1:PF') +sc4PFL1Puppi = L1SeedConePFJetProducer.clone() +sc4PFL1PuppiEmulator = L1SeedConePFJetEmulatorProducer.clone(L1PFObject = cms.InputTag('l1ctLayer2Deregionizer', 'Puppi')) +sc4PFL1PuppiCorrectedEmulator = L1SeedConePFJetEmulatorProducer.clone(L1PFObject = cms.InputTag('l1ctLayer2Deregionizer', 'Puppi'), + doCorrections = cms.bool(True), + correctorFile = cms.string("L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root"), + correctorDir = cms.string('L1PuppiSC4EmuJets')) +sc8PFL1PuppiCorrectedEmulator = L1SeedConePFJetEmulatorProducer.clone(L1PFObject = cms.InputTag('l1ctLayer2Deregionizer', 'Puppi'), + coneSize = cms.double(0.8), + doCorrections = cms.bool(True), + correctorFile = cms.string("L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root"), + correctorDir = cms.string('L1PuppiSC4EmuJets')) _correctedJets = cms.EDProducer("L1TCorrectedPFJetProducer", jets = cms.InputTag("_tag_"), @@ -25,26 +28,21 @@ from Configuration.Eras.Modifier_phase2_hgcalV11_cff import phase2_hgcalV11 phase2_hgcalV11.toModify(_correctedJets, correctorFile = "L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root") -from L1Trigger.Phase2L1ParticleFlow.l1tMHTPFProducer_cfi import l1tMHTPFProducer -l1tSCPFL1PuppiCorrectedEmulatorMHT = l1tMHTPFProducer.clone(jets = 'l1tSCPFL1PuppiCorrectedEmulator') - -L1TPFJetsTask = cms.Task( - l1tLayer2Deregionizer, l1tSCPFL1PF, l1tSCPFL1Puppi, l1tSCPFL1PuppiEmulator, l1tSCPFL1PuppiCorrectedEmulator, l1tSCPFL1PuppiCorrectedEmulatorMHT -) +from L1Trigger.Phase2L1ParticleFlow.L1MHTPFProducer_cfi import L1MHTPFProducer +sc4PFL1PuppiCorrectedEmulatorMHT = L1MHTPFProducer.clone(jets = cms.InputTag("sc4PFL1PuppiCorrectedEmulator")) +sc8PFL1PuppiCorrectedEmulatorMHT = L1MHTPFProducer.clone(jets = cms.InputTag("sc8PFL1PuppiCorrectedEmulator")) -l1tSCPFL1PuppiExtended = l1SeedConePFJetProducer.clone(L1PFObjects = 'l1tLayer1Extended:Puppi') -l1tSCPFL1PuppiExtendedEmulator = l1SeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2DeregionizerExtended:Puppi') -l1tSCPFL1PuppiExtendedCorrectedEmulator = l1SeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2DeregionizerExtended:Puppi', - doCorrections = True, - correctorFile = "L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root", - correctorDir = "L1PuppiSC4EmuJets") +sc4PFL1PuppiExtended = sc4PFL1Puppi.clone(L1PFObjects = 'l1ctLayer1Extended:Puppi') +sc4PFL1PuppiExtendedEmulator = sc4PFL1PuppiEmulator.clone(L1PFObjects = cms.InputTag('l1ctLayer2DeregionizerExtended', 'Puppi')) +sc4PFL1PuppiExtendedCorrectedEmulator = _correctedJets.clone(jets = 'sc4PFL1PuppiExtendedEmulator', correctorDir = 'L1PuppiSC4EmuDeregJets') -L1TPFJetsTask = cms.Task( - l1tLayer2Deregionizer, l1tSCPFL1PF, l1tSCPFL1Puppi, l1tSCPFL1PuppiEmulator, l1tSCPFL1PuppiCorrectedEmulator, l1tSCPFL1PuppiCorrectedEmulatorMHT +l1PFJetsTask = cms.Task( + l1ctLayer2Deregionizer, sc4PFL1PF, sc4PFL1Puppi, sc4PFL1PuppiEmulator, sc4PFL1PuppiCorrectedEmulator, sc4PFL1PuppiCorrectedEmulatorMHT, + sc8PFL1PuppiCorrectedEmulator, sc8PFL1PuppiCorrectedEmulatorMHT ) -L1TPFJetsExtendedTask = cms.Task( - l1tLayer2DeregionizerExtended, l1tSCPFL1PuppiExtended, l1tSCPFL1PuppiExtendedEmulator, l1tSCPFL1PuppiExtendedCorrectedEmulator +l1PFJetsExtendedTask = cms.Task( + l1ctLayer2DeregionizerExtended, sc4PFL1PuppiExtended, sc4PFL1PuppiExtendedEmulator, sc4PFL1PuppiExtendedCorrectedEmulator ) L1TPFJetsEmulationTask = cms.Task( From 498ed9427be9a73ea57e91d6bd1bfb8d6dffc275 Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Wed, 30 Nov 2022 17:03:24 +0100 Subject: [PATCH 013/281] Add MHT to jet writer output --- .../plugins/L1CTJetFileWriter.cc | 43 ++++++++++++++++--- .../python/l1ctJetFileWriter_cfi.py | 3 +- 2 files changed, 38 insertions(+), 8 deletions(-) diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc index b767bc69414aa..138d936c4e334 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc @@ -16,6 +16,7 @@ #include "L1Trigger/DemonstratorTools/interface/utilities.h" #include "DataFormats/L1TParticleFlow/interface/PFJet.h" #include "DataFormats/L1TParticleFlow/interface/gt_datatypes.h" +#include "DataFormats/L1Trigger/interface/EtSum.h" // // class declaration @@ -41,9 +42,11 @@ class L1CTJetFileWriter : public edm::one::EDAnalyzer void analyze(const edm::Event&, const edm::EventSetup&) override; void endJob() override; std::vector> encodeJets(const std::vector jets); + std::vector> encodeSums(const std::vector jets); l1t::demo::BoardDataWriter fileWriterOutputToGT_; std::vector>> jetsTokens_; + std::vector>> mhtTokens_; }; L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) @@ -53,7 +56,7 @@ L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) nJets_(iConfig.getParameter("nJets")), nFramesPerBX_(iConfig.getParameter("nFramesPerBX")), ctl2BoardTMUX_(iConfig.getParameter("TMUX")), - gapLengthOutput_(ctl2BoardTMUX_ * nFramesPerBX_ - 2 * nJets_ * collections_.size()), + gapLengthOutput_(ctl2BoardTMUX_ * nFramesPerBX_ - 2 * (nJets_ + 1) * collections_.size()), maxLinesPerFile_(iConfig.getParameter("maxLinesPerFile")), channelSpecsOutputToGT_{{{"jets", 0}, {{ctl2BoardTMUX_, gapLengthOutput_}, {0}}}}, fileWriterOutputToGT_(l1t::demo::parseFileFormat(iConfig.getParameter("format")), @@ -65,18 +68,20 @@ L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) channelSpecsOutputToGT_) { for(const auto &pset : collections_){ jetsTokens_.push_back(consumes>(pset.getParameter("jets"))); + mhtTokens_.push_back(consumes>(pset.getParameter("mht"))); } } void L1CTJetFileWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { using namespace edm; - // 1) Pack collections in otder they're specified. jets then sums within collection + // 1) Pack collections in the order they're specified. jets then sums within collection std::vector> link_words; - for(const auto &token : jetsTokens_){ + for(unsigned iCollection = 0; iCollection < collections_.size(); iCollection++){ + const auto &jetToken = jetsTokens_.at(iCollection); // 2) Encode jet information onto vectors containing link data // TODO remove the sort here and sort the input collection where it's created - const edm::View& jets = iEvent.get(token); + const edm::View& jets = iEvent.get(jetToken); std::vector sortedJets; sortedJets.reserve(jets.size()); std::copy(jets.begin(), jets.end(), std::back_inserter(sortedJets)); @@ -85,8 +90,17 @@ void L1CTJetFileWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& sortedJets.begin(), sortedJets.end(), [](l1t::PFJet i, l1t::PFJet j) { return (i.hwPt() > j.hwPt()); }); const auto outputJets(encodeJets(sortedJets)); link_words.insert(link_words.end(), outputJets.begin(), outputJets.end()); + + // 3) Encode sums onto vectors containing link data + const auto &mhtToken = mhtTokens_.at(iCollection); + const edm::View& mht = iEvent.get(mhtToken); + std::vector orderedSums; + std::copy(mht.begin(), mht.end(), std::back_inserter(orderedSums)); + // TODO: reorder the sums checking the EtSumType + const auto outputSums(encodeSums(orderedSums)); + link_words.insert(link_words.end(), outputSums.begin(), outputSums.end()); } - // 3) Pack jet information into 'event data' object, and pass that to file writer + // 4) Pack jet information into 'event data' object, and pass that to file writer l1t::demo::EventData eventDataJets; eventDataJets.add({"jets", 0}, link_words); fileWriterOutputToGT_.addEvent(eventDataJets); @@ -113,6 +127,19 @@ std::vector> L1CTJetFileWriter::encodeJets(const std::vector> L1CTJetFileWriter::encodeSums(const std::vector sums) { + // Send MHT first, then MET + // Need two l1t::EtSum for each MHT, MET (four total) + // No MET consumed for now - send 0s on second word + std::vector> sum_words; + int valid = sums.at(0).pt() > 0; + // TODO this is not going to be bit exact + l1gt::Sum ht{valid, sums.at(1).pt(), sums.at(1).phi() / l1gt::Scales::ETAPHI_LSB, sums.at(0).pt()}; + sum_words.push_back(ht.pack()); + sum_words.push_back(0); + return sum_words; +} + // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1CTJetFileWriter::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation @@ -120,12 +147,14 @@ void L1CTJetFileWriter::fillDescriptions(edm::ConfigurationDescriptions& descrip edm::ParameterSetDescription desc; { edm::ParameterSetDescription vpsd1; - vpsd1.add("jets", edm::InputTag("scPFL1PuppiEmulatorCorrected")); + vpsd1.add("jets", edm::InputTag("sc4PFL1PuppiCorrectedEmulator")); + vpsd1.add("mht", edm::InputTag("sc4PFL1PuppiCorrectedEmulatorMHT")); std::vector temp1; temp1.reserve(1); { edm::ParameterSet temp2; - temp2.addParameter("jets", edm::InputTag("scPFL1PuppiEmulatorCorrected")); + temp2.addParameter("jets", edm::InputTag("sc4PFL1PuppiCorrectedEmulator")); + temp2.addParameter("mht", edm::InputTag("sc4PFL1PuppiCorrectedEmulatorMHT")); temp1.push_back(temp2); } desc.addVPSetUntracked("collections", vpsd1, temp1); diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py b/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py index c7ac489b696a5..f2a75b36e3229 100644 --- a/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py +++ b/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py @@ -1,7 +1,8 @@ import FWCore.ParameterSet.Config as cms l1ctSeededConeJetFileWriter = cms.EDAnalyzer('L1CTJetFileWriter', - collections = cms.untracked.VPSet([cms.PSet(jets = cms.InputTag("scPFL1PuppiEmulatorCorrected"))]), + collections = cms.untracked.VPSet([cms.PSet(jets = cms.InputTag("sc4PFL1PuppiCorrectedEmulator"), + mht = cms.InputTag("sc4PFL1PuppiCorrectedEmulatorMHT"))]), nJets = cms.uint32(12), nFramesPerBX = cms.uint32(9), # 360 MHz clock or 25 Gb/s link TMUX = cms.uint32(6), From 8570d4f449cd007088180db69948074d731a568b Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Wed, 19 Jul 2023 15:06:02 +0200 Subject: [PATCH 014/281] Update jet writer for optional collections. --- .../plugins/L1CTJetFileWriter.cc | 80 ++++++++++++------- .../python/l1ctJetFileWriter_cfi.py | 2 +- .../python/l1pfJetMet_cff.py | 58 +++++++------- .../test/make_l1ct_binaryFiles_cfg.py | 20 ++--- 4 files changed, 93 insertions(+), 67 deletions(-) diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc index 138d936c4e334..5270a5485c4b7 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc @@ -26,7 +26,7 @@ class L1CTJetFileWriter : public edm::one::EDAnalyzer public: explicit L1CTJetFileWriter(const edm::ParameterSet&); - static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + //static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: // ----------constants, enums and typedefs --------- @@ -45,8 +45,10 @@ class L1CTJetFileWriter : public edm::one::EDAnalyzer std::vector> encodeSums(const std::vector jets); l1t::demo::BoardDataWriter fileWriterOutputToGT_; - std::vector>> jetsTokens_; - std::vector>> mhtTokens_; + std::vector>, edm::EDGetTokenT>>> tokens_; + std::vector> tokensToWrite_; + //std::vector>> jetsTokens_; + //std::vector>> mhtTokens_; }; L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) @@ -67,8 +69,19 @@ L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) maxLinesPerFile_, channelSpecsOutputToGT_) { for(const auto &pset : collections_){ - jetsTokens_.push_back(consumes>(pset.getParameter("jets"))); - mhtTokens_.push_back(consumes>(pset.getParameter("mht"))); + edm::EDGetTokenT> jetToken; + edm::EDGetTokenT> mhtToken; + bool writeJetToken(false), writeMhtToken(false); + if(pset.exists("jets")){ + jetToken = consumes>(pset.getParameter("jets")); + writeJetToken = true; + } + if(pset.exists("mht")){ + mhtToken = consumes>(pset.getParameter("mht")); + writeMhtToken = true; + } + tokens_.push_back(std::make_pair(jetToken, mhtToken)); + tokensToWrite_.push_back(std::make_pair(writeJetToken, writeMhtToken)); } } @@ -78,27 +91,31 @@ void L1CTJetFileWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& // 1) Pack collections in the order they're specified. jets then sums within collection std::vector> link_words; for(unsigned iCollection = 0; iCollection < collections_.size(); iCollection++){ - const auto &jetToken = jetsTokens_.at(iCollection); - // 2) Encode jet information onto vectors containing link data - // TODO remove the sort here and sort the input collection where it's created - const edm::View& jets = iEvent.get(jetToken); - std::vector sortedJets; - sortedJets.reserve(jets.size()); - std::copy(jets.begin(), jets.end(), std::back_inserter(sortedJets)); - - std::stable_sort( - sortedJets.begin(), sortedJets.end(), [](l1t::PFJet i, l1t::PFJet j) { return (i.hwPt() > j.hwPt()); }); - const auto outputJets(encodeJets(sortedJets)); - link_words.insert(link_words.end(), outputJets.begin(), outputJets.end()); - - // 3) Encode sums onto vectors containing link data - const auto &mhtToken = mhtTokens_.at(iCollection); - const edm::View& mht = iEvent.get(mhtToken); - std::vector orderedSums; - std::copy(mht.begin(), mht.end(), std::back_inserter(orderedSums)); - // TODO: reorder the sums checking the EtSumType - const auto outputSums(encodeSums(orderedSums)); - link_words.insert(link_words.end(), outputSums.begin(), outputSums.end()); + if(tokensToWrite_.at(iCollection).first){ + const auto &jetToken = tokens_.at(iCollection).first; + // 2) Encode jet information onto vectors containing link data + // TODO remove the sort here and sort the input collection where it's created + const edm::View& jets = iEvent.get(jetToken); + std::vector sortedJets; + sortedJets.reserve(jets.size()); + std::copy(jets.begin(), jets.end(), std::back_inserter(sortedJets)); + + std::stable_sort( + sortedJets.begin(), sortedJets.end(), [](l1t::PFJet i, l1t::PFJet j) { return (i.hwPt() > j.hwPt()); }); + const auto outputJets(encodeJets(sortedJets)); + link_words.insert(link_words.end(), outputJets.begin(), outputJets.end()); + } + + if(tokensToWrite_.at(iCollection).second){ + // 3) Encode sums onto vectors containing link data + const auto &mhtToken = tokens_.at(iCollection).second; + const edm::View& mht = iEvent.get(mhtToken); + std::vector orderedSums; + std::copy(mht.begin(), mht.end(), std::back_inserter(orderedSums)); + // TODO: reorder the sums checking the EtSumType + const auto outputSums(encodeSums(orderedSums)); + link_words.insert(link_words.end(), outputSums.begin(), outputSums.end()); + } } // 4) Pack jet information into 'event data' object, and pass that to file writer l1t::demo::EventData eventDataJets; @@ -134,14 +151,19 @@ std::vector> L1CTJetFileWriter::encodeSums(const std::vector> sum_words; int valid = sums.at(0).pt() > 0; // TODO this is not going to be bit exact - l1gt::Sum ht{valid, sums.at(1).pt(), sums.at(1).phi() / l1gt::Scales::ETAPHI_LSB, sums.at(0).pt()}; + l1gt::Sum ht; + ht.valid = valid; + ht.vector_pt.V = sums.at(1).hwPt(); + ht.vector_phi.V = sums.at(1).hwPhi(); + ht.scalar_pt.V = sums.at(0).hwPt(); + //l1gt::Sum ht{valid, sums.at(1).pt(), sums.at(1).phi() / l1gt::Scales::ETAPHI_LSB, sums.at(0).pt()}; sum_words.push_back(ht.pack()); sum_words.push_back(0); return sum_words; } // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ -void L1CTJetFileWriter::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { +/*void L1CTJetFileWriter::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation // Please change this to state exactly what you do use, even if it is no parameters edm::ParameterSetDescription desc; @@ -168,7 +190,7 @@ void L1CTJetFileWriter::fillDescriptions(edm::ConfigurationDescriptions& descrip desc.add("maxLinesPerFile", 1024); desc.add("format", "EMPv2"); descriptions.addDefault(desc); -} +}*/ //define this as a plug-in DEFINE_FWK_MODULE(L1CTJetFileWriter); diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py b/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py index f2a75b36e3229..24165f22a3ac9 100644 --- a/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py +++ b/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py @@ -1,6 +1,6 @@ import FWCore.ParameterSet.Config as cms -l1ctSeededConeJetFileWriter = cms.EDAnalyzer('L1CTJetFileWriter', +l1tSeededConeJetFileWriter = cms.EDAnalyzer('L1CTJetFileWriter', collections = cms.untracked.VPSet([cms.PSet(jets = cms.InputTag("sc4PFL1PuppiCorrectedEmulator"), mht = cms.InputTag("sc4PFL1PuppiCorrectedEmulatorMHT"))]), nJets = cms.uint32(12), diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1pfJetMet_cff.py b/L1Trigger/Phase2L1ParticleFlow/python/l1pfJetMet_cff.py index 1876d59c9ab30..aab4c6a9583d4 100644 --- a/L1Trigger/Phase2L1ParticleFlow/python/l1pfJetMet_cff.py +++ b/L1Trigger/Phase2L1ParticleFlow/python/l1pfJetMet_cff.py @@ -1,18 +1,20 @@ import FWCore.ParameterSet.Config as cms -from L1Trigger.Phase2L1ParticleFlow.L1SeedConePFJetProducer_cfi import L1SeedConePFJetProducer, L1SeedConePFJetEmulatorProducer -from L1Trigger.Phase2L1ParticleFlow.DeregionizerProducer_cfi import DeregionizerProducer as l1ctLayer2Deregionizer, DeregionizerProducerExtended as l1ctLayer2DeregionizerExtended -sc4PFL1PF = L1SeedConePFJetProducer.clone(L1PFObjects = 'l1ctLayer1:PF') -sc4PFL1Puppi = L1SeedConePFJetProducer.clone() -sc4PFL1PuppiEmulator = L1SeedConePFJetEmulatorProducer.clone(L1PFObject = cms.InputTag('l1ctLayer2Deregionizer', 'Puppi')) -sc4PFL1PuppiCorrectedEmulator = L1SeedConePFJetEmulatorProducer.clone(L1PFObject = cms.InputTag('l1ctLayer2Deregionizer', 'Puppi'), - doCorrections = cms.bool(True), - correctorFile = cms.string("L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root"), - correctorDir = cms.string('L1PuppiSC4EmuJets')) -sc8PFL1PuppiCorrectedEmulator = L1SeedConePFJetEmulatorProducer.clone(L1PFObject = cms.InputTag('l1ctLayer2Deregionizer', 'Puppi'), - coneSize = cms.double(0.8), - doCorrections = cms.bool(True), - correctorFile = cms.string("L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root"), - correctorDir = cms.string('L1PuppiSC4EmuJets')) +from L1Trigger.Phase2L1ParticleFlow.l1tSeedConePFJetProducer_cfi import l1tSeedConePFJetProducer, l1tSeedConePFJetEmulatorProducer +from L1Trigger.Phase2L1ParticleFlow.l1tDeregionizerProducer_cfi import l1tDeregionizerProducer as l1tLayer2Deregionizer, l1tDeregionizerProducerExtended as l1tLayer2DeregionizerExtended +l1tSC4PFL1PF = l1tSeedConePFJetProducer.clone(L1PFObjects = 'l1tLayer1:PF') +l1tSC4PFL1Puppi = l1tSeedConePFJetProducer.clone() +l1tSC4PFL1PuppiEmulator = l1tSeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi') +l1tSC8PFL1PuppiEmulator = l1tSeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi', + coneSize = cms.double(0.8)) +l1tSC4PFL1PuppiCorrectedEmulator = l1tSeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi', + doCorrections = cms.bool(True), + correctorFile = cms.string("L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root"), + correctorDir = cms.string('L1PuppiSC4EmuJets')) +l1tSC8PFL1PuppiCorrectedEmulator = l1tSeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi', + coneSize = cms.double(0.8), + doCorrections = cms.bool(True), + correctorFile = cms.string("L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root"), + correctorDir = cms.string('L1PuppiSC4EmuJets')) _correctedJets = cms.EDProducer("L1TCorrectedPFJetProducer", jets = cms.InputTag("_tag_"), @@ -28,24 +30,26 @@ from Configuration.Eras.Modifier_phase2_hgcalV11_cff import phase2_hgcalV11 phase2_hgcalV11.toModify(_correctedJets, correctorFile = "L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root") -from L1Trigger.Phase2L1ParticleFlow.L1MHTPFProducer_cfi import L1MHTPFProducer -sc4PFL1PuppiCorrectedEmulatorMHT = L1MHTPFProducer.clone(jets = cms.InputTag("sc4PFL1PuppiCorrectedEmulator")) -sc8PFL1PuppiCorrectedEmulatorMHT = L1MHTPFProducer.clone(jets = cms.InputTag("sc8PFL1PuppiCorrectedEmulator")) +from L1Trigger.Phase2L1ParticleFlow.l1tMHTPFProducer_cfi import l1tMHTPFProducer +l1tSC4PFL1PuppiCorrectedEmulatorMHT = l1tMHTPFProducer.clone(jets = 'l1tSC4PFL1PuppiCorrectedEmulator') -sc4PFL1PuppiExtended = sc4PFL1Puppi.clone(L1PFObjects = 'l1ctLayer1Extended:Puppi') -sc4PFL1PuppiExtendedEmulator = sc4PFL1PuppiEmulator.clone(L1PFObjects = cms.InputTag('l1ctLayer2DeregionizerExtended', 'Puppi')) -sc4PFL1PuppiExtendedCorrectedEmulator = _correctedJets.clone(jets = 'sc4PFL1PuppiExtendedEmulator', correctorDir = 'L1PuppiSC4EmuDeregJets') +l1tSC4PFL1PuppiExtended = l1tSeedConePFJetProducer.clone(L1PFObjects = 'l1tLayer1Extended:Puppi') +l1tSC4PFL1PuppiExtendedEmulator = l1tSeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2DeregionizerExtended:Puppi') +l1tSC4PFL1PuppiExtendedCorrectedEmulator = l1tSeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2DeregionizerExtended:Puppi', + doCorrections = cms.bool(True), + correctorFile = cms.string("L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root"), + correctorDir = cms.string('L1PuppiSC4EmuJets')) -l1PFJetsTask = cms.Task( - l1ctLayer2Deregionizer, sc4PFL1PF, sc4PFL1Puppi, sc4PFL1PuppiEmulator, sc4PFL1PuppiCorrectedEmulator, sc4PFL1PuppiCorrectedEmulatorMHT, - sc8PFL1PuppiCorrectedEmulator, sc8PFL1PuppiCorrectedEmulatorMHT +L1TPFJetsTask = cms.Task( + l1tLayer2Deregionizer, l1tSC4PFL1PF, l1tSC4PFL1Puppi, l1tSC4PFL1PuppiEmulator, l1tSC4PFL1PuppiCorrectedEmulator, l1tSC4PFL1PuppiCorrectedEmulatorMHT, + l1tSC8PFL1PuppiEmulator, l1tSC8PFL1PuppiCorrectedEmulator ) -l1PFJetsExtendedTask = cms.Task( - l1ctLayer2DeregionizerExtended, sc4PFL1PuppiExtended, sc4PFL1PuppiExtendedEmulator, sc4PFL1PuppiExtendedCorrectedEmulator +L1TPFJetsExtendedTask = cms.Task( + l1tLayer2DeregionizerExtended, l1tSC4PFL1PuppiExtended, l1tSC4PFL1PuppiExtendedEmulator, l1tSC4PFL1PuppiExtendedCorrectedEmulator ) L1TPFJetsEmulationTask = cms.Task( - l1tLayer2Deregionizer, l1tSCPFL1PuppiEmulator, l1tSCPFL1PuppiCorrectedEmulator, l1tSCPFL1PuppiCorrectedEmulatorMHT + l1tLayer2Deregionizer, l1tSC4PFL1PuppiEmulator, l1tSC4PFL1PuppiCorrectedEmulator, l1tSC4PFL1PuppiCorrectedEmulatorMHT, + l1tSC8PFL1PuppiEmulator, l1tSC8PFL1PuppiCorrectedEmulator ) - diff --git a/L1Trigger/Phase2L1ParticleFlow/test/make_l1ct_binaryFiles_cfg.py b/L1Trigger/Phase2L1ParticleFlow/test/make_l1ct_binaryFiles_cfg.py index 700a88b2e6775..10ca331f6ec76 100644 --- a/L1Trigger/Phase2L1ParticleFlow/test/make_l1ct_binaryFiles_cfg.py +++ b/L1Trigger/Phase2L1ParticleFlow/test/make_l1ct_binaryFiles_cfg.py @@ -54,6 +54,7 @@ process.load('L1Trigger.Phase2L1ParticleFlow.l1ctLayer1_cff') process.load('L1Trigger.Phase2L1ParticleFlow.l1ctLayer2EG_cff') +process.load('L1Trigger.Phase2L1ParticleFlow.l1pfJetMet_cff') process.load('L1Trigger.L1TTrackMatch.l1tGTTInputProducer_cfi') process.load('L1Trigger.L1TTrackMatch.l1tTrackSelectionProducer_cfi') process.l1tTrackSelectionProducer.processSimulatedTracks = False # these would need stubs, and are not used anyway @@ -61,15 +62,12 @@ from L1Trigger.Phase2L1GMT.gmt_cfi import l1tStandaloneMuons process.l1tSAMuonsGmt = l1tStandaloneMuons.clone() -from L1Trigger.Phase2L1ParticleFlow.l1SeedConePFJetEmulatorProducer_cfi import l1SeedConePFJetEmulatorProducer -from L1Trigger.Phase2L1ParticleFlow.l1tDeregionizerProducer_cfi import l1tDeregionizerProducer from L1Trigger.Phase2L1ParticleFlow.l1tJetFileWriter_cfi import l1tSeededConeJetFileWriter -process.l1tLayer2Deregionizer = l1tDeregionizerProducer.clone() -process.l1tLayer2SeedConeJetsCorrected = l1SeedConePFJetEmulatorProducer.clone(L1PFObjects = cms.InputTag('l1tLayer2Deregionizer', 'Puppi'), - doCorrections = cms.bool(True), - correctorFile = cms.string("L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root"), - correctorDir = cms.string('L1PuppiSC4EmuJets')) -process.l1tLayer2SeedConeJetWriter = l1tSeededConeJetFileWriter.clone(jets = "l1tLayer2SeedConeJetsCorrected") +l1ctLayer2SCJetsProducts = cms.untracked.VPSet([cms.PSet(jets = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulator"), + mht = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulatorMHT")), + cms.PSet(jets = cms.InputTag("l1tSC8PFL1PuppiCorrectedEmulator"),) + ]) +process.l1tLayer2SeedConeJetWriter = l1tSeededConeJetFileWriter.clone(collections = l1ctLayer2SCJetsProducts) process.l1tLayer1BarrelTDR = process.l1tLayer1Barrel.clone() process.l1tLayer1BarrelTDR.regionizerAlgo = cms.string("TDR") @@ -133,7 +131,9 @@ process.l1tLayer1HF + process.l1tLayer1 + process.l1tLayer2Deregionizer + - process.l1tLayer2SeedConeJetsCorrected + + process.l1tSC4PFL1PuppiCorrectedEmulator + + process.l1tSC4PFL1PuppiCorrectedEmulatorMHT + + process.l1tSC8PFL1PuppiCorrectedEmulator + # process.l1tLayer2SeedConeJetWriter + process.l1tLayer2EG ) @@ -152,7 +152,7 @@ ##################################################################################################################### ## Layer 2 seeded-cone jets if not args.patternFilesOFF: - process.runPF.insert(process.runPF.index(process.l1tLayer2SeedConeJetsCorrected)+1, process.l1tLayer2SeedConeJetWriter) + process.runPF.insert(process.runPF.index(process.l1tSC8PFL1PuppiCorrectedEmulator)+1, process.l1tLayer2SeedConeJetWriter) process.l1tLayer2SeedConeJetWriter.maxLinesPerFile = _eventsPerFile*54 if not args.dumpFilesOFF: From 41b686e71e8281f966700774db558e4c110a5e76 Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Mon, 24 Jul 2023 16:15:07 +0200 Subject: [PATCH 015/281] Fixes for emulator-firmware correctness for HT. Initialise the packed object word to 0 before packing. Round the eta limit to hardware units --- DataFormats/L1TParticleFlow/interface/gt_datatypes.h | 6 +++--- .../Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/DataFormats/L1TParticleFlow/interface/gt_datatypes.h b/DataFormats/L1TParticleFlow/interface/gt_datatypes.h index 5f01de0230818..b7ceff79923c3 100644 --- a/DataFormats/L1TParticleFlow/interface/gt_datatypes.h +++ b/DataFormats/L1TParticleFlow/interface/gt_datatypes.h @@ -154,7 +154,7 @@ namespace l1gt { static const int BITWIDTH = 64; inline ap_uint pack() const { - ap_uint ret; + ap_uint ret(0); unsigned int start = 0; pack_into_bits(ret, start, valid); pack_into_bits(ret, start, vector_pt); @@ -191,7 +191,7 @@ namespace l1gt { static const int BITWIDTH = 128; inline ap_uint pack_ap() const { - ap_uint ret; + ap_uint ret(0); unsigned int start = 0; pack_into_bits(ret, start, valid); pack_into_bits(ret, start, v3.pack()); @@ -330,7 +330,7 @@ namespace l1gt { } inline static Photon unpack(const std::array &src, int parity) { - ap_uint bits; + ap_uint bits(0); if (parity == 0) { bits(63, 0) = src[0]; bits(95, 64) = src[1]; diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py b/L1Trigger/Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py index 31e3f57591c9e..e9d8ebf9c7def 100644 --- a/L1Trigger/Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py +++ b/L1Trigger/Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py @@ -3,5 +3,5 @@ l1tMHTPFProducer = cms.EDProducer("L1MhtPfProducer", jets = cms.InputTag("l1tSCPFL1PuppiEmulator"), minJetPt = cms.double(30.0), - maxJetEta = cms.double(2.4) + maxJetEta = cms.double(550 * cms.math.pi / 720) # 2.4 rounded to hardware unit granularity ) From d9ba6fe8dbad031bdcaa8ffe7f8b2e4f265f3f25 Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Tue, 25 Jul 2023 10:50:44 +0200 Subject: [PATCH 016/281] Add GT Sum unpack method --- DataFormats/L1TParticleFlow/interface/gt_datatypes.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/DataFormats/L1TParticleFlow/interface/gt_datatypes.h b/DataFormats/L1TParticleFlow/interface/gt_datatypes.h index b7ceff79923c3..d2a6c7478736e 100644 --- a/DataFormats/L1TParticleFlow/interface/gt_datatypes.h +++ b/DataFormats/L1TParticleFlow/interface/gt_datatypes.h @@ -169,6 +169,10 @@ namespace l1gt { return ret; } + inline static Sum unpack(const uint64_t &src){ + return unpack_ap(src); + } + inline void initFromBits(const ap_uint &src) { unsigned int start = 0; unpack_from_bits(src, start, valid); From 3cbf8e9dd62e9e837b9a8a7fbd7afb0f8696ffd8 Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Wed, 26 Jul 2023 13:20:16 +0200 Subject: [PATCH 017/281] Fix L1CTJetFileWriter fillDescriptions and l1tJetFileWriter_cfi --- .../plugins/L1CTJetFileWriter.cc | 24 ++++++------------- .../python/l1ctJetFileWriter_cfi.py | 12 ---------- .../python/l1tJetFileWriter_cfi.py | 3 ++- 3 files changed, 9 insertions(+), 30 deletions(-) delete mode 100644 L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc index 5270a5485c4b7..5d230f065b02f 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc @@ -26,7 +26,7 @@ class L1CTJetFileWriter : public edm::one::EDAnalyzer public: explicit L1CTJetFileWriter(const edm::ParameterSet&); - //static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: // ----------constants, enums and typedefs --------- @@ -163,25 +163,15 @@ std::vector> L1CTJetFileWriter::encodeSums(const std::vector("jets", edm::InputTag("sc4PFL1PuppiCorrectedEmulator")); - vpsd1.add("mht", edm::InputTag("sc4PFL1PuppiCorrectedEmulatorMHT")); - std::vector temp1; - temp1.reserve(1); - { - edm::ParameterSet temp2; - temp2.addParameter("jets", edm::InputTag("sc4PFL1PuppiCorrectedEmulator")); - temp2.addParameter("mht", edm::InputTag("sc4PFL1PuppiCorrectedEmulatorMHT")); - temp1.push_back(temp2); - } - desc.addVPSetUntracked("collections", vpsd1, temp1); + vpsd1.addOptional("jets"); + vpsd1.addOptional("mht"); + desc.addVPSetUntracked("collections", vpsd1); } - //desc.add>("collections"); desc.add("outputFilename"); desc.add("outputFileExtension", "txt"); desc.add("nJets", 12); @@ -190,7 +180,7 @@ std::vector> L1CTJetFileWriter::encodeSums(const std::vector("maxLinesPerFile", 1024); desc.add("format", "EMPv2"); descriptions.addDefault(desc); -}*/ +} //define this as a plug-in DEFINE_FWK_MODULE(L1CTJetFileWriter); diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py b/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py deleted file mode 100644 index 24165f22a3ac9..0000000000000 --- a/L1Trigger/Phase2L1ParticleFlow/python/l1ctJetFileWriter_cfi.py +++ /dev/null @@ -1,12 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -l1tSeededConeJetFileWriter = cms.EDAnalyzer('L1CTJetFileWriter', - collections = cms.untracked.VPSet([cms.PSet(jets = cms.InputTag("sc4PFL1PuppiCorrectedEmulator"), - mht = cms.InputTag("sc4PFL1PuppiCorrectedEmulatorMHT"))]), - nJets = cms.uint32(12), - nFramesPerBX = cms.uint32(9), # 360 MHz clock or 25 Gb/s link - TMUX = cms.uint32(6), - maxLinesPerFile = cms.uint32(1024), - outputFilename = cms.string("L1CTSCJetsPatterns"), - format = cms.string("EMP") -) diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py b/L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py index a53db5cb667fe..b9a645c6a2872 100644 --- a/L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py +++ b/L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py @@ -1,7 +1,8 @@ import FWCore.ParameterSet.Config as cms l1tSeededConeJetFileWriter = cms.EDAnalyzer('L1CTJetFileWriter', - jets = cms.InputTag("l1tSCPFL1PuppiEmulatorCorrected"), + collections = cms.untracked.VPSet([cms.PSet(jets = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulator"), + mht = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulatorMHT"))]), nJets = cms.uint32(12), nFramesPerBX = cms.uint32(9), # 360 MHz clock or 25 Gb/s link TMUX = cms.uint32(6), From 3539646f843858e9d80daf1428fbce7dcbbd1f30 Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Fri, 18 Aug 2023 11:26:01 +0200 Subject: [PATCH 018/281] apply code format --- .../L1TParticleFlow/interface/gt_datatypes.h | 4 +- .../plugins/L1CTJetFileWriter.cc | 48 +++++++++---------- 2 files changed, 24 insertions(+), 28 deletions(-) diff --git a/DataFormats/L1TParticleFlow/interface/gt_datatypes.h b/DataFormats/L1TParticleFlow/interface/gt_datatypes.h index d2a6c7478736e..b2a698ee7d6f2 100644 --- a/DataFormats/L1TParticleFlow/interface/gt_datatypes.h +++ b/DataFormats/L1TParticleFlow/interface/gt_datatypes.h @@ -169,9 +169,7 @@ namespace l1gt { return ret; } - inline static Sum unpack(const uint64_t &src){ - return unpack_ap(src); - } + inline static Sum unpack(const uint64_t &src) { return unpack_ap(src); } inline void initFromBits(const ap_uint &src) { unsigned int start = 0; diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc index 5d230f065b02f..e7afe2ec4d269 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc @@ -46,14 +46,13 @@ class L1CTJetFileWriter : public edm::one::EDAnalyzer l1t::demo::BoardDataWriter fileWriterOutputToGT_; std::vector>, edm::EDGetTokenT>>> tokens_; - std::vector> tokensToWrite_; + std::vector> tokensToWrite_; //std::vector>> jetsTokens_; //std::vector>> mhtTokens_; }; L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) - : - collections_(iConfig.getUntrackedParameter>("collections", + : collections_(iConfig.getUntrackedParameter>("collections", std::vector())), nJets_(iConfig.getParameter("nJets")), nFramesPerBX_(iConfig.getParameter("nFramesPerBX")), @@ -68,31 +67,31 @@ L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) ctl2BoardTMUX_, maxLinesPerFile_, channelSpecsOutputToGT_) { - for(const auto &pset : collections_){ - edm::EDGetTokenT> jetToken; - edm::EDGetTokenT> mhtToken; - bool writeJetToken(false), writeMhtToken(false); - if(pset.exists("jets")){ - jetToken = consumes>(pset.getParameter("jets")); - writeJetToken = true; - } - if(pset.exists("mht")){ - mhtToken = consumes>(pset.getParameter("mht")); - writeMhtToken = true; - } - tokens_.push_back(std::make_pair(jetToken, mhtToken)); - tokensToWrite_.push_back(std::make_pair(writeJetToken, writeMhtToken)); - } - } + for (const auto& pset : collections_) { + edm::EDGetTokenT> jetToken; + edm::EDGetTokenT> mhtToken; + bool writeJetToken(false), writeMhtToken(false); + if (pset.exists("jets")) { + jetToken = consumes>(pset.getParameter("jets")); + writeJetToken = true; + } + if (pset.exists("mht")) { + mhtToken = consumes>(pset.getParameter("mht")); + writeMhtToken = true; + } + tokens_.push_back(std::make_pair(jetToken, mhtToken)); + tokensToWrite_.push_back(std::make_pair(writeJetToken, writeMhtToken)); + } +} void L1CTJetFileWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { using namespace edm; // 1) Pack collections in the order they're specified. jets then sums within collection std::vector> link_words; - for(unsigned iCollection = 0; iCollection < collections_.size(); iCollection++){ - if(tokensToWrite_.at(iCollection).first){ - const auto &jetToken = tokens_.at(iCollection).first; + for (unsigned iCollection = 0; iCollection < collections_.size(); iCollection++) { + if (tokensToWrite_.at(iCollection).first) { + const auto& jetToken = tokens_.at(iCollection).first; // 2) Encode jet information onto vectors containing link data // TODO remove the sort here and sort the input collection where it's created const edm::View& jets = iEvent.get(jetToken); @@ -106,9 +105,9 @@ void L1CTJetFileWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& link_words.insert(link_words.end(), outputJets.begin(), outputJets.end()); } - if(tokensToWrite_.at(iCollection).second){ + if (tokensToWrite_.at(iCollection).second) { // 3) Encode sums onto vectors containing link data - const auto &mhtToken = tokens_.at(iCollection).second; + const auto& mhtToken = tokens_.at(iCollection).second; const edm::View& mht = iEvent.get(mhtToken); std::vector orderedSums; std::copy(mht.begin(), mht.end(), std::back_inserter(orderedSums)); @@ -164,7 +163,6 @@ std::vector> L1CTJetFileWriter::encodeSums(const std::vector Date: Wed, 4 Oct 2023 16:40:57 +0200 Subject: [PATCH 019/281] Change configuration of L1CTJetFileWriter plugin with customisable number of objects to write --- .../plugins/L1CTJetFileWriter.cc | 73 ++++++++++--------- .../test/make_l1ct_binaryFiles_cfg.py | 14 ++-- 2 files changed, 49 insertions(+), 38 deletions(-) diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc index e7afe2ec4d269..ca7c3e552f1f2 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc @@ -1,4 +1,5 @@ #include +#include // user include files #include "FWCore/Framework/interface/Frameworkfwd.h" @@ -31,7 +32,7 @@ class L1CTJetFileWriter : public edm::one::EDAnalyzer private: // ----------constants, enums and typedefs --------- std::vector collections_; - unsigned nJets_; + size_t nFramesPerBX_; size_t ctl2BoardTMUX_; size_t gapLengthOutput_; @@ -41,23 +42,20 @@ class L1CTJetFileWriter : public edm::one::EDAnalyzer // ----------member functions ---------------------- void analyze(const edm::Event&, const edm::EventSetup&) override; void endJob() override; - std::vector> encodeJets(const std::vector jets); - std::vector> encodeSums(const std::vector jets); + std::vector> encodeJets(const std::vector jets, unsigned nJets); + std::vector> encodeSums(const std::vector jets, unsigned nSums); l1t::demo::BoardDataWriter fileWriterOutputToGT_; std::vector>, edm::EDGetTokenT>>> tokens_; std::vector> tokensToWrite_; - //std::vector>> jetsTokens_; - //std::vector>> mhtTokens_; + std::vector nJets_; + std::vector nSums_; }; L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) - : collections_(iConfig.getUntrackedParameter>("collections", - std::vector())), - nJets_(iConfig.getParameter("nJets")), + : collections_(iConfig.getParameter>("collections")), nFramesPerBX_(iConfig.getParameter("nFramesPerBX")), ctl2BoardTMUX_(iConfig.getParameter("TMUX")), - gapLengthOutput_(ctl2BoardTMUX_ * nFramesPerBX_ - 2 * (nJets_ + 1) * collections_.size()), maxLinesPerFile_(iConfig.getParameter("maxLinesPerFile")), channelSpecsOutputToGT_{{{"jets", 0}, {{ctl2BoardTMUX_, gapLengthOutput_}, {0}}}}, fileWriterOutputToGT_(l1t::demo::parseFileFormat(iConfig.getParameter("format")), @@ -70,18 +68,24 @@ L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) for (const auto& pset : collections_) { edm::EDGetTokenT> jetToken; edm::EDGetTokenT> mhtToken; + unsigned nJets = pset.getParameter("nJets"); + unsigned nSums = pset.getParameter("nSums"); + nJets_.push_back(nJets); + nSums_.push_back(nSums); bool writeJetToken(false), writeMhtToken(false); - if (pset.exists("jets")) { + if (nJets > 0) { jetToken = consumes>(pset.getParameter("jets")); writeJetToken = true; } - if (pset.exists("mht")) { + if (nSums > 0) { mhtToken = consumes>(pset.getParameter("mht")); writeMhtToken = true; } tokens_.push_back(std::make_pair(jetToken, mhtToken)); tokensToWrite_.push_back(std::make_pair(writeJetToken, writeMhtToken)); } + gapLengthOutput_ = ctl2BoardTMUX_ * nFramesPerBX_ - 2 * std::accumulate(nJets_.begin(), nJets_.end(), 0) - std::accumulate(nSums_.begin(), nSums_.end(), 0); + } void L1CTJetFileWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { @@ -93,7 +97,6 @@ void L1CTJetFileWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& if (tokensToWrite_.at(iCollection).first) { const auto& jetToken = tokens_.at(iCollection).first; // 2) Encode jet information onto vectors containing link data - // TODO remove the sort here and sort the input collection where it's created const edm::View& jets = iEvent.get(jetToken); std::vector sortedJets; sortedJets.reserve(jets.size()); @@ -101,7 +104,7 @@ void L1CTJetFileWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& std::stable_sort( sortedJets.begin(), sortedJets.end(), [](l1t::PFJet i, l1t::PFJet j) { return (i.hwPt() > j.hwPt()); }); - const auto outputJets(encodeJets(sortedJets)); + const auto outputJets(encodeJets(sortedJets, nJets_.at(iCollection))); link_words.insert(link_words.end(), outputJets.begin(), outputJets.end()); } @@ -111,8 +114,7 @@ void L1CTJetFileWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& const edm::View& mht = iEvent.get(mhtToken); std::vector orderedSums; std::copy(mht.begin(), mht.end(), std::back_inserter(orderedSums)); - // TODO: reorder the sums checking the EtSumType - const auto outputSums(encodeSums(orderedSums)); + const auto outputSums(encodeSums(orderedSums, nSums_.at(iCollection))); link_words.insert(link_words.end(), outputSums.begin(), outputSums.end()); } } @@ -128,13 +130,13 @@ void L1CTJetFileWriter::endJob() { fileWriterOutputToGT_.flush(); } -std::vector> L1CTJetFileWriter::encodeJets(const std::vector jets) { +std::vector> L1CTJetFileWriter::encodeJets(const std::vector jets, const unsigned nJets) { std::vector> jet_words; - for (unsigned i = 0; i < nJets_; i++) { + for (unsigned i = 0; i < nJets; i++) { l1t::PFJet j; if (i < jets.size()) { j = jets.at(i); - } else { // pad up to nJets_ with null jets + } else { // pad up to nJets with null jets l1t::PFJet j(0, 0, 0, 0, 0, 0); } jet_words.push_back(j.encodedJet()[0]); @@ -143,21 +145,24 @@ std::vector> L1CTJetFileWriter::encodeJets(const std::vector> L1CTJetFileWriter::encodeSums(const std::vector sums) { - // Send MHT first, then MET - // Need two l1t::EtSum for each MHT, MET (four total) - // No MET consumed for now - send 0s on second word +std::vector> L1CTJetFileWriter::encodeSums(const std::vector sums, unsigned nSums) { + // Need two l1t::EtSum for each GT Sum std::vector> sum_words; - int valid = sums.at(0).pt() > 0; - // TODO this is not going to be bit exact - l1gt::Sum ht; - ht.valid = valid; - ht.vector_pt.V = sums.at(1).hwPt(); - ht.vector_phi.V = sums.at(1).hwPhi(); - ht.scalar_pt.V = sums.at(0).hwPt(); - //l1gt::Sum ht{valid, sums.at(1).pt(), sums.at(1).phi() / l1gt::Scales::ETAPHI_LSB, sums.at(0).pt()}; - sum_words.push_back(ht.pack()); - sum_words.push_back(0); + for(unsigned i = 0; i < nSums; i++){ + if(2*i < sums.size()){ + l1gt::Sum gtSum; + gtSum.valid = 1; // if the sums are sent at all, they are valid + gtSum.vector_pt.V = sums.at(2*i+1).hwPt(); + gtSum.vector_phi.V = sums.at(2*i+1).hwPhi(); + gtSum.scalar_pt.V = sums.at(2*i).hwPt(); + sum_words.push_back(gtSum.pack()); + }else{ + l1gt::Sum gtSum; + gtSum.clear(); + gtSum.valid = 1; // if the sums are sent at all, they are valid + sum_words.push_back(gtSum.pack()); + } + } return sum_words; } @@ -168,7 +173,9 @@ void L1CTJetFileWriter::fillDescriptions(edm::ConfigurationDescriptions& descrip edm::ParameterSetDescription vpsd1; vpsd1.addOptional("jets"); vpsd1.addOptional("mht"); - desc.addVPSetUntracked("collections", vpsd1); + vpsd1.add("nJets", 0); + vpsd1.add("nSums", 0); + desc.addVPSet("collections", vpsd1); } desc.add("outputFilename"); desc.add("outputFileExtension", "txt"); diff --git a/L1Trigger/Phase2L1ParticleFlow/test/make_l1ct_binaryFiles_cfg.py b/L1Trigger/Phase2L1ParticleFlow/test/make_l1ct_binaryFiles_cfg.py index 10ca331f6ec76..49e72c8de6ad1 100644 --- a/L1Trigger/Phase2L1ParticleFlow/test/make_l1ct_binaryFiles_cfg.py +++ b/L1Trigger/Phase2L1ParticleFlow/test/make_l1ct_binaryFiles_cfg.py @@ -40,7 +40,8 @@ "drop l1tPFClusters_*_*_*", "drop l1tPFTracks_*_*_*", "drop l1tPFCandidates_*_*_*", - "drop l1tTkPrimaryVertexs_*_*_*") + "drop l1tTkPrimaryVertexs_*_*_*"), + skipEvents = cms.untracked.uint32(0), ) process.load('Configuration.Geometry.GeometryExtended2026D88Reco_cff') @@ -63,10 +64,13 @@ process.l1tSAMuonsGmt = l1tStandaloneMuons.clone() from L1Trigger.Phase2L1ParticleFlow.l1tJetFileWriter_cfi import l1tSeededConeJetFileWriter -l1ctLayer2SCJetsProducts = cms.untracked.VPSet([cms.PSet(jets = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulator"), - mht = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulatorMHT")), - cms.PSet(jets = cms.InputTag("l1tSC8PFL1PuppiCorrectedEmulator"),) - ]) +l1ctLayer2SCJetsProducts = cms.VPSet([cms.PSet(jets = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulator"), + nJets = cms.uint32(12), + mht = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulatorMHT"), + nSums = cms.uint32(2)), + cms.PSet(jets = cms.InputTag("l1tSC8PFL1PuppiCorrectedEmulator"), + nJets = cms.uint32(12)) + ]) process.l1tLayer2SeedConeJetWriter = l1tSeededConeJetFileWriter.clone(collections = l1ctLayer2SCJetsProducts) process.l1tLayer1BarrelTDR = process.l1tLayer1Barrel.clone() From abaf57eb77a74f4959bc3ece506c855da534bba9 Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Wed, 4 Oct 2023 17:22:17 +0200 Subject: [PATCH 020/281] Sanitise GTSum pack/pack_ap. Perform HT emulator jet cuts in hardware units. --- .../L1TParticleFlow/interface/gt_datatypes.h | 7 ++++++- .../plugins/L1CTJetFileWriter.cc | 7 ++----- .../Phase2L1ParticleFlow/plugins/L1MHtPFProducer.cc | 13 ++++++------- .../python/l1tJetFileWriter_cfi.py | 7 ++++--- .../python/l1tMHTPFProducer_cfi.py | 2 +- 5 files changed, 19 insertions(+), 17 deletions(-) diff --git a/DataFormats/L1TParticleFlow/interface/gt_datatypes.h b/DataFormats/L1TParticleFlow/interface/gt_datatypes.h index b2a698ee7d6f2..b1021ab8ec8ee 100644 --- a/DataFormats/L1TParticleFlow/interface/gt_datatypes.h +++ b/DataFormats/L1TParticleFlow/interface/gt_datatypes.h @@ -153,7 +153,7 @@ namespace l1gt { } static const int BITWIDTH = 64; - inline ap_uint pack() const { + inline ap_uint pack_ap() const { ap_uint ret(0); unsigned int start = 0; pack_into_bits(ret, start, valid); @@ -163,6 +163,11 @@ namespace l1gt { return ret; } + inline uint64_t pack() const { + ap_uint x = pack_ap(); + return (uint64_t) x; + } + inline static Sum unpack_ap(const ap_uint &src) { Sum ret; ret.initFromBits(src); diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc index ca7c3e552f1f2..c69c79c888834 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc @@ -155,12 +155,9 @@ std::vector> L1CTJetFileWriter::encodeSums(const std::vector hwJets = convertEDMToHW(edmJets); // convert to the emulator format // Apply pT and eta selections - l1t::PFJetCollection edmJetsFiltered; - std::copy_if(edmJets.begin(), edmJets.end(), std::back_inserter(edmJetsFiltered), [&](auto jet) { - return jet.pt() > minJetPt && std::abs(jet.eta()) < maxJetEta; + std::vector hwJetsFiltered; + std::copy_if(hwJets.begin(), hwJets.end(), std::back_inserter(hwJetsFiltered), [&](auto jet) { + return jet.hwPt > l1ct::Scales::makePtFromFloat(minJetPt) && std::abs(jet.hwEta) < l1ct::Scales::makeGlbEta(maxJetEta); }); - - // Run the emulation - std::vector hwJets = convertEDMToHW(edmJetsFiltered); // convert to the emulator format - l1ct::Sum hwSums = htmht(hwJets); // call the emulator + + l1ct::Sum hwSums = htmht(hwJetsFiltered); // call the emulator std::vector edmSums = convertHWToEDM(hwSums); // convert back to edm format // Put the sums in the event diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py b/L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py index b9a645c6a2872..f26f6507efb13 100644 --- a/L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py +++ b/L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py @@ -1,9 +1,10 @@ import FWCore.ParameterSet.Config as cms l1tSeededConeJetFileWriter = cms.EDAnalyzer('L1CTJetFileWriter', - collections = cms.untracked.VPSet([cms.PSet(jets = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulator"), - mht = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulatorMHT"))]), - nJets = cms.uint32(12), + collections = cms.VPSet(cms.PSet(jets = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulator"), + nJets = cms.uint32(12), + mht = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulatorMHT"), + nSums = cms.uint32(1))), nFramesPerBX = cms.uint32(9), # 360 MHz clock or 25 Gb/s link TMUX = cms.uint32(6), maxLinesPerFile = cms.uint32(1024), diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py b/L1Trigger/Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py index e9d8ebf9c7def..31e3f57591c9e 100644 --- a/L1Trigger/Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py +++ b/L1Trigger/Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py @@ -3,5 +3,5 @@ l1tMHTPFProducer = cms.EDProducer("L1MhtPfProducer", jets = cms.InputTag("l1tSCPFL1PuppiEmulator"), minJetPt = cms.double(30.0), - maxJetEta = cms.double(550 * cms.math.pi / 720) # 2.4 rounded to hardware unit granularity + maxJetEta = cms.double(2.4) ) From b267d45fa8d78802148c0ccb994dde6722b9a0dd Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Fri, 6 Oct 2023 11:18:44 +0200 Subject: [PATCH 021/281] Apply code format --- .../L1TParticleFlow/interface/gt_datatypes.h | 2 +- .../plugins/L1CTJetFileWriter.cc | 18 +++++++++--------- .../plugins/L1MHtPFProducer.cc | 9 +++++---- 3 files changed, 15 insertions(+), 14 deletions(-) diff --git a/DataFormats/L1TParticleFlow/interface/gt_datatypes.h b/DataFormats/L1TParticleFlow/interface/gt_datatypes.h index b1021ab8ec8ee..00a4eae0f0bf3 100644 --- a/DataFormats/L1TParticleFlow/interface/gt_datatypes.h +++ b/DataFormats/L1TParticleFlow/interface/gt_datatypes.h @@ -165,7 +165,7 @@ namespace l1gt { inline uint64_t pack() const { ap_uint x = pack_ap(); - return (uint64_t) x; + return (uint64_t)x; } inline static Sum unpack_ap(const ap_uint &src) { diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc index c69c79c888834..cf4af5b8f7ca9 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc @@ -84,8 +84,8 @@ L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) tokens_.push_back(std::make_pair(jetToken, mhtToken)); tokensToWrite_.push_back(std::make_pair(writeJetToken, writeMhtToken)); } - gapLengthOutput_ = ctl2BoardTMUX_ * nFramesPerBX_ - 2 * std::accumulate(nJets_.begin(), nJets_.end(), 0) - std::accumulate(nSums_.begin(), nSums_.end(), 0); - + gapLengthOutput_ = ctl2BoardTMUX_ * nFramesPerBX_ - 2 * std::accumulate(nJets_.begin(), nJets_.end(), 0) - + std::accumulate(nSums_.begin(), nSums_.end(), 0); } void L1CTJetFileWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { @@ -148,15 +148,15 @@ std::vector> L1CTJetFileWriter::encodeJets(const std::vector> L1CTJetFileWriter::encodeSums(const std::vector sums, unsigned nSums) { // Need two l1t::EtSum for each GT Sum std::vector> sum_words; - for(unsigned i = 0; i < nSums; i++){ - if(2*i < sums.size()){ + for (unsigned i = 0; i < nSums; i++) { + if (2 * i < sums.size()) { l1gt::Sum gtSum; - gtSum.valid = 1; // if the sums are sent at all, they are valid - gtSum.vector_pt.V = sums.at(2*i+1).hwPt(); - gtSum.vector_phi.V = sums.at(2*i+1).hwPhi(); - gtSum.scalar_pt.V = sums.at(2*i).hwPt(); + gtSum.valid = 1; // if the sums are sent at all, they are valid + gtSum.vector_pt.V = sums.at(2 * i + 1).hwPt(); + gtSum.vector_phi.V = sums.at(2 * i + 1).hwPhi(); + gtSum.scalar_pt.V = sums.at(2 * i).hwPt(); sum_words.push_back(gtSum.pack_ap()); - }else{ + } else { sum_words.push_back(0); } } diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1MHtPFProducer.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1MHtPFProducer.cc index 72585860dcc84..fbcc76db7dabf 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1MHtPFProducer.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1MHtPFProducer.cc @@ -47,11 +47,12 @@ void L1MhtPfProducer::produce(edm::StreamID, edm::Event& iEvent, const edm::Even // Apply pT and eta selections std::vector hwJetsFiltered; std::copy_if(hwJets.begin(), hwJets.end(), std::back_inserter(hwJetsFiltered), [&](auto jet) { - return jet.hwPt > l1ct::Scales::makePtFromFloat(minJetPt) && std::abs(jet.hwEta) < l1ct::Scales::makeGlbEta(maxJetEta); + return jet.hwPt > l1ct::Scales::makePtFromFloat(minJetPt) && + std::abs(jet.hwEta) < l1ct::Scales::makeGlbEta(maxJetEta); }); - - l1ct::Sum hwSums = htmht(hwJetsFiltered); // call the emulator - std::vector edmSums = convertHWToEDM(hwSums); // convert back to edm format + + l1ct::Sum hwSums = htmht(hwJetsFiltered); // call the emulator + std::vector edmSums = convertHWToEDM(hwSums); // convert back to edm format // Put the sums in the event std::unique_ptr> mhtCollection(new std::vector(0)); From 03724e842740a76092147bac7085886bfa3059d5 Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Fri, 13 Oct 2023 11:42:21 +0200 Subject: [PATCH 022/281] Fix jet stream padding logic plus some cosmetics --- .../plugins/L1CTJetFileWriter.cc | 22 ++++++++----------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc index cf4af5b8f7ca9..6511f70d63f74 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc @@ -43,7 +43,7 @@ class L1CTJetFileWriter : public edm::one::EDAnalyzer void analyze(const edm::Event&, const edm::EventSetup&) override; void endJob() override; std::vector> encodeJets(const std::vector jets, unsigned nJets); - std::vector> encodeSums(const std::vector jets, unsigned nSums); + std::vector> encodeSums(const std::vector sums, unsigned nSums); l1t::demo::BoardDataWriter fileWriterOutputToGT_; std::vector>, edm::EDGetTokenT>>> tokens_; @@ -81,8 +81,8 @@ L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) mhtToken = consumes>(pset.getParameter("mht")); writeMhtToken = true; } - tokens_.push_back(std::make_pair(jetToken, mhtToken)); - tokensToWrite_.push_back(std::make_pair(writeJetToken, writeMhtToken)); + tokens_.emplace_back(jetToken, mhtToken); + tokensToWrite_.emplace_back(writeJetToken, writeMhtToken); } gapLengthOutput_ = ctl2BoardTMUX_ * nFramesPerBX_ - 2 * std::accumulate(nJets_.begin(), nJets_.end(), 0) - std::accumulate(nSums_.begin(), nSums_.end(), 0); @@ -131,16 +131,12 @@ void L1CTJetFileWriter::endJob() { } std::vector> L1CTJetFileWriter::encodeJets(const std::vector jets, const unsigned nJets) { - std::vector> jet_words; - for (unsigned i = 0; i < nJets; i++) { - l1t::PFJet j; - if (i < jets.size()) { - j = jets.at(i); - } else { // pad up to nJets with null jets - l1t::PFJet j(0, 0, 0, 0, 0, 0); - } - jet_words.push_back(j.encodedJet()[0]); - jet_words.push_back(j.encodedJet()[1]); + // Encode up to nJets jets, padded with 0s + std::vector> jet_words(2 * nJets, 0); // allocate 2 words per jet + for (unsigned i = 0; i < std::min(nJets, (uint)jets.size()); i++) { + l1t::PFJet j = jets.at(i); + jet_words[2 * i] = j.encodedJet()[0]; + jet_words[2 * i + 1] = j.encodedJet()[1]; } return jet_words; } From 3ab8a93e10b32679f3561fbf6777ff75cb936c31 Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Fri, 20 Oct 2023 14:29:13 +0200 Subject: [PATCH 023/281] Fix a naming issue after rebase --- .../python/l1pfJetMet_cff.py | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1pfJetMet_cff.py b/L1Trigger/Phase2L1ParticleFlow/python/l1pfJetMet_cff.py index aab4c6a9583d4..423941d5bb4ae 100644 --- a/L1Trigger/Phase2L1ParticleFlow/python/l1pfJetMet_cff.py +++ b/L1Trigger/Phase2L1ParticleFlow/python/l1pfJetMet_cff.py @@ -1,16 +1,18 @@ import FWCore.ParameterSet.Config as cms -from L1Trigger.Phase2L1ParticleFlow.l1tSeedConePFJetProducer_cfi import l1tSeedConePFJetProducer, l1tSeedConePFJetEmulatorProducer + +from L1Trigger.Phase2L1ParticleFlow.l1SeedConePFJetProducer_cfi import l1SeedConePFJetProducer +from L1Trigger.Phase2L1ParticleFlow.l1SeedConePFJetEmulatorProducer_cfi import l1SeedConePFJetEmulatorProducer from L1Trigger.Phase2L1ParticleFlow.l1tDeregionizerProducer_cfi import l1tDeregionizerProducer as l1tLayer2Deregionizer, l1tDeregionizerProducerExtended as l1tLayer2DeregionizerExtended -l1tSC4PFL1PF = l1tSeedConePFJetProducer.clone(L1PFObjects = 'l1tLayer1:PF') -l1tSC4PFL1Puppi = l1tSeedConePFJetProducer.clone() -l1tSC4PFL1PuppiEmulator = l1tSeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi') -l1tSC8PFL1PuppiEmulator = l1tSeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi', +l1tSC4PFL1PF = l1SeedConePFJetProducer.clone(L1PFObjects = 'l1tLayer1:PF') +l1tSC4PFL1Puppi = l1SeedConePFJetProducer.clone() +l1tSC4PFL1PuppiEmulator = l1SeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi') +l1tSC8PFL1PuppiEmulator = l1SeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi', coneSize = cms.double(0.8)) -l1tSC4PFL1PuppiCorrectedEmulator = l1tSeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi', +l1tSC4PFL1PuppiCorrectedEmulator = l1SeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi', doCorrections = cms.bool(True), correctorFile = cms.string("L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root"), correctorDir = cms.string('L1PuppiSC4EmuJets')) -l1tSC8PFL1PuppiCorrectedEmulator = l1tSeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi', +l1tSC8PFL1PuppiCorrectedEmulator = l1SeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2Deregionizer:Puppi', coneSize = cms.double(0.8), doCorrections = cms.bool(True), correctorFile = cms.string("L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root"), @@ -33,9 +35,9 @@ from L1Trigger.Phase2L1ParticleFlow.l1tMHTPFProducer_cfi import l1tMHTPFProducer l1tSC4PFL1PuppiCorrectedEmulatorMHT = l1tMHTPFProducer.clone(jets = 'l1tSC4PFL1PuppiCorrectedEmulator') -l1tSC4PFL1PuppiExtended = l1tSeedConePFJetProducer.clone(L1PFObjects = 'l1tLayer1Extended:Puppi') -l1tSC4PFL1PuppiExtendedEmulator = l1tSeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2DeregionizerExtended:Puppi') -l1tSC4PFL1PuppiExtendedCorrectedEmulator = l1tSeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2DeregionizerExtended:Puppi', +l1tSC4PFL1PuppiExtended = l1SeedConePFJetProducer.clone(L1PFObjects = 'l1tLayer1Extended:Puppi') +l1tSC4PFL1PuppiExtendedEmulator = l1SeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2DeregionizerExtended:Puppi') +l1tSC4PFL1PuppiExtendedCorrectedEmulator = l1SeedConePFJetEmulatorProducer.clone(L1PFObjects = 'l1tLayer2DeregionizerExtended:Puppi', doCorrections = cms.bool(True), correctorFile = cms.string("L1Trigger/Phase2L1ParticleFlow/data/jecs/jecs_20220308.root"), correctorDir = cms.string('L1PuppiSC4EmuJets')) From 1f7df1d44cdae3ec6669673c67219b03cfa86e95 Mon Sep 17 00:00:00 2001 From: etzia Date: Tue, 31 Oct 2023 08:11:30 +0100 Subject: [PATCH 024/281] Add Run3 promptData JetID --- .../NanoAOD/python/jetsAK4_CHS_cff.py | 8 +- .../NanoAOD/python/jetsAK4_Puppi_cff.py | 8 +- .../interface/PFJetIDSelectionFunctor.h | 265 ++++++++++++------ 3 files changed, 191 insertions(+), 90 deletions(-) diff --git a/PhysicsTools/NanoAOD/python/jetsAK4_CHS_cff.py b/PhysicsTools/NanoAOD/python/jetsAK4_CHS_cff.py index eafbca1c54059..49818f80bd811 100644 --- a/PhysicsTools/NanoAOD/python/jetsAK4_CHS_cff.py +++ b/PhysicsTools/NanoAOD/python/jetsAK4_CHS_cff.py @@ -36,14 +36,14 @@ ) tightJetId = cms.EDProducer("PatJetIDValueMapProducer", filterParams=cms.PSet( - version = cms.string('RUN3WINTER22CHS'), + version = cms.string('RUN3CHSruns2022FGruns2023CD'), quality = cms.string('TIGHT'), ), src = cms.InputTag("updatedJets") ) tightJetIdLepVeto = cms.EDProducer("PatJetIDValueMapProducer", filterParams=cms.PSet( - version = cms.string('RUN3WINTER22CHS'), + version = cms.string('RUN3CHSruns2022FGruns2023CD'), quality = cms.string('TIGHTLEPVETO'), ), src = cms.InputTag("updatedJets") @@ -61,9 +61,9 @@ ) run3_jme_Winter22runsBCDEprompt.toModify( - tightJetId.filterParams, version = "RUN3WINTER22CHSrunsBCDEprompt" + tightJetId.filterParams, version = "RUN3CHSruns2022BCDEprompt" ).toModify( - tightJetIdLepVeto.filterParams, version = "RUN3WINTER22CHSrunsBCDEprompt" + tightJetIdLepVeto.filterParams, version = "RUN3CHSruns2022BCDEprompt" ) bJetVars = cms.EDProducer("JetRegressionVarProducer", diff --git a/PhysicsTools/NanoAOD/python/jetsAK4_Puppi_cff.py b/PhysicsTools/NanoAOD/python/jetsAK4_Puppi_cff.py index f3eac030aa776..9ca6530aea4d3 100644 --- a/PhysicsTools/NanoAOD/python/jetsAK4_Puppi_cff.py +++ b/PhysicsTools/NanoAOD/python/jetsAK4_Puppi_cff.py @@ -28,14 +28,14 @@ tightJetPuppiId = cms.EDProducer("PatJetIDValueMapProducer", filterParams=cms.PSet( - version = cms.string('RUN3WINTER22PUPPI'), + version = cms.string('RUN3PUPPIruns2022FGruns2023CD'), quality = cms.string('TIGHT'), ), src = cms.InputTag("updatedJetsPuppi") ) tightJetPuppiIdLepVeto = cms.EDProducer("PatJetIDValueMapProducer", filterParams=cms.PSet( - version = cms.string('RUN3WINTER22PUPPI'), + version = cms.string('RUN3PUPPIruns2022FGruns2023CD'), quality = cms.string('TIGHTLEPVETO'), ), src = cms.InputTag("updatedJetsPuppi") @@ -54,9 +54,9 @@ ) run3_jme_Winter22runsBCDEprompt.toModify( - tightJetPuppiId.filterParams, version = "RUN3WINTER22PUPPIrunsBCDEprompt" + tightJetPuppiId.filterParams, version = "RUN3PUPPIruns2022BCDEprompt" ).toModify( - tightJetPuppiIdLepVeto.filterParams, version = "RUN3WINTER22PUPPIrunsBCDEprompt" + tightJetPuppiIdLepVeto.filterParams, version = "RUN3PUPPIruns2022BCDEprompt" ) #HF shower shape recomputation diff --git a/PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h b/PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h index a97f0c9d7c88f..c5b4c8baa62ef 100644 --- a/PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h +++ b/PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h @@ -37,10 +37,10 @@ class PFJetIDSelectionFunctor : public Selector { SUMMER18PUPPI, RUN2UL16CHS, RUN2UL16PUPPI, - RUN3WINTER22CHSrunsBCDEprompt, - RUN3WINTER22PUPPIrunsBCDEprompt, - RUN3WINTER22CHS, - RUN3WINTER22PUPPI, + RUN3CHSrunsBCDEprompt, + RUN3PUPPIrunsBCDEprompt, + RUN3CHSruns2022FGruns2023CD, + RUN3PUPPIruns2022FGruns2023CD, RUN2ULCHS, RUN2ULPUPPI, N_VERSIONS @@ -80,16 +80,17 @@ class PFJetIDSelectionFunctor : public Selector { version_ = RUN2ULCHS; else if (versionStr == "RUN2ULPUPPI") version_ = RUN2ULPUPPI; - else if (versionStr == "RUN3WINTER22CHSrunsBCDEprompt") - version_ = RUN3WINTER22CHSrunsBCDEprompt; - else if (versionStr == "RUN3WINTER22PUPPIrunsBCDEprompt") - version_ = RUN3WINTER22PUPPIrunsBCDEprompt; - else if (versionStr == "RUN3WINTER22CHS") - version_ = RUN3WINTER22CHS; - else if (versionStr == "RUN3WINTER22PUPPI") - version_ = RUN3WINTER22PUPPI; + else if (versionStr == "RUN3CHSrunsBCDEprompt") + version_ = RUN3CHSrunsBCDEprompt; + else if (versionStr == "RUN3PUPPIrunsBCDEprompt") + version_ = RUN3PUPPIrunsBCDEprompt; + else if (versionStr == "RUN3CHSruns2022FGruns2023CD") + version_ = RUN3CHSruns2022FGruns2023CD; + else if (versionStr == "RUN3PUPPIruns2022FGruns2023CD") + version_ = RUN3PUPPIruns2022FGruns2023CD; else - version_ = RUN3WINTER22PUPPI; //set RUN3WINTER22PUPPI as default //this is extremely unsafe + version_ = + RUN3PUPPIruns2022FGruns2023CD; //set RUN3PUPPIruns2022FGruns2023CD as default //this is extremely unsafe if (qualityStr == "LOOSE") quality_ = LOOSE; @@ -131,22 +132,23 @@ class PFJetIDSelectionFunctor : public Selector { static edm::ParameterSetDescription getDescription() { edm::ParameterSetDescription desc; - desc.ifValue(edm::ParameterDescription("version", "RUN3WINTER22PUPPI", true, edm::Comment("")), - edm::allowedValues("FIRSTDATA", - "RUNIISTARTUP", - "WINTER16", - "WINTER17", - "WINTER17PUPPI", - "SUMMER18", - "SUMMER18PUPPI", - "RUN2UL16CHS", - "RUN2UL16PUPPI", - "RUN2ULCHS", - "RUN2ULPUPPI", - "RUN3WINTER22CHSrunsBCDEprompt", - "RUN3WINTER22PUPPIrunsBCDEprompt", - "RUN3WINTER22CHS", - "RUN3WINTER22PUPPI")); + desc.ifValue( + edm::ParameterDescription("version", "RUN3PUPPIruns2022FGruns2023CD", true, edm::Comment("")), + edm::allowedValues("FIRSTDATA", + "RUNIISTARTUP", + "WINTER16", + "WINTER17", + "WINTER17PUPPI", + "SUMMER18", + "SUMMER18PUPPI", + "RUN2UL16CHS", + "RUN2UL16PUPPI", + "RUN2ULCHS", + "RUN2ULPUPPI", + "RUN3CHSrunsBCDEprompt", + "RUN3PUPPIrunsBCDEprompt", + "RUN3CHSruns2022FGruns2023CD", + "RUN3PUPPIruns2022FGruns2023CD")); desc.ifValue(edm::ParameterDescription("quality", "TIGHT", true, edm::Comment("")), edm::allowedValues("LOOSE", "TIGHT", "TIGHTLEPVETO")); desc.addOptional>("cutsToIgnore")->setComment(""); @@ -211,9 +213,9 @@ class PFJetIDSelectionFunctor : public Selector { bool operator()(const pat::Jet &jet, pat::strbitset &ret) override { if (version_ == FIRSTDATA || version_ == RUNIISTARTUP || version_ == WINTER16 || version_ == WINTER17 || version_ == WINTER17PUPPI || version_ == SUMMER18 || version_ == SUMMER18PUPPI || version_ == RUN2UL16CHS || - version_ == RUN2UL16PUPPI || version_ == RUN3WINTER22CHSrunsBCDEprompt || - version_ == RUN3WINTER22PUPPIrunsBCDEprompt || version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI || - version_ == RUN2ULCHS || version_ == RUN2ULPUPPI) { + version_ == RUN2UL16PUPPI || version_ == RUN3CHSrunsBCDEprompt || version_ == RUN3PUPPIrunsBCDEprompt || + version_ == RUN3CHSruns2022FGruns2023CD || version_ == RUN3PUPPIruns2022FGruns2023CD || version_ == RUN2ULCHS || + version_ == RUN2ULPUPPI) { if (jet.currentJECLevel() == "Uncorrected" || !jet.jecSetsAvailable()) return firstDataCuts(jet, ret, version_); else @@ -231,9 +233,9 @@ class PFJetIDSelectionFunctor : public Selector { bool operator()(const reco::PFJet &jet, pat::strbitset &ret) { if (version_ == FIRSTDATA || version_ == RUNIISTARTUP || version_ == WINTER16 || version_ == WINTER17 || version_ == WINTER17PUPPI || version_ == SUMMER18 || version_ == SUMMER18PUPPI || version_ == RUN2UL16CHS || - version_ == RUN2UL16PUPPI || version_ == RUN3WINTER22CHSrunsBCDEprompt || - version_ == RUN3WINTER22PUPPIrunsBCDEprompt || version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI || - version_ == RUN2ULCHS || version_ == RUN2ULPUPPI) { + version_ == RUN2UL16PUPPI || version_ == RUN3CHSrunsBCDEprompt || version_ == RUN3PUPPIrunsBCDEprompt || + version_ == RUN3CHSruns2022FGruns2023CD || version_ == RUN3PUPPIruns2022FGruns2023CD || version_ == RUN2ULCHS || + version_ == RUN2ULPUPPI) { return firstDataCuts(jet, ret, version_); } else { return false; @@ -380,13 +382,13 @@ class PFJetIDSelectionFunctor : public Selector { float etaB = 2.4; // Cuts for |eta| < 2.6 for Summer18 if (version_ == SUMMER18 || version_ == SUMMER18PUPPI || version_ == RUN2ULCHS || version_ == RUN2ULPUPPI || - version_ == RUN3WINTER22CHSrunsBCDEprompt || version_ == RUN3WINTER22PUPPIrunsBCDEprompt || - version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI) + version_ == RUN3CHSrunsBCDEprompt || version_ == RUN3PUPPIrunsBCDEprompt || + version_ == RUN3CHSruns2022FGruns2023CD || version_ == RUN3PUPPIruns2022FGruns2023CD) etaB = 2.6; if ((version_ != WINTER17 && version_ != WINTER17PUPPI && version_ != SUMMER18 && version_ != SUMMER18PUPPI && - version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN3WINTER22CHSrunsBCDEprompt && - version_ != RUN3WINTER22PUPPIrunsBCDEprompt && version_ != RUN3WINTER22CHS && version_ != RUN3WINTER22PUPPI && - version_ != RUN2ULCHS && version_ != RUN2ULPUPPI) || + version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN3CHSrunsBCDEprompt && + version_ != RUN3PUPPIrunsBCDEprompt && version_ != RUN3CHSruns2022FGruns2023CD && + version_ != RUN3PUPPIruns2022FGruns2023CD && version_ != RUN2ULCHS && version_ != RUN2ULPUPPI) || quality_ != TIGHT) { if (ignoreCut(indexCEF_) || (cef < cut(indexCEF_, double()) || std::abs(jet.eta()) > etaB)) passCut(ret, indexCEF_); @@ -593,8 +595,8 @@ class PFJetIDSelectionFunctor : public Selector { (nneutrals < cut(indexNNeutrals_FW_U_, int()) || std::abs(jet.eta()) <= 3.0)) passCut(ret, indexNNeutrals_FW_U_); - } else if ((version_ == SUMMER18) || (version_ == RUN2ULCHS) || (version_ == RUN3WINTER22CHSrunsBCDEprompt) || - (version_ == RUN3WINTER22CHS)) { + } else if ((version_ == SUMMER18) || (version_ == RUN2ULCHS) || (version_ == RUN3CHSrunsBCDEprompt) || + (version_ == RUN3CHSruns2022FGruns2023CD)) { // Cuts for |eta| <= 2.6 for SUMMER18 scenario if (ignoreCut(indexNConstituents_) || (nconstituents > cut(indexNConstituents_, int()) || std::abs(jet.eta()) > 2.6)) @@ -606,6 +608,8 @@ class PFJetIDSelectionFunctor : public Selector { if (quality_ == TIGHTLEPVETO) { if (ignoreCut(indexMUF_) || (muf < cut(indexMUF_, double()) || std::abs(jet.eta()) > 2.6)) passCut(ret, indexMUF_); + if (ignoreCut(indexCEF_) || (cef < cut(indexCEF_, double()) || std::abs(jet.eta()) > 2.6)) //edw + passCut(ret, indexCEF_); } // Cuts for 2.6 <= |eta| <= 2.7 for SUMMER18 scenario @@ -647,8 +651,8 @@ class PFJetIDSelectionFunctor : public Selector { passCut(ret, indexNNeutrals_FW_); } - else if ((version_ == SUMMER18PUPPI) || (version_ == RUN2ULPUPPI) || - (version_ == RUN3WINTER22PUPPIrunsBCDEprompt) || (version_ == RUN3WINTER22PUPPI)) { + else if ((version_ == SUMMER18PUPPI) || (version_ == RUN2ULPUPPI) || (version_ == RUN3PUPPIrunsBCDEprompt) || + (version_ == RUN3PUPPIruns2022FGruns2023CD)) { // Cuts for |eta| <= 2.6 for SUMMER18PUPPI scenario if (ignoreCut(indexNConstituents_) || (nconstituents > cut(indexNConstituents_, int()) || std::abs(jet.eta()) > 2.6)) @@ -660,6 +664,8 @@ class PFJetIDSelectionFunctor : public Selector { if (quality_ == TIGHTLEPVETO) { if (ignoreCut(indexMUF_) || (muf < cut(indexMUF_, double()) || std::abs(jet.eta()) > 2.6)) passCut(ret, indexMUF_); + if (ignoreCut(indexCEF_) || (cef < cut(indexCEF_, double()) || std::abs(jet.eta()) > 2.6)) //edw + passCut(ret, indexCEF_); } // Cuts for 2.6 <= |eta| <= 2.7 for SUMMER18PUPPI scenario @@ -709,8 +715,8 @@ class PFJetIDSelectionFunctor : public Selector { push_back("NHF"); if ((version_ != WINTER17 && version_ != WINTER17PUPPI && version_ != SUMMER18 && version_ != SUMMER18PUPPI && version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN2ULCHS && version_ != RUN2ULPUPPI && - version_ != RUN3WINTER22CHSrunsBCDEprompt && version_ != RUN3WINTER22PUPPIrunsBCDEprompt && - version_ != RUN3WINTER22CHS && version_ != RUN3WINTER22PUPPI) || + version_ != RUN3CHSrunsBCDEprompt && version_ != RUN3PUPPIrunsBCDEprompt && + version_ != RUN3CHSruns2022FGruns2023CD && version_ != RUN3PUPPIruns2022FGruns2023CD) || quality_ != TIGHT) push_back("CEF"); push_back("NEF"); @@ -775,8 +781,7 @@ class PFJetIDSelectionFunctor : public Selector { push_back("MUF"); } } - if ((version_ == SUMMER18) || (version_ == RUN2ULCHS) || (version_ == RUN3WINTER22CHSrunsBCDEprompt) || - (version_ == RUN3WINTER22CHS)) { + if ((version_ == SUMMER18) || (version_ == RUN2ULCHS)) { push_back("NHF_TR"); push_back("NEF_TR"); push_back("NCH_TR"); @@ -793,8 +798,41 @@ class PFJetIDSelectionFunctor : public Selector { push_back("CEF_TR"); } } - if ((version_ == SUMMER18PUPPI) || (version_ == RUN2ULPUPPI) || (version_ == RUN3WINTER22PUPPIrunsBCDEprompt) || - (version_ == RUN3WINTER22PUPPI)) { + if ((version_ == RUN3CHSrunsBCDEprompt)) { + push_back("NHF_TR"); + push_back("NEF_TR"); + push_back("NCH_TR"); + push_back("NEF_EC_U"); + push_back("nNeutrals_EC"); + push_back("NEF_FW"); + push_back("NHF_FW"); + push_back("nNeutrals_FW"); + + if (quality_ == TIGHTLEPVETO) { + push_back("CEF"); + push_back("MUF"); + push_back("MUF_TR"); + push_back("CEF_TR"); + } + } + if ((version_ == RUN3CHSruns2022FGruns2023CD)) { + push_back("NHF_TR"); + push_back("NEF_TR"); + push_back("NCH_TR"); + push_back("NHF_EC"); + push_back("NEF_EC_U"); + push_back("nNeutrals_EC"); + push_back("NEF_FW"); + push_back("nNeutrals_FW"); + + if (quality_ == TIGHTLEPVETO) { + push_back("CEF"); + push_back("MUF"); + push_back("MUF_TR"); + push_back("CEF_TR"); + } + } + if ((version_ == SUMMER18PUPPI) || (version_ == RUN2ULPUPPI)) { push_back("NHF_TR"); push_back("NEF_TR"); push_back("NHF_EC"); @@ -809,11 +847,24 @@ class PFJetIDSelectionFunctor : public Selector { push_back("CEF_TR"); } } + if ((version_ == RUN3PUPPIrunsBCDEprompt) || (version_ == RUN3PUPPIruns2022FGruns2023CD)) { + push_back("NHF_TR"); + push_back("NEF_TR"); + push_back("NHF_EC"); + push_back("NEF_FW"); + push_back("nNeutrals_FW_L"); + if (quality_ == TIGHTLEPVETO) { + push_back("CEF"); + push_back("MUF"); + push_back("MUF_TR"); + push_back("CEF_TR"); + } + } if ((version_ == WINTER17 || version_ == WINTER17PUPPI || version_ == SUMMER18 || version_ == SUMMER18PUPPI || version_ == RUN2UL16CHS || version_ == RUN2UL16PUPPI || version_ == RUN2ULCHS || version_ == RUN2ULPUPPI || - version_ == RUN3WINTER22CHSrunsBCDEprompt || version_ == RUN3WINTER22PUPPIrunsBCDEprompt || - version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI) && + version_ == RUN3CHSrunsBCDEprompt || version_ == RUN3PUPPIrunsBCDEprompt || + version_ == RUN3CHSruns2022FGruns2023CD || version_ == RUN3PUPPIruns2022FGruns2023CD) && quality_ == LOOSE) { edm::LogWarning("BadJetIDVersion") << "The LOOSE operating point is only supported for the WINTER16 JetID version -- defaulting to TIGHT"; @@ -843,13 +894,13 @@ class PFJetIDSelectionFunctor : public Selector { set("NHF", 0.9); if (version_ != WINTER17 && version_ != WINTER17PUPPI && version_ != SUMMER18 && version_ != SUMMER18PUPPI && version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN2ULCHS && version_ != RUN2ULPUPPI && - version_ != RUN3WINTER22CHSrunsBCDEprompt && version_ != RUN3WINTER22PUPPIrunsBCDEprompt && - version_ != RUN3WINTER22CHS && version_ != RUN3WINTER22PUPPI) + version_ != RUN3CHSrunsBCDEprompt && version_ != RUN3PUPPIrunsBCDEprompt && + version_ != RUN3CHSruns2022FGruns2023CD && version_ != RUN3PUPPIruns2022FGruns2023CD) set("CEF", 0.99); - if (version_ == RUN3WINTER22CHSrunsBCDEprompt || version_ == RUN3WINTER22PUPPIrunsBCDEprompt || - version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI) + if (version_ == RUN3CHSrunsBCDEprompt || version_ == RUN3PUPPIrunsBCDEprompt || + version_ == RUN3CHSruns2022FGruns2023CD || version_ == RUN3PUPPIruns2022FGruns2023CD) set("CHF", 0.01); - if (version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI) + if (version_ == RUN3CHSruns2022FGruns2023CD || version_ == RUN3PUPPIruns2022FGruns2023CD) set("NHF", 0.99); set("NEF", 0.9); set("NCH", 0); @@ -911,32 +962,54 @@ class PFJetIDSelectionFunctor : public Selector { set("NEF_FW", 0.90); set("nNeutrals_FW_L", 2); set("nNeutrals_FW_U", 999999); - } else if (version_ == RUN2ULCHS || version_ == RUN3WINTER22CHSrunsBCDEprompt || version_ == RUN3WINTER22CHS) { + } else if (version_ == RUN2ULCHS) { set("NHF_TR", 0.9); set("NEF_TR", 0.99); set("NCH_TR", 0); set("NEF_EC_L", 0.01); set("NEF_EC_U", 0.99); - set("nNeutrals_EC", 2); + set("nNeutrals_EC", 1); set("NHF_FW", 0.2); set("NEF_FW", 0.90); set("nNeutrals_FW", 10); - } else if (version_ == RUN2ULPUPPI || version_ == RUN3WINTER22PUPPIrunsBCDEprompt) { + } else if (version_ == RUN3CHSrunsBCDEprompt) { set("NHF_TR", 0.9); set("NEF_TR", 0.99); - set("NHF_EC", 0.9999); - set("NHF_FW", -1.0); + set("NCH_TR", 0); + set("NEF_EC_U", 0.99); + set("nNeutrals_EC", 1); + set("NHF_FW", 0.2); set("NEF_FW", 0.90); + set("nNeutrals_FW", 10); + } else if (version_ == RUN3CHSruns2022FGruns2023CD) { + set("NHF_TR", 0.9); + set("NEF_TR", 0.99); + set("NCH_TR", 0); + set("NEF_EC_U", 0.99); + set("NHF_EC", 0.99); + set("nNeutrals_EC", 1); + set("NEF_FW", 0.4); + set("nNeutrals_FW", 10); + } else if (version_ == RUN2ULPUPPI) { + set("NHF_TR", 0.9); + set("NEF_TR", 0.99); + set("NHF_EC", 0.99); + set("NHF_FW", -1.0); + set("NEF_FW", 0.4); set("nNeutrals_FW_L", 2); set("nNeutrals_FW_U", 999999); - } else if (version_ == RUN3WINTER22PUPPI) { + } else if (version_ == RUN3PUPPIrunsBCDEprompt) { set("NHF_TR", 0.9); set("NEF_TR", 0.99); set("NHF_EC", 0.9999); - set("NHF_FW", -1.0); set("NEF_FW", 0.90); + set("nNeutrals_FW_L", 2); + } else if (version_ == RUN3PUPPIruns2022FGruns2023CD) { + set("NHF_TR", 0.9); + set("NEF_TR", 0.99); + set("NHF_EC", 0.99); + set("NEF_FW", 0.4); set("nNeutrals_FW_L", 1); - set("nNeutrals_FW_U", 999999); } } else if (quality_ == TIGHTLEPVETO) { set("CHF", 0.0); @@ -954,10 +1027,10 @@ class PFJetIDSelectionFunctor : public Selector { set("NEF_FW", 0.90); set("nNeutrals_FW", 10); } - if (version_ == RUN3WINTER22CHSrunsBCDEprompt || version_ == RUN3WINTER22PUPPIrunsBCDEprompt || - version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI) { + if (version_ == RUN3CHSrunsBCDEprompt || version_ == RUN3PUPPIrunsBCDEprompt || + version_ == RUN3CHSruns2022FGruns2023CD || version_ == RUN3PUPPIruns2022FGruns2023CD) { set("CHF", 0.01); - } else if (version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI) { + } else if (version_ == RUN3CHSruns2022FGruns2023CD || version_ == RUN3PUPPIruns2022FGruns2023CD) { set("NHF", 0.99); } else if (version_ == WINTER17PUPPI) { set("NHF_EC", 0.99); @@ -1024,7 +1097,7 @@ class PFJetIDSelectionFunctor : public Selector { set("NEF_FW", 0.90); set("nNeutrals_FW_L", 2); set("nNeutrals_FW_U", 999999); - } else if (version_ == RUN2ULCHS || version_ == RUN3WINTER22CHSrunsBCDEprompt || version_ == RUN3WINTER22CHS) { + } else if (version_ == RUN2ULCHS) { set("NHF_TR", 0.9); set("NEF_TR", 0.99); set("MUF_TR", 0.8); @@ -1032,11 +1105,33 @@ class PFJetIDSelectionFunctor : public Selector { set("CEF_TR", 0.8); set("NEF_EC_L", 0.01); set("NEF_EC_U", 0.99); - set("nNeutrals_EC", 2); + set("nNeutrals_EC", 1); + set("NHF_FW", 0.2); + set("NEF_FW", 0.90); + set("nNeutrals_FW", 10); + } else if (version_ == RUN3CHSrunsBCDEprompt) { + set("MUF_TR", 0.8); + set("CEF_TR", 0.8); + set("NHF_TR", 0.9); + set("NEF_TR", 0.99); + set("NCH_TR", 0); + set("NEF_EC_U", 0.99); + set("nNeutrals_EC", 1); set("NHF_FW", 0.2); set("NEF_FW", 0.90); set("nNeutrals_FW", 10); - } else if (version_ == RUN2ULPUPPI || version_ == RUN3WINTER22PUPPIrunsBCDEprompt) { + } else if (version_ == RUN3CHSruns2022FGruns2023CD) { + set("MUF_TR", 0.8); + set("CEF_TR", 0.8); + set("NHF_TR", 0.9); + set("NEF_TR", 0.99); + set("NCH_TR", 0); + set("NEF_EC_U", 0.99); + set("NHF_EC", 0.99); + set("nNeutrals_EC", 1); + set("NEF_FW", 0.4); + set("nNeutrals_FW", 10); + } else if (version_ == RUN2ULPUPPI) { set("NHF_TR", 0.9); set("NEF_TR", 0.99); set("MUF_TR", 0.8); @@ -1046,16 +1141,22 @@ class PFJetIDSelectionFunctor : public Selector { set("NEF_FW", 0.90); set("nNeutrals_FW_L", 2); set("nNeutrals_FW_U", 999999); - } else if (version_ == RUN3WINTER22PUPPI) { - set("NHF_TR", 0.9); - set("NEF_TR", 0.99); + } else if (version_ == RUN3PUPPIrunsBCDEprompt) { set("MUF_TR", 0.8); set("CEF_TR", 0.8); + set("NHF_TR", 0.9); + set("NEF_TR", 0.99); set("NHF_EC", 0.9999); - set("NHF_FW", -1.0); set("NEF_FW", 0.90); + set("nNeutrals_FW_L", 2); + } else if (version_ == RUN3PUPPIruns2022FGruns2023CD) { + set("MUF_TR", 0.8); + set("CEF_TR", 0.8); + set("NHF_TR", 0.9); + set("NEF_TR", 0.99); + set("NHF_EC", 0.99); + set("NEF_FW", 0.4); set("nNeutrals_FW_L", 1); - set("nNeutrals_FW_U", 999999); } } } @@ -1066,8 +1167,8 @@ class PFJetIDSelectionFunctor : public Selector { indexNHF_ = index_type(&bits_, "NHF"); if ((version_ != WINTER17 && version_ != WINTER17PUPPI && version_ != SUMMER18 && version_ != SUMMER18PUPPI && version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN2ULCHS && version_ != RUN2ULPUPPI && - version_ != RUN3WINTER22CHSrunsBCDEprompt && version_ != RUN3WINTER22PUPPIrunsBCDEprompt && - version_ != RUN3WINTER22CHS && version_ != RUN3WINTER22PUPPI) || + version_ != RUN3CHSrunsBCDEprompt && version_ != RUN3PUPPIrunsBCDEprompt && + version_ != RUN3CHSruns2022FGruns2023CD && version_ != RUN3PUPPIruns2022FGruns2023CD) || quality_ != TIGHT) indexCEF_ = index_type(&bits_, "CEF"); @@ -1108,8 +1209,8 @@ class PFJetIDSelectionFunctor : public Selector { indexMUF_ = index_type(&bits_, "MUF"); } } - if ((version_ == SUMMER18) || (version_ == RUN2ULCHS) || (version_ == RUN3WINTER22CHSrunsBCDEprompt) || - (version_ == RUN3WINTER22CHS)) { + if ((version_ == SUMMER18) || (version_ == RUN2ULCHS) || (version_ == RUN3CHSrunsBCDEprompt) || + (version_ == RUN3CHSruns2022FGruns2023CD)) { indexNHF_TR_ = index_type(&bits_, "NHF_TR"); indexNEF_TR_ = index_type(&bits_, "NEF_TR"); indexNCH_TR_ = index_type(&bits_, "NCH_TR"); @@ -1125,8 +1226,8 @@ class PFJetIDSelectionFunctor : public Selector { indexCEF_TR_ = index_type(&bits_, "CEF_TR"); } } - if ((version_ == SUMMER18PUPPI) || (version_ == RUN2ULPUPPI) || (version_ == RUN3WINTER22PUPPIrunsBCDEprompt) || - (version_ == RUN3WINTER22PUPPI)) { + if ((version_ == SUMMER18PUPPI) || (version_ == RUN2ULPUPPI) || (version_ == RUN3PUPPIrunsBCDEprompt) || + (version_ == RUN3PUPPIruns2022FGruns2023CD)) { indexNHF_TR_ = index_type(&bits_, "NHF_TR"); indexNEF_TR_ = index_type(&bits_, "NEF_TR"); indexNHF_EC_ = index_type(&bits_, "NHF_EC"); From 8067ab53a8ec6d0e008e344c51dbe5ccc364d7f9 Mon Sep 17 00:00:00 2001 From: matteo Date: Fri, 10 Nov 2023 16:24:08 +0100 Subject: [PATCH 025/281] New DAQ source for L1Trigger scouting Implemented a new DAQSourceModel to read and merge Run3 L1 scouting data. - Similar to the existing FRDStriped input source - Modified EvFDaqDirector to enable the possibility of having multiple data sources per ramdisk - Added DataFormats/L1Scouting containing Scouting Raw Data Collection - Vector of FEDRawData - Included optional argument wordSize in the FEDRawData resize methods: 8 bytes by default, can be set to 4 bytes for scouting - Not a real FED, using a SRDCollection since L1scouting data will never be mixed with event data - Removed old scouting files that were used as an example - Test script for the ScoutingRun3 daq source --- DataFormats/FEDRawData/interface/FEDRawData.h | 8 +- DataFormats/FEDRawData/src/FEDRawData.cc | 14 +- DataFormats/L1Scouting/BuildFile.xml | 7 + .../L1Scouting/interface/SDSNumbering.h | 26 ++ .../interface/SDSRawDataCollection.h | 38 +++ .../L1Scouting/src/SDSRawDataCollection.cc | 12 + DataFormats/L1Scouting/src/classes.h | 4 + DataFormats/L1Scouting/src/classes_def.xml | 5 + EventFilter/Utilities/BuildFile.xml | 1 + .../Utilities/interface/DAQSourceModels.h | 4 +- .../Utilities/interface/DAQSourceModelsFRD.h | 8 +- .../interface/DAQSourceModelsScouting.h | 268 --------------- .../interface/DAQSourceModelsScoutingRun3.h | 135 ++++++++ .../Utilities/interface/EvFDaqDirector.h | 2 + .../Utilities/plugins/DumpMuonScouting.cc | 112 ------- .../Utilities/scripts/scoutingToRaw.py | 259 --------------- EventFilter/Utilities/src/DAQSource.cc | 9 +- .../Utilities/src/DAQSourceModelsFRD.cc | 4 +- .../Utilities/src/DAQSourceModelsScouting.cc | 312 ------------------ .../src/DAQSourceModelsScoutingRun3.cc | 184 +++++++++++ EventFilter/Utilities/src/EvFDaqDirector.cc | 20 ++ EventFilter/Utilities/test/FU_scouting.py | 114 ------- .../Utilities/test/dumpMuonScouting.py | 30 -- ...ing_2.py => testScoutingRun3_daqsource.py} | 101 +++--- 24 files changed, 521 insertions(+), 1156 deletions(-) create mode 100644 DataFormats/L1Scouting/BuildFile.xml create mode 100644 DataFormats/L1Scouting/interface/SDSNumbering.h create mode 100644 DataFormats/L1Scouting/interface/SDSRawDataCollection.h create mode 100644 DataFormats/L1Scouting/src/SDSRawDataCollection.cc create mode 100644 DataFormats/L1Scouting/src/classes.h create mode 100644 DataFormats/L1Scouting/src/classes_def.xml delete mode 100644 EventFilter/Utilities/interface/DAQSourceModelsScouting.h create mode 100644 EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h delete mode 100644 EventFilter/Utilities/plugins/DumpMuonScouting.cc delete mode 100755 EventFilter/Utilities/scripts/scoutingToRaw.py delete mode 100644 EventFilter/Utilities/src/DAQSourceModelsScouting.cc create mode 100644 EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc delete mode 100644 EventFilter/Utilities/test/FU_scouting.py delete mode 100644 EventFilter/Utilities/test/dumpMuonScouting.py rename EventFilter/Utilities/test/{FU_scouting_2.py => testScoutingRun3_daqsource.py} (54%) diff --git a/DataFormats/FEDRawData/interface/FEDRawData.h b/DataFormats/FEDRawData/interface/FEDRawData.h index 8def41c8e270b..124ace19fcfc7 100644 --- a/DataFormats/FEDRawData/interface/FEDRawData.h +++ b/DataFormats/FEDRawData/interface/FEDRawData.h @@ -26,8 +26,8 @@ class FEDRawData { /// Ctor specifying the size to be preallocated, in bytes. /// It is required that the size is a multiple of the size of a FED - /// word (8 bytes) - FEDRawData(size_t newsize); + /// word (8 bytes default) + FEDRawData(size_t newsize, size_t wordsize=8); /// Copy constructor FEDRawData(const FEDRawData &); @@ -45,8 +45,8 @@ class FEDRawData { size_t size() const { return data_.size(); } /// Resize to the specified size in bytes. It is required that - /// the size is a multiple of the size of a FED word (8 bytes) - void resize(size_t newsize); + /// the size is a multiple of the size of a FED word (8 bytes default) + void resize(size_t newsize, size_t wordsize=8); private: Data data_; diff --git a/DataFormats/FEDRawData/src/FEDRawData.cc b/DataFormats/FEDRawData/src/FEDRawData.cc index 28bbaa55bd19f..bdd4eeb012d57 100644 --- a/DataFormats/FEDRawData/src/FEDRawData.cc +++ b/DataFormats/FEDRawData/src/FEDRawData.cc @@ -13,9 +13,10 @@ using namespace std; FEDRawData::FEDRawData() {} -FEDRawData::FEDRawData(size_t newsize) : data_(newsize) { - if (newsize % 8 != 0) - throw cms::Exception("DataCorrupt") << "FEDRawData::resize: " << newsize << " is not a multiple of 8 bytes." +FEDRawData::FEDRawData(size_t newsize, size_t wordsize) : data_(newsize) { + if (newsize % wordsize != 0) + throw cms::Exception("DataCorrupt") << "FEDRawData::resize: " << newsize << " is not a multiple of " + << wordsize << " bytes." << endl; } @@ -25,13 +26,14 @@ const unsigned char *FEDRawData::data() const { return data_.data(); } unsigned char *FEDRawData::data() { return data_.data(); } -void FEDRawData::resize(size_t newsize) { +void FEDRawData::resize(size_t newsize, size_t wordsize) { if (size() == newsize) return; data_.resize(newsize); - if (newsize % 8 != 0) - throw cms::Exception("DataCorrupt") << "FEDRawData::resize: " << newsize << " is not a multiple of 8 bytes." + if (newsize % wordsize != 0) + throw cms::Exception("DataCorrupt") << "FEDRawData::resize: " << newsize << " is not a multiple of " + << wordsize << " bytes." << endl; } diff --git a/DataFormats/L1Scouting/BuildFile.xml b/DataFormats/L1Scouting/BuildFile.xml new file mode 100644 index 0000000000000..832b36382f2f1 --- /dev/null +++ b/DataFormats/L1Scouting/BuildFile.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/SDSNumbering.h b/DataFormats/L1Scouting/interface/SDSNumbering.h new file mode 100644 index 0000000000000..8353d423d6c64 --- /dev/null +++ b/DataFormats/L1Scouting/interface/SDSNumbering.h @@ -0,0 +1,26 @@ +#ifndef L1Scouting_SDSNumbering_h +#define L1Scouting_SDSNumbering_h + +/** + * + * This class holds the Scouting Data Source (SDS) + * numbering scheme for the Level 1 scouting system + * + */ + +class SDSNumbering { + public: + static constexpr int lastSDSId() { return MAXSDSID; } + + enum { + NOT_A_SDSID = -1, + MAXSDSID = 32, + GmtSDSID = 1, + CaloSDSID = 2, + GtSDSID = 4, + BmtfMinSDSID = 10, + BmtfMaxSDSID = 21 + }; +}; + +#endif // L1Scouting_SDSNumbering_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/SDSRawDataCollection.h b/DataFormats/L1Scouting/interface/SDSRawDataCollection.h new file mode 100644 index 0000000000000..50f958353d423 --- /dev/null +++ b/DataFormats/L1Scouting/interface/SDSRawDataCollection.h @@ -0,0 +1,38 @@ +#ifndef L1Scouting_SDSRawDataCollection_h +#define L1Scouting_SDSRawDataCollection_h + +#include "DataFormats/FEDRawData/interface/FEDRawData.h" +#include "DataFormats/Common/interface/traits.h" +#include "FWCore/Utilities/interface/GCCPrerequisite.h" + + +/** + * + * This collection holds the raw data for all the + * scouting data sources. It is a collection of FEDRawData + * + */ + +class SRDCollection: public edm::DoNotRecordParents { + public: + SRDCollection(); + + virtual ~SRDCollection(); + + // retrive data for the scouting source at sourceId + const FEDRawData& FEDData(int sourceId) const; + + // retrive data for the scouting source at sourceId + FEDRawData& FEDData(int sourceId); + + SRDCollection(const SRDCollection&); + + void swap(SRDCollection& other) { data_.swap(other.data_); } + + private: + std::vector data_; // vector of raw data +}; + +inline void swap(SRDCollection& a, SRDCollection& b) { a.swap(b); } + +#endif // L1Scouting_SDSRawDataCollection_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/SDSRawDataCollection.cc b/DataFormats/L1Scouting/src/SDSRawDataCollection.cc new file mode 100644 index 0000000000000..fad0039e8d499 --- /dev/null +++ b/DataFormats/L1Scouting/src/SDSRawDataCollection.cc @@ -0,0 +1,12 @@ +#include +#include + +SRDCollection::SRDCollection() : data_(SDSNumbering::lastSDSId() + 1) {} + +SRDCollection::SRDCollection(const SRDCollection& in) : data_(in.data_) {} + +SRDCollection::~SRDCollection() {} + +const FEDRawData& SRDCollection::FEDData(int sourceId) const { return data_[sourceId]; } + +FEDRawData& SRDCollection::FEDData(int sourceId) { return data_[sourceId]; } \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/classes.h b/DataFormats/L1Scouting/src/classes.h new file mode 100644 index 0000000000000..d14a7d97ff436 --- /dev/null +++ b/DataFormats/L1Scouting/src/classes.h @@ -0,0 +1,4 @@ +#include +#include + +#include \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/classes_def.xml b/DataFormats/L1Scouting/src/classes_def.xml new file mode 100644 index 0000000000000..b86b822479c46 --- /dev/null +++ b/DataFormats/L1Scouting/src/classes_def.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/EventFilter/Utilities/BuildFile.xml b/EventFilter/Utilities/BuildFile.xml index 6a69ee301bfe8..9a45e9af684bd 100644 --- a/EventFilter/Utilities/BuildFile.xml +++ b/EventFilter/Utilities/BuildFile.xml @@ -2,6 +2,7 @@ + diff --git a/EventFilter/Utilities/interface/DAQSourceModels.h b/EventFilter/Utilities/interface/DAQSourceModels.h index d886aaf1c26a4..5727dc7aa2164 100644 --- a/EventFilter/Utilities/interface/DAQSourceModels.h +++ b/EventFilter/Utilities/interface/DAQSourceModels.h @@ -61,7 +61,9 @@ class DataMode { bool fileListMode) const = 0; virtual bool isMultiDir() { return false; } - virtual void makeDirectoryEntries(std::vector const& baseDirs, std::string const& runDir) = 0; + virtual void makeDirectoryEntries(std::vector const& baseDirs, + std::vector const& numSources, + std::string const& runDir) = 0; void setTesting(bool testing) { testing_ = testing; } protected: diff --git a/EventFilter/Utilities/interface/DAQSourceModelsFRD.h b/EventFilter/Utilities/interface/DAQSourceModelsFRD.h index bdf770836c3aa..c3e1c896ab623 100644 --- a/EventFilter/Utilities/interface/DAQSourceModelsFRD.h +++ b/EventFilter/Utilities/interface/DAQSourceModelsFRD.h @@ -64,7 +64,9 @@ class DataModeFRD : public DataMode { MAXTCDSuTCAFEDID_ = MAXTCDSuTCAFEDID; } - void makeDirectoryEntries(std::vector const& baseDirs, std::string const& runDir) override {} + void makeDirectoryEntries(std::vector const& baseDirs, + std::vector const& numSources, + std::string const& runDir) override {} std::pair> defineAdditionalFiles(std::string const& primaryName, bool) const override { return std::make_pair(true, std::vector()); @@ -171,7 +173,9 @@ class DataModeFRDStriped : public DataMode { MAXTCDSuTCAFEDID_ = MAXTCDSuTCAFEDID; } - void makeDirectoryEntries(std::vector const& baseDirs, std::string const& runDir) override; + void makeDirectoryEntries(std::vector const& baseDirs, + std::vector const& numSources, + std::string const& runDir) override; std::pair> defineAdditionalFiles(std::string const& primaryName, bool fileListMode) const override; diff --git a/EventFilter/Utilities/interface/DAQSourceModelsScouting.h b/EventFilter/Utilities/interface/DAQSourceModelsScouting.h deleted file mode 100644 index 430fdfdefd34b..0000000000000 --- a/EventFilter/Utilities/interface/DAQSourceModelsScouting.h +++ /dev/null @@ -1,268 +0,0 @@ -#ifndef EventFilter_Utilities_DAQSourceModelsScouting_h -#define EventFilter_Utilities_DAQSourceModelsScouting_h - -#include - -#include "EventFilter/Utilities/interface/DAQSourceModels.h" -#include "DataFormats/L1Trigger/interface/Muon.h" -#include "DataFormats/L1Trigger/interface/BXVector.h" - -namespace scouting { - struct muon { - uint32_t f; - uint32_t s; - }; - - struct block { - uint32_t bx; - uint32_t orbit; - muon mu[16]; - }; - - struct masks { - static constexpr uint32_t phiext = 0x3ff; - static constexpr uint32_t pt = 0x1ff; - static constexpr uint32_t qual = 0xf; - static constexpr uint32_t etaext = 0x1ff; - static constexpr uint32_t etaextv = 0xff; - static constexpr uint32_t etaexts = 0x100; - static constexpr uint32_t iso = 0x3; - static constexpr uint32_t chrg = 0x1; - static constexpr uint32_t chrgv = 0x1; - static constexpr uint32_t index = 0x7f; - static constexpr uint32_t phi = 0x3ff; - static constexpr uint32_t eta = 0x1ff; - static constexpr uint32_t etav = 0xff; - static constexpr uint32_t etas = 0x100; - static constexpr uint32_t phiv = 0x1ff; - static constexpr uint32_t phis = 0x200; - static constexpr uint32_t sv = 0x3; - }; - - struct shifts { - static constexpr uint32_t phiext = 0; - static constexpr uint32_t pt = 10; - static constexpr uint32_t qual = 19; - static constexpr uint32_t etaext = 23; - static constexpr uint32_t iso = 0; - static constexpr uint32_t chrg = 2; - static constexpr uint32_t chrgv = 3; - static constexpr uint32_t index = 4; - static constexpr uint32_t phi = 11; - static constexpr uint32_t eta = 21; - static constexpr uint32_t rsv = 30; - }; - - struct gmt_scales { - static constexpr float pt_scale = 0.5; - static constexpr float phi_scale = 2. * M_PI / 576.; - static constexpr float eta_scale = 0.0870 / 8; //9th MS bit is sign - static constexpr float phi_range = M_PI; - }; - - struct header_shifts { - static constexpr uint32_t bxmatch = 24; - static constexpr uint32_t mAcount = 16; - static constexpr uint32_t orbitmatch = 8; - static constexpr uint32_t mBcount = 0; - }; - - struct header_masks { - static constexpr uint32_t bxmatch = 0xff << header_shifts::bxmatch; - static constexpr uint32_t mAcount = 0xf << header_shifts::mAcount; - static constexpr uint32_t orbitmatch = 0xff << header_shifts::orbitmatch; - static constexpr uint32_t mBcount = 0xf; - }; - -} //namespace scouting - -class DataModeScoutingRun2Muon : public DataMode { -public: - DataModeScoutingRun2Muon(DAQSource* daqSource) : DataMode(daqSource) { - dummyLVec_ = std::make_unique>>(); - } - - ~DataModeScoutingRun2Muon() override{}; - - std::vector>& makeDaqProvenanceHelpers() override; - void readEvent(edm::EventPrincipal& eventPrincipal) override; - - int dataVersion() const override { return detectedFRDversion_; } - void detectVersion(unsigned char* fileBuf, uint32_t fileHeaderOffset) override { - detectedFRDversion_ = *((uint16_t*)(fileBuf + fileHeaderOffset)); - } - - uint32_t headerSize() const override { return FRDHeaderVersionSize[detectedFRDversion_]; } - - bool versionCheck() const override { return detectedFRDversion_ <= FRDHeaderMaxVersion; } - - uint64_t dataBlockSize() const override { return event_->size(); } - - void makeDataBlockView(unsigned char* addr, - size_t maxSize, - std::vector const& fileSizes, - size_t fileHeaderSize) override { - dataBlockAddr_ = addr; - dataBlockMax_ = maxSize; - eventCached_ = false; - nextEventView(); - eventCached_ = true; - } - - bool nextEventView() override; - bool checksumValid() override; - std::string getChecksumError() const override; - - bool isRealData() const override { return event_->isRealData(); } - - uint32_t run() const override { return event_->run(); } - - //true for scouting muon - bool dataBlockCompleted() const override { return true; } - - bool requireHeader() const override { return true; } - - bool fitToBuffer() const override { return true; } - - bool dataBlockInitialized() const override { return true; } - - void setDataBlockInitialized(bool) override{}; - - void setTCDSSearchRange(uint16_t MINTCDSuTCAFEDID, uint16_t MAXTCDSuTCAFEDID) override { return; } - - void makeDirectoryEntries(std::vector const& baseDirs, std::string const& runDir) override {} - - std::pair> defineAdditionalFiles(std::string const& primaryName, bool) const override { - return std::make_pair(true, std::vector()); - } - - char* readPayloadPos() { return (char*)event_->payload(); } - -private: - void unpackOrbit(BXVector* muons, char* buf, size_t len); - - std::vector> daqProvenanceHelpers_; - uint16_t detectedFRDversion_ = 0; - size_t headerSize_ = 0; - std::unique_ptr event_; - - std::unique_ptr>> dummyLVec_; - - unsigned char* dataBlockAddr_ = nullptr; - size_t dataBlockMax_ = 0; - bool eventCached_ = false; -}; - -class DataModeScoutingRun2Multi : public DataMode { -public: - DataModeScoutingRun2Multi(DAQSource* daqSource) : DataMode(daqSource) { - dummyLVec_ = std::make_unique>>(); - } - - ~DataModeScoutingRun2Multi() override{}; - - std::vector>& makeDaqProvenanceHelpers() override; - void readEvent(edm::EventPrincipal& eventPrincipal) override; - - int dataVersion() const override { return detectedFRDversion_; } - void detectVersion(unsigned char* fileBuf, uint32_t fileHeaderOffset) override { - detectedFRDversion_ = *((uint16_t*)(fileBuf + fileHeaderOffset)); - } - - uint32_t headerSize() const override { return FRDHeaderVersionSize[detectedFRDversion_]; } - - bool versionCheck() const override { return detectedFRDversion_ <= FRDHeaderMaxVersion; } - - uint64_t dataBlockSize() const override { - //TODO: adjust to multiple objects - return events_[0]->size(); - } - - void makeDataBlockView(unsigned char* addr, - size_t maxSize, - std::vector const& fileSizes, - size_t fileHeaderSize) override { - fileHeaderSize_ = fileHeaderSize; - numFiles_ = fileSizes.size(); - //add offset address for each file payload - startAddrs_.clear(); - startAddrs_.push_back(addr); - dataBlockAddrs_.clear(); - dataBlockAddrs_.push_back(addr); - dataBlockMaxAddrs_.clear(); - dataBlockMaxAddrs_.push_back(addr + fileSizes[0] - fileHeaderSize); - auto fileAddr = addr; - for (unsigned int i = 1; i < fileSizes.size(); i++) { - fileAddr += fileSizes[i - 1]; - startAddrs_.push_back(fileAddr); - dataBlockAddrs_.push_back(fileAddr); - dataBlockMaxAddrs_.push_back(fileAddr + fileSizes[i] - fileHeaderSize); - } - - dataBlockMax_ = maxSize; - blockCompleted_ = false; - //set event cached as we set initial address here - bool result = makeEvents(); - assert(result); - eventCached_ = true; - setDataBlockInitialized(true); - } - - bool nextEventView() override; - bool checksumValid() override; - std::string getChecksumError() const override; - - bool isRealData() const override { - assert(!events_.empty()); - return events_[0]->isRealData(); - } - - uint32_t run() const override { - assert(!events_.empty()); - return events_[0]->run(); - } - - //true for DAQ3 FRD - bool dataBlockCompleted() const override { return blockCompleted_; } - - bool requireHeader() const override { return true; } - - bool dataBlockInitialized() const override { return dataBlockInitialized_; } - - void setDataBlockInitialized(bool val) override { dataBlockInitialized_ = val; }; - - void setTCDSSearchRange(uint16_t MINTCDSuTCAFEDID, uint16_t MAXTCDSuTCAFEDID) override { return; } - - void makeDirectoryEntries(std::vector const& baseDirs, std::string const& runDir) override { - //receive directory paths for multiple input files ('striped') - } - - std::pair> defineAdditionalFiles(std::string const& primaryName, - bool fileListMode) const override; - -private: - bool makeEvents(); - void unpackMuonOrbit(BXVector* muons, char* buf, size_t len); - - std::vector> daqProvenanceHelpers_; - uint16_t detectedFRDversion_ = 0; - size_t headerSize_ = 0; - std::vector> events_; - - std::unique_ptr>> dummyLVec_; - - unsigned char* dataBlockAddr_ = nullptr; - - //debugging - std::vector startAddrs_; - std::vector dataBlockAddrs_; - std::vector dataBlockMaxAddrs_; - size_t dataBlockMax_ = 0; - size_t fileHeaderSize_ = 0; - short numFiles_ = 0; - bool eventCached_ = false; - bool dataBlockInitialized_ = false; - bool blockCompleted_ = true; -}; - -#endif // EventFilter_Utilities_DAQSourceModelsScouting_h diff --git a/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h b/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h new file mode 100644 index 0000000000000..d53d87cc3ca0d --- /dev/null +++ b/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h @@ -0,0 +1,135 @@ +#ifndef EventFilter_Utilities_DAQSourceModelsScoutingRun3_h +#define EventFilter_Utilities_DAQSourceModelsScoutingRun3_h + +#include "EventFilter/Utilities/interface/DAQSource.h" +#include "EventFilter/Utilities/interface/DAQSourceModels.h" +#include "DataFormats/L1Scouting/interface/SDSRawDataCollection.h" +#include "DataFormats/L1Scouting/interface/SDSNumbering.h" + +#include "FWCore/Framework/interface/Event.h" +#include "DataFormats/Provenance/interface/EventAuxiliary.h" +#include "DataFormats/Provenance/interface/EventID.h" + +#include +#include +#include +#include +#include +#include + +class DataModeScoutingRun3 : public DataMode { +public: + DataModeScoutingRun3(DAQSource* daqSource) : DataMode(daqSource) {} + ~DataModeScoutingRun3() override{}; + std::vector>& makeDaqProvenanceHelpers() override; + void readEvent(edm::EventPrincipal& eventPrincipal) override; + + void fillSRDCollection( SRDCollection& rawData, char* buff, size_t len); + + //reuse FRD file and event headers + int dataVersion() const override { return detectedFRDversion_; } + void detectVersion(unsigned char* fileBuf, uint32_t fileHeaderOffset) override { + detectedFRDversion_ = *((uint16_t*)(fileBuf + fileHeaderOffset)); + } + uint32_t headerSize() const override { return FRDHeaderVersionSize[detectedFRDversion_]; } + bool versionCheck() const override { return detectedFRDversion_ <= FRDHeaderMaxVersion; } + + uint64_t dataBlockSize() const override { + // get event size from the first data source (main) + return events_[0]->size(); + } + + void makeDataBlockView(unsigned char* addr, + size_t maxSize, + std::vector const& fileSizes, + size_t fileHeaderSize) override { + fileHeaderSize_ = fileHeaderSize; + numFiles_ = fileSizes.size(); + + // initalize vectors keeping tracks of valid orbits and completed blocks + sourceValidOrbitPair_.clear(); + completedBlocks_.clear(); + for (unsigned int i=0; iisRealData(); + } + + uint32_t run() const override { + assert(!events_.empty()); + return events_[0]->run(); + } + + bool dataBlockCompleted() const override { return blockCompleted_; } + + bool requireHeader() const override { return true; } + + bool fitToBuffer() const override { return true; } + + bool dataBlockInitialized() const override { return dataBlockInitialized_; } + + void setDataBlockInitialized(bool val) override { dataBlockInitialized_ = val; }; + + void setTCDSSearchRange(uint16_t MINTCDSuTCAFEDID, uint16_t MAXTCDSuTCAFEDID) override { return; } + + void makeDirectoryEntries(std::vector const& baseDirs, + std::vector const& numSources, + std::string const& runDir) override; + + std::pair> defineAdditionalFiles(std::string const& primaryName, + bool fileListMode) const override; + +private: + bool makeEvents(); + std::vector> daqProvenanceHelpers_; // + uint16_t detectedFRDversion_ = 0; + size_t fileHeaderSize_ = 0; + size_t headerSize_ = 0; + std::vector> events_; + unsigned char* dataBlockAddr_ = nullptr; + std::vector dataBlockAddrs_; + std::vector dataBlockMaxAddrs_; + size_t dataBlockMax_ = 0; + short numFiles_ = 0; + bool dataBlockInitialized_ = false; + bool blockCompleted_ = true; + bool eventCached_ = false; + std::vector buPaths_; + std::vector buNumSources_; + + // keep track of valid (=aligned) orbits from different data sources + std::vector> sourceValidOrbitPair_; + unsigned int currOrbit = 0xFFFFFFFF; + + std::vector completedBlocks_; +}; + +#endif // EventFilter_Utilities_DAQSourceModelsScoutingRun3_h \ No newline at end of file diff --git a/EventFilter/Utilities/interface/EvFDaqDirector.h b/EventFilter/Utilities/interface/EvFDaqDirector.h index 45886d16b0f83..1cbe71014a824 100644 --- a/EventFilter/Utilities/interface/EvFDaqDirector.h +++ b/EventFilter/Utilities/interface/EvFDaqDirector.h @@ -194,6 +194,7 @@ namespace evf { bool inputThrottled(); bool lumisectionDiscarded(unsigned int ls); std::vector const& getBUBaseDirs() const { return bu_base_dirs_all_; } + std::vector const& getBUBaseDirsNSources() const { return bu_base_dirs_nSources_; } private: bool bumpFile(unsigned int& ls, @@ -216,6 +217,7 @@ namespace evf { std::string base_dir_; std::string bu_base_dir_; std::vector bu_base_dirs_all_; + std::vector bu_base_dirs_nSources_; unsigned int run_; bool useFileBroker_; bool fileBrokerHostFromCfg_; diff --git a/EventFilter/Utilities/plugins/DumpMuonScouting.cc b/EventFilter/Utilities/plugins/DumpMuonScouting.cc deleted file mode 100644 index 4f1b37b030b4c..0000000000000 --- a/EventFilter/Utilities/plugins/DumpMuonScouting.cc +++ /dev/null @@ -1,112 +0,0 @@ -/// -/// \class l1t::DumpMuonScouting.cc -/// -/// Description: Dump/Analyze Moun Scouting stored in BXVector -/// -/// Implementation: -/// Based off of Michael Mulhearn's YellowParamTester -/// -/// \author: Brian Winer Ohio State -/// - -// -// This simple module simply retreives the YellowParams object from the event -// setup, and sends its payload as an INFO message, for debugging purposes. -// - -#include "FWCore/Framework/interface/MakerMacros.h" - -// system include files -#include -#include -#include - -// user include files -// base class -#include "FWCore/Framework/interface/stream/EDAnalyzer.h" - -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/Utilities/interface/EDGetToken.h" -#include "FWCore/Utilities/interface/InputTag.h" -#include "FWCore/Framework/interface/EventSetup.h" -#include "FWCore/Framework/interface/Frameworkfwd.h" - -#include "DataFormats/L1Trigger/interface/Muon.h" - -#include "FWCore/MessageLogger/interface/MessageLogger.h" -#include "FWCore/MessageLogger/interface/MessageDrop.h" - -using namespace edm; -using namespace std; - -// class declaration -class DumpMuonScouting : public edm::stream::EDAnalyzer<> { -public: - explicit DumpMuonScouting(const edm::ParameterSet&); - ~DumpMuonScouting() override{}; - void analyze(const edm::Event&, const edm::EventSetup&) override; - - EDGetTokenT> muToken; - - int m_minBx; - int m_maxBx; - -private: - int m_tvVersion; -}; - -DumpMuonScouting::DumpMuonScouting(const edm::ParameterSet& iConfig) { - muToken = consumes(iConfig.getParameter("muInputTag")); - - m_minBx = iConfig.getParameter("minBx"); - m_maxBx = iConfig.getParameter("maxBx"); -} - -// loop over events -void DumpMuonScouting::analyze(const edm::Event& iEvent, const edm::EventSetup& evSetup) { - //input - Handle> muons = iEvent.getHandle(muToken); - - { - cout << " ----------------------------------------------------- " << endl; - cout << " *********** Run " << std::dec << iEvent.id().run() << " Event " << iEvent.id().event() - << " ************** " << endl; - cout << " ----------------------------------------------------- " << endl; - - //Loop over BX - for (int i = m_minBx; i <= m_maxBx; ++i) { - //Loop over Muons - //cout << " ------ Muons --------" << endl; - if (muons.isValid()) { - if (i >= muons->getFirstBX() && i <= muons->getLastBX()) { - for (std::vector::const_iterator mu = muons->begin(i); mu != muons->end(i); ++mu) { - cout << " " << std::dec << std::setw(2) << std::setfill(' ') << std::setfill('0') << ")"; - cout << " Pt " << std::dec << std::setw(3) << mu->hwPt() << " (0x" << std::hex << std::setw(3) - << std::setfill('0') << mu->hwPt() << ")"; - cout << " EtaAtVtx " << std::dec << std::setw(3) << mu->hwEtaAtVtx() << " (0x" << std::hex << std::setw(3) - << std::setfill('0') << (mu->hwEtaAtVtx() & 0x1ff) << ")"; - cout << " Eta " << std::dec << std::setw(3) << mu->hwEta() << " (0x" << std::hex << std::setw(3) - << std::setfill('0') << (mu->hwEta() & 0x1ff) << ")"; - cout << " PhiAtVtx " << std::dec << std::setw(3) << mu->hwPhiAtVtx() << " (0x" << std::hex << std::setw(3) - << std::setfill('0') << mu->hwPhiAtVtx() << ")"; - cout << " Phi " << std::dec << std::setw(3) << mu->hwPhi() << " (0x" << std::hex << std::setw(3) - << std::setfill('0') << mu->hwPhi() << ")"; - cout << " Iso " << std::dec << std::setw(1) << mu->hwIso(); - cout << " Qual " << std::dec << std::setw(1) << mu->hwQual(); - cout << " Chrg " << std::dec << std::setw(1) << mu->hwCharge(); - cout << endl; - } - } else { - cout << "No Muons stored for this bx " << i << endl; - } - } else { - cout << "No Muon Data in this event " << endl; - } - - } //loop over Bx - cout << std::dec << endl; - } //if dumpGtRecord -} - -DEFINE_FWK_MODULE(DumpMuonScouting); diff --git a/EventFilter/Utilities/scripts/scoutingToRaw.py b/EventFilter/Utilities/scripts/scoutingToRaw.py deleted file mode 100755 index d6ce51feae7ad..0000000000000 --- a/EventFilter/Utilities/scripts/scoutingToRaw.py +++ /dev/null @@ -1,259 +0,0 @@ -#!/bin/env python3 - -import struct -import os,sys -import json -import shutil - -os.umask(0) - -#struct muon{ -# uint32_t f; -# uint32_t s; -#}; - -#struct block{ -# uint32_t bx; -# uint32_t orbit; -# muon mu[16]; -#}; - -#class masks: -# phiext = 0x3ff -# pt = 0x1ff -# qual = 0xf -# etaext = 0x1ff -# etaextv = 0xff -# etaexts = 0x100 -# iso = 0x3 -# chrg = 0x1 -# chrgv = 0x1 -# index = 0x7f -# phi = 0x3ff -# eta = 0x1ff -# etav = 0xff -# etas = 0x100 -# phiv = 0x1ff -# phis = 0x200 -# sv = 0x3 - -#class shifts: -# phiext = 0 -# pt = 10 -# qual = 19 -# etaext = 23 -# iso = 0 -# chrg = 2 -# chrgv = 3 -# index = 4 -# phi = 11 -# eta = 21 -# rsv = 30 - -#class gmt_scales: -# pt_scale = 0.5 -# phi_scale = 2.*M_PI/576. -# eta_scale = 0.0870/8 #9th MS bit is sign -# phi_range = M_PI - - -#need to read this to find orbit ("event") boundary and calculate size per orbit -class header_shifts: - bxmatch = 32; - mAcount = 16; - orbitmatch = 8; - mBcount = 0; - -class header_masks: - bxmatch = 0xff << header_shifts.bxmatch; - mAcount = 0xf << header_shifts.mAcount; - orbitmatch = 0xff << header_shifts.orbitmatch; - mBcount = 0xf - - -#new V2 FRD file header (32 bytes) -class frd_file_header_v2: - ver_id = "RAW_0002".encode() # 64 (offset 0B) - header_size = 32 #16 (offset 8B) - data_type = 20 #16 (offset 10) - event_count = 0 #32 (offset 12B) - run_number = 0 #32 (offset 16B) - lumisection = 0 #32 (offset 20B) - file_size = 0 #64 (offset 24B) - - -def parseMuonScoutingRawFile(infilepath, outdir, rn_override, maxorbits): - - if infilepath != 'stdin': - fin = open(infilepath,'rb') - else: - fin = sys.stdin.buffer - - #sys.stdout.flush() - - #orbit count per file - orbitcount=0 - #total - orbitcount_total=0 - - last_ls = 0 - - orbit_data = bytes() - orbit_nr = 0 - orbit_size = 0 - flags = 0 - c_crc32c = 0 - - #ls = 1 - #event header (FRD format) const - version = 6 - - #files - fout = None - if infilepath != 'stdin': - fin = open(infilepath,'rb') - else: - fin = sys.stdin.buffer - - - #write header before closing the file - def update_header(): - nonlocal orbitcount - nonlocal last_ls - h = frd_file_header_v2() - h.event_count = orbitcount - h.run_number = rn_override - h.lumisection = last_ls - h.file_size = fout.tell() - fout.seek(0, 0) - fout.write(frd_file_header_v2.ver_id) - fout.write(struct.pack('H',h.header_size)) - fout.write(struct.pack('H',h.data_type)) - fout.write(struct.pack('I',h.event_count)) - fout.write(struct.pack('I',h.run_number)) - fout.write(struct.pack('I',h.lumisection)) - fout.write(struct.pack('Q',h.file_size)) - - orbitcount = 0 - print(h.ver_id, h.header_size, h.data_type, h.event_count, h.lumisection, h.file_size) - - - #write orbit when next one is detected or file is closed - def write_orbit(): - nonlocal orbit_size - nonlocal orbit_data - if not orbit_size: - return - - #print(fout.tell(), struct.pack('H',version)) - fout.write(struct.pack('H',version)) #could be 8 bytes - fout.write(struct.pack('H',flags)) #could be 8 bytes - fout.write(struct.pack('I',rn_override)) #run - #fout.write(struct.pack('I',ls)) #ls - fout.write(struct.pack('I',last_ls)) #ls - fout.write(struct.pack('I',orbit_nr)) #eid (orbit number, 32-bit) - fout.write(struct.pack('I',orbit_size)) #payload size - fout.write(struct.pack('I',c_crc32c)) #payload checksum (not used) - fout.write(orbit_data) - - orbit_data = bytes() - orbit_size = 0 - - def writeout_close(): - write_orbit() - update_header() - fout.close() - orbit_nr = 0 - - #read loop - while True: - - #check if exceeded max orbits specified - if orbitcount_total > maxorbits: - print(f"finish: {orbitcount_total-1}/{maxorbits} orbits") - writeout_close() - - if infilepath != 'stdin': - fin.close() - sys.exit(0) - - try: - h_raw = fin.read(4) - bxmatch = struct.unpack('B', h_raw[3:4])[0] - mAcount = struct.unpack('B', h_raw[2:3])[0] - orbitmatch = struct.unpack('B', h_raw[1:2])[0] - mBcount = struct.unpack('B', h_raw[0:1])[0] - - #print("bxmatch", bxmatch, "mA", mAcount, "orbitmatch", orbitmatch, "mB", mBcount) - - bx_raw = fin.read(4) - bx = struct.unpack('i', bx_raw)[0] - #print("bx",bx) - orbit_raw = fin.read(4) - orbit = struct.unpack('i', orbit_raw)[0] - - new_ls = orbit >> 18 - - if new_ls > last_ls: - #open a new output file if crossing LS boundary or on first orbit - if last_ls: - write_orbit() - update_header() - fout.close() - orbitcount = 0 - - last_ls = new_ls - fout = open(os.path.join(outdir, f'run{rn_override}_ls{str(new_ls).zfill(4)}_index000000.raw') ,'wb') - #empty file header, will be updated later - fout.write(frd_file_header_v2.ver_id) -# fout.write(bytes(16)) - fout.write(bytes(24)) - - read_len = 8*(mAcount+mBcount) - mu_blk = fin.read(8*(mAcount+mBcount)) - if len(mu_blk) != read_len: - print('incomplete read') - sys.exit(1) - - if not orbit_nr or orbit != orbit_nr: - #received new orbit, write previous one - if orbit_nr: - write_orbit() - - #should not decrease: - if orbit < orbit_nr: - orbit_count = -1 - print("got smaller orbit than earlier!") - sys.exit(1) - - print("new orbit", orbit) - orbit_nr = orbit - - #per LS file counter: - orbitcount += 1 - #total counter: - orbitcount_total += 1 - - #update orbit size and data variables - orbit_size += 12 + read_len - orbit_data += (h_raw + bx_raw + orbit_raw) + mu_blk - - except Exception as ex: - #reached premature end of the file? - print(f"exception: {ex}") - #writeout_close() - #if infilepath != 'stdin': - # fin.close() - sys.exit(1) - - #print count," : ",version,run,lumi,eid,esize,crc32c,"override id/ls/run:",count,1,rn_override - #lumi=1 - -if len(sys.argv) < 5: - print("parameters: input file (or stdin), output directory, run number (use same as input file), orbits to write") -else: - parseMuonScoutingRawFile(sys.argv[1], sys.argv[2], int(sys.argv[3]), int(sys.argv[4])) - - - - diff --git a/EventFilter/Utilities/src/DAQSource.cc b/EventFilter/Utilities/src/DAQSource.cc index b607b13ca1dd0..6dab0959953b0 100644 --- a/EventFilter/Utilities/src/DAQSource.cc +++ b/EventFilter/Utilities/src/DAQSource.cc @@ -7,7 +7,7 @@ #include "EventFilter/Utilities/interface/DAQSource.h" #include "EventFilter/Utilities/interface/DAQSourceModels.h" #include "EventFilter/Utilities/interface/DAQSourceModelsFRD.h" -#include "EventFilter/Utilities/interface/DAQSourceModelsScouting.h" +#include "EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h" #include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/InputSourceDescription.h" @@ -81,6 +81,9 @@ DAQSource::DAQSource(edm::ParameterSet const& pset, edm::InputSourceDescription dataMode_.reset(new DataModeFRD(this)); } else if (dataModeConfig_ == "FRDStriped") { dataMode_.reset(new DataModeFRDStriped(this)); + } + else if (dataModeConfig_ == "ScoutingRun3") { + dataMode_.reset(new DataModeScoutingRun3(this)); } else throw cms::Exception("DAQSource::DAQSource") << "Unknown data mode " << dataModeConfig_; @@ -101,7 +104,9 @@ DAQSource::DAQSource(edm::ParameterSet const& pset, edm::InputSourceDescription } } - dataMode_->makeDirectoryEntries(daqDirector_->getBUBaseDirs(), daqDirector_->runString()); + dataMode_->makeDirectoryEntries(daqDirector_->getBUBaseDirs(), + daqDirector_->getBUBaseDirsNSources(), + daqDirector_->runString()); auto& daqProvenanceHelpers = dataMode_->makeDaqProvenanceHelpers(); for (const auto& daqProvenanceHelper : daqProvenanceHelpers) diff --git a/EventFilter/Utilities/src/DAQSourceModelsFRD.cc b/EventFilter/Utilities/src/DAQSourceModelsFRD.cc index c0dc23cdedeab..2784cef60ec55 100644 --- a/EventFilter/Utilities/src/DAQSourceModelsFRD.cc +++ b/EventFilter/Utilities/src/DAQSourceModelsFRD.cc @@ -153,7 +153,9 @@ std::string DataModeFRD::getChecksumError() const { * FRD Multi Test */ -void DataModeFRDStriped::makeDirectoryEntries(std::vector const& baseDirs, std::string const& runDir) { +void DataModeFRDStriped::makeDirectoryEntries(std::vector const& baseDirs, + std::vector const& numSources, + std::string const& runDir) { std::filesystem::path runDirP(runDir); for (auto& baseDir : baseDirs) { std::filesystem::path baseDirP(baseDir); diff --git a/EventFilter/Utilities/src/DAQSourceModelsScouting.cc b/EventFilter/Utilities/src/DAQSourceModelsScouting.cc deleted file mode 100644 index 4626975e6014e..0000000000000 --- a/EventFilter/Utilities/src/DAQSourceModelsScouting.cc +++ /dev/null @@ -1,312 +0,0 @@ -#include "EventFilter/Utilities/interface/DAQSource.h" -#include "EventFilter/Utilities/interface/DAQSourceModelsScouting.h" - -#include -#include -#include -#include - -#include "FWCore/Framework/interface/Event.h" -#include "DataFormats/Provenance/interface/EventAuxiliary.h" -#include "DataFormats/Provenance/interface/EventID.h" - -using namespace scouting; - -void DataModeScoutingRun2Muon::readEvent(edm::EventPrincipal& eventPrincipal) { - edm::TimeValue_t time; - timeval stv; - gettimeofday(&stv, nullptr); - time = stv.tv_sec; - time = (time << 32) + stv.tv_usec; - edm::Timestamp tstamp(time); - - std::unique_ptr> rawData(new BXVector); - //allow any bx - rawData->setBXRange(0, 4000); - - unpackOrbit(rawData.get(), (char*)event_->payload(), event_->eventSize()); - - uint32_t hdrEventID = event_->event(); - edm::EventID eventID = edm::EventID(daqSource_->eventRunNumber(), daqSource_->currentLumiSection(), hdrEventID); - edm::EventAuxiliary aux( - eventID, daqSource_->processGUID(), tstamp, event_->isRealData(), edm::EventAuxiliary::PhysicsTrigger); - - aux.setProcessHistoryID(daqSource_->processHistoryID()); - daqSource_->makeEventWrapper(eventPrincipal, aux); - - std::unique_ptr edp(new edm::Wrapper>(std::move(rawData))); - eventPrincipal.put( - daqProvenanceHelpers_[0]->branchDescription(), std::move(edp), daqProvenanceHelpers_[0]->dummyProvenance()); -} - -void DataModeScoutingRun2Muon::unpackOrbit(BXVector* muons, char* buf, size_t len) { - using namespace scouting; - size_t pos = 0; - uint32_t o_test = 0; - while (pos < len) { - assert(pos + 4 <= len); - uint32_t header = *((uint32*)(buf + pos)); - uint32_t mAcount = (header & header_masks::mAcount) >> header_shifts::mAcount; - uint32_t mBcount = (header & header_masks::mBcount) >> header_shifts::mBcount; - - block* bl = (block*)(buf + pos + 4); - - pos += 12 + (mAcount + mBcount) * 8; - assert(pos <= len); - - uint32_t bx = bl->bx; - - uint32_t orbit = bl->orbit; - o_test = orbit; - - //should cuts should be applied - bool excludeIntermediate = true; - - for (size_t i = 0; i < (mAcount + mBcount); i++) { - //unpack new muon - //variables: index, ietaext, ipt, qual, iphiext, iso, chrg, iphi, ieta - - // remove intermediate if required - // index==0 and ietaext==0 are a necessary and sufficient condition - uint32_t index = (bl->mu[i].s >> shifts::index) & masks::index; - int32_t ietaext = ((bl->mu[i].f >> shifts::etaext) & masks::etaextv); - if (((bl->mu[i].f >> shifts::etaext) & masks::etaexts) != 0) - ietaext -= 256; - - if (excludeIntermediate && index == 0 && ietaext == 0) - continue; - - //extract pt and quality and apply cut if required - uint32_t ipt = (bl->mu[i].f >> shifts::pt) & masks::pt; - //cuts?? - // if((ipt-1)mu[i].f >> shifts::qual) & masks::qual; - // if(qual < qualcut) {discarded++; continue;} - - //extract integer value for extrapolated phi - int32_t iphiext = ((bl->mu[i].f >> shifts::phiext) & masks::phiext); - - // extract iso bits and charge - uint32_t iso = (bl->mu[i].s >> shifts::iso) & masks::iso; - int32_t chrg = 0; - if (((bl->mu[i].s >> shifts::chrgv) & masks::chrgv) == 1) { - chrg = ((bl->mu[i].s >> shifts::chrg) & masks::chrg) == 1 ? -1 : 1; - } - - // extract eta and phi at muon station - int32_t iphi = ((bl->mu[i].s >> shifts::phi) & masks::phi); - int32_t ieta = (bl->mu[i].s >> shifts::eta) & masks::etav; - if (((bl->mu[i].s >> shifts::eta) & masks::etas) != 0) - ieta -= 256; - - l1t::Muon muon( - *dummyLVec_, ipt, ieta, iphi, qual, chrg, chrg != 0, iso, -1, 0, false, 0, 0, 0, 0, ietaext, iphiext); - muons->push_back(bx, muon); - } - } - std::cout << "end read ... " << o_test << std::endl << std::flush; -} //unpackOrbit - -std::vector>& DataModeScoutingRun2Muon::makeDaqProvenanceHelpers() { - //set FRD data collection - daqProvenanceHelpers_.clear(); - daqProvenanceHelpers_.emplace_back(std::make_shared( - edm::TypeID(typeid(l1t::MuonBxCollection)), "l1t::MuonBxCollection", "l1tMuonBxCollection", "DAQSource")); - return daqProvenanceHelpers_; -} - -bool DataModeScoutingRun2Muon::nextEventView() { - if (eventCached_) - return true; - event_ = std::make_unique(dataBlockAddr_); - if (event_->size() > dataBlockMax_) { - throw cms::Exception("DAQSource::getNextEvent") - << " event id:" << event_->event() << " lumi:" << event_->lumi() << " run:" << event_->run() - << " of size:" << event_->size() << " bytes does not fit into a chunk of size:" << dataBlockMax_ << " bytes"; - } - return true; -} - -bool DataModeScoutingRun2Muon::checksumValid() { return true; } - -std::string DataModeScoutingRun2Muon::getChecksumError() const { return std::string(); } - -// -//2nd model: read multiple input files with different data type -// - -std::pair> DataModeScoutingRun2Multi::defineAdditionalFiles( - std::string const& primaryName, bool fileListMode) const { - std::vector additionalFiles; - - auto fullpath = std::filesystem::path(primaryName); - auto fullname = fullpath.filename(); - std::string stem = fullname.stem().string(); - std::string ext = fullname.extension().string(); - std::regex regexz("_"); - std::vector nameTokens = {std::sregex_token_iterator(stem.begin(), stem.end(), regexz, -1), - std::sregex_token_iterator()}; - - if (nameTokens.size() < 3) { - throw cms::Exception("DAQSource::getNextEvent") - << primaryName << " name doesn't start with run#_ls#_index#_*.ext syntax"; - } - - //Can also filter out non-matching primary files (if detected by DaqDirector). false will tell source to skip the primary file. - if (nameTokens.size() > 3 && nameTokens[3].rfind("secondary", 0) == 0) - return std::make_pair(false, additionalFiles); - - //TODO: provisional, name syntax should be better defined - - additionalFiles.push_back(fullpath.parent_path().string() + "/" + nameTokens[0] + "_" + nameTokens[1] + "_" + - nameTokens[2] + "_secondary" + ext); - //additionalFiles.push_back(fullpath.parent_path.string() + "/" + nameTokens[0] + "_" + nameTokens[1] + "_" + nameTokens[2] + "_tertiary" + ".raw"); - - return std::make_pair(true, additionalFiles); -} - -void DataModeScoutingRun2Multi::readEvent(edm::EventPrincipal& eventPrincipal) { - edm::TimeValue_t time; - timeval stv; - gettimeofday(&stv, nullptr); - time = stv.tv_sec; - time = (time << 32) + stv.tv_usec; - edm::Timestamp tstamp(time); - - std::unique_ptr> rawData(new BXVector); - //allow any bx - rawData->setBXRange(0, 4000); - - unpackMuonOrbit(rawData.get(), (char*)events_[0]->payload(), events_[0]->eventSize()); - - //TODO: implement here other object type (e.g. unpackCaloOrbit) - // - std::unique_ptr> rawDataSec(new BXVector); - //allow any bx - rawDataSec->setBXRange(0, 4000); - - unpackMuonOrbit(rawDataSec.get(), (char*)events_[1]->payload(), events_[1]->eventSize()); - - uint32_t hdrEventID = events_[0]->event(); //take from 1st file - edm::EventID eventID = edm::EventID(daqSource_->eventRunNumber(), daqSource_->currentLumiSection(), hdrEventID); - edm::EventAuxiliary aux( - eventID, daqSource_->processGUID(), tstamp, events_[0]->isRealData(), edm::EventAuxiliary::PhysicsTrigger); - - aux.setProcessHistoryID(daqSource_->processHistoryID()); - daqSource_->makeEventWrapper(eventPrincipal, aux); - - std::unique_ptr edp(new edm::Wrapper>(std::move(rawData))); - eventPrincipal.put( - daqProvenanceHelpers_[0]->branchDescription(), std::move(edp), daqProvenanceHelpers_[0]->dummyProvenance()); - - //TODO: use other object and provenance helper (duplicate is just for demonstration) - // std::unique_ptr edpSec(new edm::Wrapper>(std::move(rawDataSec))); - // eventPrincipal.put(daqProvenanceHelpers_[1]->branchDescription(), std::move(edpSec), daqProvenanceHelpers_[1]->dummyProvenance()); - - eventCached_ = false; -} - -void DataModeScoutingRun2Multi::unpackMuonOrbit(BXVector* muons, char* buf, size_t len) { - using namespace scouting; - size_t pos = 0; - //uint32_t o_test = 0; - while (pos < len) { - assert(pos + 4 <= len); - uint32_t header = *((uint32*)(buf + pos)); - uint32_t mAcount = (header & header_masks::mAcount) >> header_shifts::mAcount; - uint32_t mBcount = (header & header_masks::mBcount) >> header_shifts::mBcount; - - block* bl = (block*)(buf + pos + 4); - - pos += 12 + (mAcount + mBcount) * 8; - assert(pos <= len); - - uint32_t bx = bl->bx; - - //uint32_t orbit = bl->orbit; - //o_test = orbit; - - //should cuts should be applied - bool excludeIntermediate = true; - - for (size_t i = 0; i < (mAcount + mBcount); i++) { - //unpack new muon - //variables: index, ietaext, ipt, qual, iphiext, iso, chrg, iphi, ieta - - // remove intermediate if required - // index==0 and ietaext==0 are a necessary and sufficient condition - uint32_t index = (bl->mu[i].s >> shifts::index) & masks::index; - int32_t ietaext = ((bl->mu[i].f >> shifts::etaext) & masks::etaextv); - if (((bl->mu[i].f >> shifts::etaext) & masks::etaexts) != 0) - ietaext -= 256; - - if (excludeIntermediate && index == 0 && ietaext == 0) - continue; - - //extract pt and quality and apply cut if required - uint32_t ipt = (bl->mu[i].f >> shifts::pt) & masks::pt; - //cuts?? - // if((ipt-1)mu[i].f >> shifts::qual) & masks::qual; - // if(qual < qualcut) {discarded++; continue;} - - //extract integer value for extrapolated phi - int32_t iphiext = ((bl->mu[i].f >> shifts::phiext) & masks::phiext); - - // extract iso bits and charge - uint32_t iso = (bl->mu[i].s >> shifts::iso) & masks::iso; - int32_t chrg = 0; - if (((bl->mu[i].s >> shifts::chrgv) & masks::chrgv) == 1) { - chrg = ((bl->mu[i].s >> shifts::chrg) & masks::chrg) == 1 ? -1 : 1; - } - - // extract eta and phi at muon station - int32_t iphi = ((bl->mu[i].s >> shifts::phi) & masks::phi); - int32_t ieta = (bl->mu[i].s >> shifts::eta) & masks::etav; - if (((bl->mu[i].s >> shifts::eta) & masks::etas) != 0) - ieta -= 256; - - l1t::Muon muon( - *dummyLVec_, ipt, ieta, iphi, qual, chrg, chrg != 0, iso, -1, 0, false, 0, 0, 0, 0, ietaext, iphiext); - muons->push_back(bx, muon); - } - } -} //unpackOrbit - -std::vector>& DataModeScoutingRun2Multi::makeDaqProvenanceHelpers() { - //set FRD data collection - daqProvenanceHelpers_.clear(); - daqProvenanceHelpers_.emplace_back(std::make_shared( - edm::TypeID(typeid(l1t::MuonBxCollection)), "l1t::MuonBxCollection", "l1tMuonBxCollection", "DAQSource")); - //Note: two same kind of objects can not be put in the event from the source, so this example will be changed - daqProvenanceHelpers_.emplace_back(std::make_shared( - edm::TypeID(typeid(l1t::MuonBxCollection)), "l1t::MuonBxCollection", "l1tMuonBxCollection", "DAQSource")); - return daqProvenanceHelpers_; -} - -bool DataModeScoutingRun2Multi::nextEventView() { - blockCompleted_ = false; - if (eventCached_) - return true; - for (unsigned int i = 0; i < events_.size(); i++) { - //add last event length.. - dataBlockAddrs_[i] += events_[i]->size(); - } - return makeEvents(); -} - -bool DataModeScoutingRun2Multi::makeEvents() { - events_.clear(); - for (int i = 0; i < numFiles_; i++) { - if (dataBlockAddrs_[i] >= dataBlockMaxAddrs_[i]) { - blockCompleted_ = true; - return false; - } - events_.emplace_back(std::make_unique(dataBlockAddrs_[i])); - } - return true; -} - -bool DataModeScoutingRun2Multi::checksumValid() { return true; } - -std::string DataModeScoutingRun2Multi::getChecksumError() const { return std::string(); } diff --git a/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc b/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc new file mode 100644 index 0000000000000..68ffdb32e2f3f --- /dev/null +++ b/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc @@ -0,0 +1,184 @@ +#include "EventFilter//Utilities/interface/DAQSourceModelsScoutingRun3.h" + +void DataModeScoutingRun3::makeDirectoryEntries(std::vector const& baseDirs, + std::vector const& numSources, + std::string const& runDir) { + std::filesystem::path runDirP(runDir); + for (auto& baseDir : baseDirs) { + std::filesystem::path baseDirP(baseDir); + buPaths_.emplace_back(baseDirP / runDirP); + } + + // store the number of sources in each BU + buNumSources_ = numSources; +} + +std::pair> DataModeScoutingRun3::defineAdditionalFiles(std::string const& primaryName, + bool fileListMode) const { + std::vector additionalFiles; + + if (fileListMode) { + // Expected file naming when working in file list mode + for (int j=1; jeventRunNumber(), daqSource_->currentLumiSection(), hdrEventID); + edm::EventAuxiliary aux(eventID, daqSource_->processGUID(), tstamp, events_[0]->isRealData(), edm::EventAuxiliary::PhysicsTrigger); + + aux.setProcessHistoryID(daqSource_->processHistoryID()); + daqSource_->makeEventWrapper(eventPrincipal, aux); + + // create scouting raw data collection + std::unique_ptr rawData(new SRDCollection); + + // Fill the ScoutingRawDataCollection with valid orbit data from the multiple sources + for (const auto& pair: sourceValidOrbitPair_){ + fillSRDCollection(*rawData, (char*)events_[pair.second]->payload(), events_[pair.second]->eventSize()); + } + + std::unique_ptr edp(new edm::Wrapper(std::move(rawData))); + eventPrincipal.put(daqProvenanceHelpers_[0]->branchDescription(), std::move(edp), daqProvenanceHelpers_[0]->dummyProvenance()); + + eventCached_ = false; +} + +void DataModeScoutingRun3::fillSRDCollection( + SRDCollection& rawData, char* buff, size_t len + ){ + + size_t pos = 0; + + // get the source ID + int sourceId = *((uint32_t*)(buff + pos)); + pos += 4; + + // size of the orbit paylod + size_t orbitSize = len-pos; + + // set the size (=orbit size) in the SRDColletion of the current source. + // FRD size is expecting 8 bytes words, while scouting is using 4 bytes + // words. This could be different for some future sources. + FEDRawData& fedData = rawData.FEDData(sourceId); + fedData.resize(orbitSize, 4); + + memcpy(fedData.data(), buff+pos, orbitSize); + + return; +} + +std::vector>& DataModeScoutingRun3::makeDaqProvenanceHelpers() { + //set SRD data collection + daqProvenanceHelpers_.clear(); + daqProvenanceHelpers_.emplace_back(std::make_shared( + edm::TypeID(typeid(SRDCollection)), "SRDCollection", "SRDCollection", "DAQSource")); + return daqProvenanceHelpers_; +} + +bool DataModeScoutingRun3::nextEventView() { + blockCompleted_ = false; + if (eventCached_) + return true; + + // move the data block address only for the sources processed + // un the previous event by adding the last event size + for (const auto& pair: sourceValidOrbitPair_){ + dataBlockAddrs_[pair.first] += events_[pair.second]->size(); + } + + return makeEvents(); +} + +bool DataModeScoutingRun3::makeEvents() { + // clear events and reset current orbit + events_.clear(); + sourceValidOrbitPair_.clear(); + currOrbit = 0xFFFFFFFF; // max uint + assert(!blockCompleted_); + + // create current "events" (= orbits) list from each data source, + // check if one dataBlock terminated earlier than others. + for (int i = 0; i < numFiles_; i++) { + if (dataBlockAddrs_[i] >= dataBlockMaxAddrs_[i]) { + completedBlocks_[i] = true; + continue; + } + + // event contains data, add it to the events list + events_.emplace_back(std::make_unique(dataBlockAddrs_[i])); + if (dataBlockAddrs_[i] + events_.back()->size() > dataBlockMaxAddrs_[i]) + throw cms::Exception("DAQSource::getNextEvent") + << " event id:" << events_.back()->event() << " lumi:" << events_.back()->lumi() << " run:" << events_.back()->run() + << " of size:" << events_.back()->size() << " bytes does not fit into the buffer or has corrupted header"; + + // find the minimum orbit for the current event between all files + if ((events_.back()->event()event(); + } + } + + // mark valid orbits from each data source + // e.g. find when orbit is missing from one source + bool allBlocksCompleted = true; + int evt_idx = 0; + for (int i=0; i < numFiles_; i++){ + if (completedBlocks_[i]) { + continue; + } + + if(events_[evt_idx]->event() != currOrbit){ + // current source (=i-th source) doesn't contain the expected orbit. + // skip it, and move to the next orbit + } else { + // add a pair + // evt_idx can be different from variable i, as some data blocks can be + // completed before others + sourceValidOrbitPair_.emplace_back(std::make_pair(i, evt_idx)); + allBlocksCompleted = false; + } + + evt_idx++; + } + + if (allBlocksCompleted){ + blockCompleted_ = true; + } + return !allBlocksCompleted; +} + +bool DataModeScoutingRun3::checksumValid() { return true; } + +std::string DataModeScoutingRun3::getChecksumError() const { return std::string(); } diff --git a/EventFilter/Utilities/src/EvFDaqDirector.cc b/EventFilter/Utilities/src/EvFDaqDirector.cc index b89a2e4b032ce..4a8f9b13ad254 100644 --- a/EventFilter/Utilities/src/EvFDaqDirector.cc +++ b/EventFilter/Utilities/src/EvFDaqDirector.cc @@ -40,6 +40,7 @@ namespace evf { : base_dir_(pset.getUntrackedParameter("baseDir")), bu_base_dir_(pset.getUntrackedParameter("buBaseDir")), bu_base_dirs_all_(pset.getUntrackedParameter>("buBaseDirsAll")), + bu_base_dirs_nSources_(pset.getUntrackedParameter>("buBaseDirsNumStreams")), run_(pset.getUntrackedParameter("runNumber")), useFileBroker_(pset.getUntrackedParameter("useFileBroker")), fileBrokerHostFromCfg_(pset.getUntrackedParameter("fileBrokerHostFromCfg", true)), @@ -146,6 +147,23 @@ namespace evf { } } + // set number of streams in each BU's ramdisk + if (!bu_base_dirs_nSources_.size()){ + // default is 1 stream per ramdisk + for(unsigned int i=0; i("buBaseDir", ".")->setComment("BU base ramdisk directory "); desc.addUntracked>("buBaseDirsAll", std::vector()) ->setComment("BU base ramdisk directories for multi-file DAQSource models"); + desc.addUntracked>("buBaseDirsNumStreams", std::vector()) + ->setComment("Number of streams for each BU base ramdisk directories for multi-file DAQSource models"); desc.addUntracked("runNumber", 0)->setComment("Run Number in ramdisk to open"); desc.addUntracked("useFileBroker", false) ->setComment("Use BU file service to grab input data instead of NFS file locking"); diff --git a/EventFilter/Utilities/test/FU_scouting.py b/EventFilter/Utilities/test/FU_scouting.py deleted file mode 100644 index 96f1af7d0a436..0000000000000 --- a/EventFilter/Utilities/test/FU_scouting.py +++ /dev/null @@ -1,114 +0,0 @@ -from __future__ import print_function -import FWCore.ParameterSet.Config as cms -import FWCore.ParameterSet.VarParsing as VarParsing -import os - -options = VarParsing.VarParsing ('analysis') - -options.register ('runNumber', -# 325175, # default value - 325172, # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, # string, int, or float - "Run Number") - -options.register ('buBaseDir', - 'ramdisk', # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, # string, int, or float - "BU base directory") - -options.register ('fuBaseDir', - 'data', # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, # string, int, or float - "BU base directory") - -options.register ('fffBaseDir', - '.', # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, # string, int, or float - "FFF base directory") - -options.register ('numThreads', - 4, # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, # string, int, or float - "Number of CMSSW threads") - -options.register ('numFwkStreams', - 4, # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, # string, int, or float - "Number of CMSSW streams") - - -options.parseArguments() - -cmsswbase = os.path.expandvars("$CMSSW_BASE/") - -process = cms.Process("TESTFU") -process.maxEvents.input - -1 - -process.options = dict( - numberOfThreads = options.numThreads, - numberOfStreams = options.numFwkStreams, -# numberOfConcurrentLuminosityBlocks = 1 -) - -process.MessageLogger = cms.Service("MessageLogger", - cout = cms.untracked.PSet(threshold = cms.untracked.string( "ERROR" )), - destinations = cms.untracked.vstring( 'cout' ) -) - -process.FastMonitoringService = cms.Service("FastMonitoringService", - sleepTime = cms.untracked.int32(1) -) - -process.EvFDaqDirector = cms.Service("EvFDaqDirector", - useFileBroker = cms.untracked.bool(False), - fileBrokerHostFromCfg = cms.untracked.bool(True), - fileBrokerHost = cms.untracked.string("htcp40.cern.ch"), - runNumber = cms.untracked.uint32(options.runNumber), - baseDir = cms.untracked.string(options.fffBaseDir+"/"+options.fuBaseDir), - buBaseDir = cms.untracked.string(options.fffBaseDir+"/"+options.buBaseDir), - directorIsBU = cms.untracked.bool(False), -) - -try: - os.makedirs(options.fffBaseDir+"/"+options.fuBaseDir+"/run"+str(options.runNumber).zfill(6)) -except Exception as ex: - print(str(ex)) - pass - -ram_dir_path=options.buBaseDir+"/run"+str(options.runNumber).zfill(6)+"/" - -process.source = cms.Source("DAQSource", - dataMode = cms.untracked.string("ScoutingRun2"), - verifyChecksum = cms.untracked.bool(True), - useL1EventID = cms.untracked.bool(False), - eventChunkSize = cms.untracked.uint32(8), - eventChunkBlock = cms.untracked.uint32(8), - numBuffers = cms.untracked.uint32(2), - maxBufferedFiles = cms.untracked.uint32(2), - fileListMode = cms.untracked.bool(True), - fileNames = cms.untracked.vstring( -# ram_dir_path+"run325175_ls0001_index000001.raw" - ram_dir_path+"run325172_ls0455_index000000.raw" - ) - -) - -process.output = cms.OutputModule("PoolOutputModule", - fileName = cms.untracked.string('file:PoolOutputTest.root'), - outputCommands = cms.untracked.vstring("drop *","keep *_rawDataCollector_*_*") - ) - - -process.ep = cms.EndPath( -# process.streamA -# + process.streamB -# + process.streamC -# + process.streamD - process.output -) diff --git a/EventFilter/Utilities/test/dumpMuonScouting.py b/EventFilter/Utilities/test/dumpMuonScouting.py deleted file mode 100644 index f09081855f5ab..0000000000000 --- a/EventFilter/Utilities/test/dumpMuonScouting.py +++ /dev/null @@ -1,30 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -process = cms.Process( "DUMP" ) - -process.MessageLogger = cms.Service("MessageLogger", - cerr = cms.untracked.PSet( - enable = cms.untracked.bool(False) - ), - cout = cms.untracked.PSet( - enable = cms.untracked.bool(True), - threshold = cms.untracked.string('INFO') - ) -) - - -process.source = cms.Source("PoolSource", - fileNames = cms.untracked.vstring("file:PoolOutputTest.root") -) - -process.dump = cms.EDAnalyzer("DumpMuonScouting", - muInputTag = cms.InputTag("rawDataCollector"), - minBx = cms.int32(0), - maxBx = cms.int32(4000) -) - - -process.p = cms.Path( - process.dump -) - diff --git a/EventFilter/Utilities/test/FU_scouting_2.py b/EventFilter/Utilities/test/testScoutingRun3_daqsource.py similarity index 54% rename from EventFilter/Utilities/test/FU_scouting_2.py rename to EventFilter/Utilities/test/testScoutingRun3_daqsource.py index a45fb4194babc..ed31287924bb7 100644 --- a/EventFilter/Utilities/test/FU_scouting_2.py +++ b/EventFilter/Utilities/test/testScoutingRun3_daqsource.py @@ -1,65 +1,72 @@ from __future__ import print_function import FWCore.ParameterSet.Config as cms import FWCore.ParameterSet.VarParsing as VarParsing -import os +import os, sys -options = VarParsing.VarParsing ('analysis') +options = VarParsing.VarParsing ("analysis") -options.register ('runNumber', -# 325175, # default value - 325172, # default value +options.register ("runNumber", + 368636, VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, # string, int, or float + VarParsing.VarParsing.varType.int, "Run Number") -options.register ('buBaseDir', - 'ramdisk', # default value +options.register ("daqSourceMode", + "ScoutingRun3", VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, # string, int, or float + VarParsing.VarParsing.varType.string, + "DAQ source data mode") + +options.register ("buBaseDir", + "/dev/shm", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, "BU base directory") -options.register ('fuBaseDir', - 'data', # default value +options.register ("fuBaseDir", + "/tmp/", VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, # string, int, or float + VarParsing.VarParsing.varType.string, "BU base directory") -options.register ('fffBaseDir', - '.', # default value +options.register ("fffBaseDir", + "/dev/shm", VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, # string, int, or float + VarParsing.VarParsing.varType.string, "FFF base directory") -options.register ('numThreads', - 1, # default value +options.register ("numThreads", + 2, VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, # string, int, or float + VarParsing.VarParsing.varType.int, "Number of CMSSW threads") -options.register ('numFwkStreams', - 1, # default value +options.register ("numFwkStreams", + 2, VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, # string, int, or float + VarParsing.VarParsing.varType.int, "Number of CMSSW streams") - options.parseArguments() cmsswbase = os.path.expandvars("$CMSSW_BASE/") -process = cms.Process("TESTFU") +process = cms.Process("SCPU") process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(-1) ) process.options = cms.untracked.PSet( + wantSummary = cms.untracked.bool(True), numberOfThreads = cms.untracked.uint32(options.numThreads), numberOfStreams = cms.untracked.uint32(options.numFwkStreams), - numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(1) # ShmStreamConsumer requires synchronization at LuminosityBlock boundaries + numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(1) ) process.MessageLogger = cms.Service("MessageLogger", - cout = cms.untracked.PSet(threshold = cms.untracked.string( "INFO" )), - destinations = cms.untracked.vstring( 'cout' ) + cout = cms.untracked.PSet( + threshold = cms.untracked.string( "INFO" ) + ), + destinations = cms.untracked.vstring( "cout" ), ) process.FastMonitoringService = cms.Service("FastMonitoringService", @@ -68,6 +75,12 @@ process.EvFDaqDirector = cms.Service("EvFDaqDirector", useFileBroker = cms.untracked.bool(False), + buBaseDirsAll = cms.untracked.vstring( + options.buBaseDir + ), + buBaseDirsNumStreams = cms.untracked.vint32( + 2 + ), fileBrokerHostFromCfg = cms.untracked.bool(True), fileBrokerHost = cms.untracked.string("htcp40.cern.ch"), runNumber = cms.untracked.uint32(options.runNumber), @@ -83,35 +96,33 @@ pass ram_dir_path=options.buBaseDir+"/run"+str(options.runNumber).zfill(6)+"/" +flist = [ + ram_dir_path + "run" + str(options.runNumber) + "_ls0340_index000001.raw" +] process.source = cms.Source("DAQSource", -# dataMode = cms.untracked.string("ScoutingRun2Muon"), - dataMode = cms.untracked.string("ScoutingRun2Multi"), - verifyChecksum = cms.untracked.bool(True), + testing = cms.untracked.bool(True), + dataMode = cms.untracked.string(options.daqSourceMode), + verifyChecksum = cms.untracked.bool(False), useL1EventID = cms.untracked.bool(False), - eventChunkSize = cms.untracked.uint32(8), - eventChunkBlock = cms.untracked.uint32(8), + eventChunkBlock = cms.untracked.uint32(64), + eventChunkSize = cms.untracked.uint32(128), + maxChunkSize = cms.untracked.uint32(256), numBuffers = cms.untracked.uint32(2), maxBufferedFiles = cms.untracked.uint32(2), fileListMode = cms.untracked.bool(True), - fileNames = cms.untracked.vstring( -# ram_dir_path+"run325175_ls0001_index000001.raw" - ram_dir_path+"run325172_ls0010_index000000.raw", - ram_dir_path+"run325172_ls0380_index000000.raw" - ) + fileNames = cms.untracked.vstring(*flist) ) -process.output = cms.OutputModule("PoolOutputModule", +process.outputZB = cms.OutputModule("PoolOutputModule", fileName = cms.untracked.string('file:PoolOutputTest.root'), - outputCommands = cms.untracked.vstring("drop *","keep *_rawDataCollector_*_*") + outputCommands = cms.untracked.vstring( + "drop *", + "keep *_rawDataCollector_*_*" ) - +) process.ep = cms.EndPath( -# process.streamA -# + process.streamB -# + process.streamC -# + process.streamD - process.output -) + process.outputZB +) \ No newline at end of file From 567e1fc0a5704b2857f8500f4eec837b6d7dadfc Mon Sep 17 00:00:00 2001 From: matteo Date: Mon, 13 Nov 2023 11:13:44 +0100 Subject: [PATCH 026/281] Renamed L1 scouting raw data data formats --- DataFormats/L1ScoutingRawData/BuildFile.xml | 7 ++++ .../interface/SDSNumbering.h | 26 +++++++++++++ .../interface/SDSRawDataCollection.h | 38 +++++++++++++++++++ .../src/SDSRawDataCollection.cc | 12 ++++++ DataFormats/L1ScoutingRawData/src/classes.h | 4 ++ .../L1ScoutingRawData/src/classes_def.xml | 5 +++ EventFilter/Utilities/BuildFile.xml | 2 +- .../interface/DAQSourceModelsScoutingRun3.h | 4 +- 8 files changed, 95 insertions(+), 3 deletions(-) create mode 100644 DataFormats/L1ScoutingRawData/BuildFile.xml create mode 100644 DataFormats/L1ScoutingRawData/interface/SDSNumbering.h create mode 100644 DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h create mode 100644 DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc create mode 100644 DataFormats/L1ScoutingRawData/src/classes.h create mode 100644 DataFormats/L1ScoutingRawData/src/classes_def.xml diff --git a/DataFormats/L1ScoutingRawData/BuildFile.xml b/DataFormats/L1ScoutingRawData/BuildFile.xml new file mode 100644 index 0000000000000..832b36382f2f1 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/BuildFile.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h b/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h new file mode 100644 index 0000000000000..8353d423d6c64 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h @@ -0,0 +1,26 @@ +#ifndef L1Scouting_SDSNumbering_h +#define L1Scouting_SDSNumbering_h + +/** + * + * This class holds the Scouting Data Source (SDS) + * numbering scheme for the Level 1 scouting system + * + */ + +class SDSNumbering { + public: + static constexpr int lastSDSId() { return MAXSDSID; } + + enum { + NOT_A_SDSID = -1, + MAXSDSID = 32, + GmtSDSID = 1, + CaloSDSID = 2, + GtSDSID = 4, + BmtfMinSDSID = 10, + BmtfMaxSDSID = 21 + }; +}; + +#endif // L1Scouting_SDSNumbering_h \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h b/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h new file mode 100644 index 0000000000000..50f958353d423 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h @@ -0,0 +1,38 @@ +#ifndef L1Scouting_SDSRawDataCollection_h +#define L1Scouting_SDSRawDataCollection_h + +#include "DataFormats/FEDRawData/interface/FEDRawData.h" +#include "DataFormats/Common/interface/traits.h" +#include "FWCore/Utilities/interface/GCCPrerequisite.h" + + +/** + * + * This collection holds the raw data for all the + * scouting data sources. It is a collection of FEDRawData + * + */ + +class SRDCollection: public edm::DoNotRecordParents { + public: + SRDCollection(); + + virtual ~SRDCollection(); + + // retrive data for the scouting source at sourceId + const FEDRawData& FEDData(int sourceId) const; + + // retrive data for the scouting source at sourceId + FEDRawData& FEDData(int sourceId); + + SRDCollection(const SRDCollection&); + + void swap(SRDCollection& other) { data_.swap(other.data_); } + + private: + std::vector data_; // vector of raw data +}; + +inline void swap(SRDCollection& a, SRDCollection& b) { a.swap(b); } + +#endif // L1Scouting_SDSRawDataCollection_h \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc b/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc new file mode 100644 index 0000000000000..f08e423693f4f --- /dev/null +++ b/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc @@ -0,0 +1,12 @@ +#include +#include + +SRDCollection::SRDCollection() : data_(SDSNumbering::lastSDSId() + 1) {} + +SRDCollection::SRDCollection(const SRDCollection& in) : data_(in.data_) {} + +SRDCollection::~SRDCollection() {} + +const FEDRawData& SRDCollection::FEDData(int sourceId) const { return data_[sourceId]; } + +FEDRawData& SRDCollection::FEDData(int sourceId) { return data_[sourceId]; } \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/src/classes.h b/DataFormats/L1ScoutingRawData/src/classes.h new file mode 100644 index 0000000000000..9801506e6e233 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/src/classes.h @@ -0,0 +1,4 @@ +#include +#include + +#include \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/src/classes_def.xml b/DataFormats/L1ScoutingRawData/src/classes_def.xml new file mode 100644 index 0000000000000..b86b822479c46 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/src/classes_def.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/EventFilter/Utilities/BuildFile.xml b/EventFilter/Utilities/BuildFile.xml index 9a45e9af684bd..2270817d5ce0a 100644 --- a/EventFilter/Utilities/BuildFile.xml +++ b/EventFilter/Utilities/BuildFile.xml @@ -2,7 +2,7 @@ - + diff --git a/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h b/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h index d53d87cc3ca0d..4dbf9fb198e39 100644 --- a/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h +++ b/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h @@ -3,8 +3,8 @@ #include "EventFilter/Utilities/interface/DAQSource.h" #include "EventFilter/Utilities/interface/DAQSourceModels.h" -#include "DataFormats/L1Scouting/interface/SDSRawDataCollection.h" -#include "DataFormats/L1Scouting/interface/SDSNumbering.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSNumbering.h" #include "FWCore/Framework/interface/Event.h" #include "DataFormats/Provenance/interface/EventAuxiliary.h" From 93645d67f3ec39f8cc32206305abb3a1c03ef611 Mon Sep 17 00:00:00 2001 From: iarspider Date: Tue, 14 Nov 2023 14:28:40 +0100 Subject: [PATCH 027/281] Update BuildFile.xml --- PhysicsTools/PythonAnalysis/test/BuildFile.xml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/PhysicsTools/PythonAnalysis/test/BuildFile.xml b/PhysicsTools/PythonAnalysis/test/BuildFile.xml index b913a38ec10f5..957a270b2e941 100644 --- a/PhysicsTools/PythonAnalysis/test/BuildFile.xml +++ b/PhysicsTools/PythonAnalysis/test/BuildFile.xml @@ -14,10 +14,6 @@ - - - - @@ -143,7 +139,6 @@ - From c1b0013616d17b8e0bd861228abe1dbe87e1b97b Mon Sep 17 00:00:00 2001 From: iarspider Date: Tue, 14 Nov 2023 14:28:57 +0100 Subject: [PATCH 028/281] Delete PhysicsTools/PythonAnalysis/test/test_torch.py --- .../PythonAnalysis/test/test_torch.py | 55 ------------------- 1 file changed, 55 deletions(-) delete mode 100755 PhysicsTools/PythonAnalysis/test/test_torch.py diff --git a/PhysicsTools/PythonAnalysis/test/test_torch.py b/PhysicsTools/PythonAnalysis/test/test_torch.py deleted file mode 100755 index 8726982e2c276..0000000000000 --- a/PhysicsTools/PythonAnalysis/test/test_torch.py +++ /dev/null @@ -1,55 +0,0 @@ -#!/usr/bin/env python3 - -import torch -import math -import sys - - -dtype = torch.float -device = torch.device(sys.argv[1]) - -# Create random input and output data -try: - x = torch.linspace(-math.pi, math.pi, 2000, device=device, dtype=dtype) -except RuntimeError as e: - if 'cuda' in str(e).lower(): - print("CUDA-related error - is CUDA device available?") - print(str(e)) - exit(0) - else: - raise e - -y = torch.sin(x) - -# Randomly initialize weights -a = torch.randn((), device=device, dtype=dtype) -b = torch.randn((), device=device, dtype=dtype) -c = torch.randn((), device=device, dtype=dtype) -d = torch.randn((), device=device, dtype=dtype) - -learning_rate = 1e-6 -for t in range(2000): - # Forward pass: compute predicted y - y_pred = a + b * x + c * x ** 2 + d * x ** 3 - - # Compute and print loss - loss = (y_pred - y).pow(2).sum().item() - if t % 100 == 99: - print(t, loss) - - # Backprop to compute gradients of a, b, c, d with respect to loss - grad_y_pred = 2.0 * (y_pred - y) - grad_a = grad_y_pred.sum() - grad_b = (grad_y_pred * x).sum() - grad_c = (grad_y_pred * x ** 2).sum() - grad_d = (grad_y_pred * x ** 3).sum() - - # Update weights using gradient descent - a -= learning_rate * grad_a - b -= learning_rate * grad_b - c -= learning_rate * grad_c - d -= learning_rate * grad_d - - -print(f'Result: y = {a.item()} + {b.item()} x + {c.item()} x^2 + {d.item()} x^3') - From fddf88bd1e56f3ff875c3ec530acbde9068a966b Mon Sep 17 00:00:00 2001 From: iarspider Date: Tue, 14 Nov 2023 14:36:12 +0100 Subject: [PATCH 029/281] Update BuildFile.xml --- PhysicsTools/PythonAnalysis/test/BuildFile.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PhysicsTools/PythonAnalysis/test/BuildFile.xml b/PhysicsTools/PythonAnalysis/test/BuildFile.xml index 957a270b2e941..d8dcf1048356c 100644 --- a/PhysicsTools/PythonAnalysis/test/BuildFile.xml +++ b/PhysicsTools/PythonAnalysis/test/BuildFile.xml @@ -144,5 +144,5 @@ - + From 4379e5ba8bd89e80c78eb277f69b14d2a98c0d52 Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Tue, 14 Nov 2023 17:14:35 +0100 Subject: [PATCH 030/281] Apply code checks --- L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc index 6511f70d63f74..3e6fe0669b888 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc @@ -134,7 +134,7 @@ std::vector> L1CTJetFileWriter::encodeJets(const std::vector> jet_words(2 * nJets, 0); // allocate 2 words per jet for (unsigned i = 0; i < std::min(nJets, (uint)jets.size()); i++) { - l1t::PFJet j = jets.at(i); + const l1t::PFJet& j = jets.at(i); jet_words[2 * i] = j.encodedJet()[0]; jet_words[2 * i + 1] = j.encodedJet()[1]; } From b9c7ba32efd02d2eb221527491620737814487ba Mon Sep 17 00:00:00 2001 From: matteo Date: Thu, 16 Nov 2023 20:01:22 +0100 Subject: [PATCH 031/281] [WIP] fixed orbit collection, new data structure allows to achieve compression factor of 2 --- .../L1Scouting/interface/L1ScoutingMuon.h | 20 ++++ .../L1Scouting/interface/OrbitCollection.h | 97 +++++++++++++++++++ .../interface/DAQSourceModelsScoutingRun3.h | 2 +- .../src/DAQSourceModelsScoutingRun3.cc | 10 +- 4 files changed, 123 insertions(+), 6 deletions(-) create mode 100644 DataFormats/L1Scouting/interface/L1ScoutingMuon.h create mode 100644 DataFormats/L1Scouting/interface/OrbitCollection.h diff --git a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h new file mode 100644 index 0000000000000..c63b3351a1d19 --- /dev/null +++ b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h @@ -0,0 +1,20 @@ +#ifndef DataFormats_L1Scouting_L1ScoutingMuon_h +#define DataFormats_L1Scouting_L1ScoutingMuon_h + +#include + +class ScMuon { + public: + int pt, eta, phi, qual, chrg, chrgv; + int iso, index, etae, phie, ptUncon; + //float fpt, feta, fphi, fetae, fphie, fptUncon; + + inline float getPt(){return 0.05*(pt-1);} + inline float getEta(){return 0.0870/8*eta;} + inline float getPhi(){return 2.*M_PI/576.*phi;} + inline float getPtUncon(){return 0.05*(ptUncon-1);} + inline float getEtaExt(){return 0.0870/8*etae;} + inline float getPhiExt(){return 2.*M_PI/576.*phie;} +}; + +#endif // DataFormats_L1Scouting_L1ScoutingMuon_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/OrbitCollection.h b/DataFormats/L1Scouting/interface/OrbitCollection.h new file mode 100644 index 0000000000000..5a65859b9d887 --- /dev/null +++ b/DataFormats/L1Scouting/interface/OrbitCollection.h @@ -0,0 +1,97 @@ +#ifndef DataFormats_L1Scouting_OrbitCollection_h +#define DataFormats_L1Scouting_OrbitCollection_h + +#include "DataFormats/Common/interface/traits.h" +#include "FWCore/Utilities/interface/GCCPrerequisite.h" +#include "DataFormats/L1Trigger/interface/Muon.h" + +#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" + +#include +#include + +namespace scoutingRun3 { + + template + class OrbitCollection { + public: + OrbitCollection(): bxOffsets_(3565, 0), bxData_(3565), nObjects_(0) {} + + // append one object to vector at bx + void addBxObject(int bx, T& object) { + assert(bx<=3564); + bxData_[bx].push_back(object); + nObjects_ ++; + } + + // append objects to bx from an iterator + template + void addBxObjects(int bx, VI objectsBegin, VI objectsEnd){ + assert(bx<=3564); + bxData_[bx].insert(bxData_[bx].end(), objectsBegin, objectsEnd); + nObjects_ += std::distance(objectsBegin, objectsEnd); + } + + // flatten bxData_ vector. Must be called at the end of the orbit. + void flatten(){ + data_.reserve(nObjects_); + bxOffsets_[0] = 0; + int bxIdx = 1; + for (auto &bxVec: bxData_){ + data_.insert(data_.end(), + std::make_move_iterator(bxVec.begin()), + std::make_move_iterator(bxVec.end()) + ); + // increase offset by the currect vec size + bxOffsets_[bxIdx] = bxOffsets_[bxIdx-1] + bxVec.size(); + bxIdx++; + } + + bxData_.clear(); + } + + // get number of objects stored in a BX + int getBxSize(int bx){ + if (bx>3564){ + edm::LogWarning ("OrbitCollection") + << "Called getBxSize() of a bx out of the orbit range." + << " BX = " << bx; + return 0; + } + if (data_.size()==0) { + edm::LogWarning ("OrbitCollection") + << "Called getBxSize() but data_ is empty."; + } + return bxOffsets_[bx+1] - bxOffsets_[bx]; + } + + // get i-th object from BX + const T& getBxObject(int bx, unsigned i){ + assert(bx<=3564); + assert(i bxOffsets_; + std::vector data_; + + // Transient container used while filling the orbit collection. + // Needed because data could be added to the collection with unsorted BX. + // This will not be persisted (transient="true") + mutable std::vector> bxData_; + + // count number of objects inserted into the collection + int nObjects_; + }; + + typedef OrbitCollection MuonOrbitCollection; + + typedef OrbitCollection ScMuonOrbitCollection; + +} + +#endif // DataFormats_L1Scouting_OrbitCollection_h \ No newline at end of file diff --git a/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h b/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h index 4dbf9fb198e39..7439fcc108a4b 100644 --- a/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h +++ b/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h @@ -127,7 +127,7 @@ class DataModeScoutingRun3 : public DataMode { // keep track of valid (=aligned) orbits from different data sources std::vector> sourceValidOrbitPair_; - unsigned int currOrbit = 0xFFFFFFFF; + unsigned int currOrbit_ = 0xFFFFFFFF; std::vector completedBlocks_; }; diff --git a/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc b/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc index 68ffdb32e2f3f..6d9b9405ef5d1 100644 --- a/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc +++ b/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc @@ -55,7 +55,7 @@ void DataModeScoutingRun3::readEvent(edm::EventPrincipal& eventPrincipal) { edm::Timestamp tstamp(time); // set provenance helpers - uint32_t hdrEventID = currOrbit; + uint32_t hdrEventID = currOrbit_; edm::EventID eventID = edm::EventID(daqSource_->eventRunNumber(), daqSource_->currentLumiSection(), hdrEventID); edm::EventAuxiliary aux(eventID, daqSource_->processGUID(), tstamp, events_[0]->isRealData(), edm::EventAuxiliary::PhysicsTrigger); @@ -126,7 +126,7 @@ bool DataModeScoutingRun3::makeEvents() { // clear events and reset current orbit events_.clear(); sourceValidOrbitPair_.clear(); - currOrbit = 0xFFFFFFFF; // max uint + currOrbit_ = 0xFFFFFFFF; // max uint assert(!blockCompleted_); // create current "events" (= orbits) list from each data source, @@ -145,8 +145,8 @@ bool DataModeScoutingRun3::makeEvents() { << " of size:" << events_.back()->size() << " bytes does not fit into the buffer or has corrupted header"; // find the minimum orbit for the current event between all files - if ((events_.back()->event()event(); + if ((events_.back()->event()event(); } } @@ -159,7 +159,7 @@ bool DataModeScoutingRun3::makeEvents() { continue; } - if(events_[evt_idx]->event() != currOrbit){ + if(events_[evt_idx]->event() != currOrbit_){ // current source (=i-th source) doesn't contain the expected orbit. // skip it, and move to the next orbit } else { From 12b08e15bbc90f5cf3db1429a0dd1db3615dd39f Mon Sep 17 00:00:00 2001 From: matteo Date: Fri, 17 Nov 2023 13:25:01 +0100 Subject: [PATCH 032/281] [WIP] added new calo data structures --- DataFormats/L1Scouting/BuildFile.xml | 2 - .../L1Scouting/interface/L1ScoutingCalo.h | 149 ++++++++++++++++ .../L1Scouting/interface/L1ScoutingMuon.h | 126 ++++++++++++-- .../L1Scouting/interface/OrbitCollection.h | 23 ++- .../L1Scouting/interface/SDSNumbering.h | 26 --- .../interface/SDSRawDataCollection.h | 38 ---- .../L1Scouting/src/SDSRawDataCollection.cc | 12 -- DataFormats/L1Scouting/src/classes.h | 22 ++- DataFormats/L1Scouting/src/classes_def.xml | 58 ++++++- .../interface/SDSNumbering.h | 6 +- .../interface/SDSRawDataCollection.h | 6 +- .../test/testScoutingRun3_unpackers.py | 163 ++++++++++++++++++ 12 files changed, 524 insertions(+), 107 deletions(-) create mode 100644 DataFormats/L1Scouting/interface/L1ScoutingCalo.h delete mode 100644 DataFormats/L1Scouting/interface/SDSNumbering.h delete mode 100644 DataFormats/L1Scouting/interface/SDSRawDataCollection.h delete mode 100644 DataFormats/L1Scouting/src/SDSRawDataCollection.cc create mode 100644 EventFilter/Utilities/test/testScoutingRun3_unpackers.py diff --git a/DataFormats/L1Scouting/BuildFile.xml b/DataFormats/L1Scouting/BuildFile.xml index 832b36382f2f1..0f37f92979ed5 100644 --- a/DataFormats/L1Scouting/BuildFile.xml +++ b/DataFormats/L1Scouting/BuildFile.xml @@ -1,7 +1,5 @@ - - \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h new file mode 100644 index 0000000000000..a86e3e70b8256 --- /dev/null +++ b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h @@ -0,0 +1,149 @@ +#ifndef DataFormats_L1Scouting_L1ScoutingCalo_h +#define DataFormats_L1Scouting_L1ScoutingCalo_h + +#include "DataFormats/L1Trigger/interface/EtSum.h" +#include + +namespace scoutingRun3 { + + class ScCaloObject { + public: + ScCaloObject() + : hwEt_(0), + hwEta_(0), + hwPhi_(0), + iso_(0){} + + ScCaloObject( + int hwEt, + int hwEta, + int hwPhi, + int iso) + : hwEt_(hwEt), + hwEta_(hwEta), + hwPhi_(hwPhi), + iso_(iso) {} + + ScCaloObject(const ScCaloObject& other) = default; + ScCaloObject(ScCaloObject&& other) = default; + ScCaloObject & operator=(const ScCaloObject& other) = default; + ScCaloObject & operator=(ScCaloObject&& other) = default; + + inline void setHwEt(int hwEt) { hwEt_= hwEt;} + inline void setHwEta(int hwEta) { hwEta_= hwEta;} + inline void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} + inline void setIso(int iso) { iso_= iso;} + + inline int getHwEt() const {return hwEt_;} + inline int getHwEta() const {return hwEta_;} + inline int getHwPhi() const {return hwPhi_;} + inline int getIso() const {return iso_;} + + inline float getEt() const { + return et_scale_* hwEt_; + } + inline float getEta()const { + return eta_scale_*hwEta_; + } + inline float getPhi() const { + float fPhi = phi_scale_*hwPhi_; + fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; + return fPhi; + } + + private: + int hwEt_; + int hwEta_; + int hwPhi_; + int iso_; + + static constexpr float phi_scale_ = 2.*M_PI/144.; + static constexpr float eta_scale_ = 0.0435; + static constexpr float et_scale_ = 0.5; + }; + + class ScJet: public ScCaloObject { + public: + ScJet(): ScCaloObject(0, 0 ,0 , 0){} + + ScJet( + int hwEt, + int hwEta, + int hwPhi, + int iso) + : ScCaloObject(hwEt, hwEta ,hwPhi , iso) {} + }; + + class ScEGamma: public ScCaloObject { + public: + ScEGamma(): ScCaloObject(0, 0 ,0 , 0){} + + ScEGamma( + int hwEt, + int hwEta, + int hwPhi, + int iso) + : ScCaloObject(hwEt, hwEta ,hwPhi , iso) {} + }; + + class ScTau: public ScCaloObject { + public: + ScTau(): ScCaloObject(0, 0 ,0 , 0){} + + ScTau( + int hwEt, + int hwEta, + int hwPhi, + int iso) + : ScCaloObject(hwEt, hwEta ,hwPhi , iso) {} + }; + + + class ScEtSum { + public: + ScEtSum() + : hwEt_(0), + hwPhi_(0), + type_(l1t::EtSum::kUninitialized) {} + + ScEtSum( + int hwEt, + int hwPhi, + l1t::EtSum::EtSumType type) + : hwEt_(hwEt), + hwPhi_(hwPhi), + type_(type) {} + + ScEtSum(const ScEtSum& other) = default; + ScEtSum(ScEtSum&& other) = default; + ScEtSum & operator=(const ScEtSum& other) = default; + ScEtSum & operator=(ScEtSum&& other) = default; + + inline void setHwEt(int hwEt) { hwEt_= hwEt;} + inline void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} + inline void setType(l1t::EtSum::EtSumType type) { type_= type;} + + inline int getHwEt() const {return hwEt_;} + inline int getHwPhi() const {return hwPhi_;} + inline l1t::EtSum::EtSumType getType() const {return type_;} + + inline float getEt() const { + return et_scale_* hwEt_; + } + inline float getPhi() const { + float fPhi = phi_scale_*hwPhi_; + fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; + return fPhi; + } + + private: + int hwEt_; + int hwPhi_; + l1t::EtSum::EtSumType type_; + + static constexpr float phi_scale_ = 2.*M_PI/144.; + static constexpr float et_scale_ = 0.5; + }; + +} // namespace scoutingRun3 +#endif // DataFormats_L1Scouting_L1ScoutingCalo_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h index c63b3351a1d19..ac52c81224736 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h @@ -3,18 +3,120 @@ #include -class ScMuon { +namespace scoutingRun3 { + class ScMuon { public: - int pt, eta, phi, qual, chrg, chrgv; - int iso, index, etae, phie, ptUncon; - //float fpt, feta, fphi, fetae, fphie, fptUncon; - - inline float getPt(){return 0.05*(pt-1);} - inline float getEta(){return 0.0870/8*eta;} - inline float getPhi(){return 2.*M_PI/576.*phi;} - inline float getPtUncon(){return 0.05*(ptUncon-1);} - inline float getEtaExt(){return 0.0870/8*etae;} - inline float getPhiExt(){return 2.*M_PI/576.*phie;} -}; + ScMuon() + : hwPt_(0), + hwEta_(0), + hwPhi_(0), + hwQual_(0), + hwChrg_(0), + hwChrgv_(0), + hwIso_(0), + tfIndex_(0), + hwEtaAtVtx_(0), + hwPhiAtVtx_(0), + hwPtUnconstrained_(0), + hwDXY_(0) {} + + ScMuon( + int hwPt, + int hwEta, + int hwPhi, + int hwQual, + int hwChrg, + int hwChrgv, + int hwIso, + int tfIndex, + int hwEtaAtVtx, + int hwPhiAtVtx, + int hwPtUnconstrained, + int hwDXY) + : hwPt_(hwPt), + hwEta_(hwEta), + hwPhi_(hwPhi), + hwQual_(hwQual), + hwChrg_(hwChrg), + hwChrgv_(hwChrgv), + hwIso_(hwIso), + tfIndex_(tfIndex), + hwEtaAtVtx_(hwEtaAtVtx), + hwPhiAtVtx_(hwPhiAtVtx), + hwPtUnconstrained_(hwPtUnconstrained), + hwDXY_(hwDXY) {} + + ScMuon(const ScMuon& other) = default; + ScMuon(ScMuon&& other) = default; + ScMuon & operator=(const ScMuon& other) = default; + ScMuon & operator=(ScMuon&& other) = default; + + inline void setHwPt(int hwPt) { hwPt_= hwPt;} + inline void setHwEta(int hwEta) { hwEta_= hwEta;} + inline void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} + inline void setHwQual(int hwQual) { hwQual_= hwQual;} + inline void setHwChrg(int hwChrg) { hwChrg_= hwChrg;} + inline void setHwChrgv(int hwChrgv) { hwChrgv_= hwChrgv;} + inline void setHwIso(int hwIso) { hwIso_= hwIso;} + inline void setHfIndex(int tfIndex) { tfIndex_= tfIndex;} + inline void setHwEtaAtVtx(int hwEtaAtVtx) { hwEtaAtVtx_= hwEtaAtVtx;} + inline void setHwPhiAtVtx(int hwPhiAtVtx) { hwPhiAtVtx_= hwPhiAtVtx;} + inline void setHwPtUnconstrained(int hwPtUnconstrained) { hwPtUnconstrained_= hwPtUnconstrained;} + inline void setHwDXY(int hwDXY) { hwDXY_= hwDXY;} + + inline int getHwPt() const {return hwPt_;} + inline int getHwEta() const {return hwEta_;} + inline int getHwPhi() const {return hwPhi_;} + inline int getHwQual() const {return hwQual_;} + inline int getHwChrg() const {return hwChrg_;} + inline int getHwChrgv() const {return hwChrgv_;} + inline int getHwIso() const {return hwIso_;} + inline int getHfIndex() const {return tfIndex_;} + inline int getHwEtaAtVtx() const {return hwEtaAtVtx_;} + inline int getHwPhiAtVtx() const {return hwPhiAtVtx_;} + inline int getHwPtUnconstrained() const {return hwPtUnconstrained_;} + inline int getHwDXY() const {return hwDXY_;} + + inline float getPt() const { + return pt_scale_*(hwPt_-1); + } + inline float getEta()const { + return eta_scale_*hwEta_; + } + inline float getPhi() const { + return phi_scale_*hwPhi_; + } + inline float getPtUnconstrained() const { + return pt_scale_*(hwPtUnconstrained_-1); + } + inline float getEtaAtVtx() const { + return eta_scale_*hwEtaAtVtx_; + } + inline float getPhiAtVtx() const { + return phi_scale_*hwPhiAtVtx_; + } + + private: + int hwPt_; + int hwEta_; + int hwPhi_; + int hwQual_; + int hwChrg_; + int hwChrgv_; + int hwIso_; + int tfIndex_; + int hwEtaAtVtx_; + int hwPhiAtVtx_; + int hwPtUnconstrained_; + int hwDXY_; + + // constants to convert from harware to physical quantities + static constexpr float pt_scale_ = 0.5; + static constexpr float ptunconstrained_scale_ = 1.0; + static constexpr float phi_scale_ = 2.*M_PI/576.; + static constexpr float eta_scale_ = 0.0870/8; + }; + +} // namespace scoutingRun3 #endif // DataFormats_L1Scouting_L1ScoutingMuon_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/OrbitCollection.h b/DataFormats/L1Scouting/interface/OrbitCollection.h index 5a65859b9d887..7c19e091d895a 100644 --- a/DataFormats/L1Scouting/interface/OrbitCollection.h +++ b/DataFormats/L1Scouting/interface/OrbitCollection.h @@ -3,9 +3,15 @@ #include "DataFormats/Common/interface/traits.h" #include "FWCore/Utilities/interface/GCCPrerequisite.h" + #include "DataFormats/L1Trigger/interface/Muon.h" +#include "DataFormats/L1Trigger/interface/EGamma.h" +#include "DataFormats/L1Trigger/interface/Jet.h" +#include "DataFormats/L1Trigger/interface/Tau.h" +#include "DataFormats/L1Trigger/interface/EtSum.h" #include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" #include #include @@ -20,7 +26,7 @@ namespace scoutingRun3 { // append one object to vector at bx void addBxObject(int bx, T& object) { assert(bx<=3564); - bxData_[bx].push_back(object); + bxData_[bx].emplace_back(object); nObjects_ ++; } @@ -88,10 +94,17 @@ namespace scoutingRun3 { int nObjects_; }; - typedef OrbitCollection MuonOrbitCollection; - - typedef OrbitCollection ScMuonOrbitCollection; - + typedef OrbitCollection MuonOrbitCollection; + typedef OrbitCollection JetOrbitCollection; + typedef OrbitCollection EGammaOrbitCollection; + typedef OrbitCollection TauOrbitCollection; + typedef OrbitCollection EtSumOrbitCollection; + + typedef OrbitCollection ScMuonOrbitCollection; + typedef OrbitCollection ScJetOrbitCollection; + typedef OrbitCollection ScEGammaOrbitCollection; + typedef OrbitCollection ScTauOrbitCollection; + typedef OrbitCollection ScEtSumOrbitCollection; } #endif // DataFormats_L1Scouting_OrbitCollection_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/SDSNumbering.h b/DataFormats/L1Scouting/interface/SDSNumbering.h deleted file mode 100644 index 8353d423d6c64..0000000000000 --- a/DataFormats/L1Scouting/interface/SDSNumbering.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef L1Scouting_SDSNumbering_h -#define L1Scouting_SDSNumbering_h - -/** - * - * This class holds the Scouting Data Source (SDS) - * numbering scheme for the Level 1 scouting system - * - */ - -class SDSNumbering { - public: - static constexpr int lastSDSId() { return MAXSDSID; } - - enum { - NOT_A_SDSID = -1, - MAXSDSID = 32, - GmtSDSID = 1, - CaloSDSID = 2, - GtSDSID = 4, - BmtfMinSDSID = 10, - BmtfMaxSDSID = 21 - }; -}; - -#endif // L1Scouting_SDSNumbering_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/SDSRawDataCollection.h b/DataFormats/L1Scouting/interface/SDSRawDataCollection.h deleted file mode 100644 index 50f958353d423..0000000000000 --- a/DataFormats/L1Scouting/interface/SDSRawDataCollection.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef L1Scouting_SDSRawDataCollection_h -#define L1Scouting_SDSRawDataCollection_h - -#include "DataFormats/FEDRawData/interface/FEDRawData.h" -#include "DataFormats/Common/interface/traits.h" -#include "FWCore/Utilities/interface/GCCPrerequisite.h" - - -/** - * - * This collection holds the raw data for all the - * scouting data sources. It is a collection of FEDRawData - * - */ - -class SRDCollection: public edm::DoNotRecordParents { - public: - SRDCollection(); - - virtual ~SRDCollection(); - - // retrive data for the scouting source at sourceId - const FEDRawData& FEDData(int sourceId) const; - - // retrive data for the scouting source at sourceId - FEDRawData& FEDData(int sourceId); - - SRDCollection(const SRDCollection&); - - void swap(SRDCollection& other) { data_.swap(other.data_); } - - private: - std::vector data_; // vector of raw data -}; - -inline void swap(SRDCollection& a, SRDCollection& b) { a.swap(b); } - -#endif // L1Scouting_SDSRawDataCollection_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/SDSRawDataCollection.cc b/DataFormats/L1Scouting/src/SDSRawDataCollection.cc deleted file mode 100644 index fad0039e8d499..0000000000000 --- a/DataFormats/L1Scouting/src/SDSRawDataCollection.cc +++ /dev/null @@ -1,12 +0,0 @@ -#include -#include - -SRDCollection::SRDCollection() : data_(SDSNumbering::lastSDSId() + 1) {} - -SRDCollection::SRDCollection(const SRDCollection& in) : data_(in.data_) {} - -SRDCollection::~SRDCollection() {} - -const FEDRawData& SRDCollection::FEDData(int sourceId) const { return data_[sourceId]; } - -FEDRawData& SRDCollection::FEDData(int sourceId) { return data_[sourceId]; } \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/classes.h b/DataFormats/L1Scouting/src/classes.h index d14a7d97ff436..1d82a0428568e 100644 --- a/DataFormats/L1Scouting/src/classes.h +++ b/DataFormats/L1Scouting/src/classes.h @@ -1,4 +1,20 @@ -#include -#include +#include "DataFormats/Common/interface/RefProd.h" +#include "DataFormats/Common/interface/Wrapper.h" -#include \ No newline at end of file +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" + +namespace scoutingRun3 { + edm::Wrapper> MuonOrbitCollectionWrapper; + edm::Wrapper> JetOrbitCollectionWrapper; + edm::Wrapper> EGammaOrbitCollectionWrapper; + edm::Wrapper> TauOrbitCollectionWrapper; + edm::Wrapper> EtSumOrbitCollectionWrapper; + + edm::Wrapper ScMuonOrbitCollectionWrapper; + edm::Wrapper ScJetOrbitCollectionWrapper; + edm::Wrapper ScEGammaOrbitCollectionWrapper; + edm::Wrapper ScTauOrbitCollectionWrapper; + edm::Wrapper ScEtSumOrbitCollectionWrapper; +} \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/classes_def.xml b/DataFormats/L1Scouting/src/classes_def.xml index b86b822479c46..41d1b23c3b5bb 100644 --- a/DataFormats/L1Scouting/src/classes_def.xml +++ b/DataFormats/L1Scouting/src/classes_def.xml @@ -1,5 +1,57 @@ - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h b/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h index 8353d423d6c64..e054122e79bf2 100644 --- a/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h +++ b/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h @@ -1,5 +1,5 @@ -#ifndef L1Scouting_SDSNumbering_h -#define L1Scouting_SDSNumbering_h +#ifndef L1ScoutingRawData_SDSNumbering_h +#define L1ScoutingRawData_SDSNumbering_h /** * @@ -23,4 +23,4 @@ class SDSNumbering { }; }; -#endif // L1Scouting_SDSNumbering_h \ No newline at end of file +#endif // L1ScoutingRawData_SDSNumbering_h \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h b/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h index 50f958353d423..8d8c8ac607052 100644 --- a/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h +++ b/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h @@ -1,5 +1,5 @@ -#ifndef L1Scouting_SDSRawDataCollection_h -#define L1Scouting_SDSRawDataCollection_h +#ifndef L1ScoutingRawData_SDSRawDataCollection_h +#define L1ScoutingRawData_SDSRawDataCollection_h #include "DataFormats/FEDRawData/interface/FEDRawData.h" #include "DataFormats/Common/interface/traits.h" @@ -35,4 +35,4 @@ class SRDCollection: public edm::DoNotRecordParents { inline void swap(SRDCollection& a, SRDCollection& b) { a.swap(b); } -#endif // L1Scouting_SDSRawDataCollection_h \ No newline at end of file +#endif // L1ScoutingRawData_SDSRawDataCollection_h \ No newline at end of file diff --git a/EventFilter/Utilities/test/testScoutingRun3_unpackers.py b/EventFilter/Utilities/test/testScoutingRun3_unpackers.py new file mode 100644 index 0000000000000..61dba7d5f1a6e --- /dev/null +++ b/EventFilter/Utilities/test/testScoutingRun3_unpackers.py @@ -0,0 +1,163 @@ +from __future__ import print_function +import FWCore.ParameterSet.Config as cms +import FWCore.ParameterSet.VarParsing as VarParsing +import os, sys + +options = VarParsing.VarParsing ("analysis") + +options.register ("runNumber", + 368636, + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.int, + "Run Number") + +options.register ("daqSourceMode", + "ScoutingRun3", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "DAQ source data mode") + +options.register ("buBaseDir", + "/dev/shm", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "BU base directory") + +options.register ("fuBaseDir", + "/tmp/", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "BU base directory") + +options.register ("fffBaseDir", + "/dev/shm", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "FFF base directory") + +options.register ("numThreads", + 2, + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.int, + "Number of CMSSW threads") + +options.register ("numFwkStreams", + 2, + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.int, + "Number of CMSSW streams") + +options.parseArguments() + +cmsswbase = os.path.expandvars("$CMSSW_BASE/") + +process = cms.Process("SCPU") +process.maxEvents = cms.untracked.PSet( + input = cms.untracked.int32(-1) +) + +process.options = cms.untracked.PSet( + wantSummary = cms.untracked.bool(True), + numberOfThreads = cms.untracked.uint32(options.numThreads), + numberOfStreams = cms.untracked.uint32(options.numFwkStreams), + numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(1) +) +process.MessageLogger = cms.Service("MessageLogger", + cout = cms.untracked.PSet( + threshold = cms.untracked.string( "WARNING" ) + ), + destinations = cms.untracked.vstring( "cout" ), +) + +process.FastMonitoringService = cms.Service("FastMonitoringService", + sleepTime = cms.untracked.int32(1) +) + +process.Timing = cms.Service("Timing", + summaryOnly = cms.untracked.bool(True), + useJobReport = cms.untracked.bool(True) +) + +process.EvFDaqDirector = cms.Service("EvFDaqDirector", + useFileBroker = cms.untracked.bool(False), + buBaseDirsAll = cms.untracked.vstring( + options.buBaseDir + ), + buBaseDirsNumStreams = cms.untracked.vint32( + 2 + ), + fileBrokerHostFromCfg = cms.untracked.bool(True), + fileBrokerHost = cms.untracked.string("htcp40.cern.ch"), + runNumber = cms.untracked.uint32(options.runNumber), + baseDir = cms.untracked.string(options.fffBaseDir+"/"+options.fuBaseDir), + buBaseDir = cms.untracked.string(options.fffBaseDir+"/"+options.buBaseDir), + directorIsBU = cms.untracked.bool(False), +) + +try: + os.makedirs(options.fffBaseDir+"/"+options.fuBaseDir+"/run"+str(options.runNumber).zfill(6)) +except Exception as ex: + print(str(ex)) + pass + +ram_dir_path=options.buBaseDir+"/run"+str(options.runNumber).zfill(6)+"/" +flist = [ + ram_dir_path + "run" + str(options.runNumber) + "_ls0340_index000001.raw" +] + +process.source = cms.Source("DAQSource", + testing = cms.untracked.bool(True), + dataMode = cms.untracked.string(options.daqSourceMode), + verifyChecksum = cms.untracked.bool(False), + useL1EventID = cms.untracked.bool(False), + eventChunkBlock = cms.untracked.uint32(64), + eventChunkSize = cms.untracked.uint32(128), + maxChunkSize = cms.untracked.uint32(256), + numBuffers = cms.untracked.uint32(2), + maxBufferedFiles = cms.untracked.uint32(2), + fileListMode = cms.untracked.bool(True), + fileNames = cms.untracked.vstring(*flist) + +) + + +fuDir = options.fuBaseDir+("/run%06d" % options.runNumber) +buDir = options.buBaseDir+("/run%06d" % options.runNumber) +for d in fuDir, buDir, options.fuBaseDir, options.buBaseDir: + if not os.path.isdir(d): + os.makedirs(d) +os.system("touch " + buDir + "/" + "fu.lock") + +process.GmtUnpacker = cms.EDProducer('ScGMTRawToDigi', + srcInputTag = cms.InputTag('rawDataCollector'), + debug=cms.untracked.bool(False) +) + +process.CaloUnpacker = cms.EDProducer('ScCaloRawToDigi', + srcInputTag = cms.InputTag('rawDataCollector'), + debug=cms.untracked.bool(False) +) + +process.outputZB = cms.OutputModule("PoolOutputModule", + fileName = cms.untracked.string('file:/dev/shm/PoolOutputTest.root'), + outputCommands = cms.untracked.vstring( + "drop *", + #"keep *_rawDataCollector_*_*", + "keep *_GmtUnpacker_*_*", + "keep *_CaloUnpacker_*_*" + ), + #compressionAlgorithm = cms.untracked.string("ZSTD"), + #compressionLevel = cms.untracked.int32(4) +) + + + +rawToDigiTask = cms.Task( + process.GmtUnpacker,process.CaloUnpacker +) + +process.p = cms.Path(rawToDigiTask) + +process.ep = cms.EndPath( + process.outputZB +) \ No newline at end of file From 9029aab56246112f8620df286d0ed48b038de354 Mon Sep 17 00:00:00 2001 From: matteo Date: Fri, 17 Nov 2023 14:11:36 +0100 Subject: [PATCH 033/281] [WIP] added plugins --- EventFilter/L1ScoutingRawToDigi/BuildFile.xml | 10 + .../L1ScoutingRawToDigi/interface/blocks.h | 123 +++++++ .../L1ScoutingRawToDigi/interface/masks.h | 125 +++++++ .../L1ScoutingRawToDigi/interface/scales.h | 32 ++ .../L1ScoutingRawToDigi/interface/shifts.h | 121 ++++++ .../L1ScoutingRawToDigi/plugins/BuildFile.xml | 11 + .../plugins/ScCALORawToDigi.cc | 345 ++++++++++++++++++ .../plugins/ScCALORawToDigi.h | 57 +++ .../plugins/ScGMTRawToDigi.cc | 235 ++++++++++++ .../plugins/ScGMTRawToDigi.h | 47 +++ 10 files changed, 1106 insertions(+) create mode 100644 EventFilter/L1ScoutingRawToDigi/BuildFile.xml create mode 100644 EventFilter/L1ScoutingRawToDigi/interface/blocks.h create mode 100644 EventFilter/L1ScoutingRawToDigi/interface/masks.h create mode 100644 EventFilter/L1ScoutingRawToDigi/interface/scales.h create mode 100644 EventFilter/L1ScoutingRawToDigi/interface/shifts.h create mode 100644 EventFilter/L1ScoutingRawToDigi/plugins/BuildFile.xml create mode 100644 EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc create mode 100644 EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h create mode 100644 EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc create mode 100644 EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h diff --git a/EventFilter/L1ScoutingRawToDigi/BuildFile.xml b/EventFilter/L1ScoutingRawToDigi/BuildFile.xml new file mode 100644 index 0000000000000..920689c518329 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/BuildFile.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/interface/blocks.h b/EventFilter/L1ScoutingRawToDigi/interface/blocks.h new file mode 100644 index 0000000000000..2515f4ac42d21 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/interface/blocks.h @@ -0,0 +1,123 @@ +#ifndef DataFormats_Scouting_BLOCKS_H +#define DataFormats_Scouting_BLOCKS_H + +#include +#include +#include +#include "scales.h" + +namespace scoutingRun3 { + +namespace ugmt { + struct hw_data_block{ + std::vector vorbit; + std::vector vbx; + std::vector vinterm; + std::vector vipt; + std::vector viptunconstrained; + std::vector vcharge; + std::vector viso; + std::vector vindex; + std::vector vqual; + std::vector viphi; + std::vector viphiext; + std::vector vieta; + std::vector vietaext; + std::vector vidxy; + + unsigned int size() {return vipt.size();} + bool empty() {return vipt.empty();} + static const unsigned int ncols = 14; + + std::vector iAt(int i) { + return { + vorbit[i], + vbx[i], + vinterm[i], + vipt[i], + viptunconstrained[i], + vcharge[i], + viso[i], + vindex[i], + vqual[i], + viphi[i], + viphiext[i], + vieta[i], + vietaext[i], + vidxy[i], + }; + } + }; + + struct muon { + uint32_t f; + uint32_t s; + uint32_t extra; + }; + + struct block { + uint32_t bx; + uint32_t orbit; + muon mu[16]; + }; +} + + + +namespace demux { + struct hw_data_block { + std::vector vorbit; + std::vector vbx; + std::vector vET; + std::vector vType; + std::vector vEta; + std::vector vPhi; + std::vector vIso; + + unsigned int size() {return vET.size();} + bool empty() {return vET.empty();} + static const unsigned int ncols = 13; + + }; + + struct block_old { + uint32_t header; + uint32_t bx; + uint32_t orbit; + uint32_t frame[56]; // +8 for extra word containing link number + }; + + // unrolled frame block + struct block { + uint32_t header; + uint32_t bx; + uint32_t orbit; + uint32_t link0; + uint32_t jet1[6]; + uint32_t link1; + uint32_t jet2[6]; + uint32_t link2; + uint32_t egamma1[6]; + uint32_t link3; + uint32_t egamma2[6]; + uint32_t link4; + uint32_t empty[6]; + uint32_t link5; + uint32_t sum[6]; + uint32_t link6; + uint32_t tau1[6]; + uint32_t link7; + uint32_t tau2[6]; + }; +} + + + +namespace bmtf { + struct block { + uint64_t stub[8]; + }; +} + +} +#endif diff --git a/EventFilter/L1ScoutingRawToDigi/interface/masks.h b/EventFilter/L1ScoutingRawToDigi/interface/masks.h new file mode 100644 index 0000000000000..d2b699563797f --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/interface/masks.h @@ -0,0 +1,125 @@ +#ifndef DF_S_MASKS_H +#define DF_S_MASKS_H + +#include +#include "shifts.h" + +namespace scoutingRun3 { + +namespace ugmt { + // struct masks{ + struct masksMuon { + // bx word: 16 bits used for actual bx, MS 4 bits are muon type + // 0xf intermediate, + // 0x0 final + // following 4 bits for link id + static constexpr uint32_t bx = 0x1fff; + static constexpr uint32_t interm = 0x0001; + //masks for muon 64 bits + static constexpr uint32_t phiext = 0x03ff; + static constexpr uint32_t pt = 0x01ff; + static constexpr uint32_t ptuncon = 0x00ff; // 8 bits + static constexpr uint32_t qual = 0x000f; + static constexpr uint32_t etaext = 0x01ff; + static constexpr uint32_t etaextv = 0x00ff; + static constexpr uint32_t etaexts = 0x0100; + static constexpr uint32_t iso = 0x0003; + static constexpr uint32_t chrg = 0x0001; + static constexpr uint32_t chrgv = 0x0001; + static constexpr uint32_t index = 0x007f; + static constexpr uint32_t phi = 0x03ff; + static constexpr uint32_t eta = 0x01ff; + static constexpr uint32_t etav = 0x00ff; + static constexpr uint32_t etas = 0x0100; + static constexpr uint32_t dxy = 0x0003; + }; +} + + + +namespace demux { + // struct masksCaloJet{ + struct masksJet { + static constexpr uint32_t ET = 0x07ff; + static constexpr uint32_t eta = 0x00ff; + static constexpr uint32_t phi = 0x00ff; + }; + + // struct masksCaloEGamma{ + struct masksEGamma { + static constexpr uint32_t ET = 0x01ff; + static constexpr uint32_t eta = 0x00ff; + static constexpr uint32_t phi = 0x00ff; + static constexpr uint32_t iso = 0x0003; + }; + + // struct masksCaloTau{ + struct masksTau { + static constexpr uint32_t ET = 0x01ff; + static constexpr uint32_t eta = 0x00ff; + static constexpr uint32_t phi = 0x00ff; + static constexpr uint32_t iso = 0x0003; + }; + + // struct masksCaloESums{ + struct masksESums { + static constexpr uint32_t ETEt = 0x0fff; // Et of ET object + static constexpr uint32_t ETEttem = 0x0fff; + static constexpr uint32_t ETMinBiasHF = 0x000f; + + static constexpr uint32_t HTEt = 0x0fff; // Et of HT object + static constexpr uint32_t HTtowerCount = 0x1fff; + static constexpr uint32_t HTMinBiasHF = 0x0003; + + static constexpr uint32_t ETmissEt = 0x0fff; + static constexpr uint32_t ETmissPhi = 0x00ff; + static constexpr uint32_t ETmissASYMET = 0x00ff; + static constexpr uint32_t ETmissMinBiasHF = 0x0003; + + static constexpr uint32_t HTmissEt = 0x0fff; + static constexpr uint32_t HTmissPhi = 0x00ff; + static constexpr uint32_t HTmissASYMHT = 0x00ff; + static constexpr uint32_t HTmissMinBiasHF = 0x0003; + + static constexpr uint32_t ETHFmissEt = 0x0fff; + static constexpr uint32_t ETHFmissPhi = 0x00ff; + static constexpr uint32_t ETHFmissASYMETHF = 0x00ff; + static constexpr uint32_t ETHFmissCENT = 0x0003; + + static constexpr uint32_t HTHFmissEt = 0x0fff; + static constexpr uint32_t HTHFmissPhi = 0x00ff; + static constexpr uint32_t HTHFmissASYMHTHF = 0x00ff; + static constexpr uint32_t HTHFmissCENT = 0x0003; + }; +} + + + +namespace bmtf { + struct masksStubs { + static constexpr uint64_t valid = 0x0001; + static constexpr uint64_t phi = 0x0fff; + static constexpr uint64_t phiB = 0x03ff; + static constexpr uint64_t qual = 0x0007; + static constexpr uint64_t eta = 0x007f; + static constexpr uint64_t qeta = 0x007f; + static constexpr uint64_t station = 0x0003; + static constexpr uint64_t wheel = 0x0007; + static constexpr uint64_t reserved = 0x0007; + static constexpr uint64_t bx = 0xffff; + }; +} + + + +struct header_masks { + static constexpr uint32_t bxmatch = 0x00ff << header_shifts::bxmatch; + static constexpr uint32_t mAcount = 0x000f << header_shifts::mAcount; + static constexpr uint32_t orbitmatch = 0x00ff << header_shifts::orbitmatch; + static constexpr uint32_t warningTestEnabled = 0x0001 << header_shifts::warningTestEnabled; + static constexpr uint32_t mBcount = 0x000f << header_shifts::mBcount; + static constexpr uint32_t sBmtfCount = 0x000f << header_shifts::sBmtfCount; +}; + +} +#endif diff --git a/EventFilter/L1ScoutingRawToDigi/interface/scales.h b/EventFilter/L1ScoutingRawToDigi/interface/scales.h new file mode 100644 index 0000000000000..de9f4a1024257 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/interface/scales.h @@ -0,0 +1,32 @@ +#ifndef DF_S_SCALES_H +#define DF_S_SCALES_H + +#include +#include + +namespace scoutingRun3 { + +namespace ugmt { + // struct gmt_scales{ + struct scales { + static constexpr float pt_scale = 0.5; + static constexpr float ptunconstrained_scale = 1.0; + static constexpr float phi_scale = 2.*M_PI/576.; + static constexpr float eta_scale = 0.0870/8; // 9th MS bit is sign + static constexpr float phi_range = M_PI; + }; +} + + + +namespace demux { + // struct gmt_scales{ + struct scales { + static constexpr float phi_scale = 2.*M_PI/144.; + static constexpr float eta_scale = 0.0435; + static constexpr float et_scale = 0.5; + }; +} + +} +#endif diff --git a/EventFilter/L1ScoutingRawToDigi/interface/shifts.h b/EventFilter/L1ScoutingRawToDigi/interface/shifts.h new file mode 100644 index 0000000000000..78ca418507744 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/interface/shifts.h @@ -0,0 +1,121 @@ +#ifndef DF_S_SHIFTS_H +#define DF_S_SHIFTS_H + +#include + +namespace scoutingRun3 { + +namespace ugmt { + // struct shifts{ + struct shiftsMuon { + // bx word: 16 bits used for actual bx, MS 4 bits are muon type + // 0xf intermediate, + // 0x0 final + // following 4 bits for link id + static constexpr uint32_t bx = 0; + static constexpr uint32_t interm = 31; // updated for new run3 format (tj) + // shifts for muon 64 bits + static constexpr uint32_t phiext = 0; + static constexpr uint32_t pt = 10; + static constexpr uint32_t qual = 19; + static constexpr uint32_t etaext = 23; + static constexpr uint32_t iso = 0; + static constexpr uint32_t chrg = 2; + static constexpr uint32_t chrgv = 3; + static constexpr uint32_t index = 4; + static constexpr uint32_t phi = 11; + static constexpr uint32_t eta1 = 13; + static constexpr uint32_t eta2 = 22; + static constexpr uint32_t ptuncon = 21; + static constexpr uint32_t dxy = 30; + }; +} + + + +namespace demux { + // struct shiftsCaloJet{ + struct shiftsJet { + static constexpr uint32_t ET = 0; + static constexpr uint32_t eta = 11; + static constexpr uint32_t phi = 19; + }; + + // struct shiftsCaloEGamma{ + struct shiftsEGamma { + static constexpr uint32_t ET = 0; + static constexpr uint32_t eta = 9; + static constexpr uint32_t phi = 17; + static constexpr uint32_t iso = 25; + }; + + // struct shiftsCaloTau{ + struct shiftsTau { + static constexpr uint32_t ET = 0; + static constexpr uint32_t eta = 9; + static constexpr uint32_t phi = 17; + static constexpr uint32_t iso = 25; + }; + + // struct shiftsCaloESums{ + struct shiftsESums { + static constexpr uint32_t ETEt = 0; // Et of ET object + static constexpr uint32_t ETEttem = 12; + static constexpr uint32_t ETMinBiasHF = 28; + + static constexpr uint32_t HTEt = 0; // Et of HT object + static constexpr uint32_t HTtowerCount = 12; + static constexpr uint32_t HTMinBiasHF = 28; + + static constexpr uint32_t ETmissEt = 0; + static constexpr uint32_t ETmissPhi = 12; + static constexpr uint32_t ETmissASYMET = 20; + static constexpr uint32_t ETmissMinBiasHF = 28; + + static constexpr uint32_t HTmissEt = 0; + static constexpr uint32_t HTmissPhi = 12; + static constexpr uint32_t HTmissASYMHT = 20; + static constexpr uint32_t HTmissMinBiasHF = 28; + + static constexpr uint32_t ETHFmissEt = 0; + static constexpr uint32_t ETHFmissPhi = 12; + static constexpr uint32_t ETHFmissASYMETHF = 20; + static constexpr uint32_t ETHFmissCENT = 28; + + static constexpr uint32_t HTHFmissEt = 0; + static constexpr uint32_t HTHFmissPhi = 12; + static constexpr uint32_t HTHFmissASYMHTHF = 20; + static constexpr uint32_t HTHFmissCENT = 28; + }; +} + + + +namespace bmtf { + struct shiftsStubs { + static constexpr uint32_t valid = 0; + static constexpr uint32_t phi = 1; + static constexpr uint32_t phiB = 13; + static constexpr uint32_t qual = 23; + static constexpr uint32_t eta = 26; + static constexpr uint32_t qeta = 33; + static constexpr uint32_t station = 40; + static constexpr uint32_t wheel = 42; + static constexpr uint32_t reserved = 45; + static constexpr uint32_t bx = 48; + }; +} + + + +struct header_shifts { + static constexpr uint32_t bxmatch = 24; + static constexpr uint32_t mAcount = 16; + static constexpr uint32_t orbitmatch = 8; + static constexpr uint32_t warningTestEnabled = 8; + static constexpr uint32_t mBcount = 0; + static constexpr uint32_t sBmtfCount = 0; +}; + +} +#endif diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/BuildFile.xml b/EventFilter/L1ScoutingRawToDigi/plugins/BuildFile.xml new file mode 100644 index 0000000000000..32f0b6b906b36 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/plugins/BuildFile.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc new file mode 100644 index 0000000000000..eb6d1c84cf1d5 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc @@ -0,0 +1,345 @@ +#include "EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h" + +ScCaloRawToDigi::ScCaloRawToDigi(const edm::ParameterSet& iConfig) { + using namespace edm; + using namespace scoutingRun3; + srcInputTag = iConfig.getParameter( "srcInputTag" ); + debug = iConfig.getUntrackedParameter("debug", false); + + // produces().setBranchAlias( "JetOrbitCollection" ); + // produces().setBranchAlias( "TauOrbitCollection" ); + // produces().setBranchAlias( "EGammaOrbitCollection" ); + // produces().setBranchAlias( "EtSumOrbitCollection" ); + + produces().setBranchAlias( "ScJetOrbitCollection" ); + produces().setBranchAlias( "ScTauOrbitCollection" ); + produces().setBranchAlias( "ScEGammaOrbitCollection" ); + produces().setBranchAlias( "ScEtSumOrbitCollection" ); + + rawToken = consumes(srcInputTag); + } + +ScCaloRawToDigi::~ScCaloRawToDigi() {}; + +void ScCaloRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { + using namespace edm; + using namespace scoutingRun3; + + Handle ScoutingRawDataCollection; + iEvent.getByToken( rawToken, ScoutingRawDataCollection ); + + const FEDRawData& sourceRawData = ScoutingRawDataCollection->FEDData(SDSNumbering::CaloSDSID); + size_t orbitSize = sourceRawData.size(); + + // std::unique_ptr unpackedJets(new JetOrbitCollection); + // std::unique_ptr unpackedTaus(new TauOrbitCollection); + // std::unique_ptr unpackedEGammas(new EGammaOrbitCollection); + // std::unique_ptr unpackedEtSums(new EtSumOrbitCollection); + + std::unique_ptr unpackedJets(new ScJetOrbitCollection); + std::unique_ptr unpackedTaus(new ScTauOrbitCollection); + std::unique_ptr unpackedEGammas(new ScEGammaOrbitCollection); + std::unique_ptr unpackedEtSums(new ScEtSumOrbitCollection); + + if((sourceRawData.size()==0) && debug ){ + std::cout << "No raw data for CALO FED\n"; + } + + unpackOrbit( + unpackedJets.get(), unpackedTaus.get(), + unpackedEGammas.get(), unpackedEtSums.get(), + sourceRawData.data(), orbitSize + ); + + // store collections in the event + iEvent.put( std::move(unpackedJets) ); + iEvent.put( std::move(unpackedTaus) ); + iEvent.put( std::move(unpackedEGammas) ); + iEvent.put( std::move(unpackedEtSums) ); +} + +void ScCaloRawToDigi::unpackOrbit( + scoutingRun3::ScJetOrbitCollection* jets, scoutingRun3::ScTauOrbitCollection* taus, + scoutingRun3::ScEGammaOrbitCollection* eGammas, scoutingRun3::ScEtSumOrbitCollection* etSums, + const unsigned char* buf, size_t len + ){ + + using namespace scoutingRun3; + + size_t pos = 0; + + while (pos < len) { + + assert(pos+ (4+4+4+56*4) <= len); //sizeof(demux::block) + + demux::block *bl = (demux::block *)(buf + pos); + pos += 4+4+4+56*4; + + assert(pos <= len); + uint32_t orbit = bl->orbit & 0x7FFFFFFF; + uint32_t bx = bl->bx; + + if(debug) { + std::cout << " CALO Orbit " << orbit << ", BX -> "<< bx << std::endl; + } + + math::PtEtaPhiMLorentzVector vec; + + int32_t ET(0), Eta(0), Phi(0), Iso(0); + //float fET(0), fEta(0), fPhi(0); + + // unpack jets from first link + for (uint32_t i=0; i<6; i++) { + ET = ((bl->jet1[i] >> demux::shiftsJet::ET) & demux::masksJet::ET); + + if (ET != 0) { + Eta = ((bl->jet1[i] >> demux::shiftsJet::eta) & demux::masksJet::eta); + Phi = ((bl->jet1[i] >> demux::shiftsJet::phi) & demux::masksJet::phi); + Iso = 0; + + if (Eta > 127) Eta = Eta - 256; + // fPhi = Phi * demux::scales::phi_scale; fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; + // fEta = Eta * demux::scales::eta_scale; + // fET = ET * demux::scales::et_scale; + + //l1t::Jet jet(math::PtEtaPhiMLorentzVector(fET, fEta, fPhi, 0.), ET, Eta, Phi, Iso); + ScJet jet1(ET, Eta, Phi, 0); + jets->addBxObject(bx, jet1); + + + if (debug){ + std::cout << "--- Jet link 1 ---\n"; + std::cout <<"\tEt [GeV/Hw]: "<< jet1.getEt() << "/" << jet1.getHwEt() << "\n"; + std::cout <<"\tEta [rad/Hw]: " << jet1.getEta() << "/" << jet1.getHwEta() << "\n"; + std::cout <<"\tPhi [rad/Hw]: " << jet1.getPhi() << "/" << jet1.getHwPhi() << "\n"; + } + } + } // end link1 jet unpacking loop + + // unpack jets from second link + for (uint32_t i=0; i<6; i++) { + ET = ((bl->jet2[i] >> demux::shiftsJet::ET) & demux::masksJet::ET); + + if (ET != 0) { + Eta = ((bl->jet2[i] >> demux::shiftsJet::eta) & demux::masksJet::eta); + Phi = ((bl->jet2[i] >> demux::shiftsJet::phi) & demux::masksJet::phi); + Iso = 0; + + if (Eta > 127) Eta = Eta - 256; + // fPhi = Phi * demux::scales::phi_scale; fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; + // fEta = Eta * demux::scales::eta_scale; + // fET = ET * demux::scales::et_scale; + + //l1t::Jet jet(math::PtEtaPhiMLorentzVector(fET, fEta, fPhi, 0.), ET, Eta, Phi, Iso); + ScJet jet2(ET, Eta, Phi, 0); + jets->addBxObject(bx, jet2); + + if (debug){ + std::cout << "--- Jet link 2 ---\n"; + std::cout <<"\tEt [GeV/Hw]: " << jet2.getEt() << "/" << jet2.getHwEt() << "\n"; + std::cout <<"\tEta [rad/Hw]: " << jet2.getEta() << "/" << jet2.getHwEta() << "\n"; + std::cout <<"\tPhi [rad/Hw]: " << jet2.getPhi() << "/" << jet2.getHwPhi() << "\n"; + } + } + } // end link1 jet unpacking loop + + // unpack eg from first link + for (uint32_t i=0; i<6; i++) { + ET = ((bl->egamma1[i] >> demux::shiftsEGamma::ET) & demux::masksEGamma::ET); + if (ET != 0) { + Eta = ((bl->egamma1[i] >> demux::shiftsEGamma::eta) & demux::masksEGamma::eta); + Phi = ((bl->egamma1[i] >> demux::shiftsEGamma::phi) & demux::masksEGamma::phi); + Iso = ((bl->egamma1[i] >> demux::shiftsEGamma::iso) & demux::masksEGamma::iso); + + if (Eta > 127) Eta = Eta - 256; + // fPhi = Phi * demux::scales::phi_scale; fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; + // fEta = Eta * demux::scales::eta_scale; + // fET = ET * demux::scales::et_scale; + + //l1t::EGamma eGamma(math::PtEtaPhiMLorentzVector(fET, fEta, fPhi, 0.), ET, Eta, Phi, 0, Iso); + ScEGamma eGamma1(ET, Eta, Phi, Iso); + eGammas->addBxObject(bx, eGamma1); + + if (debug){ + std::cout << "--- E/g link 1 ---\n"; + std::cout <<"\tEt [GeV/Hw]: " << eGamma1.getEt() << "/" << eGamma1.getHwEt() << "\n"; + std::cout <<"\tEta [rad/Hw]: " << eGamma1.getEta() << "/" << eGamma1.getHwEta() << "\n"; + std::cout <<"\tPhi [rad/Hw]: " << eGamma1.getPhi() << "/" << eGamma1.getHwPhi() << "\n"; + std::cout <<"\tIso [Hw]: " << eGamma1.getIso() << "\n"; + } + } + } // end eg link 1 + + // unpack eg from second link link + for (uint32_t i=0; i<6; i++) { + ET = ((bl->egamma2[i] >> demux::shiftsEGamma::ET) & demux::masksEGamma::ET); + if (ET != 0) { + Eta = ((bl->egamma2[i] >> demux::shiftsEGamma::eta) & demux::masksEGamma::eta); + Phi = ((bl->egamma2[i] >> demux::shiftsEGamma::phi) & demux::masksEGamma::phi); + Iso = ((bl->egamma2[i] >> demux::shiftsEGamma::iso) & demux::masksEGamma::iso); + + if (Eta > 127) Eta = Eta - 256; + // fPhi = Phi * demux::scales::phi_scale; fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; + // fEta = Eta * demux::scales::eta_scale; + // fET = ET * demux::scales::et_scale; + + //l1t::EGamma eGamma(math::PtEtaPhiMLorentzVector(fET, fEta, fPhi, 0.), ET, Eta, Phi, 0, Iso); + ScEGamma eGamma2(ET, Eta, Phi, Iso); + eGammas->addBxObject(bx, eGamma2); + + if (debug){ + std::cout << "--- E/g link 2 ---\n"; + std::cout <<"\tEt [GeV/Hw]: " << eGamma2.getEt() << "/" << eGamma2.getHwEt() << "\n"; + std::cout <<"\tEta [rad/Hw]: " << eGamma2.getEta() << "/" << eGamma2.getHwEta() << "\n"; + std::cout <<"\tPhi [rad/Hw]: " << eGamma2.getPhi() << "/" << eGamma2.getHwPhi() << "\n"; + std::cout <<"\tIso [Hw]: " << eGamma2.getIso() << "\n"; + } + } + + } // end of eg unpacker + + // unpack taus from first link + for (uint32_t i=0; i<6; i++) { + ET = ((bl->tau1[i] >> demux::shiftsTau::ET) & demux::masksTau::ET); + if (ET != 0) { + Eta = ((bl->tau1[i] >> demux::shiftsTau::eta) & demux::masksTau::eta); + Phi = ((bl->tau1[i] >> demux::shiftsTau::phi) & demux::masksTau::phi); + Iso = ((bl->tau1[i] >> demux::shiftsTau::iso) & demux::masksTau::iso); + + if (Eta > 127) Eta = Eta - 256; + // fPhi = Phi * demux::scales::phi_scale; fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; + // fEta = Eta * demux::scales::eta_scale; + // fET = ET * demux::scales::et_scale; + + //l1t::Tau tau(math::PtEtaPhiMLorentzVector(fET, fEta, fPhi, 0.), ET, Eta, Phi, 0, Iso); + ScTau tau1(ET, Eta, Phi, Iso); + taus->addBxObject(bx, tau1); + + if (debug){ + std::cout << "--- Tau link 1 ---\n"; + std::cout <<"\tEt [GeV/Hw]: " << tau1.getEt() << "/" << tau1.getHwEt() << "\n"; + std::cout <<"\tEta [rad/Hw]: " << tau1.getEta() << "/" << tau1.getHwEta() << "\n"; + std::cout <<"\tPhi [rad/Hw]: " << tau1.getPhi() << "/" << tau1.getHwPhi() << "\n"; + std::cout <<"\tIso [Hw]: " << tau1.getIso() << "\n"; + } + } + } // end tau link 1 + + // unpack taus from second link + for (uint32_t i=0; i<6; i++) { + ET = ((bl->tau2[i] >> demux::shiftsTau::ET) & demux::masksTau::ET); + if (ET != 0) { + Eta = ((bl->tau2[i] >> demux::shiftsTau::eta) & demux::masksTau::eta); + Phi = ((bl->tau2[i] >> demux::shiftsTau::phi) & demux::masksTau::phi); + Iso = ((bl->tau2[i] >> demux::shiftsTau::iso) & demux::masksTau::iso); + + if (Eta > 127) Eta = Eta - 256; + // fPhi = Phi * demux::scales::phi_scale; fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; + // fEta = Eta * demux::scales::eta_scale; + // fET = ET * demux::scales::et_scale; + + //l1t::Tau tau(math::PtEtaPhiMLorentzVector(fET, fEta, fPhi, 0.), ET, Eta, Phi, 0, Iso); + ScTau tau2(ET, Eta, Phi, Iso); + taus->addBxObject(bx, tau2); + + if (debug){ + std::cout << "--- Tau link 2 ---\n"; + std::cout <<"\tEt [GeV/Hw]: " << tau2.getEt() << "/" << tau2.getHwEt() << "\n"; + std::cout <<"\tEta [rad/Hw]: " << tau2.getEta() << "/" << tau2.getHwEta() << "\n"; + std::cout <<"\tPhi [rad/Hw]: " << tau2.getPhi() << "/" << tau2.getHwPhi() << "\n"; + std::cout <<"\tIso [Hw]: " << tau2.getIso() << "\n"; + } + } + } // end tau unpacker + + // unpack et sums + + int32_t ETEt(0), HTEt(0), ETmissEt(0), ETmissPhi(0), HTmissEt(0), HTmissPhi(0); + // float fETEt(0), fHTEt(0), fETmissEt(0), fHTmissEt(0), fETmissPhi(0), fHTmissPhi(0); + + // ET + ETEt = ((bl->sum[0] >> demux::shiftsESums::ETEt) & demux::masksESums::ETEt); + // fETEt = ETEt * demux::scales::et_scale; + + //l1t::EtSum sum = l1t::EtSum(math::PtEtaPhiMLorentzVector(fETEt, 0, 0, 0.), l1t::EtSum::EtSumType::kTotalEt, ETEt); + ScEtSum sumTotEt(ETEt, 0, l1t::EtSum::EtSumType::kTotalEt); + etSums->addBxObject(bx, sumTotEt); + + // HT + HTEt = ((bl->sum[1] >> demux::shiftsESums::HTEt) & demux::masksESums::HTEt); + // fHTEt = HTEt * demux::scales::et_scale; + + //sum = l1t::EtSum(math::PtEtaPhiMLorentzVector(fHTEt, 0, 0, 0.), l1t::EtSum::EtSumType::kTotalHt, HTEt); + ScEtSum sumTotHt(HTEt, 0, l1t::EtSum::EtSumType::kTotalHt); + etSums->addBxObject(bx, sumTotHt); + + // ETMiss + ETmissEt = ((bl->sum[2] >> demux::shiftsESums::ETmissEt) & demux::masksESums::ETmissEt); + ETmissPhi = ((bl->sum[2] >> demux::shiftsESums::ETmissPhi) & demux::masksESums::ETmissPhi); + // fETmissEt = ETmissEt * demux::scales::et_scale; + // fETmissPhi = ETmissPhi * demux::scales::phi_scale; + // fETmissPhi = fETmissPhi>2.*M_PI? fETmissPhi - 2.*M_PI : fETmissPhi; + + //sum = l1t::EtSum(math::PtEtaPhiMLorentzVector(fETmissEt, 0, fETmissPhi, 0.), l1t::EtSum::EtSumType::kMissingEt, ETmissEt, 0, ETmissPhi); + + ScEtSum sumMissEt(ETmissEt, ETmissPhi, l1t::EtSum::EtSumType::kMissingEt); + etSums->addBxObject(bx, sumMissEt); + + // HTMiss + HTmissEt = ((bl->sum[3] >> demux::shiftsESums::HTmissEt) & demux::masksESums::HTmissEt); + HTmissPhi = ((bl->sum[3] >> demux::shiftsESums::HTmissPhi) & demux::masksESums::HTmissPhi); + // fHTmissEt = HTmissEt * demux::scales::et_scale; + // fHTmissPhi = HTmissPhi * demux::scales::phi_scale; + // fHTmissPhi = fHTmissPhi>2.*M_PI? fHTmissPhi - 2.*M_PI : fHTmissPhi; + + ScEtSum sumMissHt(HTmissEt, HTmissPhi, l1t::EtSum::EtSumType::kMissingHt); + etSums->addBxObject(bx, sumMissHt); + + + // // ETHFMiss + // ETHFmissEt = ((bl->sum[4] >> demux::shiftsESums::ETHFmissEt) & demux::masksESums::ETHFmissEt); + // ETHFmissPhi = ((bl->sum[4] >> demux::shiftsESums::ETHFmissPhi) & demux::masksESums::ETHFmissPhi); + // ETHFmissASYMETHF = ((bl->sum[4] >> demux::shiftsESums::ETHFmissASYMETHF) & demux::masksESums::ETHFmissASYMETHF); + // //ETHFmissCENT = ((bl.sum[4] >> demux::shiftsESums::ETHFmissCENT) & demux::masksESums::ETHFmissCENT); + + // sum = l1t::EtSum(*dummyLVec_, l1t::EtSum::EtSumType::kMissingEtHF, ETHFmissEt, 0, ETHFmissPhi); + // etSums->push_back(bx, sum); + // sum = l1t::EtSum(*dummyLVec_, l1t::EtSum::EtSumType::kAsymEtHF, ETHFmissASYMETHF); + // etSums->push_back(bx, sum); + + + // // HTHFMiss + // HTHFmissEt = ((bl->sum[5] >> demux::shiftsESums::HTHFmissEt) & demux::masksESums::HTHFmissEt); + // HTHFmissPhi = ((bl->sum[5] >> demux::shiftsESums::HTHFmissPhi) & demux::masksESums::HTHFmissPhi); + // HTHFmissASYMHTHF = ((bl->sum[5] >> demux::shiftsESums::HTHFmissASYMHTHF) & demux::masksESums::HTHFmissASYMHTHF); + // //HTHFmissCENT = ((bl->sum[5] >> demux::shiftsESums::HTHFmissCENT) & demux::masksESums::HTHFmissCENT); + + // sum = l1t::EtSum(*dummyLVec_, l1t::EtSum::EtSumType::kMissingHtHF, HTHFmissEt, 0, HTHFmissPhi); + // etSums->push_back(bx, sum); + // sum = l1t::EtSum(*dummyLVec_, l1t::EtSum::EtSumType::kAsymHtHF, HTHFmissASYMHTHF); + // etSums->push_back(bx, sum); + + // add sums to event + // etSums->push_back(bx, bx_etSums); + + } // end of orbit loop + + jets->flatten(); + eGammas->flatten(); + taus->flatten(); + etSums->flatten(); + +} + +void ScCaloRawToDigi::unpackRawJet(std::vector& jets, uint32_t *rawData){ + + return; +} + +void ScCaloRawToDigi::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.setUnknown(); + descriptions.addDefault(desc); +} + +DEFINE_FWK_MODULE(ScCaloRawToDigi); diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h new file mode 100644 index 0000000000000..ce82c6e19c886 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h @@ -0,0 +1,57 @@ +#include +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/Utilities/interface/StreamID.h" + +#include "DataFormats/FEDRawData/interface/FEDRawData.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSNumbering.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h" +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" + +#include "DataFormats/L1Trigger/interface/EGamma.h" +#include "DataFormats/L1Trigger/interface/Jet.h" +#include "DataFormats/L1Trigger/interface/Tau.h" +#include "DataFormats/L1Trigger/interface/EtSum.h" + +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" + +#include "EventFilter/L1ScoutingRawToDigi/interface/shifts.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/scales.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/masks.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/blocks.h" + +class ScCaloRawToDigi : public edm::stream::EDProducer<> { +public: + explicit ScCaloRawToDigi(const edm::ParameterSet&); + ~ScCaloRawToDigi() override; + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + +private: + void produce(edm::Event&, const edm::EventSetup&) override; + + void unpackOrbit( + //l1t::JetBxCollection* jets, l1t::TauBxCollection* taus, + //l1t::EGammaBxCollection* eGammas, l1t::EtSumBxCollection* etSums, + scoutingRun3::ScJetOrbitCollection* jets, scoutingRun3::ScTauOrbitCollection* taus, + scoutingRun3::ScEGammaOrbitCollection* eGammas, scoutingRun3::ScEtSumOrbitCollection* etSums, + const unsigned char* buf, size_t len + ); + + void unpackRawJet(std::vector& jets, uint32_t *rawData); + + // std::vector bx_jets; + // std::vector bx_taus; + // std::vector bx_eGammas; + // std::vector bx_etSums; + + std::unique_ptr>> dummyLVec_; + + bool debug = false; + + edm::InputTag srcInputTag; + edm::EDGetToken rawToken; +}; diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc new file mode 100644 index 0000000000000..f31de17ce250d --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc @@ -0,0 +1,235 @@ +#include "EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h" + +ScGMTRawToDigi::ScGMTRawToDigi(const edm::ParameterSet& iConfig) { + using namespace edm; + srcInputTag = iConfig.getParameter( "srcInputTag" ); + debug_ = iConfig.getUntrackedParameter("debug", false); + + //produces().setBranchAlias( "MuonOrbitCollection" ); + produces().setBranchAlias( "ScMuonOrbitCollection" ); + rawToken = consumes(srcInputTag); + + bx_muons.reserve(8); + //dummyLVec_.reset( new ROOT::Math::LorentzVector>() ); +} + +ScGMTRawToDigi::~ScGMTRawToDigi() {}; + +void ScGMTRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { + using namespace edm; + + Handle ScoutingRawDataCollection; + iEvent.getByToken( rawToken, ScoutingRawDataCollection ); + + const FEDRawData& sourceRawData = ScoutingRawDataCollection->FEDData(SDSNumbering::GmtSDSID); + size_t orbitSize = sourceRawData.size(); + + //std::unique_ptr unpackedMuons(new scoutingRun3::MuonOrbitCollection); + std::unique_ptr unpackedMuons(new scoutingRun3::ScMuonOrbitCollection); + + if((sourceRawData.size()==0) && debug_){ + std::cout << "No raw data for GMT FED\n"; + } + + unpackOrbit(unpackedMuons.get(), sourceRawData.data(), orbitSize); + + // store collection in the event + iEvent.put( std::move(unpackedMuons) ); +} + +void ScGMTRawToDigi::unpackOrbit( + //l1t::MuonBxCollection* muons, + scoutingRun3::ScMuonOrbitCollection* muons, + const unsigned char* buf, size_t len + ){ + + using namespace scoutingRun3; + size_t pos = 0; + + //muons->setBXRange(0,3565); + + while (pos < len) { + assert(pos+4 <= len); + + // get BX header + uint32_t header = *((uint32_t*)(buf + pos)); + pos += 4; + // count mA and mB + uint32_t mAcount = (header & header_masks::mAcount) >> header_shifts::mAcount; + uint32_t mBcount = (header & header_masks::mBcount) >> header_shifts::mBcount; + + // declare block to read + ugmt::block *bl = (ugmt::block *)(buf + pos); + pos += 4 + 4 + (mAcount+mBcount)*12; + assert(pos <= len); + + uint32_t orbit = bl->orbit & 0x7FFFFFFF; + uint32_t bx = bl->bx; + + if (debug_){ + std::cout << " GMT Orbit " << orbit << ", BX -> "<< bx << ", nMuons -> " << mAcount+mBcount << std::endl; + } + + // Unpack muons for this BX + + bx_muons.clear(); + + // cuts should be applied + bool excludeIntermediate=true; + int ptcut=0; + unsigned int qualcut=0; + + for (unsigned int i=0; imu[i].extra >> ugmt::shiftsMuon::interm) & ugmt::masksMuon::interm; + if (excludeIntermediate && (interm == 1)){ + if (debug_){ + std::cout << "Excluding intermediate muon\n"; + } + continue; + } + + uint32_t index = (bl->mu[i].s >> ugmt::shiftsMuon::index) & ugmt::masksMuon::index; + uint32_t ietaextu = (bl->mu[i].f >> ugmt::shiftsMuon::etaext) & ugmt::masksMuon::etaextv; + int32_t ietaext; + if (((bl->mu[i].f >> ugmt::shiftsMuon::etaext) & ugmt::masksMuon::etaexts)!=0) { + ietaext = ietaextu -= 256; + } else { + ietaext = ietaextu; + } + + // extract pt and quality and apply cut if required + int32_t iptuncon = (bl->mu[i].s >> ugmt::shiftsMuon::ptuncon) & ugmt::masksMuon::ptuncon; + int32_t ipt = (bl->mu[i].f >> ugmt::shiftsMuon::pt) & ugmt::masksMuon::pt; + if ((ipt-1) < ptcut) { + continue; + } + uint32_t qual = (bl->mu[i].f >> ugmt::shiftsMuon::qual) & ugmt::masksMuon::qual; + if (qual < qualcut) { + continue; + } + + // extract integer value for extrapolated phi + int32_t iphiext = ((bl->mu[i].f >> ugmt::shiftsMuon::phiext) & ugmt::masksMuon::phiext); + + // extract integer value for extrapolated phi + int32_t idxy = ((bl->mu[i].s >> ugmt::shiftsMuon::dxy) & ugmt::masksMuon::dxy); + + // extract iso bits and charge + uint32_t iso = (bl->mu[i].s >> ugmt::shiftsMuon::iso) & ugmt::masksMuon::iso; + int32_t chrg = 0; + if (((bl->mu[i].s >> ugmt::shiftsMuon::chrgv) & ugmt::masksMuon::chrgv)==1) + chrg=((bl->mu[i].s >> ugmt::shiftsMuon::chrg) & ugmt::masksMuon::chrg)==1 ? -1 : 1 ; + + // extract eta and phi at muon station + int32_t iphi = (bl->mu[i].s >> ugmt::shiftsMuon::phi) & ugmt::masksMuon::phi; + uint32_t ieta1 = (bl->mu[i].extra >> ugmt::shiftsMuon::eta1) & ugmt::masksMuon::eta; + uint32_t ieta2 = (bl->mu[i].extra >> ugmt::shiftsMuon::eta2) & ugmt::masksMuon::eta; + + + uint32_t ieta_u; + int32_t ieta; + // checking if raw eta should be taken from muon 1 or muon 2 + if ( (bl->mu[i].extra & 0x1) == 0 ) { + ieta_u = ieta1; + } else { + ieta_u = ieta2; + } + + // two's complement + if ( ieta_u > 256 ) { + ieta = ieta_u - 512; + } else { + ieta = ieta_u; + } + + // convert to physical units using scales + float fpt = (ipt -1) * ugmt::scales::pt_scale; // -1 since bin 0 is for invalid muons + float fptuncon = (iptuncon-1) * ugmt::scales::ptunconstrained_scale; // -1 since bin 0 is for invalid muons + float fphi = iphi * ugmt::scales::phi_scale; + float fphiext = iphiext * ugmt::scales::phi_scale; + float feta = ieta * ugmt::scales::eta_scale; + float fetaext = ietaext * ugmt::scales::eta_scale; + + if (fphiext>M_PI) fphiext = fphiext - 2.*M_PI; + if (fphi >M_PI) fphi = fphi - 2.*M_PI; + + // l1t::Muon muon; + // math::PtEtaPhiMLorentzVector vec{fpt, feta, fphi, 0.}; + + // muon.setP4(vec); + // muon.setHwPt(ipt); + // muon.setHwEta(ieta); + // muon.setHwPhi(iphi); + // muon.setHwQual(qual); + // muon.setHwCharge(chrg); + // muon.setHwChargeValid(chrg != 0); + // muon.setHwIso(iso); + // muon.setTfMuonIndex(index); + // muon.setHwEtaAtVtx(ietaext); + // muon.setHwPhiAtVtx(iphiext); + // muon.setEtaAtVtx(fetaext); + // muon.setPhiAtVtx(fphiext); + // muon.setHwPtUnconstrained(iptuncon); + // muon.setPtUnconstrained(fptuncon); + // muon.setHwDXY(idxy); + + // ScMuon muon; + + // muon.pt = ipt; + // muon.eta = ieta; + // muon.phi = iphi; + // muon.qual = qual; + // muon.chrg = chrg; + // muon.chrgv = chrg!=0; + // muon.iso = iso; + // muon.index = index; + // muon.etae = ietaext; + // muon.phie = iphiext; + // muon.ptUncon = iptuncon; + + scoutingRun3::ScMuon muon( + ipt, + ieta, + iphi, + qual, + chrg, + chrg!=0, + iso, + index, + ietaext, + iphiext, + iptuncon, + idxy + ); + + muons->addBxObject(bx, muon); + + // if (debug_){ + // std::cout<<"--- Muon ---\n"; + // std::cout<<"\tPt [GeV/Hw]: " << muon.pt() << "/" << muon.hwPt() << "\n"; + // std::cout<<"\tEta [rad/Hw]: " << muon.eta() << "/" << muon.hwEta() << "\n"; + // std::cout<<"\tPhi [rad/Hw]: " << muon.phi() << "/" << muon.hwPhi() << "\n"; + // std::cout<<"\tCharge/valid: " << muon.hwCharge() << "/" << muon.hwChargeValid() << "\n"; + // std::cout<<"\tPhiVtx [rad/Hw]: " << muon.phiAtVtx() << "/" << muon.hwPhiAtVtx() << "\n"; + // std::cout<<"\tEtaVtx [rad/Hw]: " << muon.etaAtVtx() << "/" << muon.hwEtaAtVtx() << "\n"; + // std::cout<<"\tPt uncon[GeV/Hw]: " << muon.ptUnconstrained() << "/" << muon.hwPtUnconstrained() << "\n"; + // std::cout<<"\tDxy: " << muon.hwDXY() << "\n"; + // std::cout<<"\tTF index: " << muon.tfMuonIndex() << "\n"; + // } + + } // end of bx + + } // end orbit while loop + + muons->flatten(); + +} + +void ScGMTRawToDigi::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.setUnknown(); + descriptions.addDefault(desc); +} + +DEFINE_FWK_MODULE(ScGMTRawToDigi); diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h new file mode 100644 index 0000000000000..988ecff56edd7 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h @@ -0,0 +1,47 @@ +#include +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/Utilities/interface/StreamID.h" + +#include "DataFormats/FEDRawData/interface/FEDRawData.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSNumbering.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h" +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" + +#include "DataFormats/L1Trigger/interface/Muon.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" + +#include "EventFilter/L1ScoutingRawToDigi/interface/shifts.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/scales.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/masks.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/blocks.h" + +class ScGMTRawToDigi : public edm::stream::EDProducer<> { +public: + explicit ScGMTRawToDigi(const edm::ParameterSet&); + ~ScGMTRawToDigi() override; + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + +private: + //void beginStream(edm::StreamID) override; + void produce(edm::Event&, const edm::EventSetup&) override; + //void endStream() override; + + void unpackOrbit( + scoutingRun3::ScMuonOrbitCollection* muons, + //l1t::MuonBxCollection* muons, + const unsigned char* buf, size_t len + ); + + std::vector bx_muons; + std::unique_ptr>> dummyLVec_; + + bool debug_ = false; + + edm::InputTag srcInputTag; + edm::EDGetToken rawToken; +}; From 177194834cebe87155da5cafb03c1b9e5047d92f Mon Sep 17 00:00:00 2001 From: matteo Date: Tue, 21 Nov 2023 19:25:12 +0100 Subject: [PATCH 034/281] [WIP] cleaned orbit collection, now an orbit buffer is directly passed to it. Fixed bug in the bxOffset index --- .../L1Scouting/interface/L1ScoutingCalo.h | 90 ++-- .../L1Scouting/interface/L1ScoutingMuon.h | 88 ++-- .../L1Scouting/interface/OrbitCollection.h | 83 ++-- DataFormats/L1Scouting/src/classes.h | 16 +- DataFormats/L1Scouting/src/classes_def.xml | 33 +- .../L1ScoutingRawToDigi/interface/blocks.h | 70 --- .../interface/conversion.h | 54 ++ .../L1ScoutingRawToDigi/interface/masks.h | 19 - .../L1ScoutingRawToDigi/interface/scales.h | 36 +- .../L1ScoutingRawToDigi/interface/shifts.h | 21 - .../plugins/ScCALORawToDigi.cc | 460 ++++++++---------- .../plugins/ScCALORawToDigi.h | 35 +- .../plugins/ScGMTRawToDigi.cc | 132 ++--- .../plugins/ScGMTRawToDigi.h | 17 +- .../test/testScoutingRun3_unpackers.py | 3 - 15 files changed, 521 insertions(+), 636 deletions(-) create mode 100644 EventFilter/L1ScoutingRawToDigi/interface/conversion.h diff --git a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h index a86e3e70b8256..b4dca978bc637 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h @@ -12,7 +12,7 @@ namespace scoutingRun3 { : hwEt_(0), hwEta_(0), hwPhi_(0), - iso_(0){} + hwIso_(0){} ScCaloObject( int hwEt, @@ -22,44 +22,52 @@ namespace scoutingRun3 { : hwEt_(hwEt), hwEta_(hwEta), hwPhi_(hwPhi), - iso_(iso) {} + hwIso_(iso) {} ScCaloObject(const ScCaloObject& other) = default; ScCaloObject(ScCaloObject&& other) = default; ScCaloObject & operator=(const ScCaloObject& other) = default; ScCaloObject & operator=(ScCaloObject&& other) = default; + void swap(ScCaloObject& other){ + using std::swap; + swap(hwEt_, other.hwEt_); + swap(hwEta_, other.hwEta_); + swap(hwPhi_, other.hwPhi_); + swap(hwIso_, other.hwIso_); + } + inline void setHwEt(int hwEt) { hwEt_= hwEt;} inline void setHwEta(int hwEta) { hwEta_= hwEta;} inline void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} - inline void setIso(int iso) { iso_= iso;} - - inline int getHwEt() const {return hwEt_;} - inline int getHwEta() const {return hwEta_;} - inline int getHwPhi() const {return hwPhi_;} - inline int getIso() const {return iso_;} - - inline float getEt() const { - return et_scale_* hwEt_; - } - inline float getEta()const { - return eta_scale_*hwEta_; - } - inline float getPhi() const { - float fPhi = phi_scale_*hwPhi_; - fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; - return fPhi; - } + inline void setHwIso(int hwIso) { hwIso_= hwIso;} + + inline int hwEt() const {return hwEt_;} + inline int hwEta() const {return hwEta_;} + inline int hwPhi() const {return hwPhi_;} + inline int hwIso() const {return hwIso_;} + + // inline float Et() const { + // return et_scale_* hwEt_; + // } + // inline float eta()const { + // return eta_scale_*hwEta_; + // } + // inline float phi() const { + // float fPhi = phi_scale_*hwPhi_; + // fPhi = fPhi>=M_PI ? fPhi-2.*M_PI : fPhi; + // return fPhi; + // } private: int hwEt_; int hwEta_; int hwPhi_; - int iso_; + int hwIso_; - static constexpr float phi_scale_ = 2.*M_PI/144.; - static constexpr float eta_scale_ = 0.0435; - static constexpr float et_scale_ = 0.5; + // static constexpr float phi_scale_ = 2.*M_PI/144.; + // static constexpr float eta_scale_ = 0.0435; + // static constexpr float et_scale_ = 0.5; }; class ScJet: public ScCaloObject { @@ -72,6 +80,7 @@ namespace scoutingRun3 { int hwPhi, int iso) : ScCaloObject(hwEt, hwEta ,hwPhi , iso) {} + }; class ScEGamma: public ScCaloObject { @@ -119,30 +128,37 @@ namespace scoutingRun3 { ScEtSum & operator=(const ScEtSum& other) = default; ScEtSum & operator=(ScEtSum&& other) = default; + void swap(ScEtSum& other){ + using std::swap; + swap(hwEt_, other.hwEt_); + swap(hwPhi_, other.hwPhi_); + swap(type_, other.type_); + } + inline void setHwEt(int hwEt) { hwEt_= hwEt;} inline void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} inline void setType(l1t::EtSum::EtSumType type) { type_= type;} - inline int getHwEt() const {return hwEt_;} - inline int getHwPhi() const {return hwPhi_;} - inline l1t::EtSum::EtSumType getType() const {return type_;} + inline int hwEt() const {return hwEt_;} + inline int hwPhi() const {return hwPhi_;} + inline l1t::EtSum::EtSumType type() const {return type_;} - inline float getEt() const { - return et_scale_* hwEt_; - } - inline float getPhi() const { - float fPhi = phi_scale_*hwPhi_; - fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; - return fPhi; - } + // inline float Et() const { + // return et_scale_* hwEt_; + // } + // inline float phi() const { + // float fPhi = phi_scale_*hwPhi_; + // fPhi = fPhi>=M_PI ? fPhi-2.*M_PI : fPhi; + // return fPhi; + // } private: int hwEt_; int hwPhi_; l1t::EtSum::EtSumType type_; - static constexpr float phi_scale_ = 2.*M_PI/144.; - static constexpr float et_scale_ = 0.5; + // static constexpr float phi_scale_ = 2.*M_PI/144.; + // static constexpr float et_scale_ = 0.5; }; } // namespace scoutingRun3 diff --git a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h index ac52c81224736..466804c518fc8 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h @@ -52,6 +52,22 @@ namespace scoutingRun3 { ScMuon & operator=(const ScMuon& other) = default; ScMuon & operator=(ScMuon&& other) = default; + void swap(ScMuon& other){ + using std::swap; + swap(hwPt_, other.hwPt_); + swap(hwEta_, other.hwEta_); + swap(hwPhi_, other.hwPhi_); + swap(hwQual_, other.hwQual_); + swap(hwChrg_, other.hwChrg_); + swap(hwChrgv_, other.hwChrgv_); + swap(hwIso_, other.hwIso_); + swap(tfIndex_, other.tfIndex_); + swap(hwEtaAtVtx_, other.hwEtaAtVtx_); + swap(hwPhiAtVtx_, other.hwPhiAtVtx_); + swap(hwPtUnconstrained_, other.hwPtUnconstrained_); + swap(hwDXY_, other.hwDXY_); + } + inline void setHwPt(int hwPt) { hwPt_= hwPt;} inline void setHwEta(int hwEta) { hwEta_= hwEta;} inline void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} @@ -59,43 +75,44 @@ namespace scoutingRun3 { inline void setHwChrg(int hwChrg) { hwChrg_= hwChrg;} inline void setHwChrgv(int hwChrgv) { hwChrgv_= hwChrgv;} inline void setHwIso(int hwIso) { hwIso_= hwIso;} - inline void setHfIndex(int tfIndex) { tfIndex_= tfIndex;} + inline void setTfIndex(int tfIndex) { tfIndex_= tfIndex;} inline void setHwEtaAtVtx(int hwEtaAtVtx) { hwEtaAtVtx_= hwEtaAtVtx;} inline void setHwPhiAtVtx(int hwPhiAtVtx) { hwPhiAtVtx_= hwPhiAtVtx;} inline void setHwPtUnconstrained(int hwPtUnconstrained) { hwPtUnconstrained_= hwPtUnconstrained;} inline void setHwDXY(int hwDXY) { hwDXY_= hwDXY;} - inline int getHwPt() const {return hwPt_;} - inline int getHwEta() const {return hwEta_;} - inline int getHwPhi() const {return hwPhi_;} - inline int getHwQual() const {return hwQual_;} - inline int getHwChrg() const {return hwChrg_;} - inline int getHwChrgv() const {return hwChrgv_;} - inline int getHwIso() const {return hwIso_;} - inline int getHfIndex() const {return tfIndex_;} - inline int getHwEtaAtVtx() const {return hwEtaAtVtx_;} - inline int getHwPhiAtVtx() const {return hwPhiAtVtx_;} - inline int getHwPtUnconstrained() const {return hwPtUnconstrained_;} - inline int getHwDXY() const {return hwDXY_;} + inline int hwPt() const {return hwPt_;} + inline int hwEta() const {return hwEta_;} + inline int hwPhi() const {return hwPhi_;} + inline int hwQual() const {return hwQual_;} + inline int hwCharge() const {return hwChrg_;} + inline int hwChargeValid() const {return hwChrgv_;} + inline int hwIso() const {return hwIso_;} + inline int hwIndex() const {return tfIndex_;} + inline int hwEtaAtVtx() const {return hwEtaAtVtx_;} + inline int hwPhiAtVtx() const {return hwPhiAtVtx_;} + inline int hwPtUnconstrained() const {return hwPtUnconstrained_;} + inline int hwDXY() const {return hwDXY_;} + inline int tfMuonIndex() const {return tfIndex_;} - inline float getPt() const { - return pt_scale_*(hwPt_-1); - } - inline float getEta()const { - return eta_scale_*hwEta_; - } - inline float getPhi() const { - return phi_scale_*hwPhi_; - } - inline float getPtUnconstrained() const { - return pt_scale_*(hwPtUnconstrained_-1); - } - inline float getEtaAtVtx() const { - return eta_scale_*hwEtaAtVtx_; - } - inline float getPhiAtVtx() const { - return phi_scale_*hwPhiAtVtx_; - } + // inline float pt() const { + // return pt_scale_*(hwPt_-1); + // } + // inline float eta()const { + // return eta_scale_*hwEta_; + // } + // inline float phi() const { + // return phi_scale_*hwPhi_; + // } + // inline float ptUnconstrained() const { + // return pt_scale_*(hwPtUnconstrained_-1); + // } + // inline float etaAtVtx() const { + // return eta_scale_*hwEtaAtVtx_; + // } + // inline float phiAtVtx() const { + // return phi_scale_*hwPhiAtVtx_; + // } private: int hwPt_; @@ -112,11 +129,12 @@ namespace scoutingRun3 { int hwDXY_; // constants to convert from harware to physical quantities - static constexpr float pt_scale_ = 0.5; - static constexpr float ptunconstrained_scale_ = 1.0; - static constexpr float phi_scale_ = 2.*M_PI/576.; - static constexpr float eta_scale_ = 0.0870/8; + // static constexpr float pt_scale_ = 0.5; + // static constexpr float ptunconstrained_scale_ = 1.0; + // static constexpr float phi_scale_ = 2.*M_PI/576.; + // static constexpr float eta_scale_ = 0.0870/8; }; } // namespace scoutingRun3 + #endif // DataFormats_L1Scouting_L1ScoutingMuon_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/OrbitCollection.h b/DataFormats/L1Scouting/interface/OrbitCollection.h index 7c19e091d895a..e35d0f93c9395 100644 --- a/DataFormats/L1Scouting/interface/OrbitCollection.h +++ b/DataFormats/L1Scouting/interface/OrbitCollection.h @@ -21,39 +21,64 @@ namespace scoutingRun3 { template class OrbitCollection { public: - OrbitCollection(): bxOffsets_(3565, 0), bxData_(3565), nObjects_(0) {} + OrbitCollection(): bxOffsets_(3566, 0), data_(0) {} // append one object to vector at bx - void addBxObject(int bx, T& object) { - assert(bx<=3564); - bxData_[bx].emplace_back(object); - nObjects_ ++; - } - - // append objects to bx from an iterator - template - void addBxObjects(int bx, VI objectsBegin, VI objectsEnd){ - assert(bx<=3564); - bxData_[bx].insert(bxData_[bx].end(), objectsBegin, objectsEnd); - nObjects_ += std::distance(objectsBegin, objectsEnd); - } - - // flatten bxData_ vector. Must be called at the end of the orbit. - void flatten(){ - data_.reserve(nObjects_); + // void addBxObject(int bx, T& object) { + // assert(bx<=3564); + // bxData_[bx].push_back(object); + // nObjects_ ++; + // } + + // // append objects to bx from an iterator + // template + // void addBxObjects(int bx, VI objectsBegin, VI objectsEnd){ + // assert(bx<=3564); + // bxData_[bx].insert(bxData_[bx].end(), objectsBegin, objectsEnd); + // nObjects_ += std::distance(objectsBegin, objectsEnd); + // } + + // // flatten bxData_ vector. Must be called at the end of the orbit. + // void flatten(){ + // data_.reserve(nObjects_); + // bxOffsets_[0] = 0; + // int bxIdx = 1; + // for (auto &bxVec: bxData_){ + // data_.insert(data_.end(), + // std::make_move_iterator(bxVec.begin()), + // std::make_move_iterator(bxVec.end()) + // ); + // // increase offset by the currect vec size + // bxOffsets_[bxIdx] = bxOffsets_[bxIdx-1] + bxVec.size(); + // bxIdx++; + // } + + // bxData_.clear(); + // } + + // TEST + void fillAndClear(std::vector> &orbitBuffer, int nObjects=0){ + data_.reserve(nObjects); bxOffsets_[0] = 0; int bxIdx = 1; - for (auto &bxVec: bxData_){ - data_.insert(data_.end(), - std::make_move_iterator(bxVec.begin()), - std::make_move_iterator(bxVec.end()) - ); + for (auto &bxVec: orbitBuffer){ // increase offset by the currect vec size bxOffsets_[bxIdx] = bxOffsets_[bxIdx-1] + bxVec.size(); + // std::cout<<"IDX: " << bxIdx << ", size: "<< bxVec.size() << ", offset: "<0){ + data_.insert(data_.end(), + std::make_move_iterator(bxVec.begin()), + std::make_move_iterator(bxVec.end()) + ); + bxVec.clear(); + } + bxIdx++; } - bxData_.clear(); } // get number of objects stored in a BX @@ -88,18 +113,12 @@ namespace scoutingRun3 { // Transient container used while filling the orbit collection. // Needed because data could be added to the collection with unsorted BX. // This will not be persisted (transient="true") - mutable std::vector> bxData_; + // mutable std::vector> bxData_; // count number of objects inserted into the collection - int nObjects_; + // int nObjects_; }; - typedef OrbitCollection MuonOrbitCollection; - typedef OrbitCollection JetOrbitCollection; - typedef OrbitCollection EGammaOrbitCollection; - typedef OrbitCollection TauOrbitCollection; - typedef OrbitCollection EtSumOrbitCollection; - typedef OrbitCollection ScMuonOrbitCollection; typedef OrbitCollection ScJetOrbitCollection; typedef OrbitCollection ScEGammaOrbitCollection; diff --git a/DataFormats/L1Scouting/src/classes.h b/DataFormats/L1Scouting/src/classes.h index 1d82a0428568e..acd493be931a9 100644 --- a/DataFormats/L1Scouting/src/classes.h +++ b/DataFormats/L1Scouting/src/classes.h @@ -6,15 +6,9 @@ #include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" namespace scoutingRun3 { - edm::Wrapper> MuonOrbitCollectionWrapper; - edm::Wrapper> JetOrbitCollectionWrapper; - edm::Wrapper> EGammaOrbitCollectionWrapper; - edm::Wrapper> TauOrbitCollectionWrapper; - edm::Wrapper> EtSumOrbitCollectionWrapper; - - edm::Wrapper ScMuonOrbitCollectionWrapper; - edm::Wrapper ScJetOrbitCollectionWrapper; - edm::Wrapper ScEGammaOrbitCollectionWrapper; - edm::Wrapper ScTauOrbitCollectionWrapper; - edm::Wrapper ScEtSumOrbitCollectionWrapper; + edm::Wrapper ScMuonOrbitCollectionWrapper; + edm::Wrapper ScJetOrbitCollectionWrapper; + edm::Wrapper ScEGammaOrbitCollectionWrapper; + edm::Wrapper ScTauOrbitCollectionWrapper; + edm::Wrapper ScEtSumOrbitCollectionWrapper; } \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/classes_def.xml b/DataFormats/L1Scouting/src/classes_def.xml index 41d1b23c3b5bb..8865df2d9d85a 100644 --- a/DataFormats/L1Scouting/src/classes_def.xml +++ b/DataFormats/L1Scouting/src/classes_def.xml @@ -1,50 +1,29 @@ - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + diff --git a/EventFilter/L1ScoutingRawToDigi/interface/blocks.h b/EventFilter/L1ScoutingRawToDigi/interface/blocks.h index 2515f4ac42d21..e5068a241a919 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/blocks.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/blocks.h @@ -9,45 +9,6 @@ namespace scoutingRun3 { namespace ugmt { - struct hw_data_block{ - std::vector vorbit; - std::vector vbx; - std::vector vinterm; - std::vector vipt; - std::vector viptunconstrained; - std::vector vcharge; - std::vector viso; - std::vector vindex; - std::vector vqual; - std::vector viphi; - std::vector viphiext; - std::vector vieta; - std::vector vietaext; - std::vector vidxy; - - unsigned int size() {return vipt.size();} - bool empty() {return vipt.empty();} - static const unsigned int ncols = 14; - - std::vector iAt(int i) { - return { - vorbit[i], - vbx[i], - vinterm[i], - vipt[i], - viptunconstrained[i], - vcharge[i], - viso[i], - vindex[i], - vqual[i], - viphi[i], - viphiext[i], - vieta[i], - vietaext[i], - vidxy[i], - }; - } - }; struct muon { uint32_t f; @@ -62,30 +23,7 @@ namespace ugmt { }; } - - namespace demux { - struct hw_data_block { - std::vector vorbit; - std::vector vbx; - std::vector vET; - std::vector vType; - std::vector vEta; - std::vector vPhi; - std::vector vIso; - - unsigned int size() {return vET.size();} - bool empty() {return vET.empty();} - static const unsigned int ncols = 13; - - }; - - struct block_old { - uint32_t header; - uint32_t bx; - uint32_t orbit; - uint32_t frame[56]; // +8 for extra word containing link number - }; // unrolled frame block struct block { @@ -111,13 +49,5 @@ namespace demux { }; } - - -namespace bmtf { - struct block { - uint64_t stub[8]; - }; -} - } #endif diff --git a/EventFilter/L1ScoutingRawToDigi/interface/conversion.h b/EventFilter/L1ScoutingRawToDigi/interface/conversion.h new file mode 100644 index 0000000000000..28d4827c44eaf --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/interface/conversion.h @@ -0,0 +1,54 @@ +#ifndef L1ScoutingRawToDigi_conversion_h +#define L1ScoutingRawToDigi_conversion_h + +#include "EventFilter/L1ScoutingRawToDigi/interface/scales.h" + +namespace scoutingRun3 { + + namespace ugmt { + + inline float fPt(int hwPt) { + return scales::pt_scale*(hwPt-1); + }; + inline float fEta(int hwEta) { + return scales::eta_scale*hwEta; + }; + inline float fPhi(int hwPhi) { + float fPhi_ = scales::phi_scale*hwPhi; + fPhi_ = fPhi_>=M_PI ? fPhi_-2.*M_PI : fPhi_; + return fPhi_; + }; + inline float fPtUnconstrained(int hwPtUnconstrained) { + return scales::ptunconstrained_scale*hwPtUnconstrained; + }; + inline float fEtaAtVtx(int hwEtaAtVtx) { + return scales::eta_scale*hwEtaAtVtx; + }; + inline float fPhiAtVtx(int hwPhiAtVtx) { + float fPhi_ = scales::phi_scale*hwPhiAtVtx; + fPhi_ = fPhi_>=M_PI ? fPhi_-2.*M_PI : fPhi_; + return fPhi_; + }; + + } // namespace ugmt + + namespace demux { + + inline float fEt(int hwEt) { + return scales::et_scale*(hwEt-1); + }; + inline float fEta(int hwEta) { + return scales::eta_scale*hwEta; + }; + inline float fPhi(int hwPhi) { + float fPhi_ = scales::phi_scale*hwPhi; + fPhi_ = fPhi_>= M_PI ? fPhi_-2.*M_PI : fPhi_; + return fPhi_; + }; + + } // namespace demux + +} // namespace scoutingRun3 + + +#endif \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/interface/masks.h b/EventFilter/L1ScoutingRawToDigi/interface/masks.h index d2b699563797f..5f9f11bd86dfa 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/masks.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/masks.h @@ -93,25 +93,6 @@ namespace demux { }; } - - -namespace bmtf { - struct masksStubs { - static constexpr uint64_t valid = 0x0001; - static constexpr uint64_t phi = 0x0fff; - static constexpr uint64_t phiB = 0x03ff; - static constexpr uint64_t qual = 0x0007; - static constexpr uint64_t eta = 0x007f; - static constexpr uint64_t qeta = 0x007f; - static constexpr uint64_t station = 0x0003; - static constexpr uint64_t wheel = 0x0007; - static constexpr uint64_t reserved = 0x0007; - static constexpr uint64_t bx = 0xffff; - }; -} - - - struct header_masks { static constexpr uint32_t bxmatch = 0x00ff << header_shifts::bxmatch; static constexpr uint32_t mAcount = 0x000f << header_shifts::mAcount; diff --git a/EventFilter/L1ScoutingRawToDigi/interface/scales.h b/EventFilter/L1ScoutingRawToDigi/interface/scales.h index de9f4a1024257..a1b07e0beb84e 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/scales.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/scales.h @@ -6,27 +6,23 @@ namespace scoutingRun3 { -namespace ugmt { - // struct gmt_scales{ - struct scales { - static constexpr float pt_scale = 0.5; - static constexpr float ptunconstrained_scale = 1.0; - static constexpr float phi_scale = 2.*M_PI/576.; - static constexpr float eta_scale = 0.0870/8; // 9th MS bit is sign - static constexpr float phi_range = M_PI; - }; -} - + namespace ugmt { + struct scales { + static constexpr float pt_scale = 0.5; + static constexpr float ptunconstrained_scale = 1.0; + static constexpr float phi_scale = 2.*M_PI/576.; + static constexpr float eta_scale = 0.0870/8; + static constexpr float phi_range = M_PI; + }; + } - -namespace demux { - // struct gmt_scales{ - struct scales { - static constexpr float phi_scale = 2.*M_PI/144.; - static constexpr float eta_scale = 0.0435; - static constexpr float et_scale = 0.5; - }; -} + namespace demux { + struct scales { + static constexpr float phi_scale = 2.*M_PI/144.; + static constexpr float eta_scale = 0.0435; + static constexpr float et_scale = 0.5; + }; + } } #endif diff --git a/EventFilter/L1ScoutingRawToDigi/interface/shifts.h b/EventFilter/L1ScoutingRawToDigi/interface/shifts.h index 78ca418507744..9d2f909238c1e 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/shifts.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/shifts.h @@ -31,8 +31,6 @@ namespace ugmt { }; } - - namespace demux { // struct shiftsCaloJet{ struct shiftsJet { @@ -89,25 +87,6 @@ namespace demux { }; } - - -namespace bmtf { - struct shiftsStubs { - static constexpr uint32_t valid = 0; - static constexpr uint32_t phi = 1; - static constexpr uint32_t phiB = 13; - static constexpr uint32_t qual = 23; - static constexpr uint32_t eta = 26; - static constexpr uint32_t qeta = 33; - static constexpr uint32_t station = 40; - static constexpr uint32_t wheel = 42; - static constexpr uint32_t reserved = 45; - static constexpr uint32_t bx = 48; - }; -} - - - struct header_shifts { static constexpr uint32_t bxmatch = 24; static constexpr uint32_t mAcount = 16; diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc index eb6d1c84cf1d5..ca88a4c4c7437 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc @@ -3,13 +3,15 @@ ScCaloRawToDigi::ScCaloRawToDigi(const edm::ParameterSet& iConfig) { using namespace edm; using namespace scoutingRun3; - srcInputTag = iConfig.getParameter( "srcInputTag" ); - debug = iConfig.getUntrackedParameter("debug", false); + srcInputTag = iConfig.getParameter("srcInputTag"); + debug_ = iConfig.getUntrackedParameter("debug", false); - // produces().setBranchAlias( "JetOrbitCollection" ); - // produces().setBranchAlias( "TauOrbitCollection" ); - // produces().setBranchAlias( "EGammaOrbitCollection" ); - // produces().setBranchAlias( "EtSumOrbitCollection" ); + orbitBufferJets_ = std::vector>(3565); + orbitBufferEGammas_ = std::vector>(3565); + orbitBufferTaus_ = std::vector>(3565); + orbitBufferEtSums_ = std::vector>(3565); + + nJetsOrbit_=0; nEGammasOrbit_=0; nTausOrbit_=0; nEtSumsOrbit_=0; produces().setBranchAlias( "ScJetOrbitCollection" ); produces().setBranchAlias( "ScTauOrbitCollection" ); @@ -31,25 +33,25 @@ void ScCaloRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) const FEDRawData& sourceRawData = ScoutingRawDataCollection->FEDData(SDSNumbering::CaloSDSID); size_t orbitSize = sourceRawData.size(); - // std::unique_ptr unpackedJets(new JetOrbitCollection); - // std::unique_ptr unpackedTaus(new TauOrbitCollection); - // std::unique_ptr unpackedEGammas(new EGammaOrbitCollection); - // std::unique_ptr unpackedEtSums(new EtSumOrbitCollection); - std::unique_ptr unpackedJets(new ScJetOrbitCollection); std::unique_ptr unpackedTaus(new ScTauOrbitCollection); std::unique_ptr unpackedEGammas(new ScEGammaOrbitCollection); std::unique_ptr unpackedEtSums(new ScEtSumOrbitCollection); - if((sourceRawData.size()==0) && debug ){ - std::cout << "No raw data for CALO FED\n"; + if((sourceRawData.size()==0) && debug_ ){ + std::cout << "No raw data for CALO source\n"; } unpackOrbit( - unpackedJets.get(), unpackedTaus.get(), - unpackedEGammas.get(), unpackedEtSums.get(), + // unpackedJets.get(), unpackedTaus.get(), + // unpackedEGammas.get(), unpackedEtSums.get(), sourceRawData.data(), orbitSize - ); + ); + + unpackedJets->fillAndClear(orbitBufferJets_, nJetsOrbit_); + unpackedEGammas->fillAndClear(orbitBufferEGammas_, nEGammasOrbit_); + unpackedTaus->fillAndClear(orbitBufferTaus_, nTausOrbit_); + unpackedEtSums->fillAndClear(orbitBufferEtSums_, nEtSumsOrbit_); // store collections in the event iEvent.put( std::move(unpackedJets) ); @@ -59,281 +61,229 @@ void ScCaloRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) } void ScCaloRawToDigi::unpackOrbit( - scoutingRun3::ScJetOrbitCollection* jets, scoutingRun3::ScTauOrbitCollection* taus, - scoutingRun3::ScEGammaOrbitCollection* eGammas, scoutingRun3::ScEtSumOrbitCollection* etSums, + // scoutingRun3::ScJetOrbitCollection* jets, scoutingRun3::ScTauOrbitCollection* taus, + // scoutingRun3::ScEGammaOrbitCollection* eGammas, scoutingRun3::ScEtSumOrbitCollection* etSums, const unsigned char* buf, size_t len ){ - using namespace scoutingRun3; + + // reset counters + nJetsOrbit_=0; nEGammasOrbit_=0; nTausOrbit_=0; nEtSumsOrbit_=0; size_t pos = 0; while (pos < len) { - assert(pos+ (4+4+4+56*4) <= len); //sizeof(demux::block) + assert( pos+sizeof(demux::block) <= len ); demux::block *bl = (demux::block *)(buf + pos); - pos += 4+4+4+56*4; + pos += sizeof(demux::block); assert(pos <= len); uint32_t orbit = bl->orbit & 0x7FFFFFFF; uint32_t bx = bl->bx; - if(debug) { - std::cout << " CALO Orbit " << orbit << ", BX -> "<< bx << std::endl; + if(debug_) { + std::cout << "CALO Orbit " << orbit << ", BX -> "<< bx << std::endl; } - math::PtEtaPhiMLorentzVector vec; - - int32_t ET(0), Eta(0), Phi(0), Iso(0); - //float fET(0), fEta(0), fPhi(0); - // unpack jets from first link - for (uint32_t i=0; i<6; i++) { - ET = ((bl->jet1[i] >> demux::shiftsJet::ET) & demux::masksJet::ET); - - if (ET != 0) { - Eta = ((bl->jet1[i] >> demux::shiftsJet::eta) & demux::masksJet::eta); - Phi = ((bl->jet1[i] >> demux::shiftsJet::phi) & demux::masksJet::phi); - Iso = 0; - - if (Eta > 127) Eta = Eta - 256; - // fPhi = Phi * demux::scales::phi_scale; fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; - // fEta = Eta * demux::scales::eta_scale; - // fET = ET * demux::scales::et_scale; - - //l1t::Jet jet(math::PtEtaPhiMLorentzVector(fET, fEta, fPhi, 0.), ET, Eta, Phi, Iso); - ScJet jet1(ET, Eta, Phi, 0); - jets->addBxObject(bx, jet1); - - - if (debug){ - std::cout << "--- Jet link 1 ---\n"; - std::cout <<"\tEt [GeV/Hw]: "<< jet1.getEt() << "/" << jet1.getHwEt() << "\n"; - std::cout <<"\tEta [rad/Hw]: " << jet1.getEta() << "/" << jet1.getHwEta() << "\n"; - std::cout <<"\tPhi [rad/Hw]: " << jet1.getPhi() << "/" << jet1.getHwPhi() << "\n"; - } - } - } // end link1 jet unpacking loop + if (debug_) std::cout << "--- Jets link 1 ---\n"; + //unpackLinkJets(jets, bl->jet1, bx); + unpackLinkJets(bl->jet1, bx); // unpack jets from second link - for (uint32_t i=0; i<6; i++) { - ET = ((bl->jet2[i] >> demux::shiftsJet::ET) & demux::masksJet::ET); - - if (ET != 0) { - Eta = ((bl->jet2[i] >> demux::shiftsJet::eta) & demux::masksJet::eta); - Phi = ((bl->jet2[i] >> demux::shiftsJet::phi) & demux::masksJet::phi); - Iso = 0; - - if (Eta > 127) Eta = Eta - 256; - // fPhi = Phi * demux::scales::phi_scale; fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; - // fEta = Eta * demux::scales::eta_scale; - // fET = ET * demux::scales::et_scale; - - //l1t::Jet jet(math::PtEtaPhiMLorentzVector(fET, fEta, fPhi, 0.), ET, Eta, Phi, Iso); - ScJet jet2(ET, Eta, Phi, 0); - jets->addBxObject(bx, jet2); - - if (debug){ - std::cout << "--- Jet link 2 ---\n"; - std::cout <<"\tEt [GeV/Hw]: " << jet2.getEt() << "/" << jet2.getHwEt() << "\n"; - std::cout <<"\tEta [rad/Hw]: " << jet2.getEta() << "/" << jet2.getHwEta() << "\n"; - std::cout <<"\tPhi [rad/Hw]: " << jet2.getPhi() << "/" << jet2.getHwPhi() << "\n"; - } - } - } // end link1 jet unpacking loop + if (debug_) std::cout << "--- Jets link 2 ---\n"; + //unpackLinkJets(jets, bl->jet2, bx); + unpackLinkJets(bl->jet2, bx); // unpack eg from first link - for (uint32_t i=0; i<6; i++) { - ET = ((bl->egamma1[i] >> demux::shiftsEGamma::ET) & demux::masksEGamma::ET); - if (ET != 0) { - Eta = ((bl->egamma1[i] >> demux::shiftsEGamma::eta) & demux::masksEGamma::eta); - Phi = ((bl->egamma1[i] >> demux::shiftsEGamma::phi) & demux::masksEGamma::phi); - Iso = ((bl->egamma1[i] >> demux::shiftsEGamma::iso) & demux::masksEGamma::iso); - - if (Eta > 127) Eta = Eta - 256; - // fPhi = Phi * demux::scales::phi_scale; fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; - // fEta = Eta * demux::scales::eta_scale; - // fET = ET * demux::scales::et_scale; - - //l1t::EGamma eGamma(math::PtEtaPhiMLorentzVector(fET, fEta, fPhi, 0.), ET, Eta, Phi, 0, Iso); - ScEGamma eGamma1(ET, Eta, Phi, Iso); - eGammas->addBxObject(bx, eGamma1); - - if (debug){ - std::cout << "--- E/g link 1 ---\n"; - std::cout <<"\tEt [GeV/Hw]: " << eGamma1.getEt() << "/" << eGamma1.getHwEt() << "\n"; - std::cout <<"\tEta [rad/Hw]: " << eGamma1.getEta() << "/" << eGamma1.getHwEta() << "\n"; - std::cout <<"\tPhi [rad/Hw]: " << eGamma1.getPhi() << "/" << eGamma1.getHwPhi() << "\n"; - std::cout <<"\tIso [Hw]: " << eGamma1.getIso() << "\n"; - } - } - } // end eg link 1 - + if (debug_) std::cout << "--- E/g link 1 ---\n"; + // unpackLinkEGammas(eGammas, bl->egamma1, bx); + unpackLinkEGammas(bl->egamma1, bx); + // unpack eg from second link link - for (uint32_t i=0; i<6; i++) { - ET = ((bl->egamma2[i] >> demux::shiftsEGamma::ET) & demux::masksEGamma::ET); - if (ET != 0) { - Eta = ((bl->egamma2[i] >> demux::shiftsEGamma::eta) & demux::masksEGamma::eta); - Phi = ((bl->egamma2[i] >> demux::shiftsEGamma::phi) & demux::masksEGamma::phi); - Iso = ((bl->egamma2[i] >> demux::shiftsEGamma::iso) & demux::masksEGamma::iso); - - if (Eta > 127) Eta = Eta - 256; - // fPhi = Phi * demux::scales::phi_scale; fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; - // fEta = Eta * demux::scales::eta_scale; - // fET = ET * demux::scales::et_scale; - - //l1t::EGamma eGamma(math::PtEtaPhiMLorentzVector(fET, fEta, fPhi, 0.), ET, Eta, Phi, 0, Iso); - ScEGamma eGamma2(ET, Eta, Phi, Iso); - eGammas->addBxObject(bx, eGamma2); - - if (debug){ - std::cout << "--- E/g link 2 ---\n"; - std::cout <<"\tEt [GeV/Hw]: " << eGamma2.getEt() << "/" << eGamma2.getHwEt() << "\n"; - std::cout <<"\tEta [rad/Hw]: " << eGamma2.getEta() << "/" << eGamma2.getHwEta() << "\n"; - std::cout <<"\tPhi [rad/Hw]: " << eGamma2.getPhi() << "/" << eGamma2.getHwPhi() << "\n"; - std::cout <<"\tIso [Hw]: " << eGamma2.getIso() << "\n"; - } - } - - } // end of eg unpacker + if (debug_) std::cout << "--- E/g link 2 ---\n"; + // unpackLinkEGammas(eGammas, bl->egamma2, bx); + unpackLinkEGammas(bl->egamma2, bx); // unpack taus from first link - for (uint32_t i=0; i<6; i++) { - ET = ((bl->tau1[i] >> demux::shiftsTau::ET) & demux::masksTau::ET); - if (ET != 0) { - Eta = ((bl->tau1[i] >> demux::shiftsTau::eta) & demux::masksTau::eta); - Phi = ((bl->tau1[i] >> demux::shiftsTau::phi) & demux::masksTau::phi); - Iso = ((bl->tau1[i] >> demux::shiftsTau::iso) & demux::masksTau::iso); - - if (Eta > 127) Eta = Eta - 256; - // fPhi = Phi * demux::scales::phi_scale; fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; - // fEta = Eta * demux::scales::eta_scale; - // fET = ET * demux::scales::et_scale; - - //l1t::Tau tau(math::PtEtaPhiMLorentzVector(fET, fEta, fPhi, 0.), ET, Eta, Phi, 0, Iso); - ScTau tau1(ET, Eta, Phi, Iso); - taus->addBxObject(bx, tau1); - - if (debug){ - std::cout << "--- Tau link 1 ---\n"; - std::cout <<"\tEt [GeV/Hw]: " << tau1.getEt() << "/" << tau1.getHwEt() << "\n"; - std::cout <<"\tEta [rad/Hw]: " << tau1.getEta() << "/" << tau1.getHwEta() << "\n"; - std::cout <<"\tPhi [rad/Hw]: " << tau1.getPhi() << "/" << tau1.getHwPhi() << "\n"; - std::cout <<"\tIso [Hw]: " << tau1.getIso() << "\n"; - } - } - } // end tau link 1 - + if (debug_) std::cout << "--- Taus link 1 ---\n"; + // unpackLinkTaus(taus, bl->tau1, bx); + unpackLinkTaus(bl->tau1, bx); + // unpack taus from second link - for (uint32_t i=0; i<6; i++) { - ET = ((bl->tau2[i] >> demux::shiftsTau::ET) & demux::masksTau::ET); - if (ET != 0) { - Eta = ((bl->tau2[i] >> demux::shiftsTau::eta) & demux::masksTau::eta); - Phi = ((bl->tau2[i] >> demux::shiftsTau::phi) & demux::masksTau::phi); - Iso = ((bl->tau2[i] >> demux::shiftsTau::iso) & demux::masksTau::iso); - - if (Eta > 127) Eta = Eta - 256; - // fPhi = Phi * demux::scales::phi_scale; fPhi = fPhi>=2.*M_PI ? fPhi-2.*M_PI : fPhi; - // fEta = Eta * demux::scales::eta_scale; - // fET = ET * demux::scales::et_scale; - - //l1t::Tau tau(math::PtEtaPhiMLorentzVector(fET, fEta, fPhi, 0.), ET, Eta, Phi, 0, Iso); - ScTau tau2(ET, Eta, Phi, Iso); - taus->addBxObject(bx, tau2); - - if (debug){ - std::cout << "--- Tau link 2 ---\n"; - std::cout <<"\tEt [GeV/Hw]: " << tau2.getEt() << "/" << tau2.getHwEt() << "\n"; - std::cout <<"\tEta [rad/Hw]: " << tau2.getEta() << "/" << tau2.getHwEta() << "\n"; - std::cout <<"\tPhi [rad/Hw]: " << tau2.getPhi() << "/" << tau2.getHwPhi() << "\n"; - std::cout <<"\tIso [Hw]: " << tau2.getIso() << "\n"; - } - } - } // end tau unpacker + if (debug_) std::cout << "--- Taus link 2 ---\n"; + // unpackLinkTaus(taus, bl->tau2, bx); + unpackLinkTaus(bl->tau2, bx); // unpack et sums + if (debug_) std::cout << "--- Sums ---\n"; + //unpackEtSums(etSums, bl->sum, bx); + unpackEtSums(bl->sum, bx); + + } // end of orbit loop + + // jets->flatten(); + // eGammas->flatten(); + // taus->flatten(); + // etSums->flatten(); - int32_t ETEt(0), HTEt(0), ETmissEt(0), ETmissPhi(0), HTmissEt(0), HTmissPhi(0); - // float fETEt(0), fHTEt(0), fETmissEt(0), fHTmissEt(0), fETmissPhi(0), fHTmissPhi(0); +} + +// void ScCaloRawToDigi::unpackLinkJets(scoutingRun3::ScJetOrbitCollection* jets, uint32_t* dataBlock, int bx){ +void ScCaloRawToDigi::unpackLinkJets(uint32_t* dataBlock, int bx){ + using namespace scoutingRun3; - // ET - ETEt = ((bl->sum[0] >> demux::shiftsESums::ETEt) & demux::masksESums::ETEt); - // fETEt = ETEt * demux::scales::et_scale; - - //l1t::EtSum sum = l1t::EtSum(math::PtEtaPhiMLorentzVector(fETEt, 0, 0, 0.), l1t::EtSum::EtSumType::kTotalEt, ETEt); - ScEtSum sumTotEt(ETEt, 0, l1t::EtSum::EtSumType::kTotalEt); - etSums->addBxObject(bx, sumTotEt); - - // HT - HTEt = ((bl->sum[1] >> demux::shiftsESums::HTEt) & demux::masksESums::HTEt); - // fHTEt = HTEt * demux::scales::et_scale; - - //sum = l1t::EtSum(math::PtEtaPhiMLorentzVector(fHTEt, 0, 0, 0.), l1t::EtSum::EtSumType::kTotalHt, HTEt); - ScEtSum sumTotHt(HTEt, 0, l1t::EtSum::EtSumType::kTotalHt); - etSums->addBxObject(bx, sumTotHt); - - // ETMiss - ETmissEt = ((bl->sum[2] >> demux::shiftsESums::ETmissEt) & demux::masksESums::ETmissEt); - ETmissPhi = ((bl->sum[2] >> demux::shiftsESums::ETmissPhi) & demux::masksESums::ETmissPhi); - // fETmissEt = ETmissEt * demux::scales::et_scale; - // fETmissPhi = ETmissPhi * demux::scales::phi_scale; - // fETmissPhi = fETmissPhi>2.*M_PI? fETmissPhi - 2.*M_PI : fETmissPhi; - - //sum = l1t::EtSum(math::PtEtaPhiMLorentzVector(fETmissEt, 0, fETmissPhi, 0.), l1t::EtSum::EtSumType::kMissingEt, ETmissEt, 0, ETmissPhi); + int32_t ET(0), Eta(0), Phi(0); + for (uint32_t i=0; i<6; i++) { + ET = ((dataBlock[i] >> demux::shiftsJet::ET) & demux::masksJet::ET); - ScEtSum sumMissEt(ETmissEt, ETmissPhi, l1t::EtSum::EtSumType::kMissingEt); - etSums->addBxObject(bx, sumMissEt); - - // HTMiss - HTmissEt = ((bl->sum[3] >> demux::shiftsESums::HTmissEt) & demux::masksESums::HTmissEt); - HTmissPhi = ((bl->sum[3] >> demux::shiftsESums::HTmissPhi) & demux::masksESums::HTmissPhi); - // fHTmissEt = HTmissEt * demux::scales::et_scale; - // fHTmissPhi = HTmissPhi * demux::scales::phi_scale; - // fHTmissPhi = fHTmissPhi>2.*M_PI? fHTmissPhi - 2.*M_PI : fHTmissPhi; - - ScEtSum sumMissHt(HTmissEt, HTmissPhi, l1t::EtSum::EtSumType::kMissingHt); - etSums->addBxObject(bx, sumMissHt); - - - // // ETHFMiss - // ETHFmissEt = ((bl->sum[4] >> demux::shiftsESums::ETHFmissEt) & demux::masksESums::ETHFmissEt); - // ETHFmissPhi = ((bl->sum[4] >> demux::shiftsESums::ETHFmissPhi) & demux::masksESums::ETHFmissPhi); - // ETHFmissASYMETHF = ((bl->sum[4] >> demux::shiftsESums::ETHFmissASYMETHF) & demux::masksESums::ETHFmissASYMETHF); - // //ETHFmissCENT = ((bl.sum[4] >> demux::shiftsESums::ETHFmissCENT) & demux::masksESums::ETHFmissCENT); - - // sum = l1t::EtSum(*dummyLVec_, l1t::EtSum::EtSumType::kMissingEtHF, ETHFmissEt, 0, ETHFmissPhi); - // etSums->push_back(bx, sum); - // sum = l1t::EtSum(*dummyLVec_, l1t::EtSum::EtSumType::kAsymEtHF, ETHFmissASYMETHF); - // etSums->push_back(bx, sum); - - - // // HTHFMiss - // HTHFmissEt = ((bl->sum[5] >> demux::shiftsESums::HTHFmissEt) & demux::masksESums::HTHFmissEt); - // HTHFmissPhi = ((bl->sum[5] >> demux::shiftsESums::HTHFmissPhi) & demux::masksESums::HTHFmissPhi); - // HTHFmissASYMHTHF = ((bl->sum[5] >> demux::shiftsESums::HTHFmissASYMHTHF) & demux::masksESums::HTHFmissASYMHTHF); - // //HTHFmissCENT = ((bl->sum[5] >> demux::shiftsESums::HTHFmissCENT) & demux::masksESums::HTHFmissCENT); - - // sum = l1t::EtSum(*dummyLVec_, l1t::EtSum::EtSumType::kMissingHtHF, HTHFmissEt, 0, HTHFmissPhi); - // etSums->push_back(bx, sum); - // sum = l1t::EtSum(*dummyLVec_, l1t::EtSum::EtSumType::kAsymHtHF, HTHFmissASYMHTHF); - // etSums->push_back(bx, sum); - - // add sums to event - // etSums->push_back(bx, bx_etSums); + if (ET != 0) { + Eta = ((dataBlock[i] >> demux::shiftsJet::eta) & demux::masksJet::eta); + Phi = ((dataBlock[i] >> demux::shiftsJet::phi) & demux::masksJet::phi); + + if (Eta > 127) Eta = Eta - 256; + + ScJet jet(ET, Eta, Phi, 0); + //jets->addBxObject(bx, jet); + orbitBufferJets_[bx].push_back(jet); + nJetsOrbit_ ++; + + if (debug_){ + std::cout << "Jet " << i << std::endl; + std::cout << " Raw: 0x" << std::hex << dataBlock[i] << std::dec << std::endl; + std::cout << " Et [GeV/Hw]: " << demux::fEt(jet.hwEt()) << "/" << jet.hwEt() << "\n"; + std::cout << " Eta [rad/Hw]: " << demux::fEta(jet.hwEta()) << "/" << jet.hwEta() << "\n"; + std::cout << " Phi [rad/Hw]: " << demux::fPhi(jet.hwPhi()) << "/" << jet.hwPhi() << "\n"; + } + } + } // end link jets unpacking loop +} - } // end of orbit loop +// void ScCaloRawToDigi::unpackLinkEGammas(scoutingRun3::ScEGammaOrbitCollection* eGammas, uint32_t* dataBlock, int bx){ +void ScCaloRawToDigi::unpackLinkEGammas(uint32_t* dataBlock, int bx){ + using namespace scoutingRun3; - jets->flatten(); - eGammas->flatten(); - taus->flatten(); - etSums->flatten(); - + int32_t ET(0), Eta(0), Phi(0), Iso(0); + for (uint32_t i=0; i<6; i++) { + ET = ((dataBlock[i] >> demux::shiftsEGamma::ET) & demux::masksEGamma::ET); + if (ET != 0) { + Eta = ((dataBlock[i] >> demux::shiftsEGamma::eta) & demux::masksEGamma::eta); + Phi = ((dataBlock[i] >> demux::shiftsEGamma::phi) & demux::masksEGamma::phi); + Iso = ((dataBlock[i] >> demux::shiftsEGamma::iso) & demux::masksEGamma::iso); + + if (Eta > 127) Eta = Eta - 256; + + ScEGamma eGamma(ET, Eta, Phi, Iso); + //eGammas->addBxObject(bx, eGamma); + orbitBufferEGammas_[bx].push_back(eGamma); + nEGammasOrbit_ ++; + + if (debug_){ + std::cout << "E/g " << i << std::endl; + std::cout << " Raw: 0x" << std::hex << dataBlock[i] << std::dec << std::endl; + std::cout << " Et [GeV/Hw]: " << demux::fEt(eGamma.hwEt()) << "/" << eGamma.hwEt() << "\n"; + std::cout << " Eta [rad/Hw]: " << demux::fEta(eGamma.hwEta()) << "/" << eGamma.hwEta() << "\n"; + std::cout << " Phi [rad/Hw]: " << demux::fPhi(eGamma.hwPhi()) << "/" << eGamma.hwPhi() << "\n"; + std::cout << " Iso [Hw]: " << eGamma.hwIso() << "\n"; + } + } + } // end link e/gammas unpacking loop } -void ScCaloRawToDigi::unpackRawJet(std::vector& jets, uint32_t *rawData){ +// void ScCaloRawToDigi::unpackLinkTaus(scoutingRun3::ScTauOrbitCollection* taus, uint32_t* dataBlock, int bx){ +void ScCaloRawToDigi::unpackLinkTaus(uint32_t* dataBlock, int bx){ + using namespace scoutingRun3; + + int32_t ET(0), Eta(0), Phi(0), Iso(0); + for (uint32_t i=0; i<6; i++) { + ET = ((dataBlock[i] >> demux::shiftsTau::ET) & demux::masksTau::ET); + if (ET != 0) { + Eta = ((dataBlock[i] >> demux::shiftsTau::eta) & demux::masksTau::eta); + Phi = ((dataBlock[i] >> demux::shiftsTau::phi) & demux::masksTau::phi); + Iso = ((dataBlock[i] >> demux::shiftsTau::iso) & demux::masksTau::iso); + + if (Eta > 127) Eta = Eta - 256; + + ScTau tau(ET, Eta, Phi, Iso); + //taus->addBxObject(bx, tau); + orbitBufferTaus_[bx].push_back(tau); + nTausOrbit_ ++; + + if (debug_){ + std::cout << "Tau " << i << std::endl; + std::cout << " Raw: 0x" << std::hex << dataBlock[i] << std::dec << std::endl; + std::cout << " Et [GeV/Hw]: " << demux::fEt(tau.hwEt()) << "/" << tau.hwEt() << "\n"; + std::cout << " Eta [rad/Hw]: " << demux::fEta(tau.hwEta()) << "/" << tau.hwEta() << "\n"; + std::cout << " Phi [rad/Hw]: " << demux::fPhi(tau.hwPhi()) << "/" << tau.hwPhi() << "\n"; + std::cout << " Iso [Hw]: " << tau.hwIso() << "\n"; + } + } + } // end link taus unpacking loop +} + +// void ScCaloRawToDigi::unpackEtSums(scoutingRun3::ScEtSumOrbitCollection* etSums, uint32_t* dataBlock, int bx){ +void ScCaloRawToDigi::unpackEtSums(uint32_t* dataBlock, int bx){ + using namespace scoutingRun3; + + int32_t ETEt(0), HTEt(0), ETmissEt(0), ETmissPhi(0), HTmissEt(0), HTmissPhi(0); + + // ET + ETEt = ((dataBlock[0] >> demux::shiftsESums::ETEt) & demux::masksESums::ETEt); - return; + ScEtSum sumTotEt(ETEt, 0, l1t::EtSum::EtSumType::kTotalEt); + //etSums->addBxObject(bx, sumTotEt); + orbitBufferEtSums_[bx].push_back(sumTotEt); + + // HT + HTEt = ((dataBlock[1] >> demux::shiftsESums::HTEt) & demux::masksESums::HTEt); + + ScEtSum sumTotHt(HTEt, 0, l1t::EtSum::EtSumType::kTotalHt); + //etSums->addBxObject(bx, sumTotHt); + orbitBufferEtSums_[bx].push_back(sumTotHt); + + // ETMiss + ETmissEt = ((dataBlock[2] >> demux::shiftsESums::ETmissEt) & demux::masksESums::ETmissEt); + ETmissPhi = ((dataBlock[2] >> demux::shiftsESums::ETmissPhi) & demux::masksESums::ETmissPhi); + + ScEtSum sumMissEt(ETmissEt, ETmissPhi, l1t::EtSum::EtSumType::kMissingEt); + //etSums->addBxObject(bx, sumMissEt); + orbitBufferEtSums_[bx].push_back(sumMissEt); + + // HTMiss + HTmissEt = ((dataBlock[3] >> demux::shiftsESums::HTmissEt) & demux::masksESums::HTmissEt); + HTmissPhi = ((dataBlock[3] >> demux::shiftsESums::HTmissPhi) & demux::masksESums::HTmissPhi); + + ScEtSum sumMissHt(HTmissEt, HTmissPhi, l1t::EtSum::EtSumType::kMissingHt); + //etSums->addBxObject(bx, sumMissHt); + orbitBufferEtSums_[bx].push_back(sumMissHt); + + nEtSumsOrbit_ += 4; + + if (debug_){ + std::cout << "Type: TotalET\n" + << " Raw: 0x" << std::hex << dataBlock[0] << std::dec << "\n" + << " Et [GeV/Hw]: " << demux::fEt(sumTotEt.hwEt()) << "/" << sumTotEt.hwEt() + << std::endl; + + std::cout << "Type: TotalHT\n" + << " Raw: 0x" << std::hex << dataBlock[1] << std::dec << "\n" + << " Et [GeV/Hw]: " << demux::fEt(sumTotEt.hwEt()) << "/" << sumTotEt.hwEt() + << std::endl; + + std::cout << "Type: ETMiss\n" + << " Raw: 0x" << std::hex << dataBlock[2] << std::dec << "\n" + << " Et [GeV/Hw]: " << demux::fEt(sumMissEt.hwEt()) << "/" << sumMissEt.hwEt() << "\n" + << " Phi [Rad/Hw]: " << demux::fPhi(sumMissEt.hwPhi()) << "/" << sumMissEt.hwPhi() + << std::endl; + + std::cout << "Type: HTMiss\n" + << " Raw: 0x" << std::hex << dataBlock[3] << std::dec << "\n" + << " Et [GeV/Hw]: " << demux::fEt(sumMissHt.hwEt()) << "/" << sumMissHt.hwEt() << "\n" + << " Phi [Rad/Hw]: " << demux::fPhi(sumMissHt.hwPhi()) << "/" << sumMissHt.hwPhi() + << std::endl; + } } void ScCaloRawToDigi::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h index ce82c6e19c886..4cd381375ad45 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h @@ -1,5 +1,6 @@ #include #include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/Framework/interface/stream/EDProducer.h" #include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/MakerMacros.h" @@ -11,17 +12,13 @@ #include "DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h" #include "DataFormats/L1Scouting/interface/OrbitCollection.h" -#include "DataFormats/L1Trigger/interface/EGamma.h" -#include "DataFormats/L1Trigger/interface/Jet.h" -#include "DataFormats/L1Trigger/interface/Tau.h" -#include "DataFormats/L1Trigger/interface/EtSum.h" - #include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" #include "EventFilter/L1ScoutingRawToDigi/interface/shifts.h" #include "EventFilter/L1ScoutingRawToDigi/interface/scales.h" #include "EventFilter/L1ScoutingRawToDigi/interface/masks.h" #include "EventFilter/L1ScoutingRawToDigi/interface/blocks.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/conversion.h" class ScCaloRawToDigi : public edm::stream::EDProducer<> { public: @@ -34,24 +31,28 @@ class ScCaloRawToDigi : public edm::stream::EDProducer<> { void produce(edm::Event&, const edm::EventSetup&) override; void unpackOrbit( - //l1t::JetBxCollection* jets, l1t::TauBxCollection* taus, - //l1t::EGammaBxCollection* eGammas, l1t::EtSumBxCollection* etSums, - scoutingRun3::ScJetOrbitCollection* jets, scoutingRun3::ScTauOrbitCollection* taus, - scoutingRun3::ScEGammaOrbitCollection* eGammas, scoutingRun3::ScEtSumOrbitCollection* etSums, + //scoutingRun3::ScJetOrbitCollection* jets, scoutingRun3::ScTauOrbitCollection* taus, + //scoutingRun3::ScEGammaOrbitCollection* eGammas, scoutingRun3::ScEtSumOrbitCollection* etSums, const unsigned char* buf, size_t len ); - void unpackRawJet(std::vector& jets, uint32_t *rawData); - - // std::vector bx_jets; - // std::vector bx_taus; - // std::vector bx_eGammas; - // std::vector bx_etSums; + // void unpackLinkJets(scoutingRun3::ScJetOrbitCollection* jets, uint32_t* dataBlock, int bx); + // void unpackLinkEGammas(scoutingRun3::ScEGammaOrbitCollection* eGammas, uint32_t* dataBlock, int bx); + // void unpackLinkTaus(scoutingRun3::ScTauOrbitCollection* taus, uint32_t* dataBlock, int bx); + // void unpackEtSums(scoutingRun3::ScEtSumOrbitCollection* etSums, uint32_t* dataBlock, int bx); - std::unique_ptr>> dummyLVec_; + void unpackLinkJets(uint32_t* dataBlock, int bx); + void unpackLinkEGammas(uint32_t* dataBlock, int bx); + void unpackLinkTaus(uint32_t* dataBlock, int bx); + void unpackEtSums(uint32_t* dataBlock, int bx); - bool debug = false; + int nJetsOrbit_, nEGammasOrbit_, nTausOrbit_, nEtSumsOrbit_; + std::vector> orbitBufferJets_; + std::vector> orbitBufferEGammas_; + std::vector> orbitBufferTaus_; + std::vector> orbitBufferEtSums_; + bool debug_ = false; edm::InputTag srcInputTag; edm::EDGetToken rawToken; }; diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc index f31de17ce250d..c13d1c8c8120c 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc @@ -5,12 +5,15 @@ ScGMTRawToDigi::ScGMTRawToDigi(const edm::ParameterSet& iConfig) { srcInputTag = iConfig.getParameter( "srcInputTag" ); debug_ = iConfig.getUntrackedParameter("debug", false); - //produces().setBranchAlias( "MuonOrbitCollection" ); + // initialize orbit buffer for BX 1->3564; + orbitBuffer_ = std::vector>(3565); + for (auto &bxVec: orbitBuffer_){ + bxVec.reserve(8); + } + nMuonsOrbit_ = 0; + produces().setBranchAlias( "ScMuonOrbitCollection" ); rawToken = consumes(srcInputTag); - - bx_muons.reserve(8); - //dummyLVec_.reset( new ROOT::Math::LorentzVector>() ); } ScGMTRawToDigi::~ScGMTRawToDigi() {}; @@ -24,29 +27,40 @@ void ScGMTRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) const FEDRawData& sourceRawData = ScoutingRawDataCollection->FEDData(SDSNumbering::GmtSDSID); size_t orbitSize = sourceRawData.size(); - //std::unique_ptr unpackedMuons(new scoutingRun3::MuonOrbitCollection); std::unique_ptr unpackedMuons(new scoutingRun3::ScMuonOrbitCollection); if((sourceRawData.size()==0) && debug_){ std::cout << "No raw data for GMT FED\n"; } - unpackOrbit(unpackedMuons.get(), sourceRawData.data(), orbitSize); + // unpackOrbit(unpackedMuons.get(), sourceRawData.data(), orbitSize); + unpackOrbit(sourceRawData.data(), orbitSize); + + // fill orbit collection with move: + // move every bx vector into the orbit collection + unpackedMuons->fillAndClear(orbitBuffer_, nMuonsOrbit_); + + // int idx = 0; + // for (auto &bxVec: orbitBuffer_){ + // std::cout << "Bx = " << idx << ", size = "<< bxVec.size() <setBXRange(0,3565); + // reset counters + nMuonsOrbit_ = 0; + + size_t pos = 0; while (pos < len) { assert(pos+4 <= len); @@ -67,24 +81,18 @@ void ScGMTRawToDigi::unpackOrbit( uint32_t bx = bl->bx; if (debug_){ - std::cout << " GMT Orbit " << orbit << ", BX -> "<< bx << ", nMuons -> " << mAcount+mBcount << std::endl; + std::cout << "GMT Orbit " << orbit << ", BX -> "<< bx << ", nMuons -> " << mAcount+mBcount << std::endl; } // Unpack muons for this BX - - bx_muons.clear(); - - // cuts should be applied - bool excludeIntermediate=true; - int ptcut=0; - unsigned int qualcut=0; + orbitBuffer_[bx].reserve(mAcount+mBcount); for (unsigned int i=0; imu[i].extra >> ugmt::shiftsMuon::interm) & ugmt::masksMuon::interm; - if (excludeIntermediate && (interm == 1)){ + if (interm == 1){ if (debug_){ - std::cout << "Excluding intermediate muon\n"; + std::cout << " -> Excluding intermediate muon\n"; } continue; } @@ -101,11 +109,11 @@ void ScGMTRawToDigi::unpackOrbit( // extract pt and quality and apply cut if required int32_t iptuncon = (bl->mu[i].s >> ugmt::shiftsMuon::ptuncon) & ugmt::masksMuon::ptuncon; int32_t ipt = (bl->mu[i].f >> ugmt::shiftsMuon::pt) & ugmt::masksMuon::pt; - if ((ipt-1) < ptcut) { + if ((ipt-1) < 0) { continue; } uint32_t qual = (bl->mu[i].f >> ugmt::shiftsMuon::qual) & ugmt::masksMuon::qual; - if (qual < qualcut) { + if (qual == 0) { continue; } @@ -143,50 +151,8 @@ void ScGMTRawToDigi::unpackOrbit( ieta = ieta_u; } - // convert to physical units using scales - float fpt = (ipt -1) * ugmt::scales::pt_scale; // -1 since bin 0 is for invalid muons - float fptuncon = (iptuncon-1) * ugmt::scales::ptunconstrained_scale; // -1 since bin 0 is for invalid muons - float fphi = iphi * ugmt::scales::phi_scale; - float fphiext = iphiext * ugmt::scales::phi_scale; - float feta = ieta * ugmt::scales::eta_scale; - float fetaext = ietaext * ugmt::scales::eta_scale; - - if (fphiext>M_PI) fphiext = fphiext - 2.*M_PI; - if (fphi >M_PI) fphi = fphi - 2.*M_PI; - - // l1t::Muon muon; - // math::PtEtaPhiMLorentzVector vec{fpt, feta, fphi, 0.}; - - // muon.setP4(vec); - // muon.setHwPt(ipt); - // muon.setHwEta(ieta); - // muon.setHwPhi(iphi); - // muon.setHwQual(qual); - // muon.setHwCharge(chrg); - // muon.setHwChargeValid(chrg != 0); - // muon.setHwIso(iso); - // muon.setTfMuonIndex(index); - // muon.setHwEtaAtVtx(ietaext); - // muon.setHwPhiAtVtx(iphiext); - // muon.setEtaAtVtx(fetaext); - // muon.setPhiAtVtx(fphiext); - // muon.setHwPtUnconstrained(iptuncon); - // muon.setPtUnconstrained(fptuncon); - // muon.setHwDXY(idxy); - - // ScMuon muon; - - // muon.pt = ipt; - // muon.eta = ieta; - // muon.phi = iphi; - // muon.qual = qual; - // muon.chrg = chrg; - // muon.chrgv = chrg!=0; - // muon.iso = iso; - // muon.index = index; - // muon.etae = ietaext; - // muon.phie = iphiext; - // muon.ptUncon = iptuncon; + // increment muon counter + nMuonsOrbit_ ++; scoutingRun3::ScMuon muon( ipt, @@ -203,26 +169,30 @@ void ScGMTRawToDigi::unpackOrbit( idxy ); - muons->addBxObject(bx, muon); - - // if (debug_){ - // std::cout<<"--- Muon ---\n"; - // std::cout<<"\tPt [GeV/Hw]: " << muon.pt() << "/" << muon.hwPt() << "\n"; - // std::cout<<"\tEta [rad/Hw]: " << muon.eta() << "/" << muon.hwEta() << "\n"; - // std::cout<<"\tPhi [rad/Hw]: " << muon.phi() << "/" << muon.hwPhi() << "\n"; - // std::cout<<"\tCharge/valid: " << muon.hwCharge() << "/" << muon.hwChargeValid() << "\n"; - // std::cout<<"\tPhiVtx [rad/Hw]: " << muon.phiAtVtx() << "/" << muon.hwPhiAtVtx() << "\n"; - // std::cout<<"\tEtaVtx [rad/Hw]: " << muon.etaAtVtx() << "/" << muon.hwEtaAtVtx() << "\n"; - // std::cout<<"\tPt uncon[GeV/Hw]: " << muon.ptUnconstrained() << "/" << muon.hwPtUnconstrained() << "\n"; - // std::cout<<"\tDxy: " << muon.hwDXY() << "\n"; - // std::cout<<"\tTF index: " << muon.tfMuonIndex() << "\n"; - // } + //muons->addBxObject(bx, muon); + orbitBuffer_[bx].push_back(muon); + + if (debug_){ + std::cout << "--- Muon " << i << " ---\n"; + std::cout << " Raw f: 0x" << std::hex << bl->mu[i].f << std::dec << "\n"; + std::cout << " Raw s: 0x" << std::hex << bl->mu[i].s << std::dec << "\n"; + std::cout << " Raw extra: 0x" << std::hex << bl->mu[i].extra << std::dec << "\n"; + std::cout << " Pt [GeV/Hw]: " << ugmt::fPt(muon.hwPt()) << "/" << muon.hwPt() << "\n"; + std::cout << " Eta [rad/Hw]: " << ugmt::fEta(muon.hwEta()) << "/" << muon.hwEta() << "\n"; + std::cout << " Phi [rad/Hw]: " << ugmt::fPhi(muon.hwPhi()) << "/" << muon.hwPhi() << "\n"; + std::cout << " Charge/valid: " << muon.hwCharge() << "/" << muon.hwChargeValid() << "\n"; + std::cout << " PhiVtx [rad/Hw]: " << ugmt::fPhiAtVtx(muon.hwPhiAtVtx()) << "/" << muon.hwPhiAtVtx() << "\n"; + std::cout << " EtaVtx [rad/Hw]: " << ugmt::fEtaAtVtx(muon.hwEtaAtVtx()) << "/" << muon.hwEtaAtVtx() << "\n"; + std::cout << " Pt uncon[GeV/Hw]: " << ugmt::fPtUnconstrained(muon.hwPtUnconstrained()) << "/" << muon.hwPtUnconstrained() << "\n"; + std::cout << " Dxy: " << muon.hwDXY() << "\n"; + std::cout << " TF index: " << muon.tfMuonIndex() << "\n"; + } } // end of bx } // end orbit while loop - muons->flatten(); + //muons->flatten(); } diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h index 988ecff56edd7..af4f528db700f 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h @@ -1,4 +1,3 @@ -#include #include "FWCore/Framework/interface/Frameworkfwd.h" #include "FWCore/Framework/interface/stream/EDProducer.h" #include "FWCore/Framework/interface/Event.h" @@ -18,6 +17,10 @@ #include "EventFilter/L1ScoutingRawToDigi/interface/scales.h" #include "EventFilter/L1ScoutingRawToDigi/interface/masks.h" #include "EventFilter/L1ScoutingRawToDigi/interface/blocks.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/conversion.h" + +#include +#include class ScGMTRawToDigi : public edm::stream::EDProducer<> { public: @@ -27,21 +30,19 @@ class ScGMTRawToDigi : public edm::stream::EDProducer<> { static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - //void beginStream(edm::StreamID) override; void produce(edm::Event&, const edm::EventSetup&) override; - //void endStream() override; void unpackOrbit( - scoutingRun3::ScMuonOrbitCollection* muons, - //l1t::MuonBxCollection* muons, + //scoutingRun3::ScMuonOrbitCollection* muons, const unsigned char* buf, size_t len ); - std::vector bx_muons; - std::unique_ptr>> dummyLVec_; + // vector holding data for every bunch crossing before + // filling the orbit collection + std::vector> orbitBuffer_; + int nMuonsOrbit_; bool debug_ = false; - edm::InputTag srcInputTag; edm::EDGetToken rawToken; }; diff --git a/EventFilter/Utilities/test/testScoutingRun3_unpackers.py b/EventFilter/Utilities/test/testScoutingRun3_unpackers.py index 61dba7d5f1a6e..74f0799083bb1 100644 --- a/EventFilter/Utilities/test/testScoutingRun3_unpackers.py +++ b/EventFilter/Utilities/test/testScoutingRun3_unpackers.py @@ -120,7 +120,6 @@ ) - fuDir = options.fuBaseDir+("/run%06d" % options.runNumber) buDir = options.buBaseDir+("/run%06d" % options.runNumber) for d in fuDir, buDir, options.fuBaseDir, options.buBaseDir: @@ -150,8 +149,6 @@ #compressionLevel = cms.untracked.int32(4) ) - - rawToDigiTask = cms.Task( process.GmtUnpacker,process.CaloUnpacker ) From 4c0e625393b33a1081587976a019ef410ddf6767 Mon Sep 17 00:00:00 2001 From: matteo Date: Wed, 22 Nov 2023 19:52:31 +0100 Subject: [PATCH 035/281] Added Example analyzer --- .../L1Scouting/interface/OrbitCollection.h | 147 +- DataFormats/L1Scouting/src/classes.h | 10 +- DataFormats/L1Scouting/src/classes_def.xml | 20 +- .../plugins/ScCALORawToDigi.cc | 35 +- .../plugins/ScCALORawToDigi.h | 7 - .../plugins/ScGMTRawToDigi.cc | 13 +- .../plugins/ScGMTRawToDigi.h | 6 +- L1TriggerScouting/Utilities/BuildFile.xml | 7 + .../Utilities/plugins/BuildFile.xml | 9 + .../Utilities/plugins/DumpScObjects.cc | 281 + L1TriggerScouting/Utilities/plugins/tmp.out | 28419 ++++++++++++++++ .../Utilities/test/dumpScObjects.py | 54 + 12 files changed, 28874 insertions(+), 134 deletions(-) create mode 100644 L1TriggerScouting/Utilities/BuildFile.xml create mode 100644 L1TriggerScouting/Utilities/plugins/BuildFile.xml create mode 100644 L1TriggerScouting/Utilities/plugins/DumpScObjects.cc create mode 100644 L1TriggerScouting/Utilities/plugins/tmp.out create mode 100644 L1TriggerScouting/Utilities/test/dumpScObjects.py diff --git a/DataFormats/L1Scouting/interface/OrbitCollection.h b/DataFormats/L1Scouting/interface/OrbitCollection.h index e35d0f93c9395..0091a2c86624d 100644 --- a/DataFormats/L1Scouting/interface/OrbitCollection.h +++ b/DataFormats/L1Scouting/interface/OrbitCollection.h @@ -4,12 +4,6 @@ #include "DataFormats/Common/interface/traits.h" #include "FWCore/Utilities/interface/GCCPrerequisite.h" -#include "DataFormats/L1Trigger/interface/Muon.h" -#include "DataFormats/L1Trigger/interface/EGamma.h" -#include "DataFormats/L1Trigger/interface/Jet.h" -#include "DataFormats/L1Trigger/interface/Tau.h" -#include "DataFormats/L1Trigger/interface/EtSum.h" - #include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" #include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" @@ -21,50 +15,43 @@ namespace scoutingRun3 { template class OrbitCollection { public: + typedef typename std::vector::const_iterator const_iterator; + + // initialize the offset vector with 0s from 0 to 3565. + // BX range is [1,3564], an extra entry is needed for the offserts of the last BX OrbitCollection(): bxOffsets_(3566, 0), data_(0) {} + OrbitCollection( + std::vector> &orbitBuffer, + unsigned nObjects=0): bxOffsets_(3566, 0), data_(nObjects) { + fillAndClear(orbitBuffer, nObjects); + } - // append one object to vector at bx - // void addBxObject(int bx, T& object) { - // assert(bx<=3564); - // bxData_[bx].push_back(object); - // nObjects_ ++; - // } - - // // append objects to bx from an iterator - // template - // void addBxObjects(int bx, VI objectsBegin, VI objectsEnd){ - // assert(bx<=3564); - // bxData_[bx].insert(bxData_[bx].end(), objectsBegin, objectsEnd); - // nObjects_ += std::distance(objectsBegin, objectsEnd); - // } - - // // flatten bxData_ vector. Must be called at the end of the orbit. - // void flatten(){ - // data_.reserve(nObjects_); - // bxOffsets_[0] = 0; - // int bxIdx = 1; - // for (auto &bxVec: bxData_){ - // data_.insert(data_.end(), - // std::make_move_iterator(bxVec.begin()), - // std::make_move_iterator(bxVec.end()) - // ); - // // increase offset by the currect vec size - // bxOffsets_[bxIdx] = bxOffsets_[bxIdx-1] + bxVec.size(); - // bxIdx++; - // } - - // bxData_.clear(); - // } - - // TEST - void fillAndClear(std::vector> &orbitBuffer, int nObjects=0){ + OrbitCollection(const OrbitCollection& other) = default; + OrbitCollection(OrbitCollection&& other) = default; + OrbitCollection & operator=(const OrbitCollection& other) = default; + OrbitCollection & operator=(OrbitCollection&& other) = default; + + void swap(OrbitCollection& other){ + using std::swap; + swap(bxOffsets_, other.bxOffsets_); + swap(data_, other.data_); + } + + // Fill the orbit collection starting from a vector of vectors, one per BX. + // Objects are moved into a flat data vector and a vector is used to keep track + // of the starting offset of every BX. + // Input vector must be sorted with increasing BX and contain 3565 elements (BX in [1,3564]) + void fillAndClear(std::vector> &orbitBuffer, unsigned nObjects=0){ + if (orbitBuffer.size()!=3565) + throw cms::Exception("OrbitCollection::fillAndClear") + << "Trying to fill the collection by passing an orbit buffer with incorrect size. " + << "Passed " << orbitBuffer.size() << ", expected 3565" << std::endl; data_.reserve(nObjects); bxOffsets_[0] = 0; - int bxIdx = 1; + unsigned bxIdx = 1; for (auto &bxVec: orbitBuffer){ // increase offset by the currect vec size bxOffsets_[bxIdx] = bxOffsets_[bxIdx-1] + bxVec.size(); - // std::cout<<"IDX: " << bxIdx << ", size: "<< bxVec.size() << ", offset: "< bxRange(unsigned bx) const { + if (bx>3564) + throw cms::Exception("OrbitCollection::getBxVectorView") + << "Trying to access and object outside the orbit range. " + << " BX = " << bx << std::endl; + + if (getBxSize(bx)>0){ + return std::make_pair(data_.begin()+bxOffsets_[bx], data_.begin()+bxOffsets_[bx+1]); + } else { + return std::make_pair(end(), end()); + } } // get number of objects stored in a BX - int getBxSize(int bx){ + int getBxSize(unsigned bx) const { if (bx>3564){ edm::LogWarning ("OrbitCollection") << "Called getBxSize() of a bx out of the orbit range." - << " BX = " << bx; + << " BX = " << bx << std::endl; return 0; } if (data_.size()==0) { edm::LogWarning ("OrbitCollection") - << "Called getBxSize() but data_ is empty."; + << "Called getBxSize() but collection is empty." << std::endl; } return bxOffsets_[bx+1] - bxOffsets_[bx]; } // get i-th object from BX - const T& getBxObject(int bx, unsigned i){ - assert(bx<=3564); - assert(i3564) + throw cms::Exception("OrbitCollection::getBxObject") + << "Trying to access and object outside the orbit range. " + << " BX = " << bx << std::endl; + if (i>=getBxSize(bx)) + throw cms::Exception("OrbitCollection::getBxObject") + << "Trying to get element " << i << " but for" + << " BX = " << bx << " there are " << getBxSize(bx) + << " elements." < getFilledBxs() const { + std::vector filledBxVec; + if (data_.size()>0){ + for (unsigned bx=0; bx<3565; bx++) { + if (getBxSize(bx)>0) filledBxVec.push_back(bx); + } + } + return filledBxVec; + } + + int size() const { return data_.size(); } + private: // store data vector and BX offsets as flat vectors. // offset contains one entry per BX, indicating the starting index // of the objects for that BX. - std::vector bxOffsets_; + std::vector bxOffsets_; std::vector data_; - - // Transient container used while filling the orbit collection. - // Needed because data could be added to the collection with unsorted BX. - // This will not be persisted (transient="true") - // mutable std::vector> bxData_; - - // count number of objects inserted into the collection - // int nObjects_; }; - typedef OrbitCollection ScMuonOrbitCollection; - typedef OrbitCollection ScJetOrbitCollection; - typedef OrbitCollection ScEGammaOrbitCollection; - typedef OrbitCollection ScTauOrbitCollection; - typedef OrbitCollection ScEtSumOrbitCollection; + typedef OrbitCollection ScMuonOrbitCollection; + typedef OrbitCollection ScJetOrbitCollection; + typedef OrbitCollection ScEGammaOrbitCollection; + typedef OrbitCollection ScTauOrbitCollection; + typedef OrbitCollection ScEtSumOrbitCollection; } #endif // DataFormats_L1Scouting_OrbitCollection_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/classes.h b/DataFormats/L1Scouting/src/classes.h index acd493be931a9..b699475e41922 100644 --- a/DataFormats/L1Scouting/src/classes.h +++ b/DataFormats/L1Scouting/src/classes.h @@ -6,9 +6,9 @@ #include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" namespace scoutingRun3 { - edm::Wrapper ScMuonOrbitCollectionWrapper; - edm::Wrapper ScJetOrbitCollectionWrapper; - edm::Wrapper ScEGammaOrbitCollectionWrapper; - edm::Wrapper ScTauOrbitCollectionWrapper; - edm::Wrapper ScEtSumOrbitCollectionWrapper; + edm::Wrapper ScMuonOrbitCollectionWrapper; + edm::Wrapper ScJetOrbitCollectionWrapper; + edm::Wrapper ScEGammaOrbitCollectionWrapper; + edm::Wrapper ScTauOrbitCollectionWrapper; + edm::Wrapper ScEtSumOrbitCollectionWrapper; } \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/classes_def.xml b/DataFormats/L1Scouting/src/classes_def.xml index 8865df2d9d85a..9a2875c6f3a3e 100644 --- a/DataFormats/L1Scouting/src/classes_def.xml +++ b/DataFormats/L1Scouting/src/classes_def.xml @@ -1,36 +1,30 @@ - - - + + - + + - + + - - - - - - - - + \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc index ca88a4c4c7437..f06e7d59d600e 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc @@ -42,12 +42,10 @@ void ScCaloRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) std::cout << "No raw data for CALO source\n"; } - unpackOrbit( - // unpackedJets.get(), unpackedTaus.get(), - // unpackedEGammas.get(), unpackedEtSums.get(), - sourceRawData.data(), orbitSize - ); + // unpack current orbit and store data into the orbitBufferr + unpackOrbit(sourceRawData.data(), orbitSize); + // fill orbit collection and clear the Bx buffer vector unpackedJets->fillAndClear(orbitBufferJets_, nJetsOrbit_); unpackedEGammas->fillAndClear(orbitBufferEGammas_, nEGammasOrbit_); unpackedTaus->fillAndClear(orbitBufferTaus_, nTausOrbit_); @@ -61,9 +59,7 @@ void ScCaloRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) } void ScCaloRawToDigi::unpackOrbit( - // scoutingRun3::ScJetOrbitCollection* jets, scoutingRun3::ScTauOrbitCollection* taus, - // scoutingRun3::ScEGammaOrbitCollection* eGammas, scoutingRun3::ScEtSumOrbitCollection* etSums, - const unsigned char* buf, size_t len + const unsigned char* buf, size_t len ){ using namespace scoutingRun3; @@ -89,49 +85,36 @@ void ScCaloRawToDigi::unpackOrbit( // unpack jets from first link if (debug_) std::cout << "--- Jets link 1 ---\n"; - //unpackLinkJets(jets, bl->jet1, bx); unpackLinkJets(bl->jet1, bx); // unpack jets from second link if (debug_) std::cout << "--- Jets link 2 ---\n"; - //unpackLinkJets(jets, bl->jet2, bx); unpackLinkJets(bl->jet2, bx); // unpack eg from first link if (debug_) std::cout << "--- E/g link 1 ---\n"; - // unpackLinkEGammas(eGammas, bl->egamma1, bx); unpackLinkEGammas(bl->egamma1, bx); // unpack eg from second link link if (debug_) std::cout << "--- E/g link 2 ---\n"; - // unpackLinkEGammas(eGammas, bl->egamma2, bx); unpackLinkEGammas(bl->egamma2, bx); // unpack taus from first link if (debug_) std::cout << "--- Taus link 1 ---\n"; - // unpackLinkTaus(taus, bl->tau1, bx); unpackLinkTaus(bl->tau1, bx); // unpack taus from second link if (debug_) std::cout << "--- Taus link 2 ---\n"; - // unpackLinkTaus(taus, bl->tau2, bx); unpackLinkTaus(bl->tau2, bx); // unpack et sums if (debug_) std::cout << "--- Sums ---\n"; - //unpackEtSums(etSums, bl->sum, bx); unpackEtSums(bl->sum, bx); } // end of orbit loop - - // jets->flatten(); - // eGammas->flatten(); - // taus->flatten(); - // etSums->flatten(); } -// void ScCaloRawToDigi::unpackLinkJets(scoutingRun3::ScJetOrbitCollection* jets, uint32_t* dataBlock, int bx){ void ScCaloRawToDigi::unpackLinkJets(uint32_t* dataBlock, int bx){ using namespace scoutingRun3; @@ -146,7 +129,6 @@ void ScCaloRawToDigi::unpackLinkJets(uint32_t* dataBlock, int bx){ if (Eta > 127) Eta = Eta - 256; ScJet jet(ET, Eta, Phi, 0); - //jets->addBxObject(bx, jet); orbitBufferJets_[bx].push_back(jet); nJetsOrbit_ ++; @@ -161,7 +143,6 @@ void ScCaloRawToDigi::unpackLinkJets(uint32_t* dataBlock, int bx){ } // end link jets unpacking loop } -// void ScCaloRawToDigi::unpackLinkEGammas(scoutingRun3::ScEGammaOrbitCollection* eGammas, uint32_t* dataBlock, int bx){ void ScCaloRawToDigi::unpackLinkEGammas(uint32_t* dataBlock, int bx){ using namespace scoutingRun3; @@ -176,7 +157,6 @@ void ScCaloRawToDigi::unpackLinkEGammas(uint32_t* dataBlock, int bx){ if (Eta > 127) Eta = Eta - 256; ScEGamma eGamma(ET, Eta, Phi, Iso); - //eGammas->addBxObject(bx, eGamma); orbitBufferEGammas_[bx].push_back(eGamma); nEGammasOrbit_ ++; @@ -192,7 +172,6 @@ void ScCaloRawToDigi::unpackLinkEGammas(uint32_t* dataBlock, int bx){ } // end link e/gammas unpacking loop } -// void ScCaloRawToDigi::unpackLinkTaus(scoutingRun3::ScTauOrbitCollection* taus, uint32_t* dataBlock, int bx){ void ScCaloRawToDigi::unpackLinkTaus(uint32_t* dataBlock, int bx){ using namespace scoutingRun3; @@ -207,7 +186,6 @@ void ScCaloRawToDigi::unpackLinkTaus(uint32_t* dataBlock, int bx){ if (Eta > 127) Eta = Eta - 256; ScTau tau(ET, Eta, Phi, Iso); - //taus->addBxObject(bx, tau); orbitBufferTaus_[bx].push_back(tau); nTausOrbit_ ++; @@ -223,7 +201,6 @@ void ScCaloRawToDigi::unpackLinkTaus(uint32_t* dataBlock, int bx){ } // end link taus unpacking loop } -// void ScCaloRawToDigi::unpackEtSums(scoutingRun3::ScEtSumOrbitCollection* etSums, uint32_t* dataBlock, int bx){ void ScCaloRawToDigi::unpackEtSums(uint32_t* dataBlock, int bx){ using namespace scoutingRun3; @@ -233,14 +210,12 @@ void ScCaloRawToDigi::unpackEtSums(uint32_t* dataBlock, int bx){ ETEt = ((dataBlock[0] >> demux::shiftsESums::ETEt) & demux::masksESums::ETEt); ScEtSum sumTotEt(ETEt, 0, l1t::EtSum::EtSumType::kTotalEt); - //etSums->addBxObject(bx, sumTotEt); orbitBufferEtSums_[bx].push_back(sumTotEt); // HT HTEt = ((dataBlock[1] >> demux::shiftsESums::HTEt) & demux::masksESums::HTEt); ScEtSum sumTotHt(HTEt, 0, l1t::EtSum::EtSumType::kTotalHt); - //etSums->addBxObject(bx, sumTotHt); orbitBufferEtSums_[bx].push_back(sumTotHt); // ETMiss @@ -248,7 +223,6 @@ void ScCaloRawToDigi::unpackEtSums(uint32_t* dataBlock, int bx){ ETmissPhi = ((dataBlock[2] >> demux::shiftsESums::ETmissPhi) & demux::masksESums::ETmissPhi); ScEtSum sumMissEt(ETmissEt, ETmissPhi, l1t::EtSum::EtSumType::kMissingEt); - //etSums->addBxObject(bx, sumMissEt); orbitBufferEtSums_[bx].push_back(sumMissEt); // HTMiss @@ -256,7 +230,6 @@ void ScCaloRawToDigi::unpackEtSums(uint32_t* dataBlock, int bx){ HTmissPhi = ((dataBlock[3] >> demux::shiftsESums::HTmissPhi) & demux::masksESums::HTmissPhi); ScEtSum sumMissHt(HTmissEt, HTmissPhi, l1t::EtSum::EtSumType::kMissingHt); - //etSums->addBxObject(bx, sumMissHt); orbitBufferEtSums_[bx].push_back(sumMissHt); nEtSumsOrbit_ += 4; diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h index 4cd381375ad45..2a4c9a549d817 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h @@ -31,16 +31,9 @@ class ScCaloRawToDigi : public edm::stream::EDProducer<> { void produce(edm::Event&, const edm::EventSetup&) override; void unpackOrbit( - //scoutingRun3::ScJetOrbitCollection* jets, scoutingRun3::ScTauOrbitCollection* taus, - //scoutingRun3::ScEGammaOrbitCollection* eGammas, scoutingRun3::ScEtSumOrbitCollection* etSums, const unsigned char* buf, size_t len ); - // void unpackLinkJets(scoutingRun3::ScJetOrbitCollection* jets, uint32_t* dataBlock, int bx); - // void unpackLinkEGammas(scoutingRun3::ScEGammaOrbitCollection* eGammas, uint32_t* dataBlock, int bx); - // void unpackLinkTaus(scoutingRun3::ScTauOrbitCollection* taus, uint32_t* dataBlock, int bx); - // void unpackEtSums(scoutingRun3::ScEtSumOrbitCollection* etSums, uint32_t* dataBlock, int bx); - void unpackLinkJets(uint32_t* dataBlock, int bx); void unpackLinkEGammas(uint32_t* dataBlock, int bx); void unpackLinkTaus(uint32_t* dataBlock, int bx); diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc index c13d1c8c8120c..a520c54da7138 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc @@ -33,25 +33,17 @@ void ScGMTRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) std::cout << "No raw data for GMT FED\n"; } - // unpackOrbit(unpackedMuons.get(), sourceRawData.data(), orbitSize); + // unpack current orbit and store data into the orbitBufferr unpackOrbit(sourceRawData.data(), orbitSize); - // fill orbit collection with move: - // move every bx vector into the orbit collection + // fill orbit collection and clear the Bx buffer vector unpackedMuons->fillAndClear(orbitBuffer_, nMuonsOrbit_); - // int idx = 0; - // for (auto &bxVec: orbitBuffer_){ - // std::cout << "Bx = " << idx << ", size = "<< bxVec.size() <addBxObject(bx, muon); orbitBuffer_[bx].push_back(muon); if (debug_){ diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h index af4f528db700f..58bf3a5c7f63a 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h @@ -10,7 +10,6 @@ #include "DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h" #include "DataFormats/L1Scouting/interface/OrbitCollection.h" -#include "DataFormats/L1Trigger/interface/Muon.h" #include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" #include "EventFilter/L1ScoutingRawToDigi/interface/shifts.h" @@ -33,12 +32,11 @@ class ScGMTRawToDigi : public edm::stream::EDProducer<> { void produce(edm::Event&, const edm::EventSetup&) override; void unpackOrbit( - //scoutingRun3::ScMuonOrbitCollection* muons, const unsigned char* buf, size_t len ); - // vector holding data for every bunch crossing before - // filling the orbit collection + // vector holding data for every bunch crossing + // before filling the orbit collection std::vector> orbitBuffer_; int nMuonsOrbit_; diff --git a/L1TriggerScouting/Utilities/BuildFile.xml b/L1TriggerScouting/Utilities/BuildFile.xml new file mode 100644 index 0000000000000..3cf482ccd33ff --- /dev/null +++ b/L1TriggerScouting/Utilities/BuildFile.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/plugins/BuildFile.xml b/L1TriggerScouting/Utilities/plugins/BuildFile.xml new file mode 100644 index 0000000000000..c3a3a1c716568 --- /dev/null +++ b/L1TriggerScouting/Utilities/plugins/BuildFile.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc new file mode 100644 index 0000000000000..650c5dd00b8e7 --- /dev/null +++ b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc @@ -0,0 +1,281 @@ +#include "FWCore/Framework/interface/MakerMacros.h" + +#include +#include +#include +#include +#include + +#include "FWCore/Framework/interface/stream/EDAnalyzer.h" + +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/Utilities/interface/EDGetToken.h" +#include "FWCore/Utilities/interface/InputTag.h" +#include "FWCore/Framework/interface/EventSetup.h" +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/MessageLogger/interface/MessageDrop.h" + +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" +#include "DataFormats/L1Trigger/interface/EtSum.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/conversion.h" + +using namespace scoutingRun3; + +// ----------------------------- CLASS DECLARATION ---------------------------- +class DumpScObjects : public edm::stream::EDAnalyzer<> { + + public: + // constructor and destructor + explicit DumpScObjects(const edm::ParameterSet&); + ~DumpScObjects() override{}; + + // method for analyzing the events + void analyze(const edm::Event&, const edm::EventSetup&) override; + + private: + + void printMuon(const ScMuon* muon); + template + void printCaloObject(const T* obj); + void printCaloSum(const ScEtSum* sum); + + void printBx(unsigned bx); + + // the tokens to access the data + edm::EDGetTokenT gmtMuonsToken_; + edm::EDGetTokenT caloJetsToken_; + edm::EDGetTokenT caloEGammasToken_; + edm::EDGetTokenT caloTausToken_; + edm::EDGetTokenT caloEtSumsToken_; + + edm::Handle muonHandle_; + edm::Handle jetHandle_; + edm::Handle eGammaHandle_; + edm::Handle tauHandle_; + edm::Handle etSumHandle_; + + // the min and max BX to be analyzed + unsigned minBx_; + unsigned maxBx_; + + // select collection to be printed + bool checkMuons_; + bool checkJets_; + bool checkEGammas_; + bool checkTaus_; + bool checkEtSums_; + + // dump a specific (ORBIT, BX RANGE) + bool searchEvent_; + unsigned orbitNum_; + unsigned searchStartBx_; + unsigned searchStopBx_; + + // utils + bool skipEmptyBx_; +}; +// ----------------------------------------------------------------------------- + + +// -------------------------------- constructor ------------------------------- + +DumpScObjects::DumpScObjects(const edm::ParameterSet& iConfig): + minBx_(iConfig.getUntrackedParameter("minBx", 0)), + maxBx_(iConfig.getUntrackedParameter("maxBx", 3564)), + + checkMuons_(iConfig.getUntrackedParameter("checkMuons", true)), + checkJets_(iConfig.getUntrackedParameter("checkJets", true)), + checkEGammas_(iConfig.getUntrackedParameter("checkEGammas", true)), + checkTaus_(iConfig.getUntrackedParameter("checkTaus", true)), + checkEtSums_(iConfig.getUntrackedParameter("checkEtSums", true)), + + searchEvent_(iConfig.getUntrackedParameter("searchEvent", false)), + orbitNum_(iConfig.getUntrackedParameter("orbitNumber", 0)), + searchStartBx_(iConfig.getUntrackedParameter("searchStartBx", 0)), + searchStopBx_(iConfig.getUntrackedParameter("searchStopBx", 0)), + + skipEmptyBx_(iConfig.getUntrackedParameter("skipEmptyBx", true)) +{ + + if (checkMuons_) gmtMuonsToken_ = consumes(iConfig.getParameter("gmtMuonsTag")); + if (checkJets_) caloJetsToken_ = consumes(iConfig.getParameter("caloJetsTag")); + if (checkEGammas_) caloEGammasToken_ = consumes(iConfig.getParameter("caloEGammasTag")); + if (checkTaus_) caloTausToken_ = consumes(iConfig.getParameter("caloTausTag")); + if (checkEtSums_) caloEtSumsToken_ = consumes(iConfig.getParameter("caloEtSumsTag")); + +} +// ----------------------------------------------------------------------------- + +// ----------------------- method called for each orbit ----------------------- +void DumpScObjects::analyze(const edm::Event& iEvent, const edm::EventSetup& evSetup) { + + if (checkMuons_) iEvent.getByToken(gmtMuonsToken_, muonHandle_); + if (checkJets_) iEvent.getByToken(caloJetsToken_, jetHandle_); + if (checkEGammas_) iEvent.getByToken(caloEGammasToken_, eGammaHandle_); + if (checkTaus_) iEvent.getByToken(caloTausToken_, tauHandle_); + if (checkEtSums_) iEvent.getByToken(caloEtSumsToken_, etSumHandle_); + + // get the orbit number + unsigned currOrbit = iEvent.id().event(); + + // if we are looking for a specific orbit + if (searchEvent_){ + if (currOrbit != orbitNum_) return; + + // found the orbit + for (unsigned bx=searchStartBx_; bx<=searchStopBx_; bx++){ + printBx(bx); + } + } else { + + if (skipEmptyBx_){ + + // create a set of non empty BXs + std::set uniqueBx; + + if (checkMuons_) { + for (const unsigned& bx: muonHandle_->getFilledBxs()){ + if ((bx>=minBx_) || (bx<=maxBx_)) uniqueBx.insert(bx); + } + } + if (checkJets_) { + for (const unsigned& bx: jetHandle_->getFilledBxs()){ + if ((bx>=minBx_) || (bx<=maxBx_)) uniqueBx.insert(bx); + } + } + if (checkEGammas_) { + for (const unsigned& bx: eGammaHandle_->getFilledBxs()){ + if ((bx>=minBx_) || (bx<=maxBx_)) uniqueBx.insert(bx); + } + } + if (checkTaus_) { + for (const unsigned& bx: tauHandle_->getFilledBxs()){ + if ((bx>=minBx_) || (bx<=maxBx_)) uniqueBx.insert(bx); + } + } + if (checkEtSums_) { + for (const unsigned& bx: etSumHandle_->getFilledBxs()){ + if ((bx>=minBx_) || (bx<=maxBx_)) uniqueBx.insert(bx); + } + } + + // process bx + for (const unsigned& bx: uniqueBx){ + printBx(bx); + } + + } + else { + // dump all objects + for (unsigned bx=minBx_; bx<=maxBx_; bx++){ + printBx(bx); + } + } + } + +} +// ----------------------------------------------------------------------------- + +void DumpScObjects::printMuon(const ScMuon* muon){ + std::cout << " Pt [GeV/Hw]: " << ugmt::fPt(muon->hwPt()) << "/" << muon->hwPt() << "\n"; + std::cout << " Eta [rad/Hw]: " << ugmt::fEta(muon->hwEta()) << "/" << muon->hwEta() << "\n"; + std::cout << " Phi [rad/Hw]: " << ugmt::fPhi(muon->hwPhi()) << "/" << muon->hwPhi() << "\n"; + std::cout << " Charge/valid: " << muon->hwCharge() << "/" << muon->hwChargeValid() << "\n"; + std::cout << " PhiVtx [rad/Hw]: " << ugmt::fPhiAtVtx(muon->hwPhiAtVtx()) << "/" << muon->hwPhiAtVtx() << "\n"; + std::cout << " EtaVtx [rad/Hw]: " << ugmt::fEtaAtVtx(muon->hwEtaAtVtx()) << "/" << muon->hwEtaAtVtx() << "\n"; + std::cout << " Pt uncon[GeV/Hw]: " << ugmt::fPtUnconstrained(muon->hwPtUnconstrained()) << "/" << muon->hwPtUnconstrained() << "\n"; + std::cout << " Dxy: " << muon->hwDXY() << "\n"; + std::cout << " TF index: " << muon->tfMuonIndex() << "\n"; +} + +template +void DumpScObjects::printCaloObject(const T* obj){ + std::cout << " Et [GeV/Hw]: " << demux::fEt(obj->hwEt()) << "/" << obj->hwEt() << "\n"; + std::cout << " Eta [rad/Hw]: " << demux::fEta(obj->hwEta()) << "/" << obj->hwEta() << "\n"; + std::cout << " Phi [rad/Hw]: " << demux::fPhi(obj->hwPhi()) << "/" << obj->hwPhi() << "\n"; + std::cout << " Iso [Hw]: " << obj->hwIso() << "\n"; +} + +void DumpScObjects::printCaloSum(const ScEtSum* sum){ + + if (sum->type() == l1t::EtSum::kTotalEt){ + std::cout << "Type: TotalET\n" + << " Et [GeV/Hw]: " << demux::fEt(sum->hwEt()) << "/" << sum->hwEt() + << std::endl; + } + if (sum->type() == l1t::EtSum::kTotalHt){ + std::cout << "Type: TotalHT\n" + << " Et [GeV/Hw]: " << demux::fEt(sum->hwEt()) << "/" << sum->hwEt() + << std::endl; + } + + if (sum->type() == l1t::EtSum::kMissingEt){ + std::cout << "Type: ETMiss\n" + << " Et [GeV/Hw]: " << demux::fEt(sum->hwEt()) << "/" << sum->hwEt() << "\n" + << " Phi [Rad/Hw]: " << demux::fPhi(sum->hwPhi()) << "/" << sum->hwPhi() + << std::endl; + } + + if (sum->type() == l1t::EtSum::kMissingHt){ + std::cout << "Type: HTMiss\n" + << " Et [GeV/Hw]: " << demux::fEt(sum->hwEt()) << "/" << sum->hwEt() << "\n" + << " Phi [Rad/Hw]: " << demux::fPhi(sum->hwPhi()) << "/" << sum->hwPhi() + << std::endl; + } +} + +void DumpScObjects::printBx(unsigned bx){ + std::cout << "BX = " << bx <<" ****" << std::endl; + + if(checkMuons_ && muonHandle_.isValid()){ + int i=0; + for (auto muon = muonHandle_->begin(bx); muon!=muonHandle_->end(bx); muon++){ + std::cout << "--- Muon " << i << " ---\n"; + printMuon(&*muon); + i++; + } + } + + if(checkJets_ && jetHandle_.isValid()){ + int i=0; + for (auto jet = jetHandle_->begin(bx); jet!=jetHandle_->end(bx); jet++){ + std::cout << "--- Jet " << i << " ---\n"; + printCaloObject(&*jet); + i++; + } + } + + if(checkEGammas_ && jetHandle_.isValid()){ + int i=0; + for (auto egamma = eGammaHandle_->begin(bx); egamma!=eGammaHandle_->end(bx); egamma++){ + std::cout << "--- E/Gamma " << i << " ---\n"; + printCaloObject(&*egamma); + i++; + } + } + + if(checkTaus_ && tauHandle_.isValid()){ + int i=0; + for (auto tau = tauHandle_->begin(bx); tau!=tauHandle_->end(bx); tau++){ + std::cout << "--- Tau " << i << " ---\n"; + printCaloObject(&*tau); + i++; + } + } + + if(checkEtSums_ && etSumHandle_.isValid()){ + int i=0; + for (auto sum = etSumHandle_->begin(bx); sum!=etSumHandle_->end(bx); sum++){ + std::cout << "--- Sum " << i << " ---\n"; + printCaloSum(&*sum); + i++; + } + } + +} + +DEFINE_FWK_MODULE(DumpScObjects); \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/plugins/tmp.out b/L1TriggerScouting/Utilities/plugins/tmp.out new file mode 100644 index 0000000000000..97ae78f8c6d44 --- /dev/null +++ b/L1TriggerScouting/Utilities/plugins/tmp.out @@ -0,0 +1,28419 @@ +BX = 0 **** +BX = 1 **** +BX = 2 **** +BX = 3 **** +BX = 4 **** +BX = 5 **** +BX = 6 **** +BX = 7 **** +BX = 8 **** +BX = 9 **** +BX = 10 **** +BX = 11 **** +BX = 12 **** +BX = 13 **** +BX = 14 **** +BX = 15 **** +BX = 16 **** +BX = 17 **** +BX = 18 **** +BX = 19 **** +BX = 20 **** +BX = 21 **** +BX = 22 **** +BX = 23 **** +BX = 24 **** +BX = 25 **** +BX = 26 **** +BX = 27 **** +BX = 28 **** +BX = 29 **** +BX = 30 **** +BX = 31 **** +BX = 32 **** +BX = 33 **** +BX = 34 **** +BX = 35 **** +BX = 36 **** +BX = 37 **** +BX = 38 **** +BX = 39 **** +BX = 40 **** +BX = 41 **** +BX = 42 **** +BX = 43 **** +BX = 44 **** +BX = 45 **** +BX = 46 **** +BX = 47 **** +BX = 48 **** +BX = 49 **** +BX = 50 **** +BX = 51 **** +BX = 52 **** +BX = 53 **** +BX = 54 **** +BX = 55 **** +BX = 56 **** +BX = 57 **** +BX = 58 **** +BX = 59 **** +BX = 60 **** +BX = 61 **** +BX = 62 **** +BX = 63 **** +BX = 64 **** +BX = 65 **** +BX = 66 **** +BX = 67 **** +BX = 68 **** +BX = 69 **** +BX = 70 **** +BX = 71 **** +BX = 72 **** +BX = 73 **** +BX = 74 **** +BX = 75 **** +BX = 76 **** +BX = 77 **** +BX = 78 **** +BX = 79 **** +BX = 80 **** +BX = 81 **** +BX = 82 **** +BX = 83 **** +BX = 84 **** +BX = 85 **** +BX = 86 **** +BX = 87 **** +BX = 88 **** +BX = 89 **** +BX = 90 **** +BX = 91 **** +BX = 92 **** +BX = 93 **** +BX = 94 **** +BX = 95 **** +BX = 96 **** +BX = 97 **** +BX = 98 **** +BX = 99 **** +BX = 100 **** +BX = 101 **** +BX = 102 **** +BX = 103 **** +BX = 104 **** +BX = 105 **** +BX = 106 **** +BX = 107 **** +BX = 108 **** +BX = 109 **** +BX = 110 **** +BX = 111 **** +BX = 112 **** +BX = 113 **** +BX = 114 **** +BX = 115 **** +BX = 116 **** +BX = 117 **** +BX = 118 **** +BX = 119 **** +BX = 120 **** +BX = 121 **** +BX = 122 **** +BX = 123 **** +BX = 124 **** +BX = 125 **** +BX = 126 **** +BX = 127 **** +BX = 128 **** +BX = 129 **** +BX = 130 **** +BX = 131 **** +BX = 132 **** +BX = 133 **** +BX = 134 **** +BX = 135 **** +BX = 136 **** +BX = 137 **** +BX = 138 **** +BX = 139 **** +BX = 140 **** +BX = 141 **** +BX = 142 **** +BX = 143 **** +BX = 144 **** +BX = 145 **** +BX = 146 **** +BX = 147 **** +BX = 148 **** +BX = 149 **** +BX = 150 **** +BX = 151 **** +BX = 152 **** +BX = 153 **** +--- Jet 0 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 287/575 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 9.5/20 + Phi [Rad/Hw]: 1.26536/29 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 154 **** +BX = 155 **** +BX = 156 **** +BX = 157 **** +BX = 158 **** +BX = 159 **** +BX = 160 **** +BX = 161 **** +BX = 162 **** +BX = 163 **** +--- Jet 0 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: -3.0015/-69 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 20/41 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 3.219/74 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: 2.7405/63 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 7 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 638/1277 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 14/29 + Phi [Rad/Hw]: -2.70526/82 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 164 **** +BX = 165 **** +BX = 166 **** +BX = 167 **** +BX = 168 **** +BX = 169 **** +BX = 170 **** +BX = 171 **** +BX = 172 **** +BX = 173 **** +BX = 174 **** +BX = 175 **** +--- Jet 0 --- + Et [GeV/Hw]: 29.5/60 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.74/-40 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 10 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 1.9575/45 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: 2.3055/53 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.74/-40 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 460.5/922 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 19/39 + Phi [Rad/Hw]: -0.305433/137 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 176 **** +BX = 177 **** +BX = 178 **** +BX = 179 **** +BX = 180 **** +BX = 181 **** +BX = 182 **** +BX = 183 **** +--- Jet 0 --- + Et [GeV/Hw]: 28.5/58 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 27/55 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 298.5/598 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 5/11 + Phi [Rad/Hw]: 1.4399/33 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 184 **** +BX = 185 **** +BX = 186 **** +BX = 187 **** +BX = 188 **** +BX = 189 **** +BX = 190 **** +BX = 191 **** +BX = 192 **** +BX = 193 **** +BX = 194 **** +BX = 195 **** +BX = 196 **** +BX = 197 **** +--- Jet 0 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 39.5/80 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -3.0015/-69 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 7 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 6.5/14 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.566/-36 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Tau 6 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 587.5/1176 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 39.5/80 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 21.5/44 + Phi [Rad/Hw]: 1.5708/36 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 39/79 + Phi [Rad/Hw]: 0.741765/17 +BX = 198 **** +BX = 199 **** +BX = 200 **** +BX = 201 **** +BX = 202 **** +BX = 203 **** +BX = 204 **** +BX = 205 **** +BX = 206 **** +BX = 207 **** +BX = 208 **** +BX = 209 **** +--- Jet 0 --- + Et [GeV/Hw]: 37/75 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 32.5/66 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 2.79253/64 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 475.5/952 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 70/141 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 22/45 + Phi [Rad/Hw]: 1.48353/34 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 67.5/136 + Phi [Rad/Hw]: 2.13803/49 +BX = 210 **** +BX = 211 **** +BX = 212 **** +BX = 213 **** +BX = 214 **** +BX = 215 **** +BX = 216 **** +BX = 217 **** +BX = 218 **** +BX = 219 **** +BX = 220 **** +--- Jet 0 --- + Et [GeV/Hw]: 50.5/102 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -3.567/-82 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 673.5/1348 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 50.5/102 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 20/41 + Phi [Rad/Hw]: 3.09796/71 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 50/101 + Phi [Rad/Hw]: 2.26893/52 +BX = 221 **** +BX = 222 **** +BX = 223 **** +BX = 224 **** +BX = 225 **** +BX = 226 **** +BX = 227 **** +BX = 228 **** +BX = 229 **** +BX = 230 **** +BX = 231 **** +BX = 232 **** +BX = 233 **** +BX = 234 **** +BX = 235 **** +BX = 236 **** +BX = 237 **** +BX = 238 **** +BX = 239 **** +BX = 240 **** +--- Jet 0 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 494/989 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 33.5/68 + Phi [Rad/Hw]: -1.61443/107 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 241 **** +BX = 242 **** +BX = 243 **** +BX = 244 **** +BX = 245 **** +BX = 246 **** +BX = 247 **** +BX = 248 **** +BX = 249 **** +BX = 250 **** +BX = 251 **** +BX = 252 **** +BX = 253 **** +BX = 254 **** +--- Jet 0 --- + Et [GeV/Hw]: 80/161 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 53/107 + Eta [rad/Hw]: 3.567/82 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -2.349/-54 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.87979/78 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 37/75 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.13446/26 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 408/817 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 80/161 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 35.5/72 + Phi [Rad/Hw]: -2.13803/95 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 79.5/160 + Phi [Rad/Hw]: -2.57436/85 +BX = 255 **** +--- Jet 0 --- + Et [GeV/Hw]: 45.5/92 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 37.5/76 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 20/41 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -1.566/-36 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- E/Gamma 10 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.566/36 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- E/Gamma 11 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.566/36 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: -1.566/-36 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 0 +--- Tau 10 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 563.5/1128 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 83.5/168 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 24/49 + Phi [Rad/Hw]: -1.0472/120 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 79.5/160 + Phi [Rad/Hw]: -1.39626/112 +BX = 256 **** +BX = 257 **** +--- Jet 0 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: 3.0015/69 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 277/555 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 4.5/10 + Phi [Rad/Hw]: -0.959931/122 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 258 **** +BX = 259 **** +BX = 260 **** +BX = 261 **** +BX = 262 **** +BX = 263 **** +BX = 264 **** +BX = 265 **** +BX = 266 **** +BX = 267 **** +BX = 268 **** +BX = 269 **** +BX = 270 **** +BX = 271 **** +BX = 272 **** +BX = 273 **** +BX = 274 **** +BX = 275 **** +BX = 276 **** +BX = 277 **** +BX = 278 **** +BX = 279 **** +BX = 280 **** +BX = 281 **** +BX = 282 **** +BX = 283 **** +BX = 284 **** +BX = 285 **** +BX = 286 **** +BX = 287 **** +BX = 288 **** +BX = 289 **** +BX = 290 **** +BX = 291 **** +BX = 292 **** +BX = 293 **** +BX = 294 **** +--- Jet 0 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -0.698132/128 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.479/34 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 240/481 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 20/41 + Phi [Rad/Hw]: -0.698132/128 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 295 **** +BX = 296 **** +BX = 297 **** +BX = 298 **** +BX = 299 **** +BX = 300 **** +BX = 301 **** +BX = 302 **** +BX = 303 **** +BX = 304 **** +BX = 305 **** +BX = 306 **** +BX = 307 **** +--- Jet 0 --- + Et [GeV/Hw]: 31.5/64 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 2.96706/68 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 204.5/410 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 31.5/64 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 18.5/38 + Phi [Rad/Hw]: -1.78896/103 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 31/63 + Phi [Rad/Hw]: -1.39626/112 +BX = 308 **** +BX = 309 **** +BX = 310 **** +BX = 311 **** +BX = 312 **** +BX = 313 **** +BX = 314 **** +BX = 315 **** +BX = 316 **** +BX = 317 **** +BX = 318 **** +BX = 319 **** +BX = 320 **** +BX = 321 **** +BX = 322 **** +BX = 323 **** +BX = 324 **** +BX = 325 **** +BX = 326 **** +BX = 327 **** +BX = 328 **** +BX = 329 **** +BX = 330 **** +BX = 331 **** +BX = 332 **** +BX = 333 **** +BX = 334 **** +BX = 335 **** +BX = 336 **** +BX = 337 **** +BX = 338 **** +BX = 339 **** +BX = 340 **** +BX = 341 **** +BX = 342 **** +BX = 343 **** +BX = 344 **** +--- Jet 0 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.349/54 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -0.0872668/142 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.827/42 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 434/869 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 16/33 + Phi [Rad/Hw]: 1.65806/38 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 345 **** +BX = 346 **** +BX = 347 **** +BX = 348 **** +BX = 349 **** +BX = 350 **** +BX = 351 **** +BX = 352 **** +BX = 353 **** +BX = 354 **** +BX = 355 **** +BX = 356 **** +BX = 357 **** +BX = 358 **** +BX = 359 **** +BX = 360 **** +BX = 361 **** +BX = 362 **** +BX = 363 **** +--- Jet 0 --- + Et [GeV/Hw]: 30.5/62 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.392/-32 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 321/643 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 30.5/62 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 2.5/6 + Phi [Rad/Hw]: 2.79253/64 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 30/61 + Phi [Rad/Hw]: 0.567232/13 +BX = 364 **** +BX = 365 **** +BX = 366 **** +BX = 367 **** +BX = 368 **** +BX = 369 **** +BX = 370 **** +BX = 371 **** +BX = 372 **** +BX = 373 **** +BX = 374 **** +--- Jet 0 --- + Et [GeV/Hw]: 42.5/86 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 6.5/14 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.96706/68 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 447/895 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 42.5/86 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 11.5/24 + Phi [Rad/Hw]: -1.87623/101 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 42/85 + Phi [Rad/Hw]: -2.79253/80 +BX = 375 **** +BX = 376 **** +BX = 377 **** +BX = 378 **** +BX = 379 **** +BX = 380 **** +BX = 381 **** +BX = 382 **** +BX = 383 **** +BX = 384 **** +BX = 385 **** +BX = 386 **** +BX = 387 **** +BX = 388 **** +BX = 389 **** +BX = 390 **** +BX = 391 **** +BX = 392 **** +BX = 393 **** +BX = 394 **** +BX = 395 **** +BX = 396 **** +BX = 397 **** +BX = 398 **** +BX = 399 **** +BX = 400 **** +BX = 401 **** +BX = 402 **** +BX = 403 **** +BX = 404 **** +BX = 405 **** +BX = 406 **** +BX = 407 **** +BX = 408 **** +--- Jet 0 --- + Et [GeV/Hw]: 30/61 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 28.5/58 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -1.8326/102 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: -0.698132/128 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -1.914/-44 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 592.5/1186 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 30/61 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 8/17 + Phi [Rad/Hw]: 2.96706/68 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 29.5/60 + Phi [Rad/Hw]: 1.13446/26 +BX = 409 **** +BX = 410 **** +BX = 411 **** +BX = 412 **** +BX = 413 **** +BX = 414 **** +BX = 415 **** +BX = 416 **** +BX = 417 **** +BX = 418 **** +BX = 419 **** +BX = 420 **** +--- Jet 0 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.479/-34 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 400/801 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 17/35 + Phi [Rad/Hw]: -1.39626/112 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 421 **** +BX = 422 **** +BX = 423 **** +BX = 424 **** +BX = 425 **** +BX = 426 **** +BX = 427 **** +BX = 428 **** +BX = 429 **** +BX = 430 **** +BX = 431 **** +BX = 432 **** +BX = 433 **** +BX = 434 **** +BX = 435 **** +BX = 436 **** +--- Jet 0 --- + Et [GeV/Hw]: 39/79 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 391.5/784 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 39/79 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 35.5/72 + Phi [Rad/Hw]: -2.61799/84 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 38.5/78 + Phi [Rad/Hw]: -1.78896/103 +BX = 437 **** +BX = 438 **** +BX = 439 **** +BX = 440 **** +BX = 441 **** +BX = 442 **** +BX = 443 **** +BX = 444 **** +BX = 445 **** +BX = 446 **** +BX = 447 **** +BX = 448 **** +BX = 449 **** +BX = 450 **** +BX = 451 **** +BX = 452 **** +BX = 453 **** +BX = 454 **** +BX = 455 **** +BX = 456 **** +BX = 457 **** +--- Jet 0 --- + Et [GeV/Hw]: 30/61 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: -2.7405/-63 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 216/433 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 30/61 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 3/7 + Phi [Rad/Hw]: 2.83616/65 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 29.5/60 + Phi [Rad/Hw]: 2.26893/52 +BX = 458 **** +BX = 459 **** +BX = 460 **** +BX = 461 **** +BX = 462 **** +BX = 463 **** +BX = 464 **** +BX = 465 **** +--- Jet 0 --- + Et [GeV/Hw]: 23.5/48 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 20/41 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 321.5/644 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 11/23 + Phi [Rad/Hw]: -0.698132/128 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 466 **** +BX = 467 **** +BX = 468 **** +BX = 469 **** +BX = 470 **** +BX = 471 **** +BX = 472 **** +BX = 473 **** +BX = 474 **** +BX = 475 **** +BX = 476 **** +BX = 477 **** +BX = 478 **** +BX = 479 **** +BX = 480 **** +BX = 481 **** +BX = 482 **** +BX = 483 **** +BX = 484 **** +BX = 485 **** +BX = 486 **** +BX = 487 **** +BX = 488 **** +--- Jet 0 --- + Et [GeV/Hw]: 57.5/116 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 47/95 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 34.5/70 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -1.8326/102 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 0 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 35.5/72 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 360/721 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 105/211 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 42/85 + Phi [Rad/Hw]: 0.523599/12 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 100/201 + Phi [Rad/Hw]: 0.479966/11 +BX = 489 **** +BX = 490 **** +BX = 491 **** +BX = 492 **** +--- Jet 0 --- + Et [GeV/Hw]: 32/65 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -3.567/-82 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: -1.22173/116 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: -1.22173/116 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 219.5/440 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 32/65 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 17/35 + Phi [Rad/Hw]: -1.65806/106 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 31.5/64 + Phi [Rad/Hw]: -1.9635/99 +BX = 493 **** +BX = 494 **** +BX = 495 **** +BX = 496 **** +BX = 497 **** +BX = 498 **** +BX = 499 **** +BX = 500 **** +BX = 501 **** +BX = 502 **** +BX = 503 **** +BX = 504 **** +BX = 505 **** +BX = 506 **** +BX = 507 **** +BX = 508 **** +BX = 509 **** +BX = 510 **** +BX = 511 **** +BX = 512 **** +BX = 513 **** +BX = 514 **** +BX = 515 **** +BX = 516 **** +BX = 517 **** +BX = 518 **** +BX = 519 **** +BX = 520 **** +BX = 521 **** +BX = 522 **** +BX = 523 **** +BX = 524 **** +BX = 525 **** +BX = 526 **** +BX = 527 **** +BX = 528 **** +--- Jet 0 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 284/569 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 28.5/58 + Phi [Rad/Hw]: -1.0472/120 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 529 **** +BX = 530 **** +BX = 531 **** +BX = 532 **** +BX = 533 **** +BX = 534 **** +BX = 535 **** +BX = 536 **** +BX = 537 **** +BX = 538 **** +BX = 539 **** +BX = 540 **** +--- Jet 0 --- + Et [GeV/Hw]: 28/57 + Eta [rad/Hw]: 3.219/74 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 171.5/344 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 25.5/52 + Phi [Rad/Hw]: 1.7017/39 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 541 **** +--- Jet 0 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 217.5/436 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 18.5/38 + Phi [Rad/Hw]: -1.0472/120 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 542 **** +BX = 543 **** +BX = 544 **** +BX = 545 **** +BX = 546 **** +BX = 547 **** +BX = 548 **** +BX = 549 **** +--- Jet 0 --- + Et [GeV/Hw]: 42/85 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.479/34 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 27/55 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: -0.610865/130 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 316/633 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 42/85 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 7.5/16 + Phi [Rad/Hw]: 2.96706/68 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 41.5/84 + Phi [Rad/Hw]: -1.61443/107 +BX = 550 **** +BX = 551 **** +BX = 552 **** +BX = 553 **** +BX = 554 **** +BX = 555 **** +BX = 556 **** +BX = 557 **** +BX = 558 **** +BX = 559 **** +BX = 560 **** +BX = 561 **** +BX = 562 **** +BX = 563 **** +BX = 564 **** +BX = 565 **** +BX = 566 **** +BX = 567 **** +BX = 568 **** +BX = 569 **** +BX = 570 **** +BX = 571 **** +BX = 572 **** +BX = 573 **** +BX = 574 **** +BX = 575 **** +BX = 576 **** +BX = 577 **** +BX = 578 **** +BX = 579 **** +BX = 580 **** +BX = 581 **** +BX = 582 **** +BX = 583 **** +BX = 584 **** +BX = 585 **** +BX = 586 **** +BX = 587 **** +BX = 588 **** +BX = 589 **** +BX = 590 **** +BX = 591 **** +BX = 592 **** +BX = 593 **** +BX = 594 **** +BX = 595 **** +BX = 596 **** +BX = 597 **** +BX = 598 **** +--- Jet 0 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 0 +--- E/Gamma 10 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 3 +--- E/Gamma 11 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.44346/56 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.392/-32 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 637.5/1276 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 23/47 + Phi [Rad/Hw]: 1.39626/32 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 599 **** +BX = 600 **** +BX = 601 **** +BX = 602 **** +BX = 603 **** +BX = 604 **** +BX = 605 **** +BX = 606 **** +BX = 607 **** +BX = 608 **** +BX = 609 **** +BX = 610 **** +BX = 611 **** +BX = 612 **** +BX = 613 **** +BX = 614 **** +BX = 615 **** +BX = 616 **** +BX = 617 **** +--- Jet 0 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 21.5/44 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 10/21 + Phi [Rad/Hw]: -0.654498/129 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 618 **** +BX = 619 **** +BX = 620 **** +BX = 621 **** +BX = 622 **** +BX = 623 **** +BX = 624 **** +BX = 625 **** +BX = 626 **** +BX = 627 **** +BX = 628 **** +BX = 629 **** +BX = 630 **** +BX = 631 **** +BX = 632 **** +BX = 633 **** +BX = 634 **** +--- Jet 0 --- + Et [GeV/Hw]: 38/77 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 2.96706/68 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: -1.48353/110 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 360.5/722 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 38/77 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 4.5/10 + Phi [Rad/Hw]: 1.26536/29 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 37.5/76 + Phi [Rad/Hw]: 2.13803/49 +BX = 635 **** +BX = 636 **** +BX = 637 **** +BX = 638 **** +BX = 639 **** +BX = 640 **** +BX = 641 **** +BX = 642 **** +BX = 643 **** +BX = 644 **** +BX = 645 **** +BX = 646 **** +BX = 647 **** +BX = 648 **** +BX = 649 **** +BX = 650 **** +BX = 651 **** +BX = 652 **** +BX = 653 **** +BX = 654 **** +BX = 655 **** +BX = 656 **** +BX = 657 **** +BX = 658 **** +BX = 659 **** +--- Jet 0 --- + Et [GeV/Hw]: 34.5/70 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 28/57 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: -3.0015/-69 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: 2.79253/64 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.09439/96 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: 1.13446/26 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 565.5/1132 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 34.5/70 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 26.5/54 + Phi [Rad/Hw]: 0.349066/8 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 34/69 + Phi [Rad/Hw]: -2.13803/95 +BX = 660 **** +BX = 661 **** +BX = 662 **** +BX = 663 **** +BX = 664 **** +BX = 665 **** +BX = 666 **** +BX = 667 **** +BX = 668 **** +BX = 669 **** +BX = 670 **** +BX = 671 **** +BX = 672 **** +BX = 673 **** +BX = 674 **** +BX = 675 **** +BX = 676 **** +BX = 677 **** +BX = 678 **** +BX = 679 **** +BX = 680 **** +BX = 681 **** +BX = 682 **** +BX = 683 **** +BX = 684 **** +BX = 685 **** +BX = 686 **** +--- Jet 0 --- + Et [GeV/Hw]: 40/81 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 39.5/80 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 20/41 + Eta [rad/Hw]: -1.392/-32 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: -1.392/-32 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 312/625 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 80/161 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 23/47 + Phi [Rad/Hw]: -2.48709/87 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 23.5/48 + Phi [Rad/Hw]: 2.96706/68 +BX = 687 **** +BX = 688 **** +BX = 689 **** +--- Jet 0 --- + Et [GeV/Hw]: 31/63 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 27/55 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.959931/22 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.959931/22 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 0.523599/12 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 395.5/792 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 31/63 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 25.5/52 + Phi [Rad/Hw]: -2.74889/81 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 30.5/62 + Phi [Rad/Hw]: -2.39983/89 +BX = 690 **** +BX = 691 **** +BX = 692 **** +BX = 693 **** +BX = 694 **** +--- Jet 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 57.5/116 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 32/65 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 0 +--- Tau 4 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 339/679 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 57.5/116 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 5.5/12 + Phi [Rad/Hw]: -1.52716/109 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 57/115 + Phi [Rad/Hw]: 0.0436332/1 +BX = 695 **** +BX = 696 **** +BX = 697 **** +BX = 698 **** +BX = 699 **** +BX = 700 **** +BX = 701 **** +BX = 702 **** +BX = 703 **** +BX = 704 **** +BX = 705 **** +BX = 706 **** +--- Jet 0 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 83/167 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 17.5/36 + Phi [Rad/Hw]: 0.218166/5 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 707 **** +--- Jet 0 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 32/65 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 12/25 + Phi [Rad/Hw]: 2.26893/52 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 708 **** +BX = 709 **** +BX = 710 **** +BX = 711 **** +BX = 712 **** +BX = 713 **** +BX = 714 **** +BX = 715 **** +BX = 716 **** +BX = 717 **** +BX = 718 **** +BX = 719 **** +BX = 720 **** +BX = 721 **** +BX = 722 **** +BX = 723 **** +BX = 724 **** +BX = 725 **** +BX = 726 **** +BX = 727 **** +BX = 728 **** +BX = 729 **** +BX = 730 **** +BX = 731 **** +BX = 732 **** +BX = 733 **** +BX = 734 **** +BX = 735 **** +BX = 736 **** +BX = 737 **** +BX = 738 **** +BX = 739 **** +BX = 740 **** +BX = 741 **** +BX = 742 **** +BX = 743 **** +BX = 744 **** +BX = 745 **** +BX = 746 **** +BX = 747 **** +BX = 748 **** +BX = 749 **** +BX = 750 **** +BX = 751 **** +BX = 752 **** +BX = 753 **** +BX = 754 **** +BX = 755 **** +BX = 756 **** +BX = 757 **** +BX = 758 **** +BX = 759 **** +BX = 760 **** +--- Jet 0 --- + Et [GeV/Hw]: 33.5/68 + Eta [rad/Hw]: -3.393/-78 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.48353/110 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 2.349/54 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- E/Gamma 10 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 3 +--- E/Gamma 11 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.48353/110 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.479/34 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 469.5/940 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 12.5/26 + Phi [Rad/Hw]: -0.610865/130 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 761 **** +BX = 762 **** +--- Jet 0 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -0.610865/130 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 295/591 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 17/35 + Phi [Rad/Hw]: 2.53073/58 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 763 **** +--- Jet 0 --- + Et [GeV/Hw]: 40.5/82 + Eta [rad/Hw]: 3.393/78 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 37.5/76 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 29.5/60 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -1.22173/116 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 2.1315/49 + Phi [rad/Hw]: -1.8326/102 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 331.5/664 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 37.5/76 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 21/43 + Phi [Rad/Hw]: -2.57436/85 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 37/75 + Phi [Rad/Hw]: 2.13803/49 +BX = 764 **** +BX = 765 **** +BX = 766 **** +BX = 767 **** +BX = 768 **** +BX = 769 **** +BX = 770 **** +--- Jet 0 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 162/325 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 16.5/34 + Phi [Rad/Hw]: 0.261799/6 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 771 **** +BX = 772 **** +BX = 773 **** +BX = 774 **** +BX = 775 **** +BX = 776 **** +BX = 777 **** +BX = 778 **** +BX = 779 **** +BX = 780 **** +BX = 781 **** +BX = 782 **** +BX = 783 **** +BX = 784 **** +BX = 785 **** +--- Jet 0 --- + Et [GeV/Hw]: 28.5/58 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.914/-44 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.914/-44 + Phi [rad/Hw]: -1.5708/108 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 341/683 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 15/31 + Phi [Rad/Hw]: -1.13446/118 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 786 **** +BX = 787 **** +BX = 788 **** +BX = 789 **** +--- Jet 0 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 1.13446/26 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.479/-34 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 0.523599/12 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 256/513 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 39.5/80 + Phi [Rad/Hw]: -1.22173/116 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 790 **** +BX = 791 **** +BX = 792 **** +BX = 793 **** +BX = 794 **** +BX = 795 **** +BX = 796 **** +BX = 797 **** +BX = 798 **** +BX = 799 **** +BX = 800 **** +BX = 801 **** +BX = 802 **** +BX = 803 **** +BX = 804 **** +BX = 805 **** +BX = 806 **** +BX = 807 **** +BX = 808 **** +BX = 809 **** +BX = 810 **** +BX = 811 **** +BX = 812 **** +BX = 813 **** +BX = 814 **** +BX = 815 **** +BX = 816 **** +BX = 817 **** +BX = 818 **** +BX = 819 **** +BX = 820 **** +BX = 821 **** +BX = 822 **** +BX = 823 **** +BX = 824 **** +BX = 825 **** +BX = 826 **** +BX = 827 **** +BX = 828 **** +BX = 829 **** +BX = 830 **** +BX = 831 **** +BX = 832 **** +BX = 833 **** +BX = 834 **** +BX = 835 **** +BX = 836 **** +BX = 837 **** +BX = 838 **** +BX = 839 **** +BX = 840 **** +BX = 841 **** +BX = 842 **** +BX = 843 **** +BX = 844 **** +BX = 845 **** +BX = 846 **** +BX = 847 **** +BX = 848 **** +BX = 849 **** +BX = 850 **** +BX = 851 **** +--- Jet 0 --- + Et [GeV/Hw]: 30.5/62 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 8/17 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 0 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 0 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 0.349066/8 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 513/1027 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 30.5/62 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 21/43 + Phi [Rad/Hw]: -0.785398/126 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 30/61 + Phi [Rad/Hw]: -0.218166/139 +BX = 852 **** +BX = 853 **** +BX = 854 **** +BX = 855 **** +BX = 856 **** +BX = 857 **** +BX = 858 **** +BX = 859 **** +BX = 860 **** +--- Jet 0 --- + Et [GeV/Hw]: 35/71 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 256.5/514 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 35/71 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 15/31 + Phi [Rad/Hw]: 2.39983/55 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 34.5/70 + Phi [Rad/Hw]: 2.74889/63 +BX = 861 **** +BX = 862 **** +BX = 863 **** +--- Jet 0 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 52.5/106 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 50/101 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 30.5/62 + Eta [rad/Hw]: -3.0015/-69 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 27/55 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- Jet 7 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Jet 8 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 0 +--- E/Gamma 10 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- Tau 1 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 0 +--- Tau 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 2.44346/56 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 431/863 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 103/207 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 78.5/158 + Phi [Rad/Hw]: -0.959931/122 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 75.5/152 + Phi [Rad/Hw]: -0.785398/126 +BX = 864 **** +BX = 865 **** +--- Jet 0 --- + Et [GeV/Hw]: 49.5/100 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 39/79 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 32.5/66 + Eta [rad/Hw]: 4.437/102 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 1/3 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 28/57 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -1.566/-36 + Phi [rad/Hw]: -1.8326/102 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 0 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 430/861 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 89/179 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 26/53 + Phi [Rad/Hw]: 2.48709/57 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 38/77 + Phi [Rad/Hw]: 2.35619/54 +BX = 866 **** +BX = 867 **** +BX = 868 **** +BX = 869 **** +BX = 870 **** +BX = 871 **** +BX = 872 **** +BX = 873 **** +BX = 874 **** +BX = 875 **** +BX = 876 **** +BX = 877 **** +BX = 878 **** +BX = 879 **** +BX = 880 **** +BX = 881 **** +BX = 882 **** +BX = 883 **** +BX = 884 **** +BX = 885 **** +BX = 886 **** +BX = 887 **** +BX = 888 **** +BX = 889 **** +BX = 890 **** +--- Jet 0 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: 0.959931/22 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 387.5/776 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 30.5/62 + Phi [Rad/Hw]: -0.741765/127 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 891 **** +BX = 892 **** +BX = 893 **** +BX = 894 **** +BX = 895 **** +BX = 896 **** +BX = 897 **** +BX = 898 **** +BX = 899 **** +BX = 900 **** +BX = 901 **** +BX = 902 **** +BX = 903 **** +BX = 904 **** +BX = 905 **** +BX = 906 **** +BX = 907 **** +BX = 908 **** +BX = 909 **** +BX = 910 **** +BX = 911 **** +BX = 912 **** +BX = 913 **** +BX = 914 **** +BX = 915 **** +BX = 916 **** +BX = 917 **** +BX = 918 **** +BX = 919 **** +BX = 920 **** +BX = 921 **** +BX = 922 **** +--- Jet 0 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.9575/45 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.9575/45 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -1.8326/102 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -2.87979/78 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 366/733 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 18/37 + Phi [Rad/Hw]: -0.785398/126 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 923 **** +BX = 924 **** +BX = 925 **** +BX = 926 **** +BX = 927 **** +BX = 928 **** +BX = 929 **** +BX = 930 **** +BX = 931 **** +BX = 932 **** +BX = 933 **** +--- Jet 0 --- + Et [GeV/Hw]: 20/41 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 1.13446/26 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -0.0872668/142 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 1.13446/26 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -1.48353/110 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 283/567 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 17.5/36 + Phi [Rad/Hw]: 3.01069/69 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 934 **** +--- Jet 0 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.1315/49 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 368.5/738 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 11.5/24 + Phi [Rad/Hw]: 1.39626/32 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 935 **** +BX = 936 **** +BX = 937 **** +BX = 938 **** +BX = 939 **** +--- Jet 0 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 8/17 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 374.5/750 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 42/85 + Phi [Rad/Hw]: 0.261799/6 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 940 **** +BX = 941 **** +BX = 942 **** +BX = 943 **** +BX = 944 **** +BX = 945 **** +BX = 946 **** +BX = 947 **** +BX = 948 **** +BX = 949 **** +BX = 950 **** +BX = 951 **** +BX = 952 **** +BX = 953 **** +BX = 954 **** +BX = 955 **** +BX = 956 **** +BX = 957 **** +BX = 958 **** +BX = 959 **** +BX = 960 **** +BX = 961 **** +BX = 962 **** +BX = 963 **** +BX = 964 **** +BX = 965 **** +BX = 966 **** +BX = 967 **** +BX = 968 **** +BX = 969 **** +BX = 970 **** +BX = 971 **** +BX = 972 **** +BX = 973 **** +BX = 974 **** +BX = 975 **** +BX = 976 **** +BX = 977 **** +BX = 978 **** +BX = 979 **** +BX = 980 **** +BX = 981 **** +BX = 982 **** +BX = 983 **** +BX = 984 **** +BX = 985 **** +BX = 986 **** +BX = 987 **** +BX = 988 **** +BX = 989 **** +BX = 990 **** +BX = 991 **** +BX = 992 **** +BX = 993 **** +BX = 994 **** +BX = 995 **** +BX = 996 **** +BX = 997 **** +BX = 998 **** +BX = 999 **** +BX = 1000 **** +BX = 1001 **** +BX = 1002 **** +--- Jet 0 --- + Et [GeV/Hw]: 30.5/62 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -1.914/-44 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 545/1091 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 30.5/62 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 33/67 + Phi [Rad/Hw]: 1.74533/40 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 30/61 + Phi [Rad/Hw]: 1.48353/34 +BX = 1003 **** +BX = 1004 **** +BX = 1005 **** +BX = 1006 **** +BX = 1007 **** +BX = 1008 **** +BX = 1009 **** +BX = 1010 **** +BX = 1011 **** +BX = 1012 **** +BX = 1013 **** +BX = 1014 **** +BX = 1015 **** +BX = 1016 **** +BX = 1017 **** +BX = 1018 **** +BX = 1019 **** +--- Jet 0 --- + Et [GeV/Hw]: 37/75 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 35.5/72 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 21/43 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- Tau 6 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 311.5/624 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 73/147 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 24.5/50 + Phi [Rad/Hw]: -0.392699/135 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 38.5/78 + Phi [Rad/Hw]: -0.479966/133 +BX = 1020 **** +BX = 1021 **** +BX = 1022 **** +BX = 1023 **** +BX = 1024 **** +BX = 1025 **** +BX = 1026 **** +BX = 1027 **** +BX = 1028 **** +BX = 1029 **** +BX = 1030 **** +BX = 1031 **** +--- Jet 0 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 323/647 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 4.5/10 + Phi [Rad/Hw]: -1.5708/108 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1032 **** +BX = 1033 **** +BX = 1034 **** +BX = 1035 **** +BX = 1036 **** +BX = 1037 **** +BX = 1038 **** +BX = 1039 **** +BX = 1040 **** +BX = 1041 **** +BX = 1042 **** +BX = 1043 **** +BX = 1044 **** +BX = 1045 **** +BX = 1046 **** +BX = 1047 **** +BX = 1048 **** +--- Jet 0 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: -1.827/-42 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -1.827/-42 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 319.5/640 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 22/45 + Phi [Rad/Hw]: -2.57436/85 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1049 **** +--- Jet 0 --- + Et [GeV/Hw]: 30.5/62 + Eta [rad/Hw]: 3.219/74 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- E/Gamma 10 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 0 +--- E/Gamma 11 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 0 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 390/781 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 36.5/74 + Phi [Rad/Hw]: -0.2618/138 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1050 **** +BX = 1051 **** +BX = 1052 **** +BX = 1053 **** +--- Jet 0 --- + Et [GeV/Hw]: 53/107 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 45.5/92 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 42.5/86 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 1/3 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 0 +--- Tau 8 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: -1.5708/108 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 355/711 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 142/285 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 14/29 + Phi [Rad/Hw]: -0.741765/127 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 55.5/112 + Phi [Rad/Hw]: 1.4399/33 +BX = 1054 **** +BX = 1055 **** +BX = 1056 **** +BX = 1057 **** +BX = 1058 **** +BX = 1059 **** +BX = 1060 **** +BX = 1061 **** +BX = 1062 **** +BX = 1063 **** +BX = 1064 **** +BX = 1065 **** +BX = 1066 **** +BX = 1067 **** +BX = 1068 **** +BX = 1069 **** +--- Jet 0 --- + Et [GeV/Hw]: 37.5/76 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 0.174533/4 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -0.610865/130 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 296.5/594 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 37.5/76 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 18.5/38 + Phi [Rad/Hw]: -0.436333/134 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 37/75 + Phi [Rad/Hw]: -0.741765/127 +BX = 1070 **** +--- Jet 0 --- + Et [GeV/Hw]: 27/55 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 185.5/372 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 25/51 + Phi [Rad/Hw]: 0.305433/7 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1071 **** +BX = 1072 **** +BX = 1073 **** +BX = 1074 **** +BX = 1075 **** +BX = 1076 **** +BX = 1077 **** +BX = 1078 **** +BX = 1079 **** +BX = 1080 **** +BX = 1081 **** +BX = 1082 **** +BX = 1083 **** +--- Jet 0 --- + Et [GeV/Hw]: 40/81 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 32.5/66 + Eta [rad/Hw]: -2.5665/-59 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -2.349/-54 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -1.5708/108 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -1.5708/108 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 234.5/470 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 40/81 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 10.5/22 + Phi [Rad/Hw]: -1.09083/119 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 39.5/80 + Phi [Rad/Hw]: 0.567232/13 +BX = 1084 **** +BX = 1085 **** +BX = 1086 **** +BX = 1087 **** +BX = 1088 **** +--- Jet 0 --- + Et [GeV/Hw]: 31.5/64 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.0872668/142 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.0872668/142 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 301.5/604 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 31.5/64 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 7.5/16 + Phi [Rad/Hw]: -1.1781/117 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 31/63 + Phi [Rad/Hw]: 3.05433/70 +BX = 1089 **** +BX = 1090 **** +BX = 1091 **** +--- Jet 0 --- + Et [GeV/Hw]: 38/77 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: -1.48353/110 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -1.8326/102 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 433.5/868 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 38/77 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 31/63 + Phi [Rad/Hw]: 1.4399/33 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 37.5/76 + Phi [Rad/Hw]: 1.48353/34 +BX = 1092 **** +BX = 1093 **** +--- Jet 0 --- + Et [GeV/Hw]: 35.5/72 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 295/591 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 35.5/72 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 13.5/28 + Phi [Rad/Hw]: 1.35263/31 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 35/71 + Phi [Rad/Hw]: 0.567232/13 +BX = 1094 **** +BX = 1095 **** +BX = 1096 **** +BX = 1097 **** +BX = 1098 **** +BX = 1099 **** +BX = 1100 **** +BX = 1101 **** +--- Jet 0 --- + Et [GeV/Hw]: 29/59 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -0.698132/128 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: -2.09439/96 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -0.698132/128 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 247/495 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 16/33 + Phi [Rad/Hw]: -0.0872668/142 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1102 **** +BX = 1103 **** +BX = 1104 **** +BX = 1105 **** +BX = 1106 **** +BX = 1107 **** +BX = 1108 **** +BX = 1109 **** +BX = 1110 **** +BX = 1111 **** +BX = 1112 **** +BX = 1113 **** +BX = 1114 **** +BX = 1115 **** +BX = 1116 **** +BX = 1117 **** +BX = 1118 **** +BX = 1119 **** +BX = 1120 **** +BX = 1121 **** +BX = 1122 **** +BX = 1123 **** +BX = 1124 **** +BX = 1125 **** +BX = 1126 **** +BX = 1127 **** +BX = 1128 **** +BX = 1129 **** +BX = 1130 **** +BX = 1131 **** +BX = 1132 **** +BX = 1133 **** +BX = 1134 **** +BX = 1135 **** +BX = 1136 **** +BX = 1137 **** +BX = 1138 **** +BX = 1139 **** +BX = 1140 **** +BX = 1141 **** +BX = 1142 **** +BX = 1143 **** +BX = 1144 **** +BX = 1145 **** +BX = 1146 **** +BX = 1147 **** +BX = 1148 **** +BX = 1149 **** +BX = 1150 **** +BX = 1151 **** +--- Jet 0 --- + Et [GeV/Hw]: 34.5/70 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: 3.219/74 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 6.5/14 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 2.349/54 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 2 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 2.349/54 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- E/Gamma 10 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 3 +--- E/Gamma 11 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 573/1147 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 34.5/70 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 14/29 + Phi [Rad/Hw]: -0.567232/131 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 34/69 + Phi [Rad/Hw]: -1.39626/112 +BX = 1152 **** +BX = 1153 **** +BX = 1154 **** +BX = 1155 **** +BX = 1156 **** +BX = 1157 **** +BX = 1158 **** +BX = 1159 **** +BX = 1160 **** +BX = 1161 **** +BX = 1162 **** +BX = 1163 **** +BX = 1164 **** +BX = 1165 **** +BX = 1166 **** +BX = 1167 **** +BX = 1168 **** +BX = 1169 **** +BX = 1170 **** +BX = 1171 **** +BX = 1172 **** +BX = 1173 **** +BX = 1174 **** +BX = 1175 **** +--- Jet 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 37/75 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -3.915/-90 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -3.0015/-69 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 0.349066/8 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 2.79253/64 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 556.5/1114 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 37/75 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 35.5/72 + Phi [Rad/Hw]: -2.44346/88 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 36.5/74 + Phi [Rad/Hw]: -2.57436/85 +BX = 1176 **** +BX = 1177 **** +BX = 1178 **** +BX = 1179 **** +--- Jet 0 --- + Et [GeV/Hw]: 50/101 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 32.5/66 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 29.5/60 + Eta [rad/Hw]: -4.089/-94 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: 4.611/106 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.96706/68 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 0 +--- Tau 8 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 553/1107 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 83/167 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 43.5/88 + Phi [Rad/Hw]: -0.174533/140 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 81/163 + Phi [Rad/Hw]: -0.829032/125 +BX = 1180 **** +BX = 1181 **** +BX = 1182 **** +BX = 1183 **** +BX = 1184 **** +BX = 1185 **** +BX = 1186 **** +BX = 1187 **** +--- Jet 0 --- + Et [GeV/Hw]: 30/61 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 9/19 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.914/44 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -1.5708/108 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 727/1455 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 30/61 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 28/57 + Phi [Rad/Hw]: 1.26536/29 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 29.5/60 + Phi [Rad/Hw]: -1.35263/113 +BX = 1188 **** +BX = 1189 **** +--- Jet 0 --- + Et [GeV/Hw]: 30/61 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 1.914/44 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 1.914/44 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 425/851 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 30/61 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 6/13 + Phi [Rad/Hw]: 2.83616/65 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 29.5/60 + Phi [Rad/Hw]: 0.174533/4 +BX = 1190 **** +BX = 1191 **** +BX = 1192 **** +BX = 1193 **** +BX = 1194 **** +BX = 1195 **** +BX = 1196 **** +BX = 1197 **** +BX = 1198 **** +--- Jet 0 --- + Et [GeV/Hw]: 61.5/124 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 33.5/68 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 28.5/58 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 34.5/70 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 320/641 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 95.5/192 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 4/9 + Phi [Rad/Hw]: -0.0872668/142 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 27.5/56 + Phi [Rad/Hw]: 1.87623/43 +BX = 1199 **** +BX = 1200 **** +BX = 1201 **** +BX = 1202 **** +BX = 1203 **** +BX = 1204 **** +BX = 1205 **** +BX = 1206 **** +BX = 1207 **** +BX = 1208 **** +BX = 1209 **** +BX = 1210 **** +BX = 1211 **** +BX = 1212 **** +BX = 1213 **** +BX = 1214 **** +BX = 1215 **** +BX = 1216 **** +BX = 1217 **** +BX = 1218 **** +BX = 1219 **** +BX = 1220 **** +BX = 1221 **** +BX = 1222 **** +BX = 1223 **** +BX = 1224 **** +BX = 1225 **** +BX = 1226 **** +BX = 1227 **** +BX = 1228 **** +BX = 1229 **** +BX = 1230 **** +BX = 1231 **** +BX = 1232 **** +BX = 1233 **** +BX = 1234 **** +BX = 1235 **** +BX = 1236 **** +BX = 1237 **** +BX = 1238 **** +BX = 1239 **** +BX = 1240 **** +BX = 1241 **** +BX = 1242 **** +BX = 1243 **** +BX = 1244 **** +BX = 1245 **** +BX = 1246 **** +BX = 1247 **** +BX = 1248 **** +BX = 1249 **** +BX = 1250 **** +BX = 1251 **** +BX = 1252 **** +BX = 1253 **** +BX = 1254 **** +BX = 1255 **** +BX = 1256 **** +BX = 1257 **** +BX = 1258 **** +BX = 1259 **** +BX = 1260 **** +BX = 1261 **** +BX = 1262 **** +BX = 1263 **** +BX = 1264 **** +BX = 1265 **** +BX = 1266 **** +BX = 1267 **** +BX = 1268 **** +BX = 1269 **** +BX = 1270 **** +BX = 1271 **** +BX = 1272 **** +BX = 1273 **** +BX = 1274 **** +BX = 1275 **** +BX = 1276 **** +BX = 1277 **** +BX = 1278 **** +BX = 1279 **** +BX = 1280 **** +BX = 1281 **** +BX = 1282 **** +BX = 1283 **** +BX = 1284 **** +BX = 1285 **** +BX = 1286 **** +BX = 1287 **** +--- Jet 0 --- + Et [GeV/Hw]: 30.5/62 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 270.5/542 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 30.5/62 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 31/63 + Phi [Rad/Hw]: 2.48709/57 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 30/61 + Phi [Rad/Hw]: 2.35619/54 +BX = 1288 **** +--- Jet 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 93.5/188 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 23.5/48 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- E/Gamma 10 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 45.5/92 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 589/1179 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 93.5/188 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 68/137 + Phi [Rad/Hw]: 2.39983/55 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 93/187 + Phi [Rad/Hw]: 1.9635/45 +BX = 1289 **** +--- Jet 0 --- + Et [GeV/Hw]: 32.5/66 + Eta [rad/Hw]: -3.0015/-69 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 29.5/60 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 371/743 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 26.5/54 + Phi [Rad/Hw]: 0.567232/13 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1290 **** +BX = 1291 **** +BX = 1292 **** +BX = 1293 **** +--- Jet 0 --- + Et [GeV/Hw]: 40/81 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 243/487 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 40/81 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 31/63 + Phi [Rad/Hw]: -1.309/114 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 39.5/80 + Phi [Rad/Hw]: -1.9635/99 +BX = 1294 **** +BX = 1295 **** +BX = 1296 **** +BX = 1297 **** +BX = 1298 **** +BX = 1299 **** +BX = 1300 **** +BX = 1301 **** +BX = 1302 **** +BX = 1303 **** +BX = 1304 **** +BX = 1305 **** +BX = 1306 **** +BX = 1307 **** +BX = 1308 **** +BX = 1309 **** +BX = 1310 **** +BX = 1311 **** +BX = 1312 **** +BX = 1313 **** +BX = 1314 **** +BX = 1315 **** +BX = 1316 **** +BX = 1317 **** +BX = 1318 **** +BX = 1319 **** +BX = 1320 **** +BX = 1321 **** +BX = 1322 **** +BX = 1323 **** +BX = 1324 **** +BX = 1325 **** +BX = 1326 **** +BX = 1327 **** +BX = 1328 **** +BX = 1329 **** +BX = 1330 **** +--- Jet 0 --- + Et [GeV/Hw]: 40.5/82 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 38.5/78 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.566/36 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 1.9575/45 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 1.9575/45 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 1.566/36 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 311.5/624 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 79.5/160 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 16/33 + Phi [Rad/Hw]: 0.698132/16 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 13.5/28 + Phi [Rad/Hw]: 1.61443/37 +BX = 1331 **** +BX = 1332 **** +BX = 1333 **** +BX = 1334 **** +BX = 1335 **** +BX = 1336 **** +BX = 1337 **** +BX = 1338 **** +BX = 1339 **** +BX = 1340 **** +BX = 1341 **** +BX = 1342 **** +BX = 1343 **** +BX = 1344 **** +BX = 1345 **** +BX = 1346 **** +BX = 1347 **** +BX = 1348 **** +BX = 1349 **** +BX = 1350 **** +BX = 1351 **** +BX = 1352 **** +BX = 1353 **** +BX = 1354 **** +BX = 1355 **** +BX = 1356 **** +BX = 1357 **** +BX = 1358 **** +BX = 1359 **** +BX = 1360 **** +BX = 1361 **** +BX = 1362 **** +BX = 1363 **** +BX = 1364 **** +BX = 1365 **** +BX = 1366 **** +BX = 1367 **** +--- Jet 0 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 2.1315/49 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 429.5/860 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 25/51 + Phi [Rad/Hw]: 1.91986/44 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1368 **** +BX = 1369 **** +BX = 1370 **** +BX = 1371 **** +BX = 1372 **** +BX = 1373 **** +BX = 1374 **** +BX = 1375 **** +BX = 1376 **** +BX = 1377 **** +BX = 1378 **** +BX = 1379 **** +BX = 1380 **** +BX = 1381 **** +BX = 1382 **** +BX = 1383 **** +BX = 1384 **** +BX = 1385 **** +BX = 1386 **** +BX = 1387 **** +BX = 1388 **** +BX = 1389 **** +BX = 1390 **** +BX = 1391 **** +BX = 1392 **** +BX = 1393 **** +BX = 1394 **** +BX = 1395 **** +--- Jet 0 --- + Et [GeV/Hw]: 38/77 + Eta [rad/Hw]: -3.393/-78 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -3.0015/-69 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.479/34 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 312.5/626 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 4.5/10 + Phi [Rad/Hw]: 1.91986/44 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1396 **** +BX = 1397 **** +BX = 1398 **** +BX = 1399 **** +BX = 1400 **** +BX = 1401 **** +BX = 1402 **** +BX = 1403 **** +BX = 1404 **** +BX = 1405 **** +BX = 1406 **** +BX = 1407 **** +BX = 1408 **** +BX = 1409 **** +BX = 1410 **** +BX = 1411 **** +BX = 1412 **** +BX = 1413 **** +BX = 1414 **** +BX = 1415 **** +BX = 1416 **** +BX = 1417 **** +BX = 1418 **** +BX = 1419 **** +BX = 1420 **** +BX = 1421 **** +BX = 1422 **** +BX = 1423 **** +BX = 1424 **** +BX = 1425 **** +BX = 1426 **** +BX = 1427 **** +BX = 1428 **** +BX = 1429 **** +--- Jet 0 --- + Et [GeV/Hw]: 28.5/58 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 3.0015/69 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 23.5/48 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 1.5/4 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -2.87979/78 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 321/643 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 13.5/28 + Phi [Rad/Hw]: -1.13446/118 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1430 **** +BX = 1431 **** +BX = 1432 **** +BX = 1433 **** +BX = 1434 **** +BX = 1435 **** +BX = 1436 **** +BX = 1437 **** +BX = 1438 **** +BX = 1439 **** +BX = 1440 **** +BX = 1441 **** +BX = 1442 **** +BX = 1443 **** +BX = 1444 **** +BX = 1445 **** +BX = 1446 **** +BX = 1447 **** +BX = 1448 **** +BX = 1449 **** +BX = 1450 **** +BX = 1451 **** +BX = 1452 **** +BX = 1453 **** +BX = 1454 **** +BX = 1455 **** +BX = 1456 **** +BX = 1457 **** +BX = 1458 **** +BX = 1459 **** +BX = 1460 **** +BX = 1461 **** +BX = 1462 **** +BX = 1463 **** +BX = 1464 **** +BX = 1465 **** +BX = 1466 **** +BX = 1467 **** +BX = 1468 **** +BX = 1469 **** +BX = 1470 **** +BX = 1471 **** +BX = 1472 **** +BX = 1473 **** +BX = 1474 **** +BX = 1475 **** +BX = 1476 **** +BX = 1477 **** +BX = 1478 **** +BX = 1479 **** +BX = 1480 **** +BX = 1481 **** +BX = 1482 **** +BX = 1483 **** +--- Jet 0 --- + Et [GeV/Hw]: 35/71 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 29/59 + Eta [rad/Hw]: -3.219/-74 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 0 +--- Tau 2 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.698132/128 + Iso [Hw]: 0 +--- Tau 8 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 524/1049 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 35/71 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 31.5/64 + Phi [Rad/Hw]: 2.18166/50 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 34.5/70 + Phi [Rad/Hw]: 2.39983/55 +BX = 1484 **** +BX = 1485 **** +BX = 1486 **** +BX = 1487 **** +BX = 1488 **** +BX = 1489 **** +BX = 1490 **** +BX = 1491 **** +BX = 1492 **** +BX = 1493 **** +BX = 1494 **** +--- Jet 0 --- + Et [GeV/Hw]: 30/61 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 3 +--- E/Gamma 10 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 3 +--- E/Gamma 11 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 1.13446/26 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.566/36 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 505/1011 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 30/61 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 36/73 + Phi [Rad/Hw]: 2.05076/47 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 29.5/60 + Phi [Rad/Hw]: 0.741765/17 +BX = 1495 **** +BX = 1496 **** +BX = 1497 **** +BX = 1498 **** +BX = 1499 **** +BX = 1500 **** +BX = 1501 **** +BX = 1502 **** +BX = 1503 **** +--- Jet 0 --- + Et [GeV/Hw]: 27/55 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 430.5/862 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 10/21 + Phi [Rad/Hw]: -2.05076/97 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1504 **** +--- Jet 0 --- + Et [GeV/Hw]: 36.5/74 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 28.5/58 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -1.8326/102 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.0872668/142 + Iso [Hw]: 0 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.44346/56 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 443.5/888 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 36.5/74 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 3/7 + Phi [Rad/Hw]: -2.96706/76 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 36/73 + Phi [Rad/Hw]: 0.349066/8 +BX = 1505 **** +--- Jet 0 --- + Et [GeV/Hw]: 32.5/66 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 31/63 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 29.5/60 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 0.174533/4 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 0 +--- E/Gamma 10 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.74/40 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 0.174533/4 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 714.5/1430 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 64/129 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 34/69 + Phi [Rad/Hw]: 2.05076/47 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 2.5/6 + Phi [Rad/Hw]: -1.91986/100 +BX = 1506 **** +BX = 1507 **** +BX = 1508 **** +BX = 1509 **** +BX = 1510 **** +BX = 1511 **** +BX = 1512 **** +--- Jet 0 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 9/19 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 1.827/42 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 1.827/42 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 453.5/908 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 26/53 + Phi [Rad/Hw]: -2.00713/98 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1513 **** +--- Jet 0 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 52.5/106 + Eta [rad/Hw]: -3.741/-86 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 34/69 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: 3.219/74 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: -3.219/-74 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 23.5/48 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: -1.74533/104 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 0 +--- E/Gamma 10 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 3 +--- E/Gamma 11 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -1.5708/108 + Iso [Hw]: 0 +--- Tau 1 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 0 +--- Tau 2 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- Tau 8 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.5708/108 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 0 +--- Tau 11 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 922.5/1846 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 34/69 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 38/77 + Phi [Rad/Hw]: 3.14159/72 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 33.5/68 + Phi [Rad/Hw]: -2.44346/88 +BX = 1514 **** +BX = 1515 **** +BX = 1516 **** +BX = 1517 **** +BX = 1518 **** +BX = 1519 **** +BX = 1520 **** +BX = 1521 **** +BX = 1522 **** +BX = 1523 **** +BX = 1524 **** +BX = 1525 **** +BX = 1526 **** +BX = 1527 **** +BX = 1528 **** +BX = 1529 **** +BX = 1530 **** +BX = 1531 **** +BX = 1532 **** +BX = 1533 **** +BX = 1534 **** +BX = 1535 **** +BX = 1536 **** +--- Jet 0 --- + Et [GeV/Hw]: 57/115 + Eta [rad/Hw]: 3.567/82 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.9575/-45 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.479/34 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -0.0872668/142 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.9575/-45 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 483.5/968 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 25/51 + Phi [Rad/Hw]: -0.829032/125 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1537 **** +BX = 1538 **** +BX = 1539 **** +BX = 1540 **** +BX = 1541 **** +BX = 1542 **** +BX = 1543 **** +BX = 1544 **** +BX = 1545 **** +BX = 1546 **** +BX = 1547 **** +BX = 1548 **** +BX = 1549 **** +BX = 1550 **** +BX = 1551 **** +BX = 1552 **** +BX = 1553 **** +BX = 1554 **** +BX = 1555 **** +BX = 1556 **** +BX = 1557 **** +BX = 1558 **** +BX = 1559 **** +BX = 1560 **** +BX = 1561 **** +BX = 1562 **** +BX = 1563 **** +BX = 1564 **** +BX = 1565 **** +BX = 1566 **** +BX = 1567 **** +BX = 1568 **** +BX = 1569 **** +BX = 1570 **** +BX = 1571 **** +BX = 1572 **** +BX = 1573 **** +BX = 1574 **** +BX = 1575 **** +BX = 1576 **** +BX = 1577 **** +BX = 1578 **** +BX = 1579 **** +BX = 1580 **** +BX = 1581 **** +BX = 1582 **** +BX = 1583 **** +BX = 1584 **** +BX = 1585 **** +BX = 1586 **** +BX = 1587 **** +BX = 1588 **** +BX = 1589 **** +BX = 1590 **** +BX = 1591 **** +BX = 1592 **** +BX = 1593 **** +BX = 1594 **** +BX = 1595 **** +BX = 1596 **** +BX = 1597 **** +BX = 1598 **** +BX = 1599 **** +BX = 1600 **** +BX = 1601 **** +BX = 1602 **** +BX = 1603 **** +BX = 1604 **** +BX = 1605 **** +BX = 1606 **** +BX = 1607 **** +BX = 1608 **** +BX = 1609 **** +--- Jet 0 --- + Et [GeV/Hw]: 48.5/98 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 33/67 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 6.5/14 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -2.87979/78 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 0 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 2.79253/64 + Iso [Hw]: 0 +--- Tau 8 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 384.5/770 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 82/165 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 41.5/84 + Phi [Rad/Hw]: 0.785398/18 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 58.5/118 + Phi [Rad/Hw]: 0.523599/12 +BX = 1610 **** +BX = 1611 **** +BX = 1612 **** +BX = 1613 **** +BX = 1614 **** +BX = 1615 **** +BX = 1616 **** +BX = 1617 **** +BX = 1618 **** +BX = 1619 **** +--- Jet 0 --- + Et [GeV/Hw]: 31/63 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 28.5/58 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 27/55 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: 3.915/90 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: 0.785398/18 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.479/34 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 406/813 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 31/63 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 28.5/58 + Phi [Rad/Hw]: 0.218166/5 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 30.5/62 + Phi [Rad/Hw]: 1.61443/37 +BX = 1620 **** +BX = 1621 **** +BX = 1622 **** +BX = 1623 **** +BX = 1624 **** +BX = 1625 **** +BX = 1626 **** +BX = 1627 **** +BX = 1628 **** +BX = 1629 **** +BX = 1630 **** +BX = 1631 **** +BX = 1632 **** +BX = 1633 **** +BX = 1634 **** +BX = 1635 **** +BX = 1636 **** +BX = 1637 **** +BX = 1638 **** +BX = 1639 **** +BX = 1640 **** +BX = 1641 **** +BX = 1642 **** +BX = 1643 **** +BX = 1644 **** +BX = 1645 **** +BX = 1646 **** +BX = 1647 **** +BX = 1648 **** +BX = 1649 **** +BX = 1650 **** +--- Jet 0 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.349/54 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -1.74533/104 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 305/611 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 9/19 + Phi [Rad/Hw]: 1.9635/45 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1651 **** +BX = 1652 **** +BX = 1653 **** +BX = 1654 **** +BX = 1655 **** +BX = 1656 **** +BX = 1657 **** +BX = 1658 **** +BX = 1659 **** +BX = 1660 **** +BX = 1661 **** +BX = 1662 **** +BX = 1663 **** +BX = 1664 **** +BX = 1665 **** +BX = 1666 **** +BX = 1667 **** +BX = 1668 **** +BX = 1669 **** +BX = 1670 **** +BX = 1671 **** +BX = 1672 **** +BX = 1673 **** +BX = 1674 **** +BX = 1675 **** +--- Jet 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 84.5/170 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 48/97 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 40.5/82 + Eta [rad/Hw]: -1.827/-42 + Phi [rad/Hw]: -1.48353/110 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.566/-36 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 428/857 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 133/267 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 34.5/70 + Phi [Rad/Hw]: 1.35263/31 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 56.5/114 + Phi [Rad/Hw]: 1.0472/24 +BX = 1676 **** +BX = 1677 **** +BX = 1678 **** +BX = 1679 **** +BX = 1680 **** +--- Jet 0 --- + Et [GeV/Hw]: 33/67 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -0.698132/128 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.9575/-45 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: -2.09439/96 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 264/529 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 33/67 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 9.5/20 + Phi [Rad/Hw]: -0.305433/137 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 32.5/66 + Phi [Rad/Hw]: 0.174533/4 +BX = 1681 **** +BX = 1682 **** +BX = 1683 **** +BX = 1684 **** +BX = 1685 **** +BX = 1686 **** +BX = 1687 **** +BX = 1688 **** +BX = 1689 **** +BX = 1690 **** +BX = 1691 **** +BX = 1692 **** +BX = 1693 **** +BX = 1694 **** +BX = 1695 **** +BX = 1696 **** +BX = 1697 **** +BX = 1698 **** +BX = 1699 **** +BX = 1700 **** +BX = 1701 **** +BX = 1702 **** +BX = 1703 **** +BX = 1704 **** +BX = 1705 **** +BX = 1706 **** +BX = 1707 **** +BX = 1708 **** +BX = 1709 **** +BX = 1710 **** +BX = 1711 **** +BX = 1712 **** +BX = 1713 **** +BX = 1714 **** +BX = 1715 **** +BX = 1716 **** +BX = 1717 **** +BX = 1718 **** +BX = 1719 **** +BX = 1720 **** +BX = 1721 **** +BX = 1722 **** +BX = 1723 **** +--- Jet 0 --- + Et [GeV/Hw]: 28.5/58 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 298.5/598 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 14.5/30 + Phi [Rad/Hw]: -0.0436333/143 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1724 **** +--- Jet 0 --- + Et [GeV/Hw]: 27/55 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 0 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.74533/104 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 2.3055/53 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 399.5/800 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 8.5/18 + Phi [Rad/Hw]: 0.829031/19 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1725 **** +BX = 1726 **** +BX = 1727 **** +BX = 1728 **** +BX = 1729 **** +BX = 1730 **** +BX = 1731 **** +BX = 1732 **** +BX = 1733 **** +BX = 1734 **** +BX = 1735 **** +BX = 1736 **** +BX = 1737 **** +BX = 1738 **** +--- Jet 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 44.5/90 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 43.5/88 + Eta [rad/Hw]: -3.567/-82 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 37/75 + Eta [rad/Hw]: 3.393/78 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 35/71 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 31/63 + Eta [rad/Hw]: -3.567/-82 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 7 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 482/965 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 80/161 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 29.5/60 + Phi [Rad/Hw]: -0.610865/130 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 77/155 + Phi [Rad/Hw]: -0.654498/129 +BX = 1739 **** +--- Jet 0 --- + Et [GeV/Hw]: 92/185 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 55.5/112 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 0.959931/22 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 0 +--- Tau 10 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 540/1081 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 92/185 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 21/43 + Phi [Rad/Hw]: 2.0944/48 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 91.5/184 + Phi [Rad/Hw]: 1.9635/45 +BX = 1740 **** +BX = 1741 **** +BX = 1742 **** +BX = 1743 **** +BX = 1744 **** +--- Jet 0 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -3.0015/-69 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 3.219/74 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: -1.48353/110 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: -0.610865/130 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -1.8326/102 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 2.79253/64 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 347/695 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 25.5/52 + Phi [Rad/Hw]: 2.00713/46 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1745 **** +BX = 1746 **** +BX = 1747 **** +BX = 1748 **** +BX = 1749 **** +BX = 1750 **** +BX = 1751 **** +BX = 1752 **** +--- Jet 0 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: 3.0015/69 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: 0.174533/4 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 345/691 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 20.5/42 + Phi [Rad/Hw]: 2.35619/54 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1753 **** +BX = 1754 **** +BX = 1755 **** +BX = 1756 **** +BX = 1757 **** +BX = 1758 **** +BX = 1759 **** +BX = 1760 **** +--- Jet 0 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 0.523599/12 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 291.5/584 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 22/45 + Phi [Rad/Hw]: 1.52716/35 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1761 **** +--- Jet 0 --- + Et [GeV/Hw]: 36.5/74 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 2 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 329/659 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 36.5/74 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 12.5/26 + Phi [Rad/Hw]: -0.0872668/142 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 36/73 + Phi [Rad/Hw]: -0.567232/131 +BX = 1762 **** +BX = 1763 **** +BX = 1764 **** +BX = 1765 **** +BX = 1766 **** +BX = 1767 **** +BX = 1768 **** +BX = 1769 **** +BX = 1770 **** +BX = 1771 **** +BX = 1772 **** +BX = 1773 **** +BX = 1774 **** +BX = 1775 **** +BX = 1776 **** +BX = 1777 **** +BX = 1778 **** +BX = 1779 **** +BX = 1780 **** +BX = 1781 **** +BX = 1782 **** +BX = 1783 **** +BX = 1784 **** +BX = 1785 **** +BX = 1786 **** +BX = 1787 **** +BX = 1788 **** +BX = 1789 **** +BX = 1790 **** +BX = 1791 **** +BX = 1792 **** +BX = 1793 **** +BX = 1794 **** +BX = 1795 **** +BX = 1796 **** +BX = 1797 **** +BX = 1798 **** +BX = 1799 **** +BX = 1800 **** +BX = 1801 **** +BX = 1802 **** +BX = 1803 **** +BX = 1804 **** +--- Jet 0 --- + Et [GeV/Hw]: 57.5/116 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.9575/45 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -2.349/-54 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 0 +--- E/Gamma 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 3 +--- E/Gamma 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 0 +--- Tau 2 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 0 +--- Tau 5 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.914/44 + Phi [rad/Hw]: -1.48353/110 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 866.5/1734 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 57.5/116 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 30.5/62 + Phi [Rad/Hw]: 2.87979/66 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 57/115 + Phi [Rad/Hw]: 2.53073/58 +BX = 1805 **** +BX = 1806 **** +BX = 1807 **** +--- Jet 0 --- + Et [GeV/Hw]: 63.5/128 + Eta [rad/Hw]: 3.393/78 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.48353/110 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 393.5/788 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 16/33 + Phi [Rad/Hw]: 0.305433/7 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1808 **** +--- Jet 0 --- + Et [GeV/Hw]: 39/79 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.698132/128 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 293.5/588 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 39/79 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 17.5/36 + Phi [Rad/Hw]: 0.829031/19 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 38.5/78 + Phi [Rad/Hw]: 1.13446/26 +BX = 1809 **** +BX = 1810 **** +BX = 1811 **** +BX = 1812 **** +BX = 1813 **** +BX = 1814 **** +BX = 1815 **** +BX = 1816 **** +BX = 1817 **** +BX = 1818 **** +BX = 1819 **** +BX = 1820 **** +BX = 1821 **** +BX = 1822 **** +BX = 1823 **** +BX = 1824 **** +BX = 1825 **** +BX = 1826 **** +BX = 1827 **** +BX = 1828 **** +BX = 1829 **** +BX = 1830 **** +BX = 1831 **** +BX = 1832 **** +BX = 1833 **** +BX = 1834 **** +BX = 1835 **** +BX = 1836 **** +BX = 1837 **** +BX = 1838 **** +--- Jet 0 --- + Et [GeV/Hw]: 39/79 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 23.5/48 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 3.0015/69 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 20/41 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.566/-36 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.566/-36 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Tau 6 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: -2.09439/96 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 416/833 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 39/79 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 19.5/40 + Phi [Rad/Hw]: -1.1781/117 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 38.5/78 + Phi [Rad/Hw]: -2.31256/91 +BX = 1839 **** +BX = 1840 **** +BX = 1841 **** +BX = 1842 **** +BX = 1843 **** +BX = 1844 **** +BX = 1845 **** +BX = 1846 **** +BX = 1847 **** +BX = 1848 **** +BX = 1849 **** +BX = 1850 **** +BX = 1851 **** +BX = 1852 **** +BX = 1853 **** +BX = 1854 **** +BX = 1855 **** +BX = 1856 **** +BX = 1857 **** +BX = 1858 **** +BX = 1859 **** +BX = 1860 **** +BX = 1861 **** +BX = 1862 **** +BX = 1863 **** +BX = 1864 **** +BX = 1865 **** +BX = 1866 **** +BX = 1867 **** +BX = 1868 **** +BX = 1869 **** +BX = 1870 **** +BX = 1871 **** +BX = 1872 **** +BX = 1873 **** +BX = 1874 **** +--- Jet 0 --- + Et [GeV/Hw]: 35.5/72 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: 3.393/78 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 6.5/14 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.09439/96 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 478.5/958 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 35.5/72 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 30/61 + Phi [Rad/Hw]: -0.741765/127 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 35/71 + Phi [Rad/Hw]: -1.00356/121 +BX = 1875 **** +--- Jet 0 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: 3.0015/69 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -2.349/-54 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- E/Gamma 10 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -2.349/-54 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 0 +--- E/Gamma 11 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.44346/56 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 2.96706/68 + Iso [Hw]: 0 +--- Tau 8 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 1.13446/26 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 2.96706/68 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 673.5/1348 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 24/49 + Phi [Rad/Hw]: 0.218166/5 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1876 **** +BX = 1877 **** +--- Jet 0 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 3.0015/69 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 0.174533/4 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- E/Gamma 10 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 0.174533/4 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: -0.610865/130 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.74533/104 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 542/1085 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 8.5/18 + Phi [Rad/Hw]: 0.872665/20 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1878 **** +BX = 1879 **** +BX = 1880 **** +BX = 1881 **** +BX = 1882 **** +BX = 1883 **** +BX = 1884 **** +BX = 1885 **** +BX = 1886 **** +BX = 1887 **** +BX = 1888 **** +BX = 1889 **** +BX = 1890 **** +BX = 1891 **** +BX = 1892 **** +BX = 1893 **** +--- Jet 0 --- + Et [GeV/Hw]: 53/107 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 21/43 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 2 +--- E/Gamma 6 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- E/Gamma 10 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.566/36 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 32.5/66 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: 1.9575/45 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 433.5/868 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 53/107 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 47.5/96 + Phi [Rad/Hw]: 2.44346/56 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 52.5/106 + Phi [Rad/Hw]: 2.0944/48 +BX = 1894 **** +BX = 1895 **** +--- Jet 0 --- + Et [GeV/Hw]: 34.5/70 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 215/431 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 34.5/70 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 10/21 + Phi [Rad/Hw]: 1.8326/42 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 34/69 + Phi [Rad/Hw]: -0.872665/124 +BX = 1896 **** +BX = 1897 **** +BX = 1898 **** +BX = 1899 **** +BX = 1900 **** +BX = 1901 **** +BX = 1902 **** +BX = 1903 **** +BX = 1904 **** +BX = 1905 **** +BX = 1906 **** +BX = 1907 **** +BX = 1908 **** +BX = 1909 **** +BX = 1910 **** +BX = 1911 **** +BX = 1912 **** +BX = 1913 **** +BX = 1914 **** +BX = 1915 **** +BX = 1916 **** +BX = 1917 **** +BX = 1918 **** +BX = 1919 **** +BX = 1920 **** +BX = 1921 **** +--- Jet 0 --- + Et [GeV/Hw]: 29.5/60 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -2.87979/78 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -1.22173/116 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: -1.22173/116 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 369.5/740 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 20.5/42 + Phi [Rad/Hw]: 1.09083/25 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1922 **** +BX = 1923 **** +BX = 1924 **** +BX = 1925 **** +BX = 1926 **** +BX = 1927 **** +BX = 1928 **** +BX = 1929 **** +BX = 1930 **** +BX = 1931 **** +BX = 1932 **** +BX = 1933 **** +BX = 1934 **** +BX = 1935 **** +BX = 1936 **** +--- Jet 0 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 304.5/610 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 22/45 + Phi [Rad/Hw]: 0.305433/7 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1937 **** +BX = 1938 **** +--- Jet 0 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 8/17 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -2.09439/96 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -2.09439/96 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -2.09439/96 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 0 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 367/735 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 8/17 + Phi [Rad/Hw]: 0.741765/17 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1939 **** +--- Jet 0 --- + Et [GeV/Hw]: 45.5/92 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 34/69 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 29.5/60 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 27/55 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 6.5/14 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -1.392/-32 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -1.392/-32 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 0.785398/18 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 368/737 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 80/161 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 27/55 + Phi [Rad/Hw]: 0.741765/17 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 59/119 + Phi [Rad/Hw]: 0.785398/18 +BX = 1940 **** +BX = 1941 **** +BX = 1942 **** +BX = 1943 **** +BX = 1944 **** +BX = 1945 **** +BX = 1946 **** +BX = 1947 **** +BX = 1948 **** +BX = 1949 **** +BX = 1950 **** +BX = 1951 **** +BX = 1952 **** +BX = 1953 **** +BX = 1954 **** +BX = 1955 **** +BX = 1956 **** +BX = 1957 **** +--- Jet 0 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 0.785398/18 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 285.5/572 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 17/35 + Phi [Rad/Hw]: -1.4399/111 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1958 **** +BX = 1959 **** +BX = 1960 **** +BX = 1961 **** +BX = 1962 **** +BX = 1963 **** +BX = 1964 **** +BX = 1965 **** +BX = 1966 **** +--- Jet 0 --- + Et [GeV/Hw]: 35.5/72 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 306.5/614 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 35.5/72 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 7.5/16 + Phi [Rad/Hw]: -0.872665/124 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 35/71 + Phi [Rad/Hw]: -0.567232/131 +BX = 1967 **** +BX = 1968 **** +BX = 1969 **** +BX = 1970 **** +BX = 1971 **** +BX = 1972 **** +BX = 1973 **** +BX = 1974 **** +BX = 1975 **** +BX = 1976 **** +BX = 1977 **** +BX = 1978 **** +BX = 1979 **** +BX = 1980 **** +BX = 1981 **** +BX = 1982 **** +BX = 1983 **** +--- Jet 0 --- + Et [GeV/Hw]: 23.5/48 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.74/40 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.22173/116 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 410.5/822 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 29.5/60 + Phi [Rad/Hw]: 2.05076/47 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 1984 **** +BX = 1985 **** +BX = 1986 **** +BX = 1987 **** +BX = 1988 **** +--- Jet 0 --- + Et [GeV/Hw]: 31.5/64 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 31/63 + Eta [rad/Hw]: -3.915/-90 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 0 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 297/595 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 31.5/64 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 8.5/18 + Phi [Rad/Hw]: -0.523599/132 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 31/63 + Phi [Rad/Hw]: -0.741765/127 +BX = 1989 **** +BX = 1990 **** +BX = 1991 **** +BX = 1992 **** +BX = 1993 **** +BX = 1994 **** +BX = 1995 **** +BX = 1996 **** +BX = 1997 **** +BX = 1998 **** +BX = 1999 **** +BX = 2000 **** +BX = 2001 **** +BX = 2002 **** +BX = 2003 **** +BX = 2004 **** +BX = 2005 **** +BX = 2006 **** +BX = 2007 **** +BX = 2008 **** +BX = 2009 **** +BX = 2010 **** +BX = 2011 **** +BX = 2012 **** +BX = 2013 **** +BX = 2014 **** +BX = 2015 **** +BX = 2016 **** +BX = 2017 **** +BX = 2018 **** +BX = 2019 **** +BX = 2020 **** +BX = 2021 **** +BX = 2022 **** +--- Jet 0 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 314.5/630 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 27.5/56 + Phi [Rad/Hw]: 1.00356/23 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2023 **** +BX = 2024 **** +BX = 2025 **** +BX = 2026 **** +BX = 2027 **** +BX = 2028 **** +BX = 2029 **** +BX = 2030 **** +BX = 2031 **** +BX = 2032 **** +BX = 2033 **** +BX = 2034 **** +BX = 2035 **** +BX = 2036 **** +BX = 2037 **** +BX = 2038 **** +BX = 2039 **** +BX = 2040 **** +BX = 2041 **** +BX = 2042 **** +BX = 2043 **** +--- Jet 0 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 0.785398/18 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 266/533 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 3.5/8 + Phi [Rad/Hw]: 0.305433/7 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2044 **** +--- Jet 0 --- + Et [GeV/Hw]: 32.5/66 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 0.959931/22 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.74533/104 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 300.5/602 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 32.5/66 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 31.5/64 + Phi [Rad/Hw]: 2.66163/61 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 32/65 + Phi [Rad/Hw]: 2.92343/67 +BX = 2045 **** +BX = 2046 **** +BX = 2047 **** +BX = 2048 **** +BX = 2049 **** +BX = 2050 **** +BX = 2051 **** +BX = 2052 **** +BX = 2053 **** +BX = 2054 **** +BX = 2055 **** +BX = 2056 **** +BX = 2057 **** +BX = 2058 **** +BX = 2059 **** +BX = 2060 **** +BX = 2061 **** +BX = 2062 **** +BX = 2063 **** +BX = 2064 **** +BX = 2065 **** +BX = 2066 **** +BX = 2067 **** +BX = 2068 **** +BX = 2069 **** +--- Jet 0 --- + Et [GeV/Hw]: 50/101 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 31.5/64 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 337.5/676 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 82/165 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 27/55 + Phi [Rad/Hw]: 1.13446/26 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 27/55 + Phi [Rad/Hw]: 0.218166/5 +BX = 2070 **** +BX = 2071 **** +BX = 2072 **** +BX = 2073 **** +BX = 2074 **** +BX = 2075 **** +BX = 2076 **** +BX = 2077 **** +BX = 2078 **** +BX = 2079 **** +BX = 2080 **** +BX = 2081 **** +BX = 2082 **** +BX = 2083 **** +BX = 2084 **** +BX = 2085 **** +BX = 2086 **** +BX = 2087 **** +BX = 2088 **** +BX = 2089 **** +BX = 2090 **** +BX = 2091 **** +--- Jet 0 --- + Et [GeV/Hw]: 20/41 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 6.5/14 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -1.22173/116 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.914/-44 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.914/-44 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -1.22173/116 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 0.349066/8 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 452/905 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 25/51 + Phi [Rad/Hw]: 1.78896/41 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2092 **** +--- Jet 0 --- + Et [GeV/Hw]: 46/93 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -3.567/-82 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 28/57 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: 0.785398/18 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 300.5/602 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 46/93 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 14/29 + Phi [Rad/Hw]: 1.78896/41 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 45.5/92 + Phi [Rad/Hw]: 2.13803/49 +BX = 2093 **** +BX = 2094 **** +--- Jet 0 --- + Et [GeV/Hw]: 91.5/184 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 47/95 + Eta [rad/Hw]: 3.567/82 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: 3.0015/69 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 23.5/48 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -0.610865/130 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 53/107 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -0.610865/130 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 374.5/750 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 91.5/184 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 18/37 + Phi [Rad/Hw]: -2.00713/98 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 91/183 + Phi [Rad/Hw]: -1.52716/109 +BX = 2095 **** +BX = 2096 **** +--- Jet 0 --- + Et [GeV/Hw]: 40.5/82 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -1.74533/104 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -1.74533/104 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 307.5/616 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 40.5/82 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 24/49 + Phi [Rad/Hw]: 1.00356/23 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 40/81 + Phi [Rad/Hw]: 1.35263/31 +BX = 2097 **** +BX = 2098 **** +BX = 2099 **** +BX = 2100 **** +BX = 2101 **** +BX = 2102 **** +BX = 2103 **** +BX = 2104 **** +BX = 2105 **** +BX = 2106 **** +BX = 2107 **** +BX = 2108 **** +BX = 2109 **** +BX = 2110 **** +BX = 2111 **** +BX = 2112 **** +BX = 2113 **** +BX = 2114 **** +BX = 2115 **** +BX = 2116 **** +BX = 2117 **** +BX = 2118 **** +BX = 2119 **** +BX = 2120 **** +BX = 2121 **** +BX = 2122 **** +BX = 2123 **** +BX = 2124 **** +BX = 2125 **** +BX = 2126 **** +BX = 2127 **** +BX = 2128 **** +BX = 2129 **** +BX = 2130 **** +BX = 2131 **** +BX = 2132 **** +--- Jet 0 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 8/17 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 57.5/116 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 53.5/108 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 42/85 + Eta [rad/Hw]: 3.219/74 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 32/65 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 29/59 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- Jet 7 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 2.96706/68 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 35/71 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -1.22173/116 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 799.5/1600 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 144/289 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 16/33 + Phi [Rad/Hw]: -2.74889/81 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 35/71 + Phi [Rad/Hw]: 2.61799/60 +BX = 2133 **** +--- Jet 0 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 51.5/104 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 34/69 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- Jet 7 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- E/Gamma 10 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 0 +--- E/Gamma 11 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- Tau 10 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 785/1571 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 86/173 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 14.5/30 + Phi [Rad/Hw]: 0.916298/21 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 48/97 + Phi [Rad/Hw]: 2.57436/59 +BX = 2134 **** +--- Jet 0 --- + Et [GeV/Hw]: 40.5/82 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 35.5/72 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -1.74533/104 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- Tau 11 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 521.5/1044 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 76.5/154 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 54.5/110 + Phi [Rad/Hw]: -1.35263/113 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 75.5/152 + Phi [Rad/Hw]: -1.4399/111 +BX = 2135 **** +BX = 2136 **** +BX = 2137 **** +BX = 2138 **** +BX = 2139 **** +BX = 2140 **** +BX = 2141 **** +BX = 2142 **** +BX = 2143 **** +BX = 2144 **** +BX = 2145 **** +BX = 2146 **** +BX = 2147 **** +--- Jet 0 --- + Et [GeV/Hw]: 6.5/14 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 37.5/76 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 34/69 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 32/65 + Eta [rad/Hw]: -4.089/-94 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 0 +--- Tau 1 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 0 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 0 +--- Tau 8 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.5708/108 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 561/1123 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 72/145 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 34/69 + Phi [Rad/Hw]: 0.392699/9 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 69/139 + Phi [Rad/Hw]: 0.872665/20 +BX = 2148 **** +BX = 2149 **** +BX = 2150 **** +BX = 2151 **** +BX = 2152 **** +BX = 2153 **** +BX = 2154 **** +BX = 2155 **** +BX = 2156 **** +BX = 2157 **** +BX = 2158 **** +BX = 2159 **** +BX = 2160 **** +BX = 2161 **** +BX = 2162 **** +BX = 2163 **** +BX = 2164 **** +BX = 2165 **** +BX = 2166 **** +--- Jet 0 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.96706/68 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 2.44346/56 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 481.5/964 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 21/43 + Phi [Rad/Hw]: -1.22173/116 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2167 **** +BX = 2168 **** +BX = 2169 **** +BX = 2170 **** +BX = 2171 **** +BX = 2172 **** +BX = 2173 **** +BX = 2174 **** +BX = 2175 **** +BX = 2176 **** +BX = 2177 **** +BX = 2178 **** +BX = 2179 **** +BX = 2180 **** +BX = 2181 **** +BX = 2182 **** +--- Jet 0 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: 0.523599/12 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 404/809 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 12/25 + Phi [Rad/Hw]: -3.05433/74 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2183 **** +BX = 2184 **** +BX = 2185 **** +BX = 2186 **** +BX = 2187 **** +BX = 2188 **** +BX = 2189 **** +BX = 2190 **** +BX = 2191 **** +BX = 2192 **** +BX = 2193 **** +BX = 2194 **** +BX = 2195 **** +--- Jet 0 --- + Et [GeV/Hw]: 29.5/60 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -1.5708/108 + Iso [Hw]: 0 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 368.5/738 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 22/45 + Phi [Rad/Hw]: -0.2618/138 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2196 **** +BX = 2197 **** +BX = 2198 **** +BX = 2199 **** +BX = 2200 **** +BX = 2201 **** +BX = 2202 **** +BX = 2203 **** +BX = 2204 **** +BX = 2205 **** +BX = 2206 **** +BX = 2207 **** +BX = 2208 **** +BX = 2209 **** +BX = 2210 **** +BX = 2211 **** +BX = 2212 **** +BX = 2213 **** +BX = 2214 **** +BX = 2215 **** +BX = 2216 **** +BX = 2217 **** +BX = 2218 **** +BX = 2219 **** +BX = 2220 **** +BX = 2221 **** +BX = 2222 **** +BX = 2223 **** +BX = 2224 **** +BX = 2225 **** +BX = 2226 **** +BX = 2227 **** +BX = 2228 **** +BX = 2229 **** +BX = 2230 **** +BX = 2231 **** +BX = 2232 **** +BX = 2233 **** +BX = 2234 **** +BX = 2235 **** +--- Jet 0 --- + Et [GeV/Hw]: 33/67 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 27/55 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.523599/12 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 270.5/542 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 33/67 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 15.5/32 + Phi [Rad/Hw]: 2.70526/62 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 32.5/66 + Phi [Rad/Hw]: -1.65806/106 +BX = 2236 **** +BX = 2237 **** +BX = 2238 **** +BX = 2239 **** +BX = 2240 **** +BX = 2241 **** +BX = 2242 **** +BX = 2243 **** +BX = 2244 **** +BX = 2245 **** +BX = 2246 **** +BX = 2247 **** +BX = 2248 **** +BX = 2249 **** +BX = 2250 **** +BX = 2251 **** +BX = 2252 **** +BX = 2253 **** +BX = 2254 **** +BX = 2255 **** +BX = 2256 **** +BX = 2257 **** +BX = 2258 **** +BX = 2259 **** +BX = 2260 **** +BX = 2261 **** +BX = 2262 **** +BX = 2263 **** +BX = 2264 **** +BX = 2265 **** +BX = 2266 **** +BX = 2267 **** +BX = 2268 **** +BX = 2269 **** +BX = 2270 **** +BX = 2271 **** +BX = 2272 **** +BX = 2273 **** +BX = 2274 **** +BX = 2275 **** +BX = 2276 **** +BX = 2277 **** +BX = 2278 **** +--- Jet 0 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 240/481 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 17/35 + Phi [Rad/Hw]: 0.436332/10 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2279 **** +BX = 2280 **** +--- Jet 0 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -0.610865/130 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 252.5/506 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 20/41 + Phi [Rad/Hw]: 3.05433/70 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2281 **** +BX = 2282 **** +BX = 2283 **** +BX = 2284 **** +BX = 2285 **** +BX = 2286 **** +BX = 2287 **** +BX = 2288 **** +BX = 2289 **** +BX = 2290 **** +BX = 2291 **** +BX = 2292 **** +BX = 2293 **** +BX = 2294 **** +BX = 2295 **** +BX = 2296 **** +BX = 2297 **** +BX = 2298 **** +BX = 2299 **** +BX = 2300 **** +BX = 2301 **** +BX = 2302 **** +--- Jet 0 --- + Et [GeV/Hw]: 33.5/68 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.349/54 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -1.74533/104 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 327/655 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 33.5/68 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 8.5/18 + Phi [Rad/Hw]: -0.741765/127 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 33/67 + Phi [Rad/Hw]: -0.872665/124 +BX = 2303 **** +BX = 2304 **** +BX = 2305 **** +BX = 2306 **** +BX = 2307 **** +BX = 2308 **** +BX = 2309 **** +BX = 2310 **** +BX = 2311 **** +BX = 2312 **** +BX = 2313 **** +BX = 2314 **** +BX = 2315 **** +BX = 2316 **** +BX = 2317 **** +BX = 2318 **** +BX = 2319 **** +BX = 2320 **** +BX = 2321 **** +BX = 2322 **** +BX = 2323 **** +--- Jet 0 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: 1.479/34 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 1.479/34 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 342/685 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 8/17 + Phi [Rad/Hw]: 1.22173/28 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2324 **** +BX = 2325 **** +--- Jet 0 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 228/457 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 14.5/30 + Phi [Rad/Hw]: -2.05076/97 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2326 **** +BX = 2327 **** +--- Jet 0 --- + Et [GeV/Hw]: 93.5/188 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 65/131 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 31.5/64 + Eta [rad/Hw]: 3.567/82 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 0/1 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 0 +--- Tau 8 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -1.8326/102 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 377.5/756 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 159/319 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 39/79 + Phi [Rad/Hw]: 0.479966/11 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 28.5/58 + Phi [Rad/Hw]: -0.305433/137 +BX = 2328 **** +BX = 2329 **** +BX = 2330 **** +BX = 2331 **** +BX = 2332 **** +BX = 2333 **** +BX = 2334 **** +BX = 2335 **** +BX = 2336 **** +BX = 2337 **** +BX = 2338 **** +BX = 2339 **** +BX = 2340 **** +BX = 2341 **** +BX = 2342 **** +BX = 2343 **** +BX = 2344 **** +BX = 2345 **** +BX = 2346 **** +BX = 2347 **** +BX = 2348 **** +BX = 2349 **** +BX = 2350 **** +BX = 2351 **** +--- Jet 0 --- + Et [GeV/Hw]: 29.5/60 + Eta [rad/Hw]: -3.0015/-69 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 298/597 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 19/39 + Phi [Rad/Hw]: -0.959931/122 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2352 **** +BX = 2353 **** +--- Jet 0 --- + Et [GeV/Hw]: 40.5/82 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 39/79 + Eta [rad/Hw]: 3.0015/69 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 37.5/76 + Eta [rad/Hw]: 3.219/74 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 35.5/72 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -1.566/-36 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 0 +--- Tau 11 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 371/743 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 76.5/154 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 49/99 + Phi [Rad/Hw]: -2.92343/77 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 64/129 + Phi [Rad/Hw]: -2.18166/94 +BX = 2354 **** +--- Jet 0 --- + Et [GeV/Hw]: 59.5/120 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 32/65 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -2.09439/96 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 374/749 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 92/185 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 34/69 + Phi [Rad/Hw]: 0.829031/19 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 85.5/172 + Phi [Rad/Hw]: 1.22173/28 +BX = 2355 **** +BX = 2356 **** +BX = 2357 **** +BX = 2358 **** +BX = 2359 **** +BX = 2360 **** +BX = 2361 **** +BX = 2362 **** +BX = 2363 **** +BX = 2364 **** +BX = 2365 **** +BX = 2366 **** +BX = 2367 **** +BX = 2368 **** +BX = 2369 **** +--- Jet 0 --- + Et [GeV/Hw]: 29/59 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 23.5/48 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: -1.8326/102 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 2.96706/68 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 312.5/626 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 17.5/36 + Phi [Rad/Hw]: 1.78896/41 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2370 **** +BX = 2371 **** +BX = 2372 **** +BX = 2373 **** +BX = 2374 **** +BX = 2375 **** +BX = 2376 **** +BX = 2377 **** +BX = 2378 **** +BX = 2379 **** +BX = 2380 **** +BX = 2381 **** +BX = 2382 **** +BX = 2383 **** +BX = 2384 **** +BX = 2385 **** +BX = 2386 **** +BX = 2387 **** +BX = 2388 **** +BX = 2389 **** +--- Jet 0 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 226.5/454 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 22/45 + Phi [Rad/Hw]: -2.18166/94 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2390 **** +BX = 2391 **** +BX = 2392 **** +BX = 2393 **** +BX = 2394 **** +BX = 2395 **** +BX = 2396 **** +BX = 2397 **** +BX = 2398 **** +BX = 2399 **** +BX = 2400 **** +BX = 2401 **** +--- Jet 0 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 3.393/78 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 221/443 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 6/13 + Phi [Rad/Hw]: -3.05433/74 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2402 **** +BX = 2403 **** +BX = 2404 **** +--- Jet 0 --- + Et [GeV/Hw]: 39.5/80 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 2 +--- E/Gamma 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 317/635 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 39.5/80 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 24/49 + Phi [Rad/Hw]: -2.87979/78 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 39/79 + Phi [Rad/Hw]: 2.39983/55 +BX = 2405 **** +BX = 2406 **** +BX = 2407 **** +BX = 2408 **** +BX = 2409 **** +BX = 2410 **** +BX = 2411 **** +BX = 2412 **** +BX = 2413 **** +BX = 2414 **** +--- Jet 0 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 348.5/698 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 25/51 + Phi [Rad/Hw]: 1.26536/29 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2415 **** +BX = 2416 **** +--- Jet 0 --- + Et [GeV/Hw]: 46.5/94 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 9/19 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 267.5/536 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 46.5/94 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 19/39 + Phi [Rad/Hw]: -0.523599/132 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 46/93 + Phi [Rad/Hw]: -0.872665/124 +BX = 2417 **** +BX = 2418 **** +BX = 2419 **** +BX = 2420 **** +BX = 2421 **** +BX = 2422 **** +BX = 2423 **** +BX = 2424 **** +BX = 2425 **** +BX = 2426 **** +BX = 2427 **** +BX = 2428 **** +BX = 2429 **** +BX = 2430 **** +BX = 2431 **** +BX = 2432 **** +BX = 2433 **** +BX = 2434 **** +BX = 2435 **** +BX = 2436 **** +BX = 2437 **** +BX = 2438 **** +BX = 2439 **** +BX = 2440 **** +BX = 2441 **** +BX = 2442 **** +BX = 2443 **** +BX = 2444 **** +BX = 2445 **** +BX = 2446 **** +BX = 2447 **** +BX = 2448 **** +BX = 2449 **** +BX = 2450 **** +BX = 2451 **** +BX = 2452 **** +BX = 2453 **** +BX = 2454 **** +BX = 2455 **** +BX = 2456 **** +BX = 2457 **** +--- Jet 0 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -1.48353/110 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 3 +--- E/Gamma 10 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.74/40 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 2.79253/64 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -1.48353/110 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 580.5/1162 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 2/5 + Phi [Rad/Hw]: -0.610865/130 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2458 **** +BX = 2459 **** +BX = 2460 **** +BX = 2461 **** +--- Jet 0 --- + Et [GeV/Hw]: 37/75 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.698132/128 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.698132/128 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 384.5/770 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 37/75 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 21.5/44 + Phi [Rad/Hw]: -0.741765/127 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 36.5/74 + Phi [Rad/Hw]: -1.1781/117 +BX = 2462 **** +BX = 2463 **** +BX = 2464 **** +BX = 2465 **** +BX = 2466 **** +BX = 2467 **** +BX = 2468 **** +BX = 2469 **** +--- Jet 0 --- + Et [GeV/Hw]: 35/71 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 0.523599/12 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 29/59 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: -0.698132/128 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 588.5/1178 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 35/71 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 12.5/26 + Phi [Rad/Hw]: -2.22529/93 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 34.5/70 + Phi [Rad/Hw]: -2.92343/77 +BX = 2470 **** +BX = 2471 **** +BX = 2472 **** +BX = 2473 **** +BX = 2474 **** +BX = 2475 **** +BX = 2476 **** +BX = 2477 **** +BX = 2478 **** +--- Jet 0 --- + Et [GeV/Hw]: 33/67 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 28.5/58 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -3.219/-74 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: 3.219/74 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 0.959931/22 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.87979/78 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 0.959931/22 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 490.5/982 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 33/67 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 25.5/52 + Phi [Rad/Hw]: -1.8326/102 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 32.5/66 + Phi [Rad/Hw]: -0.567232/131 +BX = 2479 **** +BX = 2480 **** +BX = 2481 **** +BX = 2482 **** +BX = 2483 **** +--- Jet 0 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -4.089/-94 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.349/54 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 2.79253/64 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -2.09439/96 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 365.5/732 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 20.5/42 + Phi [Rad/Hw]: -0.392699/135 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2484 **** +BX = 2485 **** +BX = 2486 **** +BX = 2487 **** +BX = 2488 **** +BX = 2489 **** +BX = 2490 **** +--- Jet 0 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.9575/-45 + Phi [rad/Hw]: -0.698132/128 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.9575/-45 + Phi [rad/Hw]: -0.698132/128 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 367.5/736 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 17/35 + Phi [Rad/Hw]: 2.31256/53 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2491 **** +--- Jet 0 --- + Et [GeV/Hw]: 37/75 + Eta [rad/Hw]: -3.393/-78 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 0.959931/22 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 0 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 2.96706/68 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 668/1337 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 30/61 + Phi [Rad/Hw]: 0.0872665/2 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2492 **** +BX = 2493 **** +BX = 2494 **** +BX = 2495 **** +BX = 2496 **** +BX = 2497 **** +BX = 2498 **** +BX = 2499 **** +BX = 2500 **** +BX = 2501 **** +BX = 2502 **** +BX = 2503 **** +BX = 2504 **** +BX = 2505 **** +BX = 2506 **** +BX = 2507 **** +BX = 2508 **** +BX = 2509 **** +BX = 2510 **** +BX = 2511 **** +BX = 2512 **** +BX = 2513 **** +BX = 2514 **** +BX = 2515 **** +BX = 2516 **** +BX = 2517 **** +BX = 2518 **** +BX = 2519 **** +BX = 2520 **** +BX = 2521 **** +--- Jet 0 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.392/-32 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 0.959931/22 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 367/735 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 2.5/6 + Phi [Rad/Hw]: -1.9635/99 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2522 **** +BX = 2523 **** +BX = 2524 **** +BX = 2525 **** +BX = 2526 **** +BX = 2527 **** +--- Jet 0 --- + Et [GeV/Hw]: 28.5/58 + Eta [rad/Hw]: -3.567/-82 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.479/-34 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -1.914/-44 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.479/-34 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -1.914/-44 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 492/985 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 17.5/36 + Phi [Rad/Hw]: 0.0436332/1 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2528 **** +BX = 2529 **** +BX = 2530 **** +BX = 2531 **** +BX = 2532 **** +BX = 2533 **** +BX = 2534 **** +BX = 2535 **** +BX = 2536 **** +BX = 2537 **** +BX = 2538 **** +BX = 2539 **** +BX = 2540 **** +BX = 2541 **** +BX = 2542 **** +BX = 2543 **** +BX = 2544 **** +BX = 2545 **** +BX = 2546 **** +BX = 2547 **** +BX = 2548 **** +BX = 2549 **** +BX = 2550 **** +BX = 2551 **** +BX = 2552 **** +BX = 2553 **** +BX = 2554 **** +BX = 2555 **** +BX = 2556 **** +BX = 2557 **** +BX = 2558 **** +BX = 2559 **** +BX = 2560 **** +BX = 2561 **** +--- Jet 0 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 2.79253/64 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 2.79253/64 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.74533/104 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 310/621 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 18/37 + Phi [Rad/Hw]: 0.349066/8 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2562 **** +BX = 2563 **** +BX = 2564 **** +BX = 2565 **** +BX = 2566 **** +--- Jet 0 --- + Et [GeV/Hw]: 31.5/64 + Eta [rad/Hw]: 3.741/86 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 0 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 0.959931/22 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 311.5/624 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 23/47 + Phi [Rad/Hw]: 2.05076/47 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2567 **** +BX = 2568 **** +BX = 2569 **** +BX = 2570 **** +BX = 2571 **** +BX = 2572 **** +--- Jet 0 --- + Et [GeV/Hw]: 31.5/64 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 6.5/14 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -2.87979/78 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.9575/-45 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 349.5/700 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 31.5/64 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 4/9 + Phi [Rad/Hw]: -2.74889/81 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 31/63 + Phi [Rad/Hw]: -0.741765/127 +BX = 2573 **** +BX = 2574 **** +BX = 2575 **** +BX = 2576 **** +BX = 2577 **** +BX = 2578 **** +BX = 2579 **** +BX = 2580 **** +BX = 2581 **** +BX = 2582 **** +BX = 2583 **** +BX = 2584 **** +BX = 2585 **** +BX = 2586 **** +--- Jet 0 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -3.0015/-69 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 317.5/636 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 8/17 + Phi [Rad/Hw]: -2.74889/81 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2587 **** +--- Jet 0 --- + Et [GeV/Hw]: 34/69 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 8/17 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 0.785398/18 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 503.5/1008 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 34/69 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 29/59 + Phi [Rad/Hw]: -2.39983/89 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 33.5/68 + Phi [Rad/Hw]: 2.74889/63 +BX = 2588 **** +BX = 2589 **** +BX = 2590 **** +BX = 2591 **** +BX = 2592 **** +BX = 2593 **** +BX = 2594 **** +BX = 2595 **** +BX = 2596 **** +BX = 2597 **** +BX = 2598 **** +BX = 2599 **** +BX = 2600 **** +BX = 2601 **** +BX = 2602 **** +BX = 2603 **** +BX = 2604 **** +BX = 2605 **** +BX = 2606 **** +--- Jet 0 --- + Et [GeV/Hw]: 21/43 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 258/517 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 11.5/24 + Phi [Rad/Hw]: -0.305433/137 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2607 **** +BX = 2608 **** +BX = 2609 **** +BX = 2610 **** +--- Jet 0 --- + Et [GeV/Hw]: 23.5/48 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 2 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 239/479 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 13.5/28 + Phi [Rad/Hw]: 1.35263/31 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2611 **** +BX = 2612 **** +BX = 2613 **** +--- Jet 0 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -3.219/-74 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.566/-36 + Phi [rad/Hw]: 1.0472/24 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 202.5/406 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 13.5/28 + Phi [Rad/Hw]: -0.916298/123 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2614 **** +BX = 2615 **** +BX = 2616 **** +BX = 2617 **** +BX = 2618 **** +BX = 2619 **** +BX = 2620 **** +BX = 2621 **** +BX = 2622 **** +BX = 2623 **** +BX = 2624 **** +BX = 2625 **** +BX = 2626 **** +BX = 2627 **** +BX = 2628 **** +BX = 2629 **** +BX = 2630 **** +BX = 2631 **** +BX = 2632 **** +BX = 2633 **** +BX = 2634 **** +BX = 2635 **** +BX = 2636 **** +BX = 2637 **** +BX = 2638 **** +BX = 2639 **** +BX = 2640 **** +BX = 2641 **** +BX = 2642 **** +BX = 2643 **** +BX = 2644 **** +BX = 2645 **** +BX = 2646 **** +BX = 2647 **** +BX = 2648 **** +BX = 2649 **** +BX = 2650 **** +BX = 2651 **** +BX = 2652 **** +BX = 2653 **** +BX = 2654 **** +BX = 2655 **** +BX = 2656 **** +BX = 2657 **** +BX = 2658 **** +BX = 2659 **** +BX = 2660 **** +BX = 2661 **** +BX = 2662 **** +BX = 2663 **** +BX = 2664 **** +BX = 2665 **** +BX = 2666 **** +BX = 2667 **** +BX = 2668 **** +BX = 2669 **** +BX = 2670 **** +BX = 2671 **** +BX = 2672 **** +BX = 2673 **** +BX = 2674 **** +BX = 2675 **** +BX = 2676 **** +BX = 2677 **** +BX = 2678 **** +BX = 2679 **** +BX = 2680 **** +BX = 2681 **** +BX = 2682 **** +BX = 2683 **** +BX = 2684 **** +BX = 2685 **** +--- Jet 0 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -1.1781/117 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 20/41 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: -1.22173/116 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -1.22173/116 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 411/823 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 23.5/48 + Phi [Rad/Hw]: 1.0472/24 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2686 **** +BX = 2687 **** +BX = 2688 **** +BX = 2689 **** +BX = 2690 **** +BX = 2691 **** +BX = 2692 **** +--- Jet 0 --- + Et [GeV/Hw]: 36/73 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -3.219/-74 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -2.3055/-53 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 2.96706/68 + Iso [Hw]: 0 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.74/-40 + Phi [rad/Hw]: 0.959931/22 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 471.5/944 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 36/73 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 9.5/20 + Phi [Rad/Hw]: 0.785398/18 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 35.5/72 + Phi [Rad/Hw]: -0.2618/138 +BX = 2693 **** +BX = 2694 **** +BX = 2695 **** +BX = 2696 **** +BX = 2697 **** +BX = 2698 **** +BX = 2699 **** +BX = 2700 **** +BX = 2701 **** +BX = 2702 **** +BX = 2703 **** +BX = 2704 **** +BX = 2705 **** +BX = 2706 **** +BX = 2707 **** +BX = 2708 **** +BX = 2709 **** +BX = 2710 **** +BX = 2711 **** +BX = 2712 **** +BX = 2713 **** +BX = 2714 **** +BX = 2715 **** +BX = 2716 **** +BX = 2717 **** +--- Jet 0 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -1.9575/-45 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 3 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -2.87979/78 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.9575/-45 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.566/36 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 427/855 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 14/29 + Phi [Rad/Hw]: 1.26536/29 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2718 **** +BX = 2719 **** +BX = 2720 **** +BX = 2721 **** +BX = 2722 **** +BX = 2723 **** +BX = 2724 **** +BX = 2725 **** +BX = 2726 **** +BX = 2727 **** +BX = 2728 **** +BX = 2729 **** +BX = 2730 **** +BX = 2731 **** +BX = 2732 **** +BX = 2733 **** +BX = 2734 **** +BX = 2735 **** +BX = 2736 **** +BX = 2737 **** +BX = 2738 **** +BX = 2739 **** +BX = 2740 **** +BX = 2741 **** +BX = 2742 **** +BX = 2743 **** +BX = 2744 **** +--- Jet 0 --- + Et [GeV/Hw]: 39.5/80 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 32.5/66 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 30/61 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -2.87979/78 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 0.261799/6 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -1.8326/102 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 428.5/858 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 103/207 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 12.5/26 + Phi [Rad/Hw]: 1.22173/28 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 44.5/90 + Phi [Rad/Hw]: 0.741765/17 +BX = 2745 **** +BX = 2746 **** +BX = 2747 **** +BX = 2748 **** +BX = 2749 **** +BX = 2750 **** +BX = 2751 **** +BX = 2752 **** +BX = 2753 **** +BX = 2754 **** +BX = 2755 **** +BX = 2756 **** +BX = 2757 **** +BX = 2758 **** +BX = 2759 **** +BX = 2760 **** +BX = 2761 **** +BX = 2762 **** +BX = 2763 **** +BX = 2764 **** +BX = 2765 **** +BX = 2766 **** +BX = 2767 **** +BX = 2768 **** +BX = 2769 **** +BX = 2770 **** +BX = 2771 **** +BX = 2772 **** +BX = 2773 **** +BX = 2774 **** +BX = 2775 **** +BX = 2776 **** +BX = 2777 **** +BX = 2778 **** +BX = 2779 **** +BX = 2780 **** +BX = 2781 **** +BX = 2782 **** +BX = 2783 **** +BX = 2784 **** +BX = 2785 **** +BX = 2786 **** +BX = 2787 **** +BX = 2788 **** +BX = 2789 **** +BX = 2790 **** +BX = 2791 **** +BX = 2792 **** +BX = 2793 **** +BX = 2794 **** +BX = 2795 **** +BX = 2796 **** +BX = 2797 **** +BX = 2798 **** +BX = 2799 **** +BX = 2800 **** +BX = 2801 **** +BX = 2802 **** +BX = 2803 **** +BX = 2804 **** +BX = 2805 **** +BX = 2806 **** +BX = 2807 **** +BX = 2808 **** +BX = 2809 **** +BX = 2810 **** +BX = 2811 **** +BX = 2812 **** +BX = 2813 **** +BX = 2814 **** +BX = 2815 **** +BX = 2816 **** +BX = 2817 **** +BX = 2818 **** +BX = 2819 **** +BX = 2820 **** +BX = 2821 **** +BX = 2822 **** +BX = 2823 **** +BX = 2824 **** +BX = 2825 **** +BX = 2826 **** +BX = 2827 **** +BX = 2828 **** +BX = 2829 **** +BX = 2830 **** +BX = 2831 **** +BX = 2832 **** +BX = 2833 **** +BX = 2834 **** +BX = 2835 **** +BX = 2836 **** +--- Jet 0 --- + Et [GeV/Hw]: 32.5/66 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 6.5/14 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 518/1037 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 32.5/66 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 4.5/10 + Phi [Rad/Hw]: 1.39626/32 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 32/65 + Phi [Rad/Hw]: 0.523599/12 +BX = 2837 **** +BX = 2838 **** +BX = 2839 **** +--- Jet 0 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 9/19 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 0/1 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 23/47 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 29/59 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 408/817 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 30.5/62 + Phi [Rad/Hw]: -2.44346/88 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2840 **** +BX = 2841 **** +BX = 2842 **** +BX = 2843 **** +BX = 2844 **** +--- Jet 0 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: -3.0015/-69 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 1.5/4 + Eta [rad/Hw]: 2.1315/49 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 2.1315/49 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 393/787 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 31/63 + Phi [Rad/Hw]: -2.13803/95 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2845 **** +BX = 2846 **** +BX = 2847 **** +BX = 2848 **** +BX = 2849 **** +BX = 2850 **** +BX = 2851 **** +BX = 2852 **** +BX = 2853 **** +BX = 2854 **** +BX = 2855 **** +BX = 2856 **** +BX = 2857 **** +BX = 2858 **** +BX = 2859 **** +BX = 2860 **** +BX = 2861 **** +BX = 2862 **** +BX = 2863 **** +BX = 2864 **** +BX = 2865 **** +BX = 2866 **** +BX = 2867 **** +BX = 2868 **** +BX = 2869 **** +BX = 2870 **** +BX = 2871 **** +BX = 2872 **** +BX = 2873 **** +BX = 2874 **** +BX = 2875 **** +BX = 2876 **** +BX = 2877 **** +BX = 2878 **** +BX = 2879 **** +BX = 2880 **** +--- Jet 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 8/17 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 0/1 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 68.5/138 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 49/99 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 35.5/72 + Eta [rad/Hw]: 3.219/74 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 0 +--- Jet 7 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- Jet 8 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -2.349/-54 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 36/73 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 36/73 + Eta [rad/Hw]: 1.914/44 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 508/1017 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 118/237 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 26/53 + Phi [Rad/Hw]: -1.74533/104 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 35/71 + Phi [Rad/Hw]: -3.01069/75 +BX = 2881 **** +BX = 2882 **** +BX = 2883 **** +BX = 2884 **** +BX = 2885 **** +BX = 2886 **** +BX = 2887 **** +BX = 2888 **** +BX = 2889 **** +BX = 2890 **** +BX = 2891 **** +BX = 2892 **** +BX = 2893 **** +BX = 2894 **** +BX = 2895 **** +BX = 2896 **** +BX = 2897 **** +BX = 2898 **** +BX = 2899 **** +BX = 2900 **** +BX = 2901 **** +BX = 2902 **** +BX = 2903 **** +BX = 2904 **** +BX = 2905 **** +BX = 2906 **** +BX = 2907 **** +BX = 2908 **** +BX = 2909 **** +--- Jet 0 --- + Et [GeV/Hw]: 31.5/64 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 387.5/776 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 31.5/64 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 7/15 + Phi [Rad/Hw]: 1.9635/45 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 31/63 + Phi [Rad/Hw]: 1.13446/26 +BX = 2910 **** +BX = 2911 **** +BX = 2912 **** +BX = 2913 **** +BX = 2914 **** +BX = 2915 **** +BX = 2916 **** +BX = 2917 **** +BX = 2918 **** +BX = 2919 **** +BX = 2920 **** +BX = 2921 **** +BX = 2922 **** +BX = 2923 **** +BX = 2924 **** +BX = 2925 **** +BX = 2926 **** +BX = 2927 **** +BX = 2928 **** +BX = 2929 **** +BX = 2930 **** +BX = 2931 **** +BX = 2932 **** +--- Jet 0 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 0 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -2.09439/96 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -0.785398/126 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.479/-34 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.785398/18 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 432.5/866 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 39/79 + Phi [Rad/Hw]: 0.916298/21 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2933 **** +BX = 2934 **** +BX = 2935 **** +BX = 2936 **** +BX = 2937 **** +BX = 2938 **** +--- Jet 0 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.522/12 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 271/543 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 18/37 + Phi [Rad/Hw]: 1.9635/45 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2939 **** +BX = 2940 **** +BX = 2941 **** +BX = 2942 **** +BX = 2943 **** +BX = 2944 **** +BX = 2945 **** +BX = 2946 **** +BX = 2947 **** +BX = 2948 **** +BX = 2949 **** +BX = 2950 **** +BX = 2951 **** +BX = 2952 **** +BX = 2953 **** +BX = 2954 **** +BX = 2955 **** +BX = 2956 **** +BX = 2957 **** +--- Jet 0 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 379.5/760 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 23.5/48 + Phi [Rad/Hw]: -1.09083/119 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2958 **** +BX = 2959 **** +BX = 2960 **** +BX = 2961 **** +BX = 2962 **** +--- Jet 0 --- + Et [GeV/Hw]: 28/57 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.523599/12 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.566/-36 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.566/-36 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 266/533 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 10/21 + Phi [Rad/Hw]: -2.31256/91 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 2963 **** +BX = 2964 **** +BX = 2965 **** +BX = 2966 **** +BX = 2967 **** +BX = 2968 **** +BX = 2969 **** +BX = 2970 **** +BX = 2971 **** +--- Jet 0 --- + Et [GeV/Hw]: 38/77 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -3.09796/73 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 28/57 + Eta [rad/Hw]: 3.219/74 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 281/563 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 38/77 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 31.5/64 + Phi [Rad/Hw]: 0.174533/4 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 37.5/76 + Phi [Rad/Hw]: -0.0436333/143 +BX = 2972 **** +--- Jet 0 --- + Et [GeV/Hw]: 154/309 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 142.5/286 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 0/1 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 100/201 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 2.44346/56 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.5708/108 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 0 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 104.5/210 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 2.44346/56 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 48/97 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 0 +--- Tau 8 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -1.5708/108 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 604.5/1210 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 297/595 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 54/109 + Phi [Rad/Hw]: -0.174533/140 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 27.5/56 + Phi [Rad/Hw]: 0.261799/6 +BX = 2973 **** +--- Jet 0 --- + Et [GeV/Hw]: 73/147 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 72.5/146 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 33.5/68 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 6.5/14 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 35/71 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 2.00713/46 + Iso [Hw]: 0 +--- Tau 4 --- + Et [GeV/Hw]: 33/67 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 0 +--- Tau 5 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.957/-22 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 413.5/828 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 180/361 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 23.5/48 + Phi [Rad/Hw]: -1.78896/103 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 32.5/66 + Phi [Rad/Hw]: -1.39626/112 +BX = 2974 **** +BX = 2975 **** +BX = 2976 **** +BX = 2977 **** +BX = 2978 **** +BX = 2979 **** +BX = 2980 **** +BX = 2981 **** +BX = 2982 **** +BX = 2983 **** +BX = 2984 **** +BX = 2985 **** +BX = 2986 **** +BX = 2987 **** +BX = 2988 **** +BX = 2989 **** +BX = 2990 **** +BX = 2991 **** +BX = 2992 **** +BX = 2993 **** +BX = 2994 **** +BX = 2995 **** +BX = 2996 **** +BX = 2997 **** +BX = 2998 **** +BX = 2999 **** +BX = 3000 **** +BX = 3001 **** +BX = 3002 **** +BX = 3003 **** +BX = 3004 **** +BX = 3005 **** +BX = 3006 **** +BX = 3007 **** +--- Jet 0 --- + Et [GeV/Hw]: 39/79 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: -0.959931/122 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 0 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 271/543 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 39/79 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 11.5/24 + Phi [Rad/Hw]: -1.39626/112 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 38.5/78 + Phi [Rad/Hw]: 1.13446/26 +BX = 3008 **** +BX = 3009 **** +BX = 3010 **** +BX = 3011 **** +BX = 3012 **** +BX = 3013 **** +BX = 3014 **** +BX = 3015 **** +BX = 3016 **** +BX = 3017 **** +BX = 3018 **** +BX = 3019 **** +--- Jet 0 --- + Et [GeV/Hw]: 37.5/76 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.9575/45 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.9575/45 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 26/53 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 0.174533/4 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 1.9635/45 + Iso [Hw]: 0 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 410/821 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 37.5/76 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 8/17 + Phi [Rad/Hw]: 1.4399/33 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 37/75 + Phi [Rad/Hw]: 1.48353/34 +BX = 3020 **** +BX = 3021 **** +BX = 3022 **** +--- Jet 0 --- + Et [GeV/Hw]: 32.5/66 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 28/57 + Eta [rad/Hw]: -3.741/-86 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.48353/110 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.566/-36 + Phi [rad/Hw]: -1.5708/108 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.22173/116 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 450/901 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 32.5/66 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 32.5/66 + Phi [Rad/Hw]: 3.09796/71 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 32/65 + Phi [Rad/Hw]: 0.829031/19 +BX = 3023 **** +BX = 3024 **** +BX = 3025 **** +BX = 3026 **** +BX = 3027 **** +BX = 3028 **** +BX = 3029 **** +BX = 3030 **** +BX = 3031 **** +BX = 3032 **** +BX = 3033 **** +BX = 3034 **** +BX = 3035 **** +BX = 3036 **** +BX = 3037 **** +BX = 3038 **** +BX = 3039 **** +BX = 3040 **** +--- Jet 0 --- + Et [GeV/Hw]: 28/57 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.479/-34 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.741765/127 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Tau 6 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.96706/76 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: 0/0 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 458.5/918 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 9/19 + Phi [Rad/Hw]: -2.53073/86 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 3041 **** +BX = 3042 **** +BX = 3043 **** +BX = 3044 **** +BX = 3045 **** +BX = 3046 **** +BX = 3047 **** +BX = 3048 **** +BX = 3049 **** +BX = 3050 **** +BX = 3051 **** +BX = 3052 **** +BX = 3053 **** +BX = 3054 **** +BX = 3055 **** +BX = 3056 **** +BX = 3057 **** +BX = 3058 **** +BX = 3059 **** +BX = 3060 **** +BX = 3061 **** +BX = 3062 **** +BX = 3063 **** +BX = 3064 **** +BX = 3065 **** +BX = 3066 **** +BX = 3067 **** +BX = 3068 **** +BX = 3069 **** +BX = 3070 **** +BX = 3071 **** +BX = 3072 **** +BX = 3073 **** +BX = 3074 **** +BX = 3075 **** +BX = 3076 **** +BX = 3077 **** +BX = 3078 **** +BX = 3079 **** +BX = 3080 **** +BX = 3081 **** +BX = 3082 **** +BX = 3083 **** +BX = 3084 **** +BX = 3085 **** +BX = 3086 **** +BX = 3087 **** +BX = 3088 **** +BX = 3089 **** +BX = 3090 **** +BX = 3091 **** +BX = 3092 **** +BX = 3093 **** +BX = 3094 **** +BX = 3095 **** +BX = 3096 **** +BX = 3097 **** +BX = 3098 **** +BX = 3099 **** +BX = 3100 **** +BX = 3101 **** +BX = 3102 **** +BX = 3103 **** +BX = 3104 **** +BX = 3105 **** +BX = 3106 **** +BX = 3107 **** +BX = 3108 **** +BX = 3109 **** +BX = 3110 **** +BX = 3111 **** +BX = 3112 **** +BX = 3113 **** +BX = 3114 **** +BX = 3115 **** +BX = 3116 **** +BX = 3117 **** +BX = 3118 **** +BX = 3119 **** +BX = 3120 **** +BX = 3121 **** +BX = 3122 **** +BX = 3123 **** +BX = 3124 **** +BX = 3125 **** +BX = 3126 **** +BX = 3127 **** +BX = 3128 **** +BX = 3129 **** +BX = 3130 **** +BX = 3131 **** +BX = 3132 **** +BX = 3133 **** +BX = 3134 **** +BX = 3135 **** +BX = 3136 **** +BX = 3137 **** +BX = 3138 **** +BX = 3139 **** +BX = 3140 **** +BX = 3141 **** +BX = 3142 **** +BX = 3143 **** +BX = 3144 **** +BX = 3145 **** +BX = 3146 **** +BX = 3147 **** +BX = 3148 **** +--- Jet 0 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 27/55 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 11.5/24 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.13446/26 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.13446/26 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 0.785398/18 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: 0.785398/18 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 2.79253/64 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 491.5/984 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 10.5/22 + Phi [Rad/Hw]: 1.91986/44 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 3149 **** +BX = 3150 **** +--- Jet 0 --- + Et [GeV/Hw]: 33.5/68 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: 1.6095/37 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 1.39626/32 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.044/-24 + Phi [rad/Hw]: 1.13446/26 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -0.0872668/142 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -2.74889/81 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 1.653/38 + Phi [rad/Hw]: -2.26893/92 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: -0.523599/132 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 483/967 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 33.5/68 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 15/31 + Phi [Rad/Hw]: -1.0472/120 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 33/67 + Phi [Rad/Hw]: 0.349066/8 +BX = 3151 **** +BX = 3152 **** +BX = 3153 **** +BX = 3154 **** +BX = 3155 **** +BX = 3156 **** +BX = 3157 **** +BX = 3158 **** +BX = 3159 **** +--- Jet 0 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.0872665/2 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.2185/51 + Phi [rad/Hw]: -2.00713/98 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: 2.05076/47 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 2.44346/56 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 519.5/1040 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 24/49 + Phi [Rad/Hw]: 0.654498/15 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 3160 **** +--- Jet 0 --- + Et [GeV/Hw]: 39.5/80 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 1.5/4 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 17/35 + Eta [rad/Hw]: -0.609/-14 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.696/-16 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.044/24 + Phi [rad/Hw]: -2.53073/86 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 360/721 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 39.5/80 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 10/21 + Phi [Rad/Hw]: 2.61799/60 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 39/79 + Phi [Rad/Hw]: -2.61799/84 +BX = 3161 **** +BX = 3162 **** +BX = 3163 **** +--- Jet 0 --- + Et [GeV/Hw]: 23.5/48 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: -2.44346/88 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 2.35619/54 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 452.5/906 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 15.5/32 + Phi [Rad/Hw]: -2.13803/95 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 3164 **** +BX = 3165 **** +BX = 3166 **** +BX = 3167 **** +BX = 3168 **** +BX = 3169 **** +BX = 3170 **** +BX = 3171 **** +BX = 3172 **** +BX = 3173 **** +BX = 3174 **** +--- Jet 0 --- + Et [GeV/Hw]: 45.5/92 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 8/17 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 0/1 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.8705/43 + Phi [rad/Hw]: 0.392699/9 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -2.87979/78 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: -2.87979/78 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.914/-44 + Phi [rad/Hw]: 0.872665/20 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 2.262/52 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 673.5/1348 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 45.5/92 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 36.5/74 + Phi [Rad/Hw]: -0.392699/135 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 45/91 + Phi [Rad/Hw]: -1.00356/121 +BX = 3175 **** +BX = 3176 **** +BX = 3177 **** +BX = 3178 **** +BX = 3179 **** +BX = 3180 **** +BX = 3181 **** +BX = 3182 **** +BX = 3183 **** +BX = 3184 **** +BX = 3185 **** +BX = 3186 **** +BX = 3187 **** +BX = 3188 **** +BX = 3189 **** +--- Jet 0 --- + Et [GeV/Hw]: 51.5/104 + Eta [rad/Hw]: -3.567/-82 + Phi [rad/Hw]: -2.31256/91 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 50/101 + Eta [rad/Hw]: -3.567/-82 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 22.5/46 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.22529/93 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.65806/106 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.174/4 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 0.654498/15 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 424/849 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 22/45 + Phi [Rad/Hw]: 2.96706/68 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 3190 **** +BX = 3191 **** +BX = 3192 **** +BX = 3193 **** +BX = 3194 **** +BX = 3195 **** +BX = 3196 **** +BX = 3197 **** +BX = 3198 **** +BX = 3199 **** +BX = 3200 **** +BX = 3201 **** +BX = 3202 **** +BX = 3203 **** +BX = 3204 **** +BX = 3205 **** +BX = 3206 **** +BX = 3207 **** +BX = 3208 **** +BX = 3209 **** +BX = 3210 **** +--- Jet 0 --- + Et [GeV/Hw]: 47.5/96 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 35/71 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 1.5/4 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.74/40 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: 0.916298/21 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -0.479966/133 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -1.7017/105 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.218/-28 + Phi [rad/Hw]: 0.174533/4 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 2.53073/58 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: 1.914/44 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: 1.74/40 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 0 +--- Tau 9 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 0 +--- Tau 11 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 526.5/1054 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 83/167 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 16/33 + Phi [Rad/Hw]: 1.5708/36 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 42.5/86 + Phi [Rad/Hw]: 1.00356/23 +BX = 3211 **** +BX = 3212 **** +--- Jet 0 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 14/29 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 1.7017/39 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 51.5/104 + Eta [rad/Hw]: 3.567/82 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 35/71 + Eta [rad/Hw]: 3.393/78 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 34.5/70 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- Jet 7 --- + Et [GeV/Hw]: 18.5/38 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 0 +--- Jet 8 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 0 +--- E/Gamma 3 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: 0.785398/18 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -3.01069/75 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 0.829031/19 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.261/-6 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -2.001/-46 + Phi [rad/Hw]: 1.65806/38 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.522/-12 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -1.00356/121 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 391/783 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 34.5/70 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 32.5/66 + Phi [Rad/Hw]: 1.52716/35 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 34/69 + Phi [Rad/Hw]: 0.0436332/1 +BX = 3213 **** +BX = 3214 **** +BX = 3215 **** +BX = 3216 **** +BX = 3217 **** +BX = 3218 **** +BX = 3219 **** +BX = 3220 **** +BX = 3221 **** +BX = 3222 **** +BX = 3223 **** +BX = 3224 **** +BX = 3225 **** +BX = 3226 **** +BX = 3227 **** +BX = 3228 **** +BX = 3229 **** +BX = 3230 **** +BX = 3231 **** +BX = 3232 **** +BX = 3233 **** +BX = 3234 **** +BX = 3235 **** +BX = 3236 **** +BX = 3237 **** +BX = 3238 **** +BX = 3239 **** +BX = 3240 **** +BX = 3241 **** +BX = 3242 **** +BX = 3243 **** +BX = 3244 **** +--- Jet 0 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 2.22529/51 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 12.5/26 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.3915/-9 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -0.654498/129 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.3045/7 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 2.18166/50 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.48353/34 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 244.5/490 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 16.5/34 + Phi [Rad/Hw]: 0.261799/6 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 3245 **** +BX = 3246 **** +BX = 3247 **** +BX = 3248 **** +BX = 3249 **** +BX = 3250 **** +BX = 3251 **** +BX = 3252 **** +--- Jet 0 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 1.5/4 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 0.523599/12 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -0.8265/-19 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -2.18166/94 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -2.48709/87 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.6965/39 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 2.92343/67 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 334/669 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 15.5/32 + Phi [Rad/Hw]: 0.218166/5 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 3253 **** +BX = 3254 **** +BX = 3255 **** +BX = 3256 **** +BX = 3257 **** +BX = 3258 **** +BX = 3259 **** +BX = 3260 **** +BX = 3261 **** +--- Jet 0 --- + Et [GeV/Hw]: 15/31 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 2.0944/48 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.6095/-37 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 251/503 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 13.5/28 + Phi [Rad/Hw]: 1.65806/38 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 3262 **** +BX = 3263 **** +BX = 3264 **** +--- Jet 0 --- + Et [GeV/Hw]: 95/191 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 86.5/174 + Eta [rad/Hw]: -3.741/-86 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 9/19 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 0 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 43.5/88 + Eta [rad/Hw]: -1.827/-42 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 1.52716/35 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -0.0872668/142 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -1.87623/101 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: 1.74533/40 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 60.5/122 + Eta [rad/Hw]: -1.827/-42 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 3.14159/72 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 1.218/28 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.783/18 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 0 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 503/1007 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 95/191 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 65.5/132 + Phi [Rad/Hw]: -0.785398/126 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 94.5/190 + Phi [Rad/Hw]: -0.567232/131 +BX = 3265 **** +BX = 3266 **** +BX = 3267 **** +BX = 3268 **** +BX = 3269 **** +BX = 3270 **** +BX = 3271 **** +BX = 3272 **** +BX = 3273 **** +BX = 3274 **** +BX = 3275 **** +BX = 3276 **** +--- Jet 0 --- + Et [GeV/Hw]: 29/59 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -0.4785/-11 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.52716/109 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 19/39 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.0875/-25 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 0 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 242.5/486 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 16/33 + Phi [Rad/Hw]: -2.13803/95 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 3277 **** +BX = 3278 **** +BX = 3279 **** +BX = 3280 **** +BX = 3281 **** +BX = 3282 **** +BX = 3283 **** +BX = 3284 **** +BX = 3285 **** +BX = 3286 **** +BX = 3287 **** +BX = 3288 **** +BX = 3289 **** +BX = 3290 **** +BX = 3291 **** +BX = 3292 **** +BX = 3293 **** +BX = 3294 **** +BX = 3295 **** +BX = 3296 **** +BX = 3297 **** +BX = 3298 **** +BX = 3299 **** +BX = 3300 **** +BX = 3301 **** +BX = 3302 **** +BX = 3303 **** +BX = 3304 **** +BX = 3305 **** +BX = 3306 **** +BX = 3307 **** +BX = 3308 **** +BX = 3309 **** +BX = 3310 **** +BX = 3311 **** +BX = 3312 **** +BX = 3313 **** +BX = 3314 **** +BX = 3315 **** +BX = 3316 **** +BX = 3317 **** +BX = 3318 **** +BX = 3319 **** +BX = 3320 **** +BX = 3321 **** +BX = 3322 **** +BX = 3323 **** +BX = 3324 **** +BX = 3325 **** +BX = 3326 **** +BX = 3327 **** +--- Jet 0 --- + Et [GeV/Hw]: 28/57 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 1.61443/37 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: 1.00356/23 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 2.1315/49 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 2.1315/49 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -2.262/-52 + Phi [rad/Hw]: 0.218166/5 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: -0.783/-18 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 13/27 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -0.87/-20 + Phi [rad/Hw]: 0.959931/22 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: 3.01069/69 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 311/623 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 11/23 + Phi [Rad/Hw]: 2.13803/49 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 3328 **** +BX = 3329 **** +BX = 3330 **** +BX = 3331 **** +BX = 3332 **** +BX = 3333 **** +BX = 3334 **** +BX = 3335 **** +BX = 3336 **** +BX = 3337 **** +BX = 3338 **** +BX = 3339 **** +BX = 3340 **** +--- Jet 0 --- + Et [GeV/Hw]: 59.5/120 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 35.5/72 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: 2.57436/59 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 35/71 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -0.305433/137 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 28/57 + Eta [rad/Hw]: -3.0015/-69 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -1.305/-30 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 0 +--- Tau 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -3.05433/74 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.6525/-15 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 33.5/68 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: 1.479/34 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 15.5/32 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: -0.349066/136 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 1.479/34 + Phi [rad/Hw]: 0.523599/12 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -1.131/-26 + Phi [rad/Hw]: 2.96706/68 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 300.5/602 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 131/263 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 14/29 + Phi [Rad/Hw]: 2.0944/48 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 60/121 + Phi [Rad/Hw]: 2.83616/65 +BX = 3341 **** +BX = 3342 **** +BX = 3343 **** +BX = 3344 **** +BX = 3345 **** +BX = 3346 **** +BX = 3347 **** +BX = 3348 **** +BX = 3349 **** +BX = 3350 **** +BX = 3351 **** +BX = 3352 **** +BX = 3353 **** +BX = 3354 **** +BX = 3355 **** +BX = 3356 **** +BX = 3357 **** +BX = 3358 **** +BX = 3359 **** +BX = 3360 **** +BX = 3361 **** +BX = 3362 **** +BX = 3363 **** +BX = 3364 **** +BX = 3365 **** +--- Jet 0 --- + Et [GeV/Hw]: 95/191 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 61/123 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 36/73 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.83616/65 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 27.5/56 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.2185/-51 + Phi [rad/Hw]: -1.74533/104 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.001/46 + Phi [rad/Hw]: -2.92343/77 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 5.5/12 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 3 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 2.3925/55 + Phi [rad/Hw]: 0.0436332/1 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 0 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.087/2 + Phi [rad/Hw]: 1.5708/36 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: -2.70526/82 + Iso [Hw]: 0 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.39983/55 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 1.5225/35 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 0 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.1315/-49 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 60.5/122 + Eta [rad/Hw]: -1.914/-44 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 29/59 + Eta [rad/Hw]: -0.174/-4 + Phi [rad/Hw]: -2.79253/80 + Iso [Hw]: 0 +--- Tau 8 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: 0.1305/3 + Phi [rad/Hw]: 2.87979/66 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 0.1309/3 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 1.914/44 + Phi [rad/Hw]: 1.8326/42 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: -0.348/-8 + Phi [rad/Hw]: 2.26893/52 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 555/1111 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 193/387 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 17.5/36 + Phi [Rad/Hw]: -1.74533/104 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 37/75 + Phi [Rad/Hw]: -1.39626/112 +BX = 3366 **** +BX = 3367 **** +BX = 3368 **** +BX = 3369 **** +BX = 3370 **** +BX = 3371 **** +BX = 3372 **** +BX = 3373 **** +BX = 3374 **** +BX = 3375 **** +BX = 3376 **** +BX = 3377 **** +BX = 3378 **** +BX = 3379 **** +BX = 3380 **** +BX = 3381 **** +BX = 3382 **** +BX = 3383 **** +BX = 3384 **** +BX = 3385 **** +BX = 3386 **** +BX = 3387 **** +BX = 3388 **** +BX = 3389 **** +--- Jet 0 --- + Et [GeV/Hw]: 38.5/78 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.9135/21 + Phi [rad/Hw]: 0.567232/13 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.9135/-21 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 25/51 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: -2.61799/84 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -0.174533/140 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.4785/11 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.435/-10 + Phi [rad/Hw]: 2.61799/60 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 252.5/506 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 38.5/78 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 9/19 + Phi [Rad/Hw]: 0.1309/3 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 38/77 + Phi [Rad/Hw]: 0.523599/12 +BX = 3390 **** +BX = 3391 **** +BX = 3392 **** +BX = 3393 **** +BX = 3394 **** +BX = 3395 **** +BX = 3396 **** +BX = 3397 **** +BX = 3398 **** +BX = 3399 **** +BX = 3400 **** +BX = 3401 **** +BX = 3402 **** +BX = 3403 **** +BX = 3404 **** +BX = 3405 **** +BX = 3406 **** +BX = 3407 **** +BX = 3408 **** +BX = 3409 **** +--- Jet 0 --- + Et [GeV/Hw]: 24.5/50 + Eta [rad/Hw]: -3.393/-78 + Phi [rad/Hw]: -0.567232/131 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.829032/125 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -1.78896/103 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 20/41 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -2.3925/-55 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 4/9 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.44346/56 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 0 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: -0.1309/141 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: 1.26536/29 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 21.5/44 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 13.5/28 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -1.74533/104 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.392/32 + Phi [rad/Hw]: 0.610865/14 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.44346/56 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 1.0875/25 + Phi [rad/Hw]: -2.35619/90 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: -0.2175/-5 + Phi [rad/Hw]: -1.61443/107 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 346.5/694 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 7/15 + Phi [Rad/Hw]: 1.1781/27 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 3410 **** +BX = 3411 **** +BX = 3412 **** +BX = 3413 **** +BX = 3414 **** +BX = 3415 **** +BX = 3416 **** +--- Jet 0 --- + Et [GeV/Hw]: 26.5/54 + Eta [rad/Hw]: 1.0005/23 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 6.5/14 + Eta [rad/Hw]: 0.2175/5 + Phi [rad/Hw]: 0.741765/17 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 1.35263/31 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 0 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 0.435/10 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 0.305433/7 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.5225/-35 + Phi [rad/Hw]: 1.78896/41 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -1.8326/102 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.6965/-39 + Phi [rad/Hw]: -2.83616/79 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 18/37 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 1.309/30 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 0.6525/15 + Phi [rad/Hw]: -2.66163/83 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0/0 + Phi [rad/Hw]: 2.79253/64 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 9.5/20 + Eta [rad/Hw]: 0.696/16 + Phi [rad/Hw]: -1.0472/120 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 0.261/6 + Phi [rad/Hw]: 0.785398/18 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: -0.436333/134 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 359.5/720 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: -0.5/0 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 27/55 + Phi [Rad/Hw]: -1.74533/104 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: -0.5/0 + Phi [Rad/Hw]: -1.4399/111 +BX = 3417 **** +BX = 3418 **** +BX = 3419 **** +BX = 3420 **** +BX = 3421 **** +BX = 3422 **** +BX = 3423 **** +BX = 3424 **** +BX = 3425 **** +--- Jet 0 --- + Et [GeV/Hw]: 36/73 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: -0.218166/139 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 32.5/66 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -3.915/-90 + Phi [rad/Hw]: -2.13803/95 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 16.5/34 + Eta [rad/Hw]: 3.219/74 + Phi [rad/Hw]: 1.1781/27 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: 1.3485/31 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -1.2615/-29 + Phi [rad/Hw]: 2.74889/63 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 2.5/6 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: -1.35263/113 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.0005/-23 + Phi [rad/Hw]: -2.39983/89 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3.5/8 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 0 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 3 +--- E/Gamma 8 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 9 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.7395/17 + Phi [rad/Hw]: 0.479966/11 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.2615/29 + Phi [rad/Hw]: -0.392699/135 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 1.7835/41 + Phi [rad/Hw]: 1.09083/25 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: 0.0435/1 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -1.653/-38 + Phi [rad/Hw]: 1.4399/33 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 25.5/52 + Eta [rad/Hw]: -1.914/-44 + Phi [rad/Hw]: -0.2618/138 + Iso [Hw]: 1 +--- Tau 7 --- + Et [GeV/Hw]: 22/45 + Eta [rad/Hw]: -1.7835/-41 + Phi [rad/Hw]: 2.70526/62 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 11/23 + Eta [rad/Hw]: 1.305/30 + Phi [rad/Hw]: -0.872665/124 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.3485/-31 + Phi [rad/Hw]: 0.436332/10 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -1.392/-32 + Phi [rad/Hw]: 2.13803/49 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 5/11 + Eta [rad/Hw]: 0.8265/19 + Phi [rad/Hw]: 1.91986/44 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 420/841 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 69/139 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 8/17 + Phi [Rad/Hw]: -1.78896/103 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 6/13 + Phi [Rad/Hw]: -2.44346/88 +BX = 3426 **** +BX = 3427 **** +BX = 3428 **** +BX = 3429 **** +BX = 3430 **** +BX = 3431 **** +BX = 3432 **** +BX = 3433 **** +BX = 3434 **** +--- Jet 0 --- + Et [GeV/Hw]: 17.5/36 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 0 +--- Jet 1 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 0 +--- Jet 2 --- + Et [GeV/Hw]: 9/19 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 0 +--- Jet 3 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 0 +--- Jet 4 --- + Et [GeV/Hw]: 65.5/132 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 5 --- + Et [GeV/Hw]: 45.5/92 + Eta [rad/Hw]: -3.741/-86 + Phi [rad/Hw]: -1.26536/115 + Iso [Hw]: 0 +--- Jet 6 --- + Et [GeV/Hw]: 24/49 + Eta [rad/Hw]: -0.1305/-3 + Phi [rad/Hw]: -1.9635/99 + Iso [Hw]: 0 +--- Jet 7 --- + Et [GeV/Hw]: 23.5/48 + Eta [rad/Hw]: 0.5655/13 + Phi [rad/Hw]: -1.09083/119 + Iso [Hw]: 0 +--- Jet 8 --- + Et [GeV/Hw]: 20.5/42 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 0 +--- Jet 9 --- + Et [GeV/Hw]: 19.5/40 + Eta [rad/Hw]: 0.3915/9 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 0 +--- E/Gamma 0 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 2.088/48 + Phi [rad/Hw]: -1.4399/111 + Iso [Hw]: 3 +--- E/Gamma 1 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: -1.1745/-27 + Phi [rad/Hw]: 3.09796/71 + Iso [Hw]: 3 +--- E/Gamma 2 --- + Et [GeV/Hw]: 10/21 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 3 +--- E/Gamma 3 --- + Et [GeV/Hw]: 4.5/10 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 3 +--- E/Gamma 4 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 0 +--- E/Gamma 5 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.4355/-33 + Phi [rad/Hw]: 1.22173/28 + Iso [Hw]: 3 +--- E/Gamma 6 --- + Et [GeV/Hw]: 3/7 + Eta [rad/Hw]: -1.8705/-43 + Phi [rad/Hw]: 2.66163/61 + Iso [Hw]: 3 +--- E/Gamma 7 --- + Et [GeV/Hw]: 2/5 + Eta [rad/Hw]: 1.1745/27 + Phi [rad/Hw]: -2.05076/97 + Iso [Hw]: 3 +--- Tau 0 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: 1.4355/33 + Phi [rad/Hw]: -0.0436333/143 + Iso [Hw]: 1 +--- Tau 1 --- + Et [GeV/Hw]: 7.5/16 + Eta [rad/Hw]: 0.87/20 + Phi [rad/Hw]: -1.39626/112 + Iso [Hw]: 1 +--- Tau 2 --- + Et [GeV/Hw]: 7/15 + Eta [rad/Hw]: -2.088/-48 + Phi [rad/Hw]: 0.698132/16 + Iso [Hw]: 1 +--- Tau 3 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: 0.957/22 + Phi [rad/Hw]: 3.05433/70 + Iso [Hw]: 1 +--- Tau 4 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.3045/-7 + Phi [rad/Hw]: 1.87623/43 + Iso [Hw]: 1 +--- Tau 5 --- + Et [GeV/Hw]: 6/13 + Eta [rad/Hw]: -0.5655/-13 + Phi [rad/Hw]: -0.916298/123 + Iso [Hw]: 1 +--- Tau 6 --- + Et [GeV/Hw]: 29/59 + Eta [rad/Hw]: 1.131/26 + Phi [rad/Hw]: -1.309/114 + Iso [Hw]: 0 +--- Tau 7 --- + Et [GeV/Hw]: 16/33 + Eta [rad/Hw]: -0.087/-2 + Phi [rad/Hw]: -1.91986/100 + Iso [Hw]: 1 +--- Tau 8 --- + Et [GeV/Hw]: 14.5/30 + Eta [rad/Hw]: -0.0435/-1 + Phi [rad/Hw]: -2.57436/85 + Iso [Hw]: 1 +--- Tau 9 --- + Et [GeV/Hw]: 12/25 + Eta [rad/Hw]: 0.348/8 + Phi [rad/Hw]: 2.31256/53 + Iso [Hw]: 1 +--- Tau 10 --- + Et [GeV/Hw]: 10.5/22 + Eta [rad/Hw]: 0.609/14 + Phi [rad/Hw]: -1.13446/118 + Iso [Hw]: 1 +--- Tau 11 --- + Et [GeV/Hw]: 8.5/18 + Eta [rad/Hw]: -0.7395/-17 + Phi [rad/Hw]: 2.48709/57 + Iso [Hw]: 1 +--- Sum 0 --- +Type: TotalET + Et [GeV/Hw]: 541.5/1084 +--- Sum 1 --- +Type: TotalHT + Et [GeV/Hw]: 65.5/132 +--- Sum 2 --- +Type: ETMiss + Et [GeV/Hw]: 27/55 + Phi [Rad/Hw]: 0.479966/11 +--- Sum 3 --- +Type: HTMiss + Et [GeV/Hw]: 65/131 + Phi [Rad/Hw]: 1.78896/41 +BX = 3435 **** +BX = 3436 **** +BX = 3437 **** +BX = 3438 **** +BX = 3439 **** +BX = 3440 **** +BX = 3441 **** +BX = 3442 **** +BX = 3443 **** +BX = 3444 **** +BX = 3445 **** +BX = 3446 **** +BX = 3447 **** +BX = 3448 **** +BX = 3449 **** +BX = 3450 **** +BX = 3451 **** +BX = 3452 **** +BX = 3453 **** +BX = 3454 **** +BX = 3455 **** +BX = 3456 **** +BX = 3457 **** +BX = 3458 **** +BX = 3459 **** +BX = 3460 **** +BX = 3461 **** +BX = 3462 **** +BX = 3463 **** +BX = 3464 **** +BX = 3465 **** +BX = 3466 **** +BX = 3467 **** +BX = 3468 **** +BX = 3469 **** +BX = 3470 **** +BX = 3471 **** +BX = 3472 **** +BX = 3473 **** +BX = 3474 **** +BX = 3475 **** +BX = 3476 **** +BX = 3477 **** +BX = 3478 **** +BX = 3479 **** +BX = 3480 **** +BX = 3481 **** +BX = 3482 **** +BX = 3483 **** +BX = 3484 **** +BX = 3485 **** +BX = 3486 **** +BX = 3487 **** +BX = 3488 **** +BX = 3489 **** +BX = 3490 **** +BX = 3491 **** +BX = 3492 **** +BX = 3493 **** +BX = 3494 **** +BX = 3495 **** +BX = 3496 **** +BX = 3497 **** +BX = 3498 **** +BX = 3499 **** +BX = 3500 **** +BX = 3501 **** +BX = 3502 **** +BX = 3503 **** +BX = 3504 **** +BX = 3505 **** +BX = 3506 **** +BX = 3507 **** +BX = 3508 **** +BX = 3509 **** +BX = 3510 **** +BX = 3511 **** +BX = 3512 **** +BX = 3513 **** +BX = 3514 **** +BX = 3515 **** +BX = 3516 **** +BX = 3517 **** +BX = 3518 **** +BX = 3519 **** +BX = 3520 **** +BX = 3521 **** +BX = 3522 **** +BX = 3523 **** +BX = 3524 **** +BX = 3525 **** +BX = 3526 **** +BX = 3527 **** +BX = 3528 **** +BX = 3529 **** +BX = 3530 **** +BX = 3531 **** +BX = 3532 **** +BX = 3533 **** +BX = 3534 **** +BX = 3535 **** +BX = 3536 **** +BX = 3537 **** +BX = 3538 **** +BX = 3539 **** +BX = 3540 **** +BX = 3541 **** +BX = 3542 **** +BX = 3543 **** +BX = 3544 **** +BX = 3545 **** +BX = 3546 **** +BX = 3547 **** +BX = 3548 **** +BX = 3549 **** +BX = 3550 **** +BX = 3551 **** +BX = 3552 **** +BX = 3553 **** +BX = 3554 **** +BX = 3555 **** +BX = 3556 **** +BX = 3557 **** +BX = 3558 **** +BX = 3559 **** +BX = 3560 **** +BX = 3561 **** +BX = 3562 **** +BX = 3563 **** +BX = 3564 **** diff --git a/L1TriggerScouting/Utilities/test/dumpScObjects.py b/L1TriggerScouting/Utilities/test/dumpScObjects.py new file mode 100644 index 0000000000000..698f89d55fcee --- /dev/null +++ b/L1TriggerScouting/Utilities/test/dumpScObjects.py @@ -0,0 +1,54 @@ +import FWCore.ParameterSet.Config as cms +import FWCore.ParameterSet.VarParsing as VarParsing + +options = VarParsing.VarParsing ('analysis') + +options.register ('numOrbits', + -1, + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.int, + "Number of orbits to process") + +options.register ('filePath', + "file:/dev/shm/PoolOutputTest.root", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "Sub lumisection number to process") + +options.parseArguments() + +process = cms.Process( "DUMP" ) + + +process.maxEvents = cms.untracked.PSet( + input = cms.untracked.int32(options.numOrbits) +) + +process.load("FWCore.MessageService.MessageLogger_cfi") + +process.source = cms.Source("PoolSource", + fileNames = cms.untracked.vstring(options.filePath) +) + +process.dump = cms.EDAnalyzer("DumpScObjects", + #gmtMuonsTag = cms.InputTag("GmtUnpacker", "", "SCPU"), + caloJetsTag = cms.InputTag("CaloUnpacker", "", "SCPU"), + caloEGammasTag = cms.InputTag("CaloUnpacker", "", "SCPU"), + caloTausTag = cms.InputTag("CaloUnpacker", "", "SCPU"), + caloEtSumsTag = cms.InputTag("CaloUnpacker", "", "SCPU"), + minBx = cms.untracked.uint32(0), + maxBx = cms.untracked.uint32(3564), + + skipEmptyBx = cms.untracked.bool(False), + + checkMuons = cms.untracked.bool(False), + + #searchEvent = cms.untracked.bool(True), + #orbitNumber = cms.untracked.uint32(88870912), + #searchStartBx = cms.untracked.uint32(3385), + #searchStopBx = cms.untracked.uint32(3390), +) + +process.p = cms.Path( + process.dump +) \ No newline at end of file From b55f10bf675163017ca43f92eabbcf5ae2bd4574 Mon Sep 17 00:00:00 2001 From: matteo Date: Wed, 22 Nov 2023 19:53:28 +0100 Subject: [PATCH 036/281] remove dummy file --- L1TriggerScouting/Utilities/plugins/tmp.out | 28419 ------------------ 1 file changed, 28419 deletions(-) delete mode 100644 L1TriggerScouting/Utilities/plugins/tmp.out diff --git a/L1TriggerScouting/Utilities/plugins/tmp.out b/L1TriggerScouting/Utilities/plugins/tmp.out deleted file mode 100644 index 97ae78f8c6d44..0000000000000 --- a/L1TriggerScouting/Utilities/plugins/tmp.out +++ /dev/null @@ -1,28419 +0,0 @@ -BX = 0 **** -BX = 1 **** -BX = 2 **** -BX = 3 **** -BX = 4 **** -BX = 5 **** -BX = 6 **** -BX = 7 **** -BX = 8 **** -BX = 9 **** -BX = 10 **** -BX = 11 **** -BX = 12 **** -BX = 13 **** -BX = 14 **** -BX = 15 **** -BX = 16 **** -BX = 17 **** -BX = 18 **** -BX = 19 **** -BX = 20 **** -BX = 21 **** -BX = 22 **** -BX = 23 **** -BX = 24 **** -BX = 25 **** -BX = 26 **** -BX = 27 **** -BX = 28 **** -BX = 29 **** -BX = 30 **** -BX = 31 **** -BX = 32 **** -BX = 33 **** -BX = 34 **** -BX = 35 **** -BX = 36 **** -BX = 37 **** -BX = 38 **** -BX = 39 **** -BX = 40 **** -BX = 41 **** -BX = 42 **** -BX = 43 **** -BX = 44 **** -BX = 45 **** -BX = 46 **** -BX = 47 **** -BX = 48 **** -BX = 49 **** -BX = 50 **** -BX = 51 **** -BX = 52 **** -BX = 53 **** -BX = 54 **** -BX = 55 **** -BX = 56 **** -BX = 57 **** -BX = 58 **** -BX = 59 **** -BX = 60 **** -BX = 61 **** -BX = 62 **** -BX = 63 **** -BX = 64 **** -BX = 65 **** -BX = 66 **** -BX = 67 **** -BX = 68 **** -BX = 69 **** -BX = 70 **** -BX = 71 **** -BX = 72 **** -BX = 73 **** -BX = 74 **** -BX = 75 **** -BX = 76 **** -BX = 77 **** -BX = 78 **** -BX = 79 **** -BX = 80 **** -BX = 81 **** -BX = 82 **** -BX = 83 **** -BX = 84 **** -BX = 85 **** -BX = 86 **** -BX = 87 **** -BX = 88 **** -BX = 89 **** -BX = 90 **** -BX = 91 **** -BX = 92 **** -BX = 93 **** -BX = 94 **** -BX = 95 **** -BX = 96 **** -BX = 97 **** -BX = 98 **** -BX = 99 **** -BX = 100 **** -BX = 101 **** -BX = 102 **** -BX = 103 **** -BX = 104 **** -BX = 105 **** -BX = 106 **** -BX = 107 **** -BX = 108 **** -BX = 109 **** -BX = 110 **** -BX = 111 **** -BX = 112 **** -BX = 113 **** -BX = 114 **** -BX = 115 **** -BX = 116 **** -BX = 117 **** -BX = 118 **** -BX = 119 **** -BX = 120 **** -BX = 121 **** -BX = 122 **** -BX = 123 **** -BX = 124 **** -BX = 125 **** -BX = 126 **** -BX = 127 **** -BX = 128 **** -BX = 129 **** -BX = 130 **** -BX = 131 **** -BX = 132 **** -BX = 133 **** -BX = 134 **** -BX = 135 **** -BX = 136 **** -BX = 137 **** -BX = 138 **** -BX = 139 **** -BX = 140 **** -BX = 141 **** -BX = 142 **** -BX = 143 **** -BX = 144 **** -BX = 145 **** -BX = 146 **** -BX = 147 **** -BX = 148 **** -BX = 149 **** -BX = 150 **** -BX = 151 **** -BX = 152 **** -BX = 153 **** ---- Jet 0 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 287/575 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 9.5/20 - Phi [Rad/Hw]: 1.26536/29 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 154 **** -BX = 155 **** -BX = 156 **** -BX = 157 **** -BX = 158 **** -BX = 159 **** -BX = 160 **** -BX = 161 **** -BX = 162 **** -BX = 163 **** ---- Jet 0 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: -3.0015/-69 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 20/41 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 3.219/74 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: 2.7405/63 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 7 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 638/1277 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 14/29 - Phi [Rad/Hw]: -2.70526/82 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 164 **** -BX = 165 **** -BX = 166 **** -BX = 167 **** -BX = 168 **** -BX = 169 **** -BX = 170 **** -BX = 171 **** -BX = 172 **** -BX = 173 **** -BX = 174 **** -BX = 175 **** ---- Jet 0 --- - Et [GeV/Hw]: 29.5/60 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.74/-40 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 10 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 1.9575/45 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: 2.3055/53 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.74/-40 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 460.5/922 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 19/39 - Phi [Rad/Hw]: -0.305433/137 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 176 **** -BX = 177 **** -BX = 178 **** -BX = 179 **** -BX = 180 **** -BX = 181 **** -BX = 182 **** -BX = 183 **** ---- Jet 0 --- - Et [GeV/Hw]: 28.5/58 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 27/55 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 298.5/598 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 5/11 - Phi [Rad/Hw]: 1.4399/33 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 184 **** -BX = 185 **** -BX = 186 **** -BX = 187 **** -BX = 188 **** -BX = 189 **** -BX = 190 **** -BX = 191 **** -BX = 192 **** -BX = 193 **** -BX = 194 **** -BX = 195 **** -BX = 196 **** -BX = 197 **** ---- Jet 0 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 39.5/80 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -3.0015/-69 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 7 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 6.5/14 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.566/-36 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Tau 6 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 587.5/1176 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 39.5/80 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 21.5/44 - Phi [Rad/Hw]: 1.5708/36 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 39/79 - Phi [Rad/Hw]: 0.741765/17 -BX = 198 **** -BX = 199 **** -BX = 200 **** -BX = 201 **** -BX = 202 **** -BX = 203 **** -BX = 204 **** -BX = 205 **** -BX = 206 **** -BX = 207 **** -BX = 208 **** -BX = 209 **** ---- Jet 0 --- - Et [GeV/Hw]: 37/75 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 32.5/66 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 2.79253/64 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 475.5/952 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 70/141 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 22/45 - Phi [Rad/Hw]: 1.48353/34 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 67.5/136 - Phi [Rad/Hw]: 2.13803/49 -BX = 210 **** -BX = 211 **** -BX = 212 **** -BX = 213 **** -BX = 214 **** -BX = 215 **** -BX = 216 **** -BX = 217 **** -BX = 218 **** -BX = 219 **** -BX = 220 **** ---- Jet 0 --- - Et [GeV/Hw]: 50.5/102 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -3.567/-82 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 673.5/1348 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 50.5/102 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 20/41 - Phi [Rad/Hw]: 3.09796/71 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 50/101 - Phi [Rad/Hw]: 2.26893/52 -BX = 221 **** -BX = 222 **** -BX = 223 **** -BX = 224 **** -BX = 225 **** -BX = 226 **** -BX = 227 **** -BX = 228 **** -BX = 229 **** -BX = 230 **** -BX = 231 **** -BX = 232 **** -BX = 233 **** -BX = 234 **** -BX = 235 **** -BX = 236 **** -BX = 237 **** -BX = 238 **** -BX = 239 **** -BX = 240 **** ---- Jet 0 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 494/989 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 33.5/68 - Phi [Rad/Hw]: -1.61443/107 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 241 **** -BX = 242 **** -BX = 243 **** -BX = 244 **** -BX = 245 **** -BX = 246 **** -BX = 247 **** -BX = 248 **** -BX = 249 **** -BX = 250 **** -BX = 251 **** -BX = 252 **** -BX = 253 **** -BX = 254 **** ---- Jet 0 --- - Et [GeV/Hw]: 80/161 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 53/107 - Eta [rad/Hw]: 3.567/82 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -2.349/-54 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.87979/78 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 37/75 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.13446/26 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 408/817 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 80/161 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 35.5/72 - Phi [Rad/Hw]: -2.13803/95 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 79.5/160 - Phi [Rad/Hw]: -2.57436/85 -BX = 255 **** ---- Jet 0 --- - Et [GeV/Hw]: 45.5/92 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 37.5/76 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 20/41 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -1.566/-36 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- E/Gamma 10 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.566/36 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- E/Gamma 11 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.566/36 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: -1.566/-36 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 0 ---- Tau 10 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 563.5/1128 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 83.5/168 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 24/49 - Phi [Rad/Hw]: -1.0472/120 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 79.5/160 - Phi [Rad/Hw]: -1.39626/112 -BX = 256 **** -BX = 257 **** ---- Jet 0 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: 3.0015/69 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 277/555 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 4.5/10 - Phi [Rad/Hw]: -0.959931/122 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 258 **** -BX = 259 **** -BX = 260 **** -BX = 261 **** -BX = 262 **** -BX = 263 **** -BX = 264 **** -BX = 265 **** -BX = 266 **** -BX = 267 **** -BX = 268 **** -BX = 269 **** -BX = 270 **** -BX = 271 **** -BX = 272 **** -BX = 273 **** -BX = 274 **** -BX = 275 **** -BX = 276 **** -BX = 277 **** -BX = 278 **** -BX = 279 **** -BX = 280 **** -BX = 281 **** -BX = 282 **** -BX = 283 **** -BX = 284 **** -BX = 285 **** -BX = 286 **** -BX = 287 **** -BX = 288 **** -BX = 289 **** -BX = 290 **** -BX = 291 **** -BX = 292 **** -BX = 293 **** -BX = 294 **** ---- Jet 0 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -0.698132/128 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.479/34 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 240/481 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 20/41 - Phi [Rad/Hw]: -0.698132/128 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 295 **** -BX = 296 **** -BX = 297 **** -BX = 298 **** -BX = 299 **** -BX = 300 **** -BX = 301 **** -BX = 302 **** -BX = 303 **** -BX = 304 **** -BX = 305 **** -BX = 306 **** -BX = 307 **** ---- Jet 0 --- - Et [GeV/Hw]: 31.5/64 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 2.96706/68 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 204.5/410 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 31.5/64 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 18.5/38 - Phi [Rad/Hw]: -1.78896/103 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 31/63 - Phi [Rad/Hw]: -1.39626/112 -BX = 308 **** -BX = 309 **** -BX = 310 **** -BX = 311 **** -BX = 312 **** -BX = 313 **** -BX = 314 **** -BX = 315 **** -BX = 316 **** -BX = 317 **** -BX = 318 **** -BX = 319 **** -BX = 320 **** -BX = 321 **** -BX = 322 **** -BX = 323 **** -BX = 324 **** -BX = 325 **** -BX = 326 **** -BX = 327 **** -BX = 328 **** -BX = 329 **** -BX = 330 **** -BX = 331 **** -BX = 332 **** -BX = 333 **** -BX = 334 **** -BX = 335 **** -BX = 336 **** -BX = 337 **** -BX = 338 **** -BX = 339 **** -BX = 340 **** -BX = 341 **** -BX = 342 **** -BX = 343 **** -BX = 344 **** ---- Jet 0 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.349/54 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -0.0872668/142 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.827/42 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 434/869 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 16/33 - Phi [Rad/Hw]: 1.65806/38 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 345 **** -BX = 346 **** -BX = 347 **** -BX = 348 **** -BX = 349 **** -BX = 350 **** -BX = 351 **** -BX = 352 **** -BX = 353 **** -BX = 354 **** -BX = 355 **** -BX = 356 **** -BX = 357 **** -BX = 358 **** -BX = 359 **** -BX = 360 **** -BX = 361 **** -BX = 362 **** -BX = 363 **** ---- Jet 0 --- - Et [GeV/Hw]: 30.5/62 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.392/-32 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 321/643 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 30.5/62 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 2.5/6 - Phi [Rad/Hw]: 2.79253/64 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 30/61 - Phi [Rad/Hw]: 0.567232/13 -BX = 364 **** -BX = 365 **** -BX = 366 **** -BX = 367 **** -BX = 368 **** -BX = 369 **** -BX = 370 **** -BX = 371 **** -BX = 372 **** -BX = 373 **** -BX = 374 **** ---- Jet 0 --- - Et [GeV/Hw]: 42.5/86 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 6.5/14 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.96706/68 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 447/895 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 42.5/86 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 11.5/24 - Phi [Rad/Hw]: -1.87623/101 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 42/85 - Phi [Rad/Hw]: -2.79253/80 -BX = 375 **** -BX = 376 **** -BX = 377 **** -BX = 378 **** -BX = 379 **** -BX = 380 **** -BX = 381 **** -BX = 382 **** -BX = 383 **** -BX = 384 **** -BX = 385 **** -BX = 386 **** -BX = 387 **** -BX = 388 **** -BX = 389 **** -BX = 390 **** -BX = 391 **** -BX = 392 **** -BX = 393 **** -BX = 394 **** -BX = 395 **** -BX = 396 **** -BX = 397 **** -BX = 398 **** -BX = 399 **** -BX = 400 **** -BX = 401 **** -BX = 402 **** -BX = 403 **** -BX = 404 **** -BX = 405 **** -BX = 406 **** -BX = 407 **** -BX = 408 **** ---- Jet 0 --- - Et [GeV/Hw]: 30/61 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 28.5/58 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -1.8326/102 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: -0.698132/128 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -1.914/-44 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 592.5/1186 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 30/61 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 8/17 - Phi [Rad/Hw]: 2.96706/68 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 29.5/60 - Phi [Rad/Hw]: 1.13446/26 -BX = 409 **** -BX = 410 **** -BX = 411 **** -BX = 412 **** -BX = 413 **** -BX = 414 **** -BX = 415 **** -BX = 416 **** -BX = 417 **** -BX = 418 **** -BX = 419 **** -BX = 420 **** ---- Jet 0 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.479/-34 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 400/801 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 17/35 - Phi [Rad/Hw]: -1.39626/112 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 421 **** -BX = 422 **** -BX = 423 **** -BX = 424 **** -BX = 425 **** -BX = 426 **** -BX = 427 **** -BX = 428 **** -BX = 429 **** -BX = 430 **** -BX = 431 **** -BX = 432 **** -BX = 433 **** -BX = 434 **** -BX = 435 **** -BX = 436 **** ---- Jet 0 --- - Et [GeV/Hw]: 39/79 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 391.5/784 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 39/79 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 35.5/72 - Phi [Rad/Hw]: -2.61799/84 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 38.5/78 - Phi [Rad/Hw]: -1.78896/103 -BX = 437 **** -BX = 438 **** -BX = 439 **** -BX = 440 **** -BX = 441 **** -BX = 442 **** -BX = 443 **** -BX = 444 **** -BX = 445 **** -BX = 446 **** -BX = 447 **** -BX = 448 **** -BX = 449 **** -BX = 450 **** -BX = 451 **** -BX = 452 **** -BX = 453 **** -BX = 454 **** -BX = 455 **** -BX = 456 **** -BX = 457 **** ---- Jet 0 --- - Et [GeV/Hw]: 30/61 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: -2.7405/-63 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 216/433 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 30/61 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 3/7 - Phi [Rad/Hw]: 2.83616/65 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 29.5/60 - Phi [Rad/Hw]: 2.26893/52 -BX = 458 **** -BX = 459 **** -BX = 460 **** -BX = 461 **** -BX = 462 **** -BX = 463 **** -BX = 464 **** -BX = 465 **** ---- Jet 0 --- - Et [GeV/Hw]: 23.5/48 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 20/41 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 321.5/644 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 11/23 - Phi [Rad/Hw]: -0.698132/128 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 466 **** -BX = 467 **** -BX = 468 **** -BX = 469 **** -BX = 470 **** -BX = 471 **** -BX = 472 **** -BX = 473 **** -BX = 474 **** -BX = 475 **** -BX = 476 **** -BX = 477 **** -BX = 478 **** -BX = 479 **** -BX = 480 **** -BX = 481 **** -BX = 482 **** -BX = 483 **** -BX = 484 **** -BX = 485 **** -BX = 486 **** -BX = 487 **** -BX = 488 **** ---- Jet 0 --- - Et [GeV/Hw]: 57.5/116 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 47/95 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 34.5/70 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -1.8326/102 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 0 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 35.5/72 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 360/721 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 105/211 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 42/85 - Phi [Rad/Hw]: 0.523599/12 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 100/201 - Phi [Rad/Hw]: 0.479966/11 -BX = 489 **** -BX = 490 **** -BX = 491 **** -BX = 492 **** ---- Jet 0 --- - Et [GeV/Hw]: 32/65 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -3.567/-82 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: -1.22173/116 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: -1.22173/116 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 219.5/440 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 32/65 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 17/35 - Phi [Rad/Hw]: -1.65806/106 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 31.5/64 - Phi [Rad/Hw]: -1.9635/99 -BX = 493 **** -BX = 494 **** -BX = 495 **** -BX = 496 **** -BX = 497 **** -BX = 498 **** -BX = 499 **** -BX = 500 **** -BX = 501 **** -BX = 502 **** -BX = 503 **** -BX = 504 **** -BX = 505 **** -BX = 506 **** -BX = 507 **** -BX = 508 **** -BX = 509 **** -BX = 510 **** -BX = 511 **** -BX = 512 **** -BX = 513 **** -BX = 514 **** -BX = 515 **** -BX = 516 **** -BX = 517 **** -BX = 518 **** -BX = 519 **** -BX = 520 **** -BX = 521 **** -BX = 522 **** -BX = 523 **** -BX = 524 **** -BX = 525 **** -BX = 526 **** -BX = 527 **** -BX = 528 **** ---- Jet 0 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 284/569 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 28.5/58 - Phi [Rad/Hw]: -1.0472/120 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 529 **** -BX = 530 **** -BX = 531 **** -BX = 532 **** -BX = 533 **** -BX = 534 **** -BX = 535 **** -BX = 536 **** -BX = 537 **** -BX = 538 **** -BX = 539 **** -BX = 540 **** ---- Jet 0 --- - Et [GeV/Hw]: 28/57 - Eta [rad/Hw]: 3.219/74 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 171.5/344 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 25.5/52 - Phi [Rad/Hw]: 1.7017/39 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 541 **** ---- Jet 0 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 217.5/436 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 18.5/38 - Phi [Rad/Hw]: -1.0472/120 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 542 **** -BX = 543 **** -BX = 544 **** -BX = 545 **** -BX = 546 **** -BX = 547 **** -BX = 548 **** -BX = 549 **** ---- Jet 0 --- - Et [GeV/Hw]: 42/85 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.479/34 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 27/55 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: -0.610865/130 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 316/633 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 42/85 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 7.5/16 - Phi [Rad/Hw]: 2.96706/68 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 41.5/84 - Phi [Rad/Hw]: -1.61443/107 -BX = 550 **** -BX = 551 **** -BX = 552 **** -BX = 553 **** -BX = 554 **** -BX = 555 **** -BX = 556 **** -BX = 557 **** -BX = 558 **** -BX = 559 **** -BX = 560 **** -BX = 561 **** -BX = 562 **** -BX = 563 **** -BX = 564 **** -BX = 565 **** -BX = 566 **** -BX = 567 **** -BX = 568 **** -BX = 569 **** -BX = 570 **** -BX = 571 **** -BX = 572 **** -BX = 573 **** -BX = 574 **** -BX = 575 **** -BX = 576 **** -BX = 577 **** -BX = 578 **** -BX = 579 **** -BX = 580 **** -BX = 581 **** -BX = 582 **** -BX = 583 **** -BX = 584 **** -BX = 585 **** -BX = 586 **** -BX = 587 **** -BX = 588 **** -BX = 589 **** -BX = 590 **** -BX = 591 **** -BX = 592 **** -BX = 593 **** -BX = 594 **** -BX = 595 **** -BX = 596 **** -BX = 597 **** -BX = 598 **** ---- Jet 0 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 0 ---- E/Gamma 10 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 3 ---- E/Gamma 11 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.44346/56 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.392/-32 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 637.5/1276 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 23/47 - Phi [Rad/Hw]: 1.39626/32 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 599 **** -BX = 600 **** -BX = 601 **** -BX = 602 **** -BX = 603 **** -BX = 604 **** -BX = 605 **** -BX = 606 **** -BX = 607 **** -BX = 608 **** -BX = 609 **** -BX = 610 **** -BX = 611 **** -BX = 612 **** -BX = 613 **** -BX = 614 **** -BX = 615 **** -BX = 616 **** -BX = 617 **** ---- Jet 0 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 21.5/44 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 10/21 - Phi [Rad/Hw]: -0.654498/129 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 618 **** -BX = 619 **** -BX = 620 **** -BX = 621 **** -BX = 622 **** -BX = 623 **** -BX = 624 **** -BX = 625 **** -BX = 626 **** -BX = 627 **** -BX = 628 **** -BX = 629 **** -BX = 630 **** -BX = 631 **** -BX = 632 **** -BX = 633 **** -BX = 634 **** ---- Jet 0 --- - Et [GeV/Hw]: 38/77 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 2.96706/68 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: -1.48353/110 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 360.5/722 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 38/77 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 4.5/10 - Phi [Rad/Hw]: 1.26536/29 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 37.5/76 - Phi [Rad/Hw]: 2.13803/49 -BX = 635 **** -BX = 636 **** -BX = 637 **** -BX = 638 **** -BX = 639 **** -BX = 640 **** -BX = 641 **** -BX = 642 **** -BX = 643 **** -BX = 644 **** -BX = 645 **** -BX = 646 **** -BX = 647 **** -BX = 648 **** -BX = 649 **** -BX = 650 **** -BX = 651 **** -BX = 652 **** -BX = 653 **** -BX = 654 **** -BX = 655 **** -BX = 656 **** -BX = 657 **** -BX = 658 **** -BX = 659 **** ---- Jet 0 --- - Et [GeV/Hw]: 34.5/70 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 28/57 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: -3.0015/-69 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: 2.79253/64 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.09439/96 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: 1.13446/26 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 565.5/1132 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 34.5/70 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 26.5/54 - Phi [Rad/Hw]: 0.349066/8 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 34/69 - Phi [Rad/Hw]: -2.13803/95 -BX = 660 **** -BX = 661 **** -BX = 662 **** -BX = 663 **** -BX = 664 **** -BX = 665 **** -BX = 666 **** -BX = 667 **** -BX = 668 **** -BX = 669 **** -BX = 670 **** -BX = 671 **** -BX = 672 **** -BX = 673 **** -BX = 674 **** -BX = 675 **** -BX = 676 **** -BX = 677 **** -BX = 678 **** -BX = 679 **** -BX = 680 **** -BX = 681 **** -BX = 682 **** -BX = 683 **** -BX = 684 **** -BX = 685 **** -BX = 686 **** ---- Jet 0 --- - Et [GeV/Hw]: 40/81 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 39.5/80 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 20/41 - Eta [rad/Hw]: -1.392/-32 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: -1.392/-32 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 312/625 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 80/161 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 23/47 - Phi [Rad/Hw]: -2.48709/87 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 23.5/48 - Phi [Rad/Hw]: 2.96706/68 -BX = 687 **** -BX = 688 **** -BX = 689 **** ---- Jet 0 --- - Et [GeV/Hw]: 31/63 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 27/55 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.959931/22 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.959931/22 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 0.523599/12 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 395.5/792 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 31/63 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 25.5/52 - Phi [Rad/Hw]: -2.74889/81 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 30.5/62 - Phi [Rad/Hw]: -2.39983/89 -BX = 690 **** -BX = 691 **** -BX = 692 **** -BX = 693 **** -BX = 694 **** ---- Jet 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 57.5/116 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 32/65 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 0 ---- Tau 4 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 339/679 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 57.5/116 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 5.5/12 - Phi [Rad/Hw]: -1.52716/109 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 57/115 - Phi [Rad/Hw]: 0.0436332/1 -BX = 695 **** -BX = 696 **** -BX = 697 **** -BX = 698 **** -BX = 699 **** -BX = 700 **** -BX = 701 **** -BX = 702 **** -BX = 703 **** -BX = 704 **** -BX = 705 **** -BX = 706 **** ---- Jet 0 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 83/167 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 17.5/36 - Phi [Rad/Hw]: 0.218166/5 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 707 **** ---- Jet 0 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 32/65 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 12/25 - Phi [Rad/Hw]: 2.26893/52 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 708 **** -BX = 709 **** -BX = 710 **** -BX = 711 **** -BX = 712 **** -BX = 713 **** -BX = 714 **** -BX = 715 **** -BX = 716 **** -BX = 717 **** -BX = 718 **** -BX = 719 **** -BX = 720 **** -BX = 721 **** -BX = 722 **** -BX = 723 **** -BX = 724 **** -BX = 725 **** -BX = 726 **** -BX = 727 **** -BX = 728 **** -BX = 729 **** -BX = 730 **** -BX = 731 **** -BX = 732 **** -BX = 733 **** -BX = 734 **** -BX = 735 **** -BX = 736 **** -BX = 737 **** -BX = 738 **** -BX = 739 **** -BX = 740 **** -BX = 741 **** -BX = 742 **** -BX = 743 **** -BX = 744 **** -BX = 745 **** -BX = 746 **** -BX = 747 **** -BX = 748 **** -BX = 749 **** -BX = 750 **** -BX = 751 **** -BX = 752 **** -BX = 753 **** -BX = 754 **** -BX = 755 **** -BX = 756 **** -BX = 757 **** -BX = 758 **** -BX = 759 **** -BX = 760 **** ---- Jet 0 --- - Et [GeV/Hw]: 33.5/68 - Eta [rad/Hw]: -3.393/-78 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.48353/110 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 2.349/54 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- E/Gamma 10 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 3 ---- E/Gamma 11 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.48353/110 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.479/34 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 469.5/940 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 12.5/26 - Phi [Rad/Hw]: -0.610865/130 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 761 **** -BX = 762 **** ---- Jet 0 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -0.610865/130 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 295/591 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 17/35 - Phi [Rad/Hw]: 2.53073/58 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 763 **** ---- Jet 0 --- - Et [GeV/Hw]: 40.5/82 - Eta [rad/Hw]: 3.393/78 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 37.5/76 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 29.5/60 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -1.22173/116 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 2.1315/49 - Phi [rad/Hw]: -1.8326/102 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 331.5/664 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 37.5/76 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 21/43 - Phi [Rad/Hw]: -2.57436/85 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 37/75 - Phi [Rad/Hw]: 2.13803/49 -BX = 764 **** -BX = 765 **** -BX = 766 **** -BX = 767 **** -BX = 768 **** -BX = 769 **** -BX = 770 **** ---- Jet 0 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 162/325 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 16.5/34 - Phi [Rad/Hw]: 0.261799/6 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 771 **** -BX = 772 **** -BX = 773 **** -BX = 774 **** -BX = 775 **** -BX = 776 **** -BX = 777 **** -BX = 778 **** -BX = 779 **** -BX = 780 **** -BX = 781 **** -BX = 782 **** -BX = 783 **** -BX = 784 **** -BX = 785 **** ---- Jet 0 --- - Et [GeV/Hw]: 28.5/58 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.914/-44 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.914/-44 - Phi [rad/Hw]: -1.5708/108 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 341/683 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 15/31 - Phi [Rad/Hw]: -1.13446/118 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 786 **** -BX = 787 **** -BX = 788 **** -BX = 789 **** ---- Jet 0 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 1.13446/26 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.479/-34 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 0.523599/12 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 256/513 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 39.5/80 - Phi [Rad/Hw]: -1.22173/116 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 790 **** -BX = 791 **** -BX = 792 **** -BX = 793 **** -BX = 794 **** -BX = 795 **** -BX = 796 **** -BX = 797 **** -BX = 798 **** -BX = 799 **** -BX = 800 **** -BX = 801 **** -BX = 802 **** -BX = 803 **** -BX = 804 **** -BX = 805 **** -BX = 806 **** -BX = 807 **** -BX = 808 **** -BX = 809 **** -BX = 810 **** -BX = 811 **** -BX = 812 **** -BX = 813 **** -BX = 814 **** -BX = 815 **** -BX = 816 **** -BX = 817 **** -BX = 818 **** -BX = 819 **** -BX = 820 **** -BX = 821 **** -BX = 822 **** -BX = 823 **** -BX = 824 **** -BX = 825 **** -BX = 826 **** -BX = 827 **** -BX = 828 **** -BX = 829 **** -BX = 830 **** -BX = 831 **** -BX = 832 **** -BX = 833 **** -BX = 834 **** -BX = 835 **** -BX = 836 **** -BX = 837 **** -BX = 838 **** -BX = 839 **** -BX = 840 **** -BX = 841 **** -BX = 842 **** -BX = 843 **** -BX = 844 **** -BX = 845 **** -BX = 846 **** -BX = 847 **** -BX = 848 **** -BX = 849 **** -BX = 850 **** -BX = 851 **** ---- Jet 0 --- - Et [GeV/Hw]: 30.5/62 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 8/17 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 0 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 0 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 0.349066/8 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 513/1027 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 30.5/62 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 21/43 - Phi [Rad/Hw]: -0.785398/126 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 30/61 - Phi [Rad/Hw]: -0.218166/139 -BX = 852 **** -BX = 853 **** -BX = 854 **** -BX = 855 **** -BX = 856 **** -BX = 857 **** -BX = 858 **** -BX = 859 **** -BX = 860 **** ---- Jet 0 --- - Et [GeV/Hw]: 35/71 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 256.5/514 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 35/71 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 15/31 - Phi [Rad/Hw]: 2.39983/55 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 34.5/70 - Phi [Rad/Hw]: 2.74889/63 -BX = 861 **** -BX = 862 **** -BX = 863 **** ---- Jet 0 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 52.5/106 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 50/101 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 30.5/62 - Eta [rad/Hw]: -3.0015/-69 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 27/55 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- Jet 7 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Jet 8 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 0 ---- E/Gamma 10 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- Tau 1 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 0 ---- Tau 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 2.44346/56 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 431/863 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 103/207 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 78.5/158 - Phi [Rad/Hw]: -0.959931/122 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 75.5/152 - Phi [Rad/Hw]: -0.785398/126 -BX = 864 **** -BX = 865 **** ---- Jet 0 --- - Et [GeV/Hw]: 49.5/100 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 39/79 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 32.5/66 - Eta [rad/Hw]: 4.437/102 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 1/3 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 28/57 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -1.566/-36 - Phi [rad/Hw]: -1.8326/102 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 0 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 430/861 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 89/179 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 26/53 - Phi [Rad/Hw]: 2.48709/57 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 38/77 - Phi [Rad/Hw]: 2.35619/54 -BX = 866 **** -BX = 867 **** -BX = 868 **** -BX = 869 **** -BX = 870 **** -BX = 871 **** -BX = 872 **** -BX = 873 **** -BX = 874 **** -BX = 875 **** -BX = 876 **** -BX = 877 **** -BX = 878 **** -BX = 879 **** -BX = 880 **** -BX = 881 **** -BX = 882 **** -BX = 883 **** -BX = 884 **** -BX = 885 **** -BX = 886 **** -BX = 887 **** -BX = 888 **** -BX = 889 **** -BX = 890 **** ---- Jet 0 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: 0.959931/22 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 387.5/776 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 30.5/62 - Phi [Rad/Hw]: -0.741765/127 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 891 **** -BX = 892 **** -BX = 893 **** -BX = 894 **** -BX = 895 **** -BX = 896 **** -BX = 897 **** -BX = 898 **** -BX = 899 **** -BX = 900 **** -BX = 901 **** -BX = 902 **** -BX = 903 **** -BX = 904 **** -BX = 905 **** -BX = 906 **** -BX = 907 **** -BX = 908 **** -BX = 909 **** -BX = 910 **** -BX = 911 **** -BX = 912 **** -BX = 913 **** -BX = 914 **** -BX = 915 **** -BX = 916 **** -BX = 917 **** -BX = 918 **** -BX = 919 **** -BX = 920 **** -BX = 921 **** -BX = 922 **** ---- Jet 0 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.9575/45 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.9575/45 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -1.8326/102 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -2.87979/78 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 366/733 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 18/37 - Phi [Rad/Hw]: -0.785398/126 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 923 **** -BX = 924 **** -BX = 925 **** -BX = 926 **** -BX = 927 **** -BX = 928 **** -BX = 929 **** -BX = 930 **** -BX = 931 **** -BX = 932 **** -BX = 933 **** ---- Jet 0 --- - Et [GeV/Hw]: 20/41 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 1.13446/26 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -0.0872668/142 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 1.13446/26 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -1.48353/110 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 283/567 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 17.5/36 - Phi [Rad/Hw]: 3.01069/69 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 934 **** ---- Jet 0 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.1315/49 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 368.5/738 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 11.5/24 - Phi [Rad/Hw]: 1.39626/32 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 935 **** -BX = 936 **** -BX = 937 **** -BX = 938 **** -BX = 939 **** ---- Jet 0 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 8/17 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 374.5/750 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 42/85 - Phi [Rad/Hw]: 0.261799/6 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 940 **** -BX = 941 **** -BX = 942 **** -BX = 943 **** -BX = 944 **** -BX = 945 **** -BX = 946 **** -BX = 947 **** -BX = 948 **** -BX = 949 **** -BX = 950 **** -BX = 951 **** -BX = 952 **** -BX = 953 **** -BX = 954 **** -BX = 955 **** -BX = 956 **** -BX = 957 **** -BX = 958 **** -BX = 959 **** -BX = 960 **** -BX = 961 **** -BX = 962 **** -BX = 963 **** -BX = 964 **** -BX = 965 **** -BX = 966 **** -BX = 967 **** -BX = 968 **** -BX = 969 **** -BX = 970 **** -BX = 971 **** -BX = 972 **** -BX = 973 **** -BX = 974 **** -BX = 975 **** -BX = 976 **** -BX = 977 **** -BX = 978 **** -BX = 979 **** -BX = 980 **** -BX = 981 **** -BX = 982 **** -BX = 983 **** -BX = 984 **** -BX = 985 **** -BX = 986 **** -BX = 987 **** -BX = 988 **** -BX = 989 **** -BX = 990 **** -BX = 991 **** -BX = 992 **** -BX = 993 **** -BX = 994 **** -BX = 995 **** -BX = 996 **** -BX = 997 **** -BX = 998 **** -BX = 999 **** -BX = 1000 **** -BX = 1001 **** -BX = 1002 **** ---- Jet 0 --- - Et [GeV/Hw]: 30.5/62 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -1.914/-44 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 545/1091 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 30.5/62 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 33/67 - Phi [Rad/Hw]: 1.74533/40 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 30/61 - Phi [Rad/Hw]: 1.48353/34 -BX = 1003 **** -BX = 1004 **** -BX = 1005 **** -BX = 1006 **** -BX = 1007 **** -BX = 1008 **** -BX = 1009 **** -BX = 1010 **** -BX = 1011 **** -BX = 1012 **** -BX = 1013 **** -BX = 1014 **** -BX = 1015 **** -BX = 1016 **** -BX = 1017 **** -BX = 1018 **** -BX = 1019 **** ---- Jet 0 --- - Et [GeV/Hw]: 37/75 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 35.5/72 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 21/43 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- Tau 6 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 311.5/624 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 73/147 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 24.5/50 - Phi [Rad/Hw]: -0.392699/135 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 38.5/78 - Phi [Rad/Hw]: -0.479966/133 -BX = 1020 **** -BX = 1021 **** -BX = 1022 **** -BX = 1023 **** -BX = 1024 **** -BX = 1025 **** -BX = 1026 **** -BX = 1027 **** -BX = 1028 **** -BX = 1029 **** -BX = 1030 **** -BX = 1031 **** ---- Jet 0 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 323/647 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 4.5/10 - Phi [Rad/Hw]: -1.5708/108 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1032 **** -BX = 1033 **** -BX = 1034 **** -BX = 1035 **** -BX = 1036 **** -BX = 1037 **** -BX = 1038 **** -BX = 1039 **** -BX = 1040 **** -BX = 1041 **** -BX = 1042 **** -BX = 1043 **** -BX = 1044 **** -BX = 1045 **** -BX = 1046 **** -BX = 1047 **** -BX = 1048 **** ---- Jet 0 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: -1.827/-42 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -1.827/-42 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 319.5/640 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 22/45 - Phi [Rad/Hw]: -2.57436/85 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1049 **** ---- Jet 0 --- - Et [GeV/Hw]: 30.5/62 - Eta [rad/Hw]: 3.219/74 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- E/Gamma 10 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 0 ---- E/Gamma 11 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 0 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 390/781 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 36.5/74 - Phi [Rad/Hw]: -0.2618/138 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1050 **** -BX = 1051 **** -BX = 1052 **** -BX = 1053 **** ---- Jet 0 --- - Et [GeV/Hw]: 53/107 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 45.5/92 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 42.5/86 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 1/3 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 0 ---- Tau 8 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: -1.5708/108 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 355/711 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 142/285 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 14/29 - Phi [Rad/Hw]: -0.741765/127 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 55.5/112 - Phi [Rad/Hw]: 1.4399/33 -BX = 1054 **** -BX = 1055 **** -BX = 1056 **** -BX = 1057 **** -BX = 1058 **** -BX = 1059 **** -BX = 1060 **** -BX = 1061 **** -BX = 1062 **** -BX = 1063 **** -BX = 1064 **** -BX = 1065 **** -BX = 1066 **** -BX = 1067 **** -BX = 1068 **** -BX = 1069 **** ---- Jet 0 --- - Et [GeV/Hw]: 37.5/76 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 0.174533/4 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -0.610865/130 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 296.5/594 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 37.5/76 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 18.5/38 - Phi [Rad/Hw]: -0.436333/134 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 37/75 - Phi [Rad/Hw]: -0.741765/127 -BX = 1070 **** ---- Jet 0 --- - Et [GeV/Hw]: 27/55 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 185.5/372 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 25/51 - Phi [Rad/Hw]: 0.305433/7 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1071 **** -BX = 1072 **** -BX = 1073 **** -BX = 1074 **** -BX = 1075 **** -BX = 1076 **** -BX = 1077 **** -BX = 1078 **** -BX = 1079 **** -BX = 1080 **** -BX = 1081 **** -BX = 1082 **** -BX = 1083 **** ---- Jet 0 --- - Et [GeV/Hw]: 40/81 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 32.5/66 - Eta [rad/Hw]: -2.5665/-59 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -2.349/-54 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -1.5708/108 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -1.5708/108 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 234.5/470 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 40/81 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 10.5/22 - Phi [Rad/Hw]: -1.09083/119 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 39.5/80 - Phi [Rad/Hw]: 0.567232/13 -BX = 1084 **** -BX = 1085 **** -BX = 1086 **** -BX = 1087 **** -BX = 1088 **** ---- Jet 0 --- - Et [GeV/Hw]: 31.5/64 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.0872668/142 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.0872668/142 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 301.5/604 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 31.5/64 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 7.5/16 - Phi [Rad/Hw]: -1.1781/117 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 31/63 - Phi [Rad/Hw]: 3.05433/70 -BX = 1089 **** -BX = 1090 **** -BX = 1091 **** ---- Jet 0 --- - Et [GeV/Hw]: 38/77 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: -1.48353/110 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -1.8326/102 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 433.5/868 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 38/77 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 31/63 - Phi [Rad/Hw]: 1.4399/33 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 37.5/76 - Phi [Rad/Hw]: 1.48353/34 -BX = 1092 **** -BX = 1093 **** ---- Jet 0 --- - Et [GeV/Hw]: 35.5/72 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 295/591 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 35.5/72 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 13.5/28 - Phi [Rad/Hw]: 1.35263/31 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 35/71 - Phi [Rad/Hw]: 0.567232/13 -BX = 1094 **** -BX = 1095 **** -BX = 1096 **** -BX = 1097 **** -BX = 1098 **** -BX = 1099 **** -BX = 1100 **** -BX = 1101 **** ---- Jet 0 --- - Et [GeV/Hw]: 29/59 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -0.698132/128 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: -2.09439/96 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -0.698132/128 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 247/495 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 16/33 - Phi [Rad/Hw]: -0.0872668/142 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1102 **** -BX = 1103 **** -BX = 1104 **** -BX = 1105 **** -BX = 1106 **** -BX = 1107 **** -BX = 1108 **** -BX = 1109 **** -BX = 1110 **** -BX = 1111 **** -BX = 1112 **** -BX = 1113 **** -BX = 1114 **** -BX = 1115 **** -BX = 1116 **** -BX = 1117 **** -BX = 1118 **** -BX = 1119 **** -BX = 1120 **** -BX = 1121 **** -BX = 1122 **** -BX = 1123 **** -BX = 1124 **** -BX = 1125 **** -BX = 1126 **** -BX = 1127 **** -BX = 1128 **** -BX = 1129 **** -BX = 1130 **** -BX = 1131 **** -BX = 1132 **** -BX = 1133 **** -BX = 1134 **** -BX = 1135 **** -BX = 1136 **** -BX = 1137 **** -BX = 1138 **** -BX = 1139 **** -BX = 1140 **** -BX = 1141 **** -BX = 1142 **** -BX = 1143 **** -BX = 1144 **** -BX = 1145 **** -BX = 1146 **** -BX = 1147 **** -BX = 1148 **** -BX = 1149 **** -BX = 1150 **** -BX = 1151 **** ---- Jet 0 --- - Et [GeV/Hw]: 34.5/70 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: 3.219/74 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 6.5/14 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 2.349/54 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 2 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 2.349/54 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- E/Gamma 10 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 3 ---- E/Gamma 11 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 573/1147 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 34.5/70 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 14/29 - Phi [Rad/Hw]: -0.567232/131 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 34/69 - Phi [Rad/Hw]: -1.39626/112 -BX = 1152 **** -BX = 1153 **** -BX = 1154 **** -BX = 1155 **** -BX = 1156 **** -BX = 1157 **** -BX = 1158 **** -BX = 1159 **** -BX = 1160 **** -BX = 1161 **** -BX = 1162 **** -BX = 1163 **** -BX = 1164 **** -BX = 1165 **** -BX = 1166 **** -BX = 1167 **** -BX = 1168 **** -BX = 1169 **** -BX = 1170 **** -BX = 1171 **** -BX = 1172 **** -BX = 1173 **** -BX = 1174 **** -BX = 1175 **** ---- Jet 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 37/75 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -3.915/-90 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -3.0015/-69 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 0.349066/8 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 2.79253/64 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 556.5/1114 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 37/75 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 35.5/72 - Phi [Rad/Hw]: -2.44346/88 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 36.5/74 - Phi [Rad/Hw]: -2.57436/85 -BX = 1176 **** -BX = 1177 **** -BX = 1178 **** -BX = 1179 **** ---- Jet 0 --- - Et [GeV/Hw]: 50/101 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 32.5/66 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 29.5/60 - Eta [rad/Hw]: -4.089/-94 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: 4.611/106 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.96706/68 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 0 ---- Tau 8 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 553/1107 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 83/167 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 43.5/88 - Phi [Rad/Hw]: -0.174533/140 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 81/163 - Phi [Rad/Hw]: -0.829032/125 -BX = 1180 **** -BX = 1181 **** -BX = 1182 **** -BX = 1183 **** -BX = 1184 **** -BX = 1185 **** -BX = 1186 **** -BX = 1187 **** ---- Jet 0 --- - Et [GeV/Hw]: 30/61 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 9/19 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.914/44 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -1.5708/108 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 727/1455 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 30/61 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 28/57 - Phi [Rad/Hw]: 1.26536/29 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 29.5/60 - Phi [Rad/Hw]: -1.35263/113 -BX = 1188 **** -BX = 1189 **** ---- Jet 0 --- - Et [GeV/Hw]: 30/61 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 1.914/44 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 1.914/44 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 425/851 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 30/61 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 6/13 - Phi [Rad/Hw]: 2.83616/65 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 29.5/60 - Phi [Rad/Hw]: 0.174533/4 -BX = 1190 **** -BX = 1191 **** -BX = 1192 **** -BX = 1193 **** -BX = 1194 **** -BX = 1195 **** -BX = 1196 **** -BX = 1197 **** -BX = 1198 **** ---- Jet 0 --- - Et [GeV/Hw]: 61.5/124 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 33.5/68 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 28.5/58 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 34.5/70 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 320/641 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 95.5/192 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 4/9 - Phi [Rad/Hw]: -0.0872668/142 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 27.5/56 - Phi [Rad/Hw]: 1.87623/43 -BX = 1199 **** -BX = 1200 **** -BX = 1201 **** -BX = 1202 **** -BX = 1203 **** -BX = 1204 **** -BX = 1205 **** -BX = 1206 **** -BX = 1207 **** -BX = 1208 **** -BX = 1209 **** -BX = 1210 **** -BX = 1211 **** -BX = 1212 **** -BX = 1213 **** -BX = 1214 **** -BX = 1215 **** -BX = 1216 **** -BX = 1217 **** -BX = 1218 **** -BX = 1219 **** -BX = 1220 **** -BX = 1221 **** -BX = 1222 **** -BX = 1223 **** -BX = 1224 **** -BX = 1225 **** -BX = 1226 **** -BX = 1227 **** -BX = 1228 **** -BX = 1229 **** -BX = 1230 **** -BX = 1231 **** -BX = 1232 **** -BX = 1233 **** -BX = 1234 **** -BX = 1235 **** -BX = 1236 **** -BX = 1237 **** -BX = 1238 **** -BX = 1239 **** -BX = 1240 **** -BX = 1241 **** -BX = 1242 **** -BX = 1243 **** -BX = 1244 **** -BX = 1245 **** -BX = 1246 **** -BX = 1247 **** -BX = 1248 **** -BX = 1249 **** -BX = 1250 **** -BX = 1251 **** -BX = 1252 **** -BX = 1253 **** -BX = 1254 **** -BX = 1255 **** -BX = 1256 **** -BX = 1257 **** -BX = 1258 **** -BX = 1259 **** -BX = 1260 **** -BX = 1261 **** -BX = 1262 **** -BX = 1263 **** -BX = 1264 **** -BX = 1265 **** -BX = 1266 **** -BX = 1267 **** -BX = 1268 **** -BX = 1269 **** -BX = 1270 **** -BX = 1271 **** -BX = 1272 **** -BX = 1273 **** -BX = 1274 **** -BX = 1275 **** -BX = 1276 **** -BX = 1277 **** -BX = 1278 **** -BX = 1279 **** -BX = 1280 **** -BX = 1281 **** -BX = 1282 **** -BX = 1283 **** -BX = 1284 **** -BX = 1285 **** -BX = 1286 **** -BX = 1287 **** ---- Jet 0 --- - Et [GeV/Hw]: 30.5/62 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 270.5/542 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 30.5/62 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 31/63 - Phi [Rad/Hw]: 2.48709/57 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 30/61 - Phi [Rad/Hw]: 2.35619/54 -BX = 1288 **** ---- Jet 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 93.5/188 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 23.5/48 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- E/Gamma 10 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 45.5/92 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 589/1179 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 93.5/188 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 68/137 - Phi [Rad/Hw]: 2.39983/55 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 93/187 - Phi [Rad/Hw]: 1.9635/45 -BX = 1289 **** ---- Jet 0 --- - Et [GeV/Hw]: 32.5/66 - Eta [rad/Hw]: -3.0015/-69 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 29.5/60 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 371/743 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 26.5/54 - Phi [Rad/Hw]: 0.567232/13 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1290 **** -BX = 1291 **** -BX = 1292 **** -BX = 1293 **** ---- Jet 0 --- - Et [GeV/Hw]: 40/81 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 243/487 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 40/81 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 31/63 - Phi [Rad/Hw]: -1.309/114 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 39.5/80 - Phi [Rad/Hw]: -1.9635/99 -BX = 1294 **** -BX = 1295 **** -BX = 1296 **** -BX = 1297 **** -BX = 1298 **** -BX = 1299 **** -BX = 1300 **** -BX = 1301 **** -BX = 1302 **** -BX = 1303 **** -BX = 1304 **** -BX = 1305 **** -BX = 1306 **** -BX = 1307 **** -BX = 1308 **** -BX = 1309 **** -BX = 1310 **** -BX = 1311 **** -BX = 1312 **** -BX = 1313 **** -BX = 1314 **** -BX = 1315 **** -BX = 1316 **** -BX = 1317 **** -BX = 1318 **** -BX = 1319 **** -BX = 1320 **** -BX = 1321 **** -BX = 1322 **** -BX = 1323 **** -BX = 1324 **** -BX = 1325 **** -BX = 1326 **** -BX = 1327 **** -BX = 1328 **** -BX = 1329 **** -BX = 1330 **** ---- Jet 0 --- - Et [GeV/Hw]: 40.5/82 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 38.5/78 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.566/36 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 1.9575/45 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 1.9575/45 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 1.566/36 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 311.5/624 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 79.5/160 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 16/33 - Phi [Rad/Hw]: 0.698132/16 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 13.5/28 - Phi [Rad/Hw]: 1.61443/37 -BX = 1331 **** -BX = 1332 **** -BX = 1333 **** -BX = 1334 **** -BX = 1335 **** -BX = 1336 **** -BX = 1337 **** -BX = 1338 **** -BX = 1339 **** -BX = 1340 **** -BX = 1341 **** -BX = 1342 **** -BX = 1343 **** -BX = 1344 **** -BX = 1345 **** -BX = 1346 **** -BX = 1347 **** -BX = 1348 **** -BX = 1349 **** -BX = 1350 **** -BX = 1351 **** -BX = 1352 **** -BX = 1353 **** -BX = 1354 **** -BX = 1355 **** -BX = 1356 **** -BX = 1357 **** -BX = 1358 **** -BX = 1359 **** -BX = 1360 **** -BX = 1361 **** -BX = 1362 **** -BX = 1363 **** -BX = 1364 **** -BX = 1365 **** -BX = 1366 **** -BX = 1367 **** ---- Jet 0 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 2.1315/49 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 429.5/860 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 25/51 - Phi [Rad/Hw]: 1.91986/44 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1368 **** -BX = 1369 **** -BX = 1370 **** -BX = 1371 **** -BX = 1372 **** -BX = 1373 **** -BX = 1374 **** -BX = 1375 **** -BX = 1376 **** -BX = 1377 **** -BX = 1378 **** -BX = 1379 **** -BX = 1380 **** -BX = 1381 **** -BX = 1382 **** -BX = 1383 **** -BX = 1384 **** -BX = 1385 **** -BX = 1386 **** -BX = 1387 **** -BX = 1388 **** -BX = 1389 **** -BX = 1390 **** -BX = 1391 **** -BX = 1392 **** -BX = 1393 **** -BX = 1394 **** -BX = 1395 **** ---- Jet 0 --- - Et [GeV/Hw]: 38/77 - Eta [rad/Hw]: -3.393/-78 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -3.0015/-69 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.479/34 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 312.5/626 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 4.5/10 - Phi [Rad/Hw]: 1.91986/44 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1396 **** -BX = 1397 **** -BX = 1398 **** -BX = 1399 **** -BX = 1400 **** -BX = 1401 **** -BX = 1402 **** -BX = 1403 **** -BX = 1404 **** -BX = 1405 **** -BX = 1406 **** -BX = 1407 **** -BX = 1408 **** -BX = 1409 **** -BX = 1410 **** -BX = 1411 **** -BX = 1412 **** -BX = 1413 **** -BX = 1414 **** -BX = 1415 **** -BX = 1416 **** -BX = 1417 **** -BX = 1418 **** -BX = 1419 **** -BX = 1420 **** -BX = 1421 **** -BX = 1422 **** -BX = 1423 **** -BX = 1424 **** -BX = 1425 **** -BX = 1426 **** -BX = 1427 **** -BX = 1428 **** -BX = 1429 **** ---- Jet 0 --- - Et [GeV/Hw]: 28.5/58 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 3.0015/69 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 23.5/48 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 1.5/4 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -2.87979/78 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 321/643 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 13.5/28 - Phi [Rad/Hw]: -1.13446/118 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1430 **** -BX = 1431 **** -BX = 1432 **** -BX = 1433 **** -BX = 1434 **** -BX = 1435 **** -BX = 1436 **** -BX = 1437 **** -BX = 1438 **** -BX = 1439 **** -BX = 1440 **** -BX = 1441 **** -BX = 1442 **** -BX = 1443 **** -BX = 1444 **** -BX = 1445 **** -BX = 1446 **** -BX = 1447 **** -BX = 1448 **** -BX = 1449 **** -BX = 1450 **** -BX = 1451 **** -BX = 1452 **** -BX = 1453 **** -BX = 1454 **** -BX = 1455 **** -BX = 1456 **** -BX = 1457 **** -BX = 1458 **** -BX = 1459 **** -BX = 1460 **** -BX = 1461 **** -BX = 1462 **** -BX = 1463 **** -BX = 1464 **** -BX = 1465 **** -BX = 1466 **** -BX = 1467 **** -BX = 1468 **** -BX = 1469 **** -BX = 1470 **** -BX = 1471 **** -BX = 1472 **** -BX = 1473 **** -BX = 1474 **** -BX = 1475 **** -BX = 1476 **** -BX = 1477 **** -BX = 1478 **** -BX = 1479 **** -BX = 1480 **** -BX = 1481 **** -BX = 1482 **** -BX = 1483 **** ---- Jet 0 --- - Et [GeV/Hw]: 35/71 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 29/59 - Eta [rad/Hw]: -3.219/-74 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 0 ---- Tau 2 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.698132/128 - Iso [Hw]: 0 ---- Tau 8 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 524/1049 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 35/71 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 31.5/64 - Phi [Rad/Hw]: 2.18166/50 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 34.5/70 - Phi [Rad/Hw]: 2.39983/55 -BX = 1484 **** -BX = 1485 **** -BX = 1486 **** -BX = 1487 **** -BX = 1488 **** -BX = 1489 **** -BX = 1490 **** -BX = 1491 **** -BX = 1492 **** -BX = 1493 **** -BX = 1494 **** ---- Jet 0 --- - Et [GeV/Hw]: 30/61 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 3 ---- E/Gamma 10 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 3 ---- E/Gamma 11 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 1.13446/26 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.566/36 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 505/1011 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 30/61 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 36/73 - Phi [Rad/Hw]: 2.05076/47 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 29.5/60 - Phi [Rad/Hw]: 0.741765/17 -BX = 1495 **** -BX = 1496 **** -BX = 1497 **** -BX = 1498 **** -BX = 1499 **** -BX = 1500 **** -BX = 1501 **** -BX = 1502 **** -BX = 1503 **** ---- Jet 0 --- - Et [GeV/Hw]: 27/55 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 430.5/862 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 10/21 - Phi [Rad/Hw]: -2.05076/97 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1504 **** ---- Jet 0 --- - Et [GeV/Hw]: 36.5/74 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 28.5/58 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -1.8326/102 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.0872668/142 - Iso [Hw]: 0 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.44346/56 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 443.5/888 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 36.5/74 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 3/7 - Phi [Rad/Hw]: -2.96706/76 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 36/73 - Phi [Rad/Hw]: 0.349066/8 -BX = 1505 **** ---- Jet 0 --- - Et [GeV/Hw]: 32.5/66 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 31/63 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 29.5/60 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 0.174533/4 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 0 ---- E/Gamma 10 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.74/40 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 0.174533/4 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 714.5/1430 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 64/129 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 34/69 - Phi [Rad/Hw]: 2.05076/47 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 2.5/6 - Phi [Rad/Hw]: -1.91986/100 -BX = 1506 **** -BX = 1507 **** -BX = 1508 **** -BX = 1509 **** -BX = 1510 **** -BX = 1511 **** -BX = 1512 **** ---- Jet 0 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 9/19 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 1.827/42 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 1.827/42 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 453.5/908 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 26/53 - Phi [Rad/Hw]: -2.00713/98 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1513 **** ---- Jet 0 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 52.5/106 - Eta [rad/Hw]: -3.741/-86 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 34/69 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: 3.219/74 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: -3.219/-74 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 23.5/48 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: -1.74533/104 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 0 ---- E/Gamma 10 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 3 ---- E/Gamma 11 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -1.5708/108 - Iso [Hw]: 0 ---- Tau 1 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 0 ---- Tau 2 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- Tau 8 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.5708/108 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 0 ---- Tau 11 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 922.5/1846 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 34/69 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 38/77 - Phi [Rad/Hw]: 3.14159/72 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 33.5/68 - Phi [Rad/Hw]: -2.44346/88 -BX = 1514 **** -BX = 1515 **** -BX = 1516 **** -BX = 1517 **** -BX = 1518 **** -BX = 1519 **** -BX = 1520 **** -BX = 1521 **** -BX = 1522 **** -BX = 1523 **** -BX = 1524 **** -BX = 1525 **** -BX = 1526 **** -BX = 1527 **** -BX = 1528 **** -BX = 1529 **** -BX = 1530 **** -BX = 1531 **** -BX = 1532 **** -BX = 1533 **** -BX = 1534 **** -BX = 1535 **** -BX = 1536 **** ---- Jet 0 --- - Et [GeV/Hw]: 57/115 - Eta [rad/Hw]: 3.567/82 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.9575/-45 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.479/34 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -0.0872668/142 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.9575/-45 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 483.5/968 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 25/51 - Phi [Rad/Hw]: -0.829032/125 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1537 **** -BX = 1538 **** -BX = 1539 **** -BX = 1540 **** -BX = 1541 **** -BX = 1542 **** -BX = 1543 **** -BX = 1544 **** -BX = 1545 **** -BX = 1546 **** -BX = 1547 **** -BX = 1548 **** -BX = 1549 **** -BX = 1550 **** -BX = 1551 **** -BX = 1552 **** -BX = 1553 **** -BX = 1554 **** -BX = 1555 **** -BX = 1556 **** -BX = 1557 **** -BX = 1558 **** -BX = 1559 **** -BX = 1560 **** -BX = 1561 **** -BX = 1562 **** -BX = 1563 **** -BX = 1564 **** -BX = 1565 **** -BX = 1566 **** -BX = 1567 **** -BX = 1568 **** -BX = 1569 **** -BX = 1570 **** -BX = 1571 **** -BX = 1572 **** -BX = 1573 **** -BX = 1574 **** -BX = 1575 **** -BX = 1576 **** -BX = 1577 **** -BX = 1578 **** -BX = 1579 **** -BX = 1580 **** -BX = 1581 **** -BX = 1582 **** -BX = 1583 **** -BX = 1584 **** -BX = 1585 **** -BX = 1586 **** -BX = 1587 **** -BX = 1588 **** -BX = 1589 **** -BX = 1590 **** -BX = 1591 **** -BX = 1592 **** -BX = 1593 **** -BX = 1594 **** -BX = 1595 **** -BX = 1596 **** -BX = 1597 **** -BX = 1598 **** -BX = 1599 **** -BX = 1600 **** -BX = 1601 **** -BX = 1602 **** -BX = 1603 **** -BX = 1604 **** -BX = 1605 **** -BX = 1606 **** -BX = 1607 **** -BX = 1608 **** -BX = 1609 **** ---- Jet 0 --- - Et [GeV/Hw]: 48.5/98 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 33/67 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 6.5/14 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -2.87979/78 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 0 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 2.79253/64 - Iso [Hw]: 0 ---- Tau 8 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 384.5/770 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 82/165 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 41.5/84 - Phi [Rad/Hw]: 0.785398/18 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 58.5/118 - Phi [Rad/Hw]: 0.523599/12 -BX = 1610 **** -BX = 1611 **** -BX = 1612 **** -BX = 1613 **** -BX = 1614 **** -BX = 1615 **** -BX = 1616 **** -BX = 1617 **** -BX = 1618 **** -BX = 1619 **** ---- Jet 0 --- - Et [GeV/Hw]: 31/63 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 28.5/58 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 27/55 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: 3.915/90 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: 0.785398/18 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.479/34 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 406/813 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 31/63 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 28.5/58 - Phi [Rad/Hw]: 0.218166/5 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 30.5/62 - Phi [Rad/Hw]: 1.61443/37 -BX = 1620 **** -BX = 1621 **** -BX = 1622 **** -BX = 1623 **** -BX = 1624 **** -BX = 1625 **** -BX = 1626 **** -BX = 1627 **** -BX = 1628 **** -BX = 1629 **** -BX = 1630 **** -BX = 1631 **** -BX = 1632 **** -BX = 1633 **** -BX = 1634 **** -BX = 1635 **** -BX = 1636 **** -BX = 1637 **** -BX = 1638 **** -BX = 1639 **** -BX = 1640 **** -BX = 1641 **** -BX = 1642 **** -BX = 1643 **** -BX = 1644 **** -BX = 1645 **** -BX = 1646 **** -BX = 1647 **** -BX = 1648 **** -BX = 1649 **** -BX = 1650 **** ---- Jet 0 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.349/54 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -1.74533/104 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 305/611 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 9/19 - Phi [Rad/Hw]: 1.9635/45 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1651 **** -BX = 1652 **** -BX = 1653 **** -BX = 1654 **** -BX = 1655 **** -BX = 1656 **** -BX = 1657 **** -BX = 1658 **** -BX = 1659 **** -BX = 1660 **** -BX = 1661 **** -BX = 1662 **** -BX = 1663 **** -BX = 1664 **** -BX = 1665 **** -BX = 1666 **** -BX = 1667 **** -BX = 1668 **** -BX = 1669 **** -BX = 1670 **** -BX = 1671 **** -BX = 1672 **** -BX = 1673 **** -BX = 1674 **** -BX = 1675 **** ---- Jet 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 84.5/170 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 48/97 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 40.5/82 - Eta [rad/Hw]: -1.827/-42 - Phi [rad/Hw]: -1.48353/110 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.566/-36 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 428/857 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 133/267 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 34.5/70 - Phi [Rad/Hw]: 1.35263/31 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 56.5/114 - Phi [Rad/Hw]: 1.0472/24 -BX = 1676 **** -BX = 1677 **** -BX = 1678 **** -BX = 1679 **** -BX = 1680 **** ---- Jet 0 --- - Et [GeV/Hw]: 33/67 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -0.698132/128 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.9575/-45 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: -2.09439/96 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 264/529 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 33/67 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 9.5/20 - Phi [Rad/Hw]: -0.305433/137 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 32.5/66 - Phi [Rad/Hw]: 0.174533/4 -BX = 1681 **** -BX = 1682 **** -BX = 1683 **** -BX = 1684 **** -BX = 1685 **** -BX = 1686 **** -BX = 1687 **** -BX = 1688 **** -BX = 1689 **** -BX = 1690 **** -BX = 1691 **** -BX = 1692 **** -BX = 1693 **** -BX = 1694 **** -BX = 1695 **** -BX = 1696 **** -BX = 1697 **** -BX = 1698 **** -BX = 1699 **** -BX = 1700 **** -BX = 1701 **** -BX = 1702 **** -BX = 1703 **** -BX = 1704 **** -BX = 1705 **** -BX = 1706 **** -BX = 1707 **** -BX = 1708 **** -BX = 1709 **** -BX = 1710 **** -BX = 1711 **** -BX = 1712 **** -BX = 1713 **** -BX = 1714 **** -BX = 1715 **** -BX = 1716 **** -BX = 1717 **** -BX = 1718 **** -BX = 1719 **** -BX = 1720 **** -BX = 1721 **** -BX = 1722 **** -BX = 1723 **** ---- Jet 0 --- - Et [GeV/Hw]: 28.5/58 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 298.5/598 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 14.5/30 - Phi [Rad/Hw]: -0.0436333/143 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1724 **** ---- Jet 0 --- - Et [GeV/Hw]: 27/55 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 0 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.74533/104 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 2.3055/53 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 399.5/800 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 8.5/18 - Phi [Rad/Hw]: 0.829031/19 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1725 **** -BX = 1726 **** -BX = 1727 **** -BX = 1728 **** -BX = 1729 **** -BX = 1730 **** -BX = 1731 **** -BX = 1732 **** -BX = 1733 **** -BX = 1734 **** -BX = 1735 **** -BX = 1736 **** -BX = 1737 **** -BX = 1738 **** ---- Jet 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 44.5/90 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 43.5/88 - Eta [rad/Hw]: -3.567/-82 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 37/75 - Eta [rad/Hw]: 3.393/78 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 35/71 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 31/63 - Eta [rad/Hw]: -3.567/-82 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 7 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 482/965 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 80/161 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 29.5/60 - Phi [Rad/Hw]: -0.610865/130 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 77/155 - Phi [Rad/Hw]: -0.654498/129 -BX = 1739 **** ---- Jet 0 --- - Et [GeV/Hw]: 92/185 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 55.5/112 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 0.959931/22 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 0 ---- Tau 10 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 540/1081 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 92/185 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 21/43 - Phi [Rad/Hw]: 2.0944/48 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 91.5/184 - Phi [Rad/Hw]: 1.9635/45 -BX = 1740 **** -BX = 1741 **** -BX = 1742 **** -BX = 1743 **** -BX = 1744 **** ---- Jet 0 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -3.0015/-69 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 3.219/74 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: -1.48353/110 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: -0.610865/130 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -1.8326/102 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 2.79253/64 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 347/695 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 25.5/52 - Phi [Rad/Hw]: 2.00713/46 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1745 **** -BX = 1746 **** -BX = 1747 **** -BX = 1748 **** -BX = 1749 **** -BX = 1750 **** -BX = 1751 **** -BX = 1752 **** ---- Jet 0 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: 3.0015/69 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: 0.174533/4 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 345/691 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 20.5/42 - Phi [Rad/Hw]: 2.35619/54 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1753 **** -BX = 1754 **** -BX = 1755 **** -BX = 1756 **** -BX = 1757 **** -BX = 1758 **** -BX = 1759 **** -BX = 1760 **** ---- Jet 0 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 0.523599/12 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 291.5/584 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 22/45 - Phi [Rad/Hw]: 1.52716/35 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1761 **** ---- Jet 0 --- - Et [GeV/Hw]: 36.5/74 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 2 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 329/659 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 36.5/74 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 12.5/26 - Phi [Rad/Hw]: -0.0872668/142 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 36/73 - Phi [Rad/Hw]: -0.567232/131 -BX = 1762 **** -BX = 1763 **** -BX = 1764 **** -BX = 1765 **** -BX = 1766 **** -BX = 1767 **** -BX = 1768 **** -BX = 1769 **** -BX = 1770 **** -BX = 1771 **** -BX = 1772 **** -BX = 1773 **** -BX = 1774 **** -BX = 1775 **** -BX = 1776 **** -BX = 1777 **** -BX = 1778 **** -BX = 1779 **** -BX = 1780 **** -BX = 1781 **** -BX = 1782 **** -BX = 1783 **** -BX = 1784 **** -BX = 1785 **** -BX = 1786 **** -BX = 1787 **** -BX = 1788 **** -BX = 1789 **** -BX = 1790 **** -BX = 1791 **** -BX = 1792 **** -BX = 1793 **** -BX = 1794 **** -BX = 1795 **** -BX = 1796 **** -BX = 1797 **** -BX = 1798 **** -BX = 1799 **** -BX = 1800 **** -BX = 1801 **** -BX = 1802 **** -BX = 1803 **** -BX = 1804 **** ---- Jet 0 --- - Et [GeV/Hw]: 57.5/116 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.9575/45 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -2.349/-54 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 0 ---- E/Gamma 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 3 ---- E/Gamma 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 0 ---- Tau 2 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 0 ---- Tau 5 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.914/44 - Phi [rad/Hw]: -1.48353/110 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 866.5/1734 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 57.5/116 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 30.5/62 - Phi [Rad/Hw]: 2.87979/66 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 57/115 - Phi [Rad/Hw]: 2.53073/58 -BX = 1805 **** -BX = 1806 **** -BX = 1807 **** ---- Jet 0 --- - Et [GeV/Hw]: 63.5/128 - Eta [rad/Hw]: 3.393/78 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.48353/110 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 393.5/788 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 16/33 - Phi [Rad/Hw]: 0.305433/7 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1808 **** ---- Jet 0 --- - Et [GeV/Hw]: 39/79 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.698132/128 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 293.5/588 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 39/79 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 17.5/36 - Phi [Rad/Hw]: 0.829031/19 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 38.5/78 - Phi [Rad/Hw]: 1.13446/26 -BX = 1809 **** -BX = 1810 **** -BX = 1811 **** -BX = 1812 **** -BX = 1813 **** -BX = 1814 **** -BX = 1815 **** -BX = 1816 **** -BX = 1817 **** -BX = 1818 **** -BX = 1819 **** -BX = 1820 **** -BX = 1821 **** -BX = 1822 **** -BX = 1823 **** -BX = 1824 **** -BX = 1825 **** -BX = 1826 **** -BX = 1827 **** -BX = 1828 **** -BX = 1829 **** -BX = 1830 **** -BX = 1831 **** -BX = 1832 **** -BX = 1833 **** -BX = 1834 **** -BX = 1835 **** -BX = 1836 **** -BX = 1837 **** -BX = 1838 **** ---- Jet 0 --- - Et [GeV/Hw]: 39/79 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 23.5/48 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 3.0015/69 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 20/41 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.566/-36 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.566/-36 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Tau 6 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: -2.09439/96 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 416/833 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 39/79 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 19.5/40 - Phi [Rad/Hw]: -1.1781/117 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 38.5/78 - Phi [Rad/Hw]: -2.31256/91 -BX = 1839 **** -BX = 1840 **** -BX = 1841 **** -BX = 1842 **** -BX = 1843 **** -BX = 1844 **** -BX = 1845 **** -BX = 1846 **** -BX = 1847 **** -BX = 1848 **** -BX = 1849 **** -BX = 1850 **** -BX = 1851 **** -BX = 1852 **** -BX = 1853 **** -BX = 1854 **** -BX = 1855 **** -BX = 1856 **** -BX = 1857 **** -BX = 1858 **** -BX = 1859 **** -BX = 1860 **** -BX = 1861 **** -BX = 1862 **** -BX = 1863 **** -BX = 1864 **** -BX = 1865 **** -BX = 1866 **** -BX = 1867 **** -BX = 1868 **** -BX = 1869 **** -BX = 1870 **** -BX = 1871 **** -BX = 1872 **** -BX = 1873 **** -BX = 1874 **** ---- Jet 0 --- - Et [GeV/Hw]: 35.5/72 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: 3.393/78 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 6.5/14 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.09439/96 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 478.5/958 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 35.5/72 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 30/61 - Phi [Rad/Hw]: -0.741765/127 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 35/71 - Phi [Rad/Hw]: -1.00356/121 -BX = 1875 **** ---- Jet 0 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: 3.0015/69 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -2.349/-54 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- E/Gamma 10 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -2.349/-54 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 0 ---- E/Gamma 11 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.44346/56 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 2.96706/68 - Iso [Hw]: 0 ---- Tau 8 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 1.13446/26 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 2.96706/68 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 673.5/1348 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 24/49 - Phi [Rad/Hw]: 0.218166/5 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1876 **** -BX = 1877 **** ---- Jet 0 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 3.0015/69 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 0.174533/4 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- E/Gamma 10 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 0.174533/4 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: -0.610865/130 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.74533/104 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 542/1085 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 8.5/18 - Phi [Rad/Hw]: 0.872665/20 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1878 **** -BX = 1879 **** -BX = 1880 **** -BX = 1881 **** -BX = 1882 **** -BX = 1883 **** -BX = 1884 **** -BX = 1885 **** -BX = 1886 **** -BX = 1887 **** -BX = 1888 **** -BX = 1889 **** -BX = 1890 **** -BX = 1891 **** -BX = 1892 **** -BX = 1893 **** ---- Jet 0 --- - Et [GeV/Hw]: 53/107 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 21/43 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 2 ---- E/Gamma 6 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- E/Gamma 10 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.566/36 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 32.5/66 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: 1.9575/45 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 433.5/868 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 53/107 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 47.5/96 - Phi [Rad/Hw]: 2.44346/56 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 52.5/106 - Phi [Rad/Hw]: 2.0944/48 -BX = 1894 **** -BX = 1895 **** ---- Jet 0 --- - Et [GeV/Hw]: 34.5/70 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 215/431 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 34.5/70 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 10/21 - Phi [Rad/Hw]: 1.8326/42 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 34/69 - Phi [Rad/Hw]: -0.872665/124 -BX = 1896 **** -BX = 1897 **** -BX = 1898 **** -BX = 1899 **** -BX = 1900 **** -BX = 1901 **** -BX = 1902 **** -BX = 1903 **** -BX = 1904 **** -BX = 1905 **** -BX = 1906 **** -BX = 1907 **** -BX = 1908 **** -BX = 1909 **** -BX = 1910 **** -BX = 1911 **** -BX = 1912 **** -BX = 1913 **** -BX = 1914 **** -BX = 1915 **** -BX = 1916 **** -BX = 1917 **** -BX = 1918 **** -BX = 1919 **** -BX = 1920 **** -BX = 1921 **** ---- Jet 0 --- - Et [GeV/Hw]: 29.5/60 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -2.87979/78 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -1.22173/116 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: -1.22173/116 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 369.5/740 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 20.5/42 - Phi [Rad/Hw]: 1.09083/25 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1922 **** -BX = 1923 **** -BX = 1924 **** -BX = 1925 **** -BX = 1926 **** -BX = 1927 **** -BX = 1928 **** -BX = 1929 **** -BX = 1930 **** -BX = 1931 **** -BX = 1932 **** -BX = 1933 **** -BX = 1934 **** -BX = 1935 **** -BX = 1936 **** ---- Jet 0 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 304.5/610 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 22/45 - Phi [Rad/Hw]: 0.305433/7 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1937 **** -BX = 1938 **** ---- Jet 0 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 8/17 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -2.09439/96 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -2.09439/96 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -2.09439/96 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 0 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 367/735 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 8/17 - Phi [Rad/Hw]: 0.741765/17 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1939 **** ---- Jet 0 --- - Et [GeV/Hw]: 45.5/92 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 34/69 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 29.5/60 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 27/55 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 6.5/14 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -1.392/-32 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -1.392/-32 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 0.785398/18 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 368/737 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 80/161 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 27/55 - Phi [Rad/Hw]: 0.741765/17 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 59/119 - Phi [Rad/Hw]: 0.785398/18 -BX = 1940 **** -BX = 1941 **** -BX = 1942 **** -BX = 1943 **** -BX = 1944 **** -BX = 1945 **** -BX = 1946 **** -BX = 1947 **** -BX = 1948 **** -BX = 1949 **** -BX = 1950 **** -BX = 1951 **** -BX = 1952 **** -BX = 1953 **** -BX = 1954 **** -BX = 1955 **** -BX = 1956 **** -BX = 1957 **** ---- Jet 0 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 0.785398/18 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 285.5/572 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 17/35 - Phi [Rad/Hw]: -1.4399/111 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1958 **** -BX = 1959 **** -BX = 1960 **** -BX = 1961 **** -BX = 1962 **** -BX = 1963 **** -BX = 1964 **** -BX = 1965 **** -BX = 1966 **** ---- Jet 0 --- - Et [GeV/Hw]: 35.5/72 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 306.5/614 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 35.5/72 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 7.5/16 - Phi [Rad/Hw]: -0.872665/124 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 35/71 - Phi [Rad/Hw]: -0.567232/131 -BX = 1967 **** -BX = 1968 **** -BX = 1969 **** -BX = 1970 **** -BX = 1971 **** -BX = 1972 **** -BX = 1973 **** -BX = 1974 **** -BX = 1975 **** -BX = 1976 **** -BX = 1977 **** -BX = 1978 **** -BX = 1979 **** -BX = 1980 **** -BX = 1981 **** -BX = 1982 **** -BX = 1983 **** ---- Jet 0 --- - Et [GeV/Hw]: 23.5/48 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.74/40 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.22173/116 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 410.5/822 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 29.5/60 - Phi [Rad/Hw]: 2.05076/47 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 1984 **** -BX = 1985 **** -BX = 1986 **** -BX = 1987 **** -BX = 1988 **** ---- Jet 0 --- - Et [GeV/Hw]: 31.5/64 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 31/63 - Eta [rad/Hw]: -3.915/-90 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 0 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 297/595 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 31.5/64 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 8.5/18 - Phi [Rad/Hw]: -0.523599/132 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 31/63 - Phi [Rad/Hw]: -0.741765/127 -BX = 1989 **** -BX = 1990 **** -BX = 1991 **** -BX = 1992 **** -BX = 1993 **** -BX = 1994 **** -BX = 1995 **** -BX = 1996 **** -BX = 1997 **** -BX = 1998 **** -BX = 1999 **** -BX = 2000 **** -BX = 2001 **** -BX = 2002 **** -BX = 2003 **** -BX = 2004 **** -BX = 2005 **** -BX = 2006 **** -BX = 2007 **** -BX = 2008 **** -BX = 2009 **** -BX = 2010 **** -BX = 2011 **** -BX = 2012 **** -BX = 2013 **** -BX = 2014 **** -BX = 2015 **** -BX = 2016 **** -BX = 2017 **** -BX = 2018 **** -BX = 2019 **** -BX = 2020 **** -BX = 2021 **** -BX = 2022 **** ---- Jet 0 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 314.5/630 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 27.5/56 - Phi [Rad/Hw]: 1.00356/23 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2023 **** -BX = 2024 **** -BX = 2025 **** -BX = 2026 **** -BX = 2027 **** -BX = 2028 **** -BX = 2029 **** -BX = 2030 **** -BX = 2031 **** -BX = 2032 **** -BX = 2033 **** -BX = 2034 **** -BX = 2035 **** -BX = 2036 **** -BX = 2037 **** -BX = 2038 **** -BX = 2039 **** -BX = 2040 **** -BX = 2041 **** -BX = 2042 **** -BX = 2043 **** ---- Jet 0 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 0.785398/18 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 266/533 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 3.5/8 - Phi [Rad/Hw]: 0.305433/7 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2044 **** ---- Jet 0 --- - Et [GeV/Hw]: 32.5/66 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 0.959931/22 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.74533/104 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 300.5/602 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 32.5/66 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 31.5/64 - Phi [Rad/Hw]: 2.66163/61 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 32/65 - Phi [Rad/Hw]: 2.92343/67 -BX = 2045 **** -BX = 2046 **** -BX = 2047 **** -BX = 2048 **** -BX = 2049 **** -BX = 2050 **** -BX = 2051 **** -BX = 2052 **** -BX = 2053 **** -BX = 2054 **** -BX = 2055 **** -BX = 2056 **** -BX = 2057 **** -BX = 2058 **** -BX = 2059 **** -BX = 2060 **** -BX = 2061 **** -BX = 2062 **** -BX = 2063 **** -BX = 2064 **** -BX = 2065 **** -BX = 2066 **** -BX = 2067 **** -BX = 2068 **** -BX = 2069 **** ---- Jet 0 --- - Et [GeV/Hw]: 50/101 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 31.5/64 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 337.5/676 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 82/165 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 27/55 - Phi [Rad/Hw]: 1.13446/26 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 27/55 - Phi [Rad/Hw]: 0.218166/5 -BX = 2070 **** -BX = 2071 **** -BX = 2072 **** -BX = 2073 **** -BX = 2074 **** -BX = 2075 **** -BX = 2076 **** -BX = 2077 **** -BX = 2078 **** -BX = 2079 **** -BX = 2080 **** -BX = 2081 **** -BX = 2082 **** -BX = 2083 **** -BX = 2084 **** -BX = 2085 **** -BX = 2086 **** -BX = 2087 **** -BX = 2088 **** -BX = 2089 **** -BX = 2090 **** -BX = 2091 **** ---- Jet 0 --- - Et [GeV/Hw]: 20/41 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 6.5/14 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -1.22173/116 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.914/-44 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.914/-44 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -1.22173/116 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 0.349066/8 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 452/905 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 25/51 - Phi [Rad/Hw]: 1.78896/41 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2092 **** ---- Jet 0 --- - Et [GeV/Hw]: 46/93 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -3.567/-82 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 28/57 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: 0.785398/18 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 300.5/602 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 46/93 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 14/29 - Phi [Rad/Hw]: 1.78896/41 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 45.5/92 - Phi [Rad/Hw]: 2.13803/49 -BX = 2093 **** -BX = 2094 **** ---- Jet 0 --- - Et [GeV/Hw]: 91.5/184 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 47/95 - Eta [rad/Hw]: 3.567/82 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: 3.0015/69 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 23.5/48 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -0.610865/130 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 53/107 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -0.610865/130 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 374.5/750 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 91.5/184 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 18/37 - Phi [Rad/Hw]: -2.00713/98 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 91/183 - Phi [Rad/Hw]: -1.52716/109 -BX = 2095 **** -BX = 2096 **** ---- Jet 0 --- - Et [GeV/Hw]: 40.5/82 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -1.74533/104 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -1.74533/104 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 307.5/616 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 40.5/82 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 24/49 - Phi [Rad/Hw]: 1.00356/23 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 40/81 - Phi [Rad/Hw]: 1.35263/31 -BX = 2097 **** -BX = 2098 **** -BX = 2099 **** -BX = 2100 **** -BX = 2101 **** -BX = 2102 **** -BX = 2103 **** -BX = 2104 **** -BX = 2105 **** -BX = 2106 **** -BX = 2107 **** -BX = 2108 **** -BX = 2109 **** -BX = 2110 **** -BX = 2111 **** -BX = 2112 **** -BX = 2113 **** -BX = 2114 **** -BX = 2115 **** -BX = 2116 **** -BX = 2117 **** -BX = 2118 **** -BX = 2119 **** -BX = 2120 **** -BX = 2121 **** -BX = 2122 **** -BX = 2123 **** -BX = 2124 **** -BX = 2125 **** -BX = 2126 **** -BX = 2127 **** -BX = 2128 **** -BX = 2129 **** -BX = 2130 **** -BX = 2131 **** -BX = 2132 **** ---- Jet 0 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 8/17 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 57.5/116 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 53.5/108 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 42/85 - Eta [rad/Hw]: 3.219/74 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 32/65 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 29/59 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- Jet 7 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 2.96706/68 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 35/71 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -1.22173/116 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 799.5/1600 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 144/289 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 16/33 - Phi [Rad/Hw]: -2.74889/81 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 35/71 - Phi [Rad/Hw]: 2.61799/60 -BX = 2133 **** ---- Jet 0 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 51.5/104 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 34/69 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- Jet 7 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- E/Gamma 10 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 0 ---- E/Gamma 11 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- Tau 10 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 785/1571 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 86/173 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 14.5/30 - Phi [Rad/Hw]: 0.916298/21 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 48/97 - Phi [Rad/Hw]: 2.57436/59 -BX = 2134 **** ---- Jet 0 --- - Et [GeV/Hw]: 40.5/82 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 35.5/72 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -1.74533/104 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- Tau 11 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 521.5/1044 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 76.5/154 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 54.5/110 - Phi [Rad/Hw]: -1.35263/113 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 75.5/152 - Phi [Rad/Hw]: -1.4399/111 -BX = 2135 **** -BX = 2136 **** -BX = 2137 **** -BX = 2138 **** -BX = 2139 **** -BX = 2140 **** -BX = 2141 **** -BX = 2142 **** -BX = 2143 **** -BX = 2144 **** -BX = 2145 **** -BX = 2146 **** -BX = 2147 **** ---- Jet 0 --- - Et [GeV/Hw]: 6.5/14 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 37.5/76 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 34/69 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 32/65 - Eta [rad/Hw]: -4.089/-94 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 0 ---- Tau 1 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 0 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 0 ---- Tau 8 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.5708/108 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 561/1123 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 72/145 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 34/69 - Phi [Rad/Hw]: 0.392699/9 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 69/139 - Phi [Rad/Hw]: 0.872665/20 -BX = 2148 **** -BX = 2149 **** -BX = 2150 **** -BX = 2151 **** -BX = 2152 **** -BX = 2153 **** -BX = 2154 **** -BX = 2155 **** -BX = 2156 **** -BX = 2157 **** -BX = 2158 **** -BX = 2159 **** -BX = 2160 **** -BX = 2161 **** -BX = 2162 **** -BX = 2163 **** -BX = 2164 **** -BX = 2165 **** -BX = 2166 **** ---- Jet 0 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.96706/68 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 2.44346/56 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 481.5/964 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 21/43 - Phi [Rad/Hw]: -1.22173/116 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2167 **** -BX = 2168 **** -BX = 2169 **** -BX = 2170 **** -BX = 2171 **** -BX = 2172 **** -BX = 2173 **** -BX = 2174 **** -BX = 2175 **** -BX = 2176 **** -BX = 2177 **** -BX = 2178 **** -BX = 2179 **** -BX = 2180 **** -BX = 2181 **** -BX = 2182 **** ---- Jet 0 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: 0.523599/12 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 404/809 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 12/25 - Phi [Rad/Hw]: -3.05433/74 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2183 **** -BX = 2184 **** -BX = 2185 **** -BX = 2186 **** -BX = 2187 **** -BX = 2188 **** -BX = 2189 **** -BX = 2190 **** -BX = 2191 **** -BX = 2192 **** -BX = 2193 **** -BX = 2194 **** -BX = 2195 **** ---- Jet 0 --- - Et [GeV/Hw]: 29.5/60 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -1.5708/108 - Iso [Hw]: 0 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 368.5/738 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 22/45 - Phi [Rad/Hw]: -0.2618/138 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2196 **** -BX = 2197 **** -BX = 2198 **** -BX = 2199 **** -BX = 2200 **** -BX = 2201 **** -BX = 2202 **** -BX = 2203 **** -BX = 2204 **** -BX = 2205 **** -BX = 2206 **** -BX = 2207 **** -BX = 2208 **** -BX = 2209 **** -BX = 2210 **** -BX = 2211 **** -BX = 2212 **** -BX = 2213 **** -BX = 2214 **** -BX = 2215 **** -BX = 2216 **** -BX = 2217 **** -BX = 2218 **** -BX = 2219 **** -BX = 2220 **** -BX = 2221 **** -BX = 2222 **** -BX = 2223 **** -BX = 2224 **** -BX = 2225 **** -BX = 2226 **** -BX = 2227 **** -BX = 2228 **** -BX = 2229 **** -BX = 2230 **** -BX = 2231 **** -BX = 2232 **** -BX = 2233 **** -BX = 2234 **** -BX = 2235 **** ---- Jet 0 --- - Et [GeV/Hw]: 33/67 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 27/55 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.523599/12 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 270.5/542 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 33/67 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 15.5/32 - Phi [Rad/Hw]: 2.70526/62 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 32.5/66 - Phi [Rad/Hw]: -1.65806/106 -BX = 2236 **** -BX = 2237 **** -BX = 2238 **** -BX = 2239 **** -BX = 2240 **** -BX = 2241 **** -BX = 2242 **** -BX = 2243 **** -BX = 2244 **** -BX = 2245 **** -BX = 2246 **** -BX = 2247 **** -BX = 2248 **** -BX = 2249 **** -BX = 2250 **** -BX = 2251 **** -BX = 2252 **** -BX = 2253 **** -BX = 2254 **** -BX = 2255 **** -BX = 2256 **** -BX = 2257 **** -BX = 2258 **** -BX = 2259 **** -BX = 2260 **** -BX = 2261 **** -BX = 2262 **** -BX = 2263 **** -BX = 2264 **** -BX = 2265 **** -BX = 2266 **** -BX = 2267 **** -BX = 2268 **** -BX = 2269 **** -BX = 2270 **** -BX = 2271 **** -BX = 2272 **** -BX = 2273 **** -BX = 2274 **** -BX = 2275 **** -BX = 2276 **** -BX = 2277 **** -BX = 2278 **** ---- Jet 0 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 240/481 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 17/35 - Phi [Rad/Hw]: 0.436332/10 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2279 **** -BX = 2280 **** ---- Jet 0 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -0.610865/130 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 252.5/506 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 20/41 - Phi [Rad/Hw]: 3.05433/70 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2281 **** -BX = 2282 **** -BX = 2283 **** -BX = 2284 **** -BX = 2285 **** -BX = 2286 **** -BX = 2287 **** -BX = 2288 **** -BX = 2289 **** -BX = 2290 **** -BX = 2291 **** -BX = 2292 **** -BX = 2293 **** -BX = 2294 **** -BX = 2295 **** -BX = 2296 **** -BX = 2297 **** -BX = 2298 **** -BX = 2299 **** -BX = 2300 **** -BX = 2301 **** -BX = 2302 **** ---- Jet 0 --- - Et [GeV/Hw]: 33.5/68 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.349/54 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -1.74533/104 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 327/655 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 33.5/68 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 8.5/18 - Phi [Rad/Hw]: -0.741765/127 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 33/67 - Phi [Rad/Hw]: -0.872665/124 -BX = 2303 **** -BX = 2304 **** -BX = 2305 **** -BX = 2306 **** -BX = 2307 **** -BX = 2308 **** -BX = 2309 **** -BX = 2310 **** -BX = 2311 **** -BX = 2312 **** -BX = 2313 **** -BX = 2314 **** -BX = 2315 **** -BX = 2316 **** -BX = 2317 **** -BX = 2318 **** -BX = 2319 **** -BX = 2320 **** -BX = 2321 **** -BX = 2322 **** -BX = 2323 **** ---- Jet 0 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: 1.479/34 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 1.479/34 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 342/685 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 8/17 - Phi [Rad/Hw]: 1.22173/28 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2324 **** -BX = 2325 **** ---- Jet 0 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 228/457 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 14.5/30 - Phi [Rad/Hw]: -2.05076/97 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2326 **** -BX = 2327 **** ---- Jet 0 --- - Et [GeV/Hw]: 93.5/188 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 65/131 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 31.5/64 - Eta [rad/Hw]: 3.567/82 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 0/1 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 0 ---- Tau 8 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -1.8326/102 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 377.5/756 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 159/319 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 39/79 - Phi [Rad/Hw]: 0.479966/11 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 28.5/58 - Phi [Rad/Hw]: -0.305433/137 -BX = 2328 **** -BX = 2329 **** -BX = 2330 **** -BX = 2331 **** -BX = 2332 **** -BX = 2333 **** -BX = 2334 **** -BX = 2335 **** -BX = 2336 **** -BX = 2337 **** -BX = 2338 **** -BX = 2339 **** -BX = 2340 **** -BX = 2341 **** -BX = 2342 **** -BX = 2343 **** -BX = 2344 **** -BX = 2345 **** -BX = 2346 **** -BX = 2347 **** -BX = 2348 **** -BX = 2349 **** -BX = 2350 **** -BX = 2351 **** ---- Jet 0 --- - Et [GeV/Hw]: 29.5/60 - Eta [rad/Hw]: -3.0015/-69 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 298/597 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 19/39 - Phi [Rad/Hw]: -0.959931/122 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2352 **** -BX = 2353 **** ---- Jet 0 --- - Et [GeV/Hw]: 40.5/82 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 39/79 - Eta [rad/Hw]: 3.0015/69 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 37.5/76 - Eta [rad/Hw]: 3.219/74 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 35.5/72 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -1.566/-36 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 0 ---- Tau 11 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 371/743 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 76.5/154 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 49/99 - Phi [Rad/Hw]: -2.92343/77 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 64/129 - Phi [Rad/Hw]: -2.18166/94 -BX = 2354 **** ---- Jet 0 --- - Et [GeV/Hw]: 59.5/120 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 32/65 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -2.09439/96 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 374/749 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 92/185 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 34/69 - Phi [Rad/Hw]: 0.829031/19 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 85.5/172 - Phi [Rad/Hw]: 1.22173/28 -BX = 2355 **** -BX = 2356 **** -BX = 2357 **** -BX = 2358 **** -BX = 2359 **** -BX = 2360 **** -BX = 2361 **** -BX = 2362 **** -BX = 2363 **** -BX = 2364 **** -BX = 2365 **** -BX = 2366 **** -BX = 2367 **** -BX = 2368 **** -BX = 2369 **** ---- Jet 0 --- - Et [GeV/Hw]: 29/59 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 23.5/48 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: -1.8326/102 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 2.96706/68 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 312.5/626 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 17.5/36 - Phi [Rad/Hw]: 1.78896/41 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2370 **** -BX = 2371 **** -BX = 2372 **** -BX = 2373 **** -BX = 2374 **** -BX = 2375 **** -BX = 2376 **** -BX = 2377 **** -BX = 2378 **** -BX = 2379 **** -BX = 2380 **** -BX = 2381 **** -BX = 2382 **** -BX = 2383 **** -BX = 2384 **** -BX = 2385 **** -BX = 2386 **** -BX = 2387 **** -BX = 2388 **** -BX = 2389 **** ---- Jet 0 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 226.5/454 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 22/45 - Phi [Rad/Hw]: -2.18166/94 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2390 **** -BX = 2391 **** -BX = 2392 **** -BX = 2393 **** -BX = 2394 **** -BX = 2395 **** -BX = 2396 **** -BX = 2397 **** -BX = 2398 **** -BX = 2399 **** -BX = 2400 **** -BX = 2401 **** ---- Jet 0 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 3.393/78 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 221/443 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 6/13 - Phi [Rad/Hw]: -3.05433/74 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2402 **** -BX = 2403 **** -BX = 2404 **** ---- Jet 0 --- - Et [GeV/Hw]: 39.5/80 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 2 ---- E/Gamma 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 317/635 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 39.5/80 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 24/49 - Phi [Rad/Hw]: -2.87979/78 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 39/79 - Phi [Rad/Hw]: 2.39983/55 -BX = 2405 **** -BX = 2406 **** -BX = 2407 **** -BX = 2408 **** -BX = 2409 **** -BX = 2410 **** -BX = 2411 **** -BX = 2412 **** -BX = 2413 **** -BX = 2414 **** ---- Jet 0 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 348.5/698 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 25/51 - Phi [Rad/Hw]: 1.26536/29 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2415 **** -BX = 2416 **** ---- Jet 0 --- - Et [GeV/Hw]: 46.5/94 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 9/19 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 267.5/536 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 46.5/94 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 19/39 - Phi [Rad/Hw]: -0.523599/132 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 46/93 - Phi [Rad/Hw]: -0.872665/124 -BX = 2417 **** -BX = 2418 **** -BX = 2419 **** -BX = 2420 **** -BX = 2421 **** -BX = 2422 **** -BX = 2423 **** -BX = 2424 **** -BX = 2425 **** -BX = 2426 **** -BX = 2427 **** -BX = 2428 **** -BX = 2429 **** -BX = 2430 **** -BX = 2431 **** -BX = 2432 **** -BX = 2433 **** -BX = 2434 **** -BX = 2435 **** -BX = 2436 **** -BX = 2437 **** -BX = 2438 **** -BX = 2439 **** -BX = 2440 **** -BX = 2441 **** -BX = 2442 **** -BX = 2443 **** -BX = 2444 **** -BX = 2445 **** -BX = 2446 **** -BX = 2447 **** -BX = 2448 **** -BX = 2449 **** -BX = 2450 **** -BX = 2451 **** -BX = 2452 **** -BX = 2453 **** -BX = 2454 **** -BX = 2455 **** -BX = 2456 **** -BX = 2457 **** ---- Jet 0 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -1.48353/110 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 3 ---- E/Gamma 10 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.74/40 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 2.79253/64 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -1.48353/110 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 580.5/1162 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 2/5 - Phi [Rad/Hw]: -0.610865/130 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2458 **** -BX = 2459 **** -BX = 2460 **** -BX = 2461 **** ---- Jet 0 --- - Et [GeV/Hw]: 37/75 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.698132/128 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.698132/128 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 384.5/770 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 37/75 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 21.5/44 - Phi [Rad/Hw]: -0.741765/127 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 36.5/74 - Phi [Rad/Hw]: -1.1781/117 -BX = 2462 **** -BX = 2463 **** -BX = 2464 **** -BX = 2465 **** -BX = 2466 **** -BX = 2467 **** -BX = 2468 **** -BX = 2469 **** ---- Jet 0 --- - Et [GeV/Hw]: 35/71 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 0.523599/12 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 29/59 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: -0.698132/128 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 588.5/1178 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 35/71 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 12.5/26 - Phi [Rad/Hw]: -2.22529/93 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 34.5/70 - Phi [Rad/Hw]: -2.92343/77 -BX = 2470 **** -BX = 2471 **** -BX = 2472 **** -BX = 2473 **** -BX = 2474 **** -BX = 2475 **** -BX = 2476 **** -BX = 2477 **** -BX = 2478 **** ---- Jet 0 --- - Et [GeV/Hw]: 33/67 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 28.5/58 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -3.219/-74 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: 3.219/74 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 0.959931/22 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.87979/78 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 0.959931/22 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 490.5/982 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 33/67 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 25.5/52 - Phi [Rad/Hw]: -1.8326/102 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 32.5/66 - Phi [Rad/Hw]: -0.567232/131 -BX = 2479 **** -BX = 2480 **** -BX = 2481 **** -BX = 2482 **** -BX = 2483 **** ---- Jet 0 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -4.089/-94 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.349/54 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 2.79253/64 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -2.09439/96 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 365.5/732 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 20.5/42 - Phi [Rad/Hw]: -0.392699/135 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2484 **** -BX = 2485 **** -BX = 2486 **** -BX = 2487 **** -BX = 2488 **** -BX = 2489 **** -BX = 2490 **** ---- Jet 0 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.9575/-45 - Phi [rad/Hw]: -0.698132/128 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.9575/-45 - Phi [rad/Hw]: -0.698132/128 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 367.5/736 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 17/35 - Phi [Rad/Hw]: 2.31256/53 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2491 **** ---- Jet 0 --- - Et [GeV/Hw]: 37/75 - Eta [rad/Hw]: -3.393/-78 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 0.959931/22 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 0 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 2.96706/68 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 668/1337 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 30/61 - Phi [Rad/Hw]: 0.0872665/2 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2492 **** -BX = 2493 **** -BX = 2494 **** -BX = 2495 **** -BX = 2496 **** -BX = 2497 **** -BX = 2498 **** -BX = 2499 **** -BX = 2500 **** -BX = 2501 **** -BX = 2502 **** -BX = 2503 **** -BX = 2504 **** -BX = 2505 **** -BX = 2506 **** -BX = 2507 **** -BX = 2508 **** -BX = 2509 **** -BX = 2510 **** -BX = 2511 **** -BX = 2512 **** -BX = 2513 **** -BX = 2514 **** -BX = 2515 **** -BX = 2516 **** -BX = 2517 **** -BX = 2518 **** -BX = 2519 **** -BX = 2520 **** -BX = 2521 **** ---- Jet 0 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.392/-32 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 0.959931/22 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 367/735 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 2.5/6 - Phi [Rad/Hw]: -1.9635/99 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2522 **** -BX = 2523 **** -BX = 2524 **** -BX = 2525 **** -BX = 2526 **** -BX = 2527 **** ---- Jet 0 --- - Et [GeV/Hw]: 28.5/58 - Eta [rad/Hw]: -3.567/-82 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.479/-34 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -1.914/-44 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.479/-34 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -1.914/-44 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 492/985 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 17.5/36 - Phi [Rad/Hw]: 0.0436332/1 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2528 **** -BX = 2529 **** -BX = 2530 **** -BX = 2531 **** -BX = 2532 **** -BX = 2533 **** -BX = 2534 **** -BX = 2535 **** -BX = 2536 **** -BX = 2537 **** -BX = 2538 **** -BX = 2539 **** -BX = 2540 **** -BX = 2541 **** -BX = 2542 **** -BX = 2543 **** -BX = 2544 **** -BX = 2545 **** -BX = 2546 **** -BX = 2547 **** -BX = 2548 **** -BX = 2549 **** -BX = 2550 **** -BX = 2551 **** -BX = 2552 **** -BX = 2553 **** -BX = 2554 **** -BX = 2555 **** -BX = 2556 **** -BX = 2557 **** -BX = 2558 **** -BX = 2559 **** -BX = 2560 **** -BX = 2561 **** ---- Jet 0 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 2.79253/64 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 2.79253/64 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.74533/104 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 310/621 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 18/37 - Phi [Rad/Hw]: 0.349066/8 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2562 **** -BX = 2563 **** -BX = 2564 **** -BX = 2565 **** -BX = 2566 **** ---- Jet 0 --- - Et [GeV/Hw]: 31.5/64 - Eta [rad/Hw]: 3.741/86 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 0 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 0.959931/22 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 311.5/624 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 23/47 - Phi [Rad/Hw]: 2.05076/47 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2567 **** -BX = 2568 **** -BX = 2569 **** -BX = 2570 **** -BX = 2571 **** -BX = 2572 **** ---- Jet 0 --- - Et [GeV/Hw]: 31.5/64 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 6.5/14 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -2.87979/78 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.9575/-45 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 349.5/700 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 31.5/64 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 4/9 - Phi [Rad/Hw]: -2.74889/81 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 31/63 - Phi [Rad/Hw]: -0.741765/127 -BX = 2573 **** -BX = 2574 **** -BX = 2575 **** -BX = 2576 **** -BX = 2577 **** -BX = 2578 **** -BX = 2579 **** -BX = 2580 **** -BX = 2581 **** -BX = 2582 **** -BX = 2583 **** -BX = 2584 **** -BX = 2585 **** -BX = 2586 **** ---- Jet 0 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -3.0015/-69 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 317.5/636 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 8/17 - Phi [Rad/Hw]: -2.74889/81 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2587 **** ---- Jet 0 --- - Et [GeV/Hw]: 34/69 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 8/17 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 0.785398/18 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 503.5/1008 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 34/69 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 29/59 - Phi [Rad/Hw]: -2.39983/89 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 33.5/68 - Phi [Rad/Hw]: 2.74889/63 -BX = 2588 **** -BX = 2589 **** -BX = 2590 **** -BX = 2591 **** -BX = 2592 **** -BX = 2593 **** -BX = 2594 **** -BX = 2595 **** -BX = 2596 **** -BX = 2597 **** -BX = 2598 **** -BX = 2599 **** -BX = 2600 **** -BX = 2601 **** -BX = 2602 **** -BX = 2603 **** -BX = 2604 **** -BX = 2605 **** -BX = 2606 **** ---- Jet 0 --- - Et [GeV/Hw]: 21/43 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 258/517 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 11.5/24 - Phi [Rad/Hw]: -0.305433/137 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2607 **** -BX = 2608 **** -BX = 2609 **** -BX = 2610 **** ---- Jet 0 --- - Et [GeV/Hw]: 23.5/48 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 2 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 239/479 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 13.5/28 - Phi [Rad/Hw]: 1.35263/31 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2611 **** -BX = 2612 **** -BX = 2613 **** ---- Jet 0 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -3.219/-74 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.566/-36 - Phi [rad/Hw]: 1.0472/24 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 202.5/406 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 13.5/28 - Phi [Rad/Hw]: -0.916298/123 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2614 **** -BX = 2615 **** -BX = 2616 **** -BX = 2617 **** -BX = 2618 **** -BX = 2619 **** -BX = 2620 **** -BX = 2621 **** -BX = 2622 **** -BX = 2623 **** -BX = 2624 **** -BX = 2625 **** -BX = 2626 **** -BX = 2627 **** -BX = 2628 **** -BX = 2629 **** -BX = 2630 **** -BX = 2631 **** -BX = 2632 **** -BX = 2633 **** -BX = 2634 **** -BX = 2635 **** -BX = 2636 **** -BX = 2637 **** -BX = 2638 **** -BX = 2639 **** -BX = 2640 **** -BX = 2641 **** -BX = 2642 **** -BX = 2643 **** -BX = 2644 **** -BX = 2645 **** -BX = 2646 **** -BX = 2647 **** -BX = 2648 **** -BX = 2649 **** -BX = 2650 **** -BX = 2651 **** -BX = 2652 **** -BX = 2653 **** -BX = 2654 **** -BX = 2655 **** -BX = 2656 **** -BX = 2657 **** -BX = 2658 **** -BX = 2659 **** -BX = 2660 **** -BX = 2661 **** -BX = 2662 **** -BX = 2663 **** -BX = 2664 **** -BX = 2665 **** -BX = 2666 **** -BX = 2667 **** -BX = 2668 **** -BX = 2669 **** -BX = 2670 **** -BX = 2671 **** -BX = 2672 **** -BX = 2673 **** -BX = 2674 **** -BX = 2675 **** -BX = 2676 **** -BX = 2677 **** -BX = 2678 **** -BX = 2679 **** -BX = 2680 **** -BX = 2681 **** -BX = 2682 **** -BX = 2683 **** -BX = 2684 **** -BX = 2685 **** ---- Jet 0 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -1.1781/117 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 20/41 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: -1.22173/116 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -1.22173/116 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 411/823 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 23.5/48 - Phi [Rad/Hw]: 1.0472/24 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2686 **** -BX = 2687 **** -BX = 2688 **** -BX = 2689 **** -BX = 2690 **** -BX = 2691 **** -BX = 2692 **** ---- Jet 0 --- - Et [GeV/Hw]: 36/73 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -3.219/-74 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -2.3055/-53 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 2.96706/68 - Iso [Hw]: 0 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.74/-40 - Phi [rad/Hw]: 0.959931/22 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 471.5/944 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 36/73 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 9.5/20 - Phi [Rad/Hw]: 0.785398/18 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 35.5/72 - Phi [Rad/Hw]: -0.2618/138 -BX = 2693 **** -BX = 2694 **** -BX = 2695 **** -BX = 2696 **** -BX = 2697 **** -BX = 2698 **** -BX = 2699 **** -BX = 2700 **** -BX = 2701 **** -BX = 2702 **** -BX = 2703 **** -BX = 2704 **** -BX = 2705 **** -BX = 2706 **** -BX = 2707 **** -BX = 2708 **** -BX = 2709 **** -BX = 2710 **** -BX = 2711 **** -BX = 2712 **** -BX = 2713 **** -BX = 2714 **** -BX = 2715 **** -BX = 2716 **** -BX = 2717 **** ---- Jet 0 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -1.9575/-45 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 3 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -2.87979/78 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.9575/-45 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.566/36 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 427/855 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 14/29 - Phi [Rad/Hw]: 1.26536/29 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2718 **** -BX = 2719 **** -BX = 2720 **** -BX = 2721 **** -BX = 2722 **** -BX = 2723 **** -BX = 2724 **** -BX = 2725 **** -BX = 2726 **** -BX = 2727 **** -BX = 2728 **** -BX = 2729 **** -BX = 2730 **** -BX = 2731 **** -BX = 2732 **** -BX = 2733 **** -BX = 2734 **** -BX = 2735 **** -BX = 2736 **** -BX = 2737 **** -BX = 2738 **** -BX = 2739 **** -BX = 2740 **** -BX = 2741 **** -BX = 2742 **** -BX = 2743 **** -BX = 2744 **** ---- Jet 0 --- - Et [GeV/Hw]: 39.5/80 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 32.5/66 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 30/61 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -2.87979/78 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 0.261799/6 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -1.8326/102 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 428.5/858 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 103/207 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 12.5/26 - Phi [Rad/Hw]: 1.22173/28 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 44.5/90 - Phi [Rad/Hw]: 0.741765/17 -BX = 2745 **** -BX = 2746 **** -BX = 2747 **** -BX = 2748 **** -BX = 2749 **** -BX = 2750 **** -BX = 2751 **** -BX = 2752 **** -BX = 2753 **** -BX = 2754 **** -BX = 2755 **** -BX = 2756 **** -BX = 2757 **** -BX = 2758 **** -BX = 2759 **** -BX = 2760 **** -BX = 2761 **** -BX = 2762 **** -BX = 2763 **** -BX = 2764 **** -BX = 2765 **** -BX = 2766 **** -BX = 2767 **** -BX = 2768 **** -BX = 2769 **** -BX = 2770 **** -BX = 2771 **** -BX = 2772 **** -BX = 2773 **** -BX = 2774 **** -BX = 2775 **** -BX = 2776 **** -BX = 2777 **** -BX = 2778 **** -BX = 2779 **** -BX = 2780 **** -BX = 2781 **** -BX = 2782 **** -BX = 2783 **** -BX = 2784 **** -BX = 2785 **** -BX = 2786 **** -BX = 2787 **** -BX = 2788 **** -BX = 2789 **** -BX = 2790 **** -BX = 2791 **** -BX = 2792 **** -BX = 2793 **** -BX = 2794 **** -BX = 2795 **** -BX = 2796 **** -BX = 2797 **** -BX = 2798 **** -BX = 2799 **** -BX = 2800 **** -BX = 2801 **** -BX = 2802 **** -BX = 2803 **** -BX = 2804 **** -BX = 2805 **** -BX = 2806 **** -BX = 2807 **** -BX = 2808 **** -BX = 2809 **** -BX = 2810 **** -BX = 2811 **** -BX = 2812 **** -BX = 2813 **** -BX = 2814 **** -BX = 2815 **** -BX = 2816 **** -BX = 2817 **** -BX = 2818 **** -BX = 2819 **** -BX = 2820 **** -BX = 2821 **** -BX = 2822 **** -BX = 2823 **** -BX = 2824 **** -BX = 2825 **** -BX = 2826 **** -BX = 2827 **** -BX = 2828 **** -BX = 2829 **** -BX = 2830 **** -BX = 2831 **** -BX = 2832 **** -BX = 2833 **** -BX = 2834 **** -BX = 2835 **** -BX = 2836 **** ---- Jet 0 --- - Et [GeV/Hw]: 32.5/66 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 6.5/14 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 518/1037 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 32.5/66 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 4.5/10 - Phi [Rad/Hw]: 1.39626/32 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 32/65 - Phi [Rad/Hw]: 0.523599/12 -BX = 2837 **** -BX = 2838 **** -BX = 2839 **** ---- Jet 0 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 9/19 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 0/1 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 23/47 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 29/59 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 408/817 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 30.5/62 - Phi [Rad/Hw]: -2.44346/88 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2840 **** -BX = 2841 **** -BX = 2842 **** -BX = 2843 **** -BX = 2844 **** ---- Jet 0 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: -3.0015/-69 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 1.5/4 - Eta [rad/Hw]: 2.1315/49 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 2.1315/49 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 393/787 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 31/63 - Phi [Rad/Hw]: -2.13803/95 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2845 **** -BX = 2846 **** -BX = 2847 **** -BX = 2848 **** -BX = 2849 **** -BX = 2850 **** -BX = 2851 **** -BX = 2852 **** -BX = 2853 **** -BX = 2854 **** -BX = 2855 **** -BX = 2856 **** -BX = 2857 **** -BX = 2858 **** -BX = 2859 **** -BX = 2860 **** -BX = 2861 **** -BX = 2862 **** -BX = 2863 **** -BX = 2864 **** -BX = 2865 **** -BX = 2866 **** -BX = 2867 **** -BX = 2868 **** -BX = 2869 **** -BX = 2870 **** -BX = 2871 **** -BX = 2872 **** -BX = 2873 **** -BX = 2874 **** -BX = 2875 **** -BX = 2876 **** -BX = 2877 **** -BX = 2878 **** -BX = 2879 **** -BX = 2880 **** ---- Jet 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 8/17 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 0/1 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 68.5/138 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 49/99 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 35.5/72 - Eta [rad/Hw]: 3.219/74 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 0 ---- Jet 7 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- Jet 8 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -2.349/-54 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 36/73 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 36/73 - Eta [rad/Hw]: 1.914/44 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 508/1017 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 118/237 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 26/53 - Phi [Rad/Hw]: -1.74533/104 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 35/71 - Phi [Rad/Hw]: -3.01069/75 -BX = 2881 **** -BX = 2882 **** -BX = 2883 **** -BX = 2884 **** -BX = 2885 **** -BX = 2886 **** -BX = 2887 **** -BX = 2888 **** -BX = 2889 **** -BX = 2890 **** -BX = 2891 **** -BX = 2892 **** -BX = 2893 **** -BX = 2894 **** -BX = 2895 **** -BX = 2896 **** -BX = 2897 **** -BX = 2898 **** -BX = 2899 **** -BX = 2900 **** -BX = 2901 **** -BX = 2902 **** -BX = 2903 **** -BX = 2904 **** -BX = 2905 **** -BX = 2906 **** -BX = 2907 **** -BX = 2908 **** -BX = 2909 **** ---- Jet 0 --- - Et [GeV/Hw]: 31.5/64 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 387.5/776 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 31.5/64 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 7/15 - Phi [Rad/Hw]: 1.9635/45 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 31/63 - Phi [Rad/Hw]: 1.13446/26 -BX = 2910 **** -BX = 2911 **** -BX = 2912 **** -BX = 2913 **** -BX = 2914 **** -BX = 2915 **** -BX = 2916 **** -BX = 2917 **** -BX = 2918 **** -BX = 2919 **** -BX = 2920 **** -BX = 2921 **** -BX = 2922 **** -BX = 2923 **** -BX = 2924 **** -BX = 2925 **** -BX = 2926 **** -BX = 2927 **** -BX = 2928 **** -BX = 2929 **** -BX = 2930 **** -BX = 2931 **** -BX = 2932 **** ---- Jet 0 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 0 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -2.09439/96 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -0.785398/126 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.479/-34 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.785398/18 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 432.5/866 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 39/79 - Phi [Rad/Hw]: 0.916298/21 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2933 **** -BX = 2934 **** -BX = 2935 **** -BX = 2936 **** -BX = 2937 **** -BX = 2938 **** ---- Jet 0 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.522/12 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 271/543 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 18/37 - Phi [Rad/Hw]: 1.9635/45 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2939 **** -BX = 2940 **** -BX = 2941 **** -BX = 2942 **** -BX = 2943 **** -BX = 2944 **** -BX = 2945 **** -BX = 2946 **** -BX = 2947 **** -BX = 2948 **** -BX = 2949 **** -BX = 2950 **** -BX = 2951 **** -BX = 2952 **** -BX = 2953 **** -BX = 2954 **** -BX = 2955 **** -BX = 2956 **** -BX = 2957 **** ---- Jet 0 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 379.5/760 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 23.5/48 - Phi [Rad/Hw]: -1.09083/119 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2958 **** -BX = 2959 **** -BX = 2960 **** -BX = 2961 **** -BX = 2962 **** ---- Jet 0 --- - Et [GeV/Hw]: 28/57 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.523599/12 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.566/-36 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.566/-36 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 266/533 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 10/21 - Phi [Rad/Hw]: -2.31256/91 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 2963 **** -BX = 2964 **** -BX = 2965 **** -BX = 2966 **** -BX = 2967 **** -BX = 2968 **** -BX = 2969 **** -BX = 2970 **** -BX = 2971 **** ---- Jet 0 --- - Et [GeV/Hw]: 38/77 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -3.09796/73 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 28/57 - Eta [rad/Hw]: 3.219/74 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 281/563 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 38/77 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 31.5/64 - Phi [Rad/Hw]: 0.174533/4 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 37.5/76 - Phi [Rad/Hw]: -0.0436333/143 -BX = 2972 **** ---- Jet 0 --- - Et [GeV/Hw]: 154/309 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 142.5/286 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 0/1 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 100/201 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 2.44346/56 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.5708/108 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 0 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 104.5/210 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 2.44346/56 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 48/97 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 0 ---- Tau 8 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -1.5708/108 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 604.5/1210 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 297/595 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 54/109 - Phi [Rad/Hw]: -0.174533/140 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 27.5/56 - Phi [Rad/Hw]: 0.261799/6 -BX = 2973 **** ---- Jet 0 --- - Et [GeV/Hw]: 73/147 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 72.5/146 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 33.5/68 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 6.5/14 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 35/71 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 2.00713/46 - Iso [Hw]: 0 ---- Tau 4 --- - Et [GeV/Hw]: 33/67 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 0 ---- Tau 5 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.957/-22 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 413.5/828 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 180/361 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 23.5/48 - Phi [Rad/Hw]: -1.78896/103 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 32.5/66 - Phi [Rad/Hw]: -1.39626/112 -BX = 2974 **** -BX = 2975 **** -BX = 2976 **** -BX = 2977 **** -BX = 2978 **** -BX = 2979 **** -BX = 2980 **** -BX = 2981 **** -BX = 2982 **** -BX = 2983 **** -BX = 2984 **** -BX = 2985 **** -BX = 2986 **** -BX = 2987 **** -BX = 2988 **** -BX = 2989 **** -BX = 2990 **** -BX = 2991 **** -BX = 2992 **** -BX = 2993 **** -BX = 2994 **** -BX = 2995 **** -BX = 2996 **** -BX = 2997 **** -BX = 2998 **** -BX = 2999 **** -BX = 3000 **** -BX = 3001 **** -BX = 3002 **** -BX = 3003 **** -BX = 3004 **** -BX = 3005 **** -BX = 3006 **** -BX = 3007 **** ---- Jet 0 --- - Et [GeV/Hw]: 39/79 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: -0.959931/122 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 0 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 271/543 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 39/79 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 11.5/24 - Phi [Rad/Hw]: -1.39626/112 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 38.5/78 - Phi [Rad/Hw]: 1.13446/26 -BX = 3008 **** -BX = 3009 **** -BX = 3010 **** -BX = 3011 **** -BX = 3012 **** -BX = 3013 **** -BX = 3014 **** -BX = 3015 **** -BX = 3016 **** -BX = 3017 **** -BX = 3018 **** -BX = 3019 **** ---- Jet 0 --- - Et [GeV/Hw]: 37.5/76 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.9575/45 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.9575/45 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 26/53 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 0.174533/4 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 1.9635/45 - Iso [Hw]: 0 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 410/821 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 37.5/76 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 8/17 - Phi [Rad/Hw]: 1.4399/33 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 37/75 - Phi [Rad/Hw]: 1.48353/34 -BX = 3020 **** -BX = 3021 **** -BX = 3022 **** ---- Jet 0 --- - Et [GeV/Hw]: 32.5/66 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 28/57 - Eta [rad/Hw]: -3.741/-86 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.48353/110 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.566/-36 - Phi [rad/Hw]: -1.5708/108 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.22173/116 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 450/901 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 32.5/66 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 32.5/66 - Phi [Rad/Hw]: 3.09796/71 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 32/65 - Phi [Rad/Hw]: 0.829031/19 -BX = 3023 **** -BX = 3024 **** -BX = 3025 **** -BX = 3026 **** -BX = 3027 **** -BX = 3028 **** -BX = 3029 **** -BX = 3030 **** -BX = 3031 **** -BX = 3032 **** -BX = 3033 **** -BX = 3034 **** -BX = 3035 **** -BX = 3036 **** -BX = 3037 **** -BX = 3038 **** -BX = 3039 **** -BX = 3040 **** ---- Jet 0 --- - Et [GeV/Hw]: 28/57 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.479/-34 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.741765/127 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Tau 6 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.96706/76 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: 0/0 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 458.5/918 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 9/19 - Phi [Rad/Hw]: -2.53073/86 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 3041 **** -BX = 3042 **** -BX = 3043 **** -BX = 3044 **** -BX = 3045 **** -BX = 3046 **** -BX = 3047 **** -BX = 3048 **** -BX = 3049 **** -BX = 3050 **** -BX = 3051 **** -BX = 3052 **** -BX = 3053 **** -BX = 3054 **** -BX = 3055 **** -BX = 3056 **** -BX = 3057 **** -BX = 3058 **** -BX = 3059 **** -BX = 3060 **** -BX = 3061 **** -BX = 3062 **** -BX = 3063 **** -BX = 3064 **** -BX = 3065 **** -BX = 3066 **** -BX = 3067 **** -BX = 3068 **** -BX = 3069 **** -BX = 3070 **** -BX = 3071 **** -BX = 3072 **** -BX = 3073 **** -BX = 3074 **** -BX = 3075 **** -BX = 3076 **** -BX = 3077 **** -BX = 3078 **** -BX = 3079 **** -BX = 3080 **** -BX = 3081 **** -BX = 3082 **** -BX = 3083 **** -BX = 3084 **** -BX = 3085 **** -BX = 3086 **** -BX = 3087 **** -BX = 3088 **** -BX = 3089 **** -BX = 3090 **** -BX = 3091 **** -BX = 3092 **** -BX = 3093 **** -BX = 3094 **** -BX = 3095 **** -BX = 3096 **** -BX = 3097 **** -BX = 3098 **** -BX = 3099 **** -BX = 3100 **** -BX = 3101 **** -BX = 3102 **** -BX = 3103 **** -BX = 3104 **** -BX = 3105 **** -BX = 3106 **** -BX = 3107 **** -BX = 3108 **** -BX = 3109 **** -BX = 3110 **** -BX = 3111 **** -BX = 3112 **** -BX = 3113 **** -BX = 3114 **** -BX = 3115 **** -BX = 3116 **** -BX = 3117 **** -BX = 3118 **** -BX = 3119 **** -BX = 3120 **** -BX = 3121 **** -BX = 3122 **** -BX = 3123 **** -BX = 3124 **** -BX = 3125 **** -BX = 3126 **** -BX = 3127 **** -BX = 3128 **** -BX = 3129 **** -BX = 3130 **** -BX = 3131 **** -BX = 3132 **** -BX = 3133 **** -BX = 3134 **** -BX = 3135 **** -BX = 3136 **** -BX = 3137 **** -BX = 3138 **** -BX = 3139 **** -BX = 3140 **** -BX = 3141 **** -BX = 3142 **** -BX = 3143 **** -BX = 3144 **** -BX = 3145 **** -BX = 3146 **** -BX = 3147 **** -BX = 3148 **** ---- Jet 0 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 27/55 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 11.5/24 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.13446/26 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.13446/26 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 0.785398/18 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: 0.785398/18 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 2.79253/64 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 491.5/984 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 10.5/22 - Phi [Rad/Hw]: 1.91986/44 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 3149 **** -BX = 3150 **** ---- Jet 0 --- - Et [GeV/Hw]: 33.5/68 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: 1.6095/37 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 1.39626/32 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.044/-24 - Phi [rad/Hw]: 1.13446/26 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -0.0872668/142 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -2.74889/81 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 1.653/38 - Phi [rad/Hw]: -2.26893/92 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: -0.523599/132 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 483/967 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 33.5/68 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 15/31 - Phi [Rad/Hw]: -1.0472/120 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 33/67 - Phi [Rad/Hw]: 0.349066/8 -BX = 3151 **** -BX = 3152 **** -BX = 3153 **** -BX = 3154 **** -BX = 3155 **** -BX = 3156 **** -BX = 3157 **** -BX = 3158 **** -BX = 3159 **** ---- Jet 0 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.0872665/2 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.2185/51 - Phi [rad/Hw]: -2.00713/98 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: 2.05076/47 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 2.44346/56 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 519.5/1040 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 24/49 - Phi [Rad/Hw]: 0.654498/15 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 3160 **** ---- Jet 0 --- - Et [GeV/Hw]: 39.5/80 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 1.5/4 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 17/35 - Eta [rad/Hw]: -0.609/-14 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.696/-16 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.044/24 - Phi [rad/Hw]: -2.53073/86 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 360/721 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 39.5/80 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 10/21 - Phi [Rad/Hw]: 2.61799/60 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 39/79 - Phi [Rad/Hw]: -2.61799/84 -BX = 3161 **** -BX = 3162 **** -BX = 3163 **** ---- Jet 0 --- - Et [GeV/Hw]: 23.5/48 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: -2.44346/88 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 2.35619/54 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 452.5/906 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 15.5/32 - Phi [Rad/Hw]: -2.13803/95 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 3164 **** -BX = 3165 **** -BX = 3166 **** -BX = 3167 **** -BX = 3168 **** -BX = 3169 **** -BX = 3170 **** -BX = 3171 **** -BX = 3172 **** -BX = 3173 **** -BX = 3174 **** ---- Jet 0 --- - Et [GeV/Hw]: 45.5/92 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 8/17 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 0/1 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.8705/43 - Phi [rad/Hw]: 0.392699/9 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -2.87979/78 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: -2.87979/78 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.914/-44 - Phi [rad/Hw]: 0.872665/20 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 2.262/52 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 673.5/1348 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 45.5/92 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 36.5/74 - Phi [Rad/Hw]: -0.392699/135 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 45/91 - Phi [Rad/Hw]: -1.00356/121 -BX = 3175 **** -BX = 3176 **** -BX = 3177 **** -BX = 3178 **** -BX = 3179 **** -BX = 3180 **** -BX = 3181 **** -BX = 3182 **** -BX = 3183 **** -BX = 3184 **** -BX = 3185 **** -BX = 3186 **** -BX = 3187 **** -BX = 3188 **** -BX = 3189 **** ---- Jet 0 --- - Et [GeV/Hw]: 51.5/104 - Eta [rad/Hw]: -3.567/-82 - Phi [rad/Hw]: -2.31256/91 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 50/101 - Eta [rad/Hw]: -3.567/-82 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 22.5/46 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.22529/93 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.65806/106 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.174/4 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 0.654498/15 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 424/849 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 22/45 - Phi [Rad/Hw]: 2.96706/68 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 3190 **** -BX = 3191 **** -BX = 3192 **** -BX = 3193 **** -BX = 3194 **** -BX = 3195 **** -BX = 3196 **** -BX = 3197 **** -BX = 3198 **** -BX = 3199 **** -BX = 3200 **** -BX = 3201 **** -BX = 3202 **** -BX = 3203 **** -BX = 3204 **** -BX = 3205 **** -BX = 3206 **** -BX = 3207 **** -BX = 3208 **** -BX = 3209 **** -BX = 3210 **** ---- Jet 0 --- - Et [GeV/Hw]: 47.5/96 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 35/71 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 1.5/4 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.74/40 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: 0.916298/21 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -0.479966/133 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -1.7017/105 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.218/-28 - Phi [rad/Hw]: 0.174533/4 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 2.53073/58 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: 1.914/44 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: 1.74/40 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 0 ---- Tau 9 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 0 ---- Tau 11 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 526.5/1054 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 83/167 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 16/33 - Phi [Rad/Hw]: 1.5708/36 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 42.5/86 - Phi [Rad/Hw]: 1.00356/23 -BX = 3211 **** -BX = 3212 **** ---- Jet 0 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 14/29 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 1.7017/39 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 51.5/104 - Eta [rad/Hw]: 3.567/82 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 35/71 - Eta [rad/Hw]: 3.393/78 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 34.5/70 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- Jet 7 --- - Et [GeV/Hw]: 18.5/38 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 0 ---- Jet 8 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 0 ---- E/Gamma 3 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: 0.785398/18 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -3.01069/75 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 0.829031/19 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.261/-6 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -2.001/-46 - Phi [rad/Hw]: 1.65806/38 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.522/-12 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -1.00356/121 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 391/783 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 34.5/70 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 32.5/66 - Phi [Rad/Hw]: 1.52716/35 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 34/69 - Phi [Rad/Hw]: 0.0436332/1 -BX = 3213 **** -BX = 3214 **** -BX = 3215 **** -BX = 3216 **** -BX = 3217 **** -BX = 3218 **** -BX = 3219 **** -BX = 3220 **** -BX = 3221 **** -BX = 3222 **** -BX = 3223 **** -BX = 3224 **** -BX = 3225 **** -BX = 3226 **** -BX = 3227 **** -BX = 3228 **** -BX = 3229 **** -BX = 3230 **** -BX = 3231 **** -BX = 3232 **** -BX = 3233 **** -BX = 3234 **** -BX = 3235 **** -BX = 3236 **** -BX = 3237 **** -BX = 3238 **** -BX = 3239 **** -BX = 3240 **** -BX = 3241 **** -BX = 3242 **** -BX = 3243 **** -BX = 3244 **** ---- Jet 0 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 2.22529/51 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 12.5/26 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.3915/-9 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -0.654498/129 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.3045/7 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 2.18166/50 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.48353/34 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 244.5/490 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 16.5/34 - Phi [Rad/Hw]: 0.261799/6 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 3245 **** -BX = 3246 **** -BX = 3247 **** -BX = 3248 **** -BX = 3249 **** -BX = 3250 **** -BX = 3251 **** -BX = 3252 **** ---- Jet 0 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 1.5/4 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 0.523599/12 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -0.8265/-19 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -2.18166/94 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -2.48709/87 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.6965/39 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 2.92343/67 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 334/669 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 15.5/32 - Phi [Rad/Hw]: 0.218166/5 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 3253 **** -BX = 3254 **** -BX = 3255 **** -BX = 3256 **** -BX = 3257 **** -BX = 3258 **** -BX = 3259 **** -BX = 3260 **** -BX = 3261 **** ---- Jet 0 --- - Et [GeV/Hw]: 15/31 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 2.0944/48 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.6095/-37 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 251/503 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 13.5/28 - Phi [Rad/Hw]: 1.65806/38 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 3262 **** -BX = 3263 **** -BX = 3264 **** ---- Jet 0 --- - Et [GeV/Hw]: 95/191 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 86.5/174 - Eta [rad/Hw]: -3.741/-86 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 9/19 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 0 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 43.5/88 - Eta [rad/Hw]: -1.827/-42 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 1.52716/35 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -0.0872668/142 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -1.87623/101 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: 1.74533/40 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 60.5/122 - Eta [rad/Hw]: -1.827/-42 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 3.14159/72 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 1.218/28 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.783/18 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 0 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 503/1007 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 95/191 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 65.5/132 - Phi [Rad/Hw]: -0.785398/126 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 94.5/190 - Phi [Rad/Hw]: -0.567232/131 -BX = 3265 **** -BX = 3266 **** -BX = 3267 **** -BX = 3268 **** -BX = 3269 **** -BX = 3270 **** -BX = 3271 **** -BX = 3272 **** -BX = 3273 **** -BX = 3274 **** -BX = 3275 **** -BX = 3276 **** ---- Jet 0 --- - Et [GeV/Hw]: 29/59 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -0.4785/-11 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.52716/109 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 19/39 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.0875/-25 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 0 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 242.5/486 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 16/33 - Phi [Rad/Hw]: -2.13803/95 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 3277 **** -BX = 3278 **** -BX = 3279 **** -BX = 3280 **** -BX = 3281 **** -BX = 3282 **** -BX = 3283 **** -BX = 3284 **** -BX = 3285 **** -BX = 3286 **** -BX = 3287 **** -BX = 3288 **** -BX = 3289 **** -BX = 3290 **** -BX = 3291 **** -BX = 3292 **** -BX = 3293 **** -BX = 3294 **** -BX = 3295 **** -BX = 3296 **** -BX = 3297 **** -BX = 3298 **** -BX = 3299 **** -BX = 3300 **** -BX = 3301 **** -BX = 3302 **** -BX = 3303 **** -BX = 3304 **** -BX = 3305 **** -BX = 3306 **** -BX = 3307 **** -BX = 3308 **** -BX = 3309 **** -BX = 3310 **** -BX = 3311 **** -BX = 3312 **** -BX = 3313 **** -BX = 3314 **** -BX = 3315 **** -BX = 3316 **** -BX = 3317 **** -BX = 3318 **** -BX = 3319 **** -BX = 3320 **** -BX = 3321 **** -BX = 3322 **** -BX = 3323 **** -BX = 3324 **** -BX = 3325 **** -BX = 3326 **** -BX = 3327 **** ---- Jet 0 --- - Et [GeV/Hw]: 28/57 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 1.61443/37 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: 1.00356/23 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 2.1315/49 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 2.1315/49 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -2.262/-52 - Phi [rad/Hw]: 0.218166/5 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: -0.783/-18 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 13/27 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -0.87/-20 - Phi [rad/Hw]: 0.959931/22 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: 3.01069/69 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 311/623 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 11/23 - Phi [Rad/Hw]: 2.13803/49 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 3328 **** -BX = 3329 **** -BX = 3330 **** -BX = 3331 **** -BX = 3332 **** -BX = 3333 **** -BX = 3334 **** -BX = 3335 **** -BX = 3336 **** -BX = 3337 **** -BX = 3338 **** -BX = 3339 **** -BX = 3340 **** ---- Jet 0 --- - Et [GeV/Hw]: 59.5/120 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 35.5/72 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: 2.57436/59 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 35/71 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -0.305433/137 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 28/57 - Eta [rad/Hw]: -3.0015/-69 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -1.305/-30 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 0 ---- Tau 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -3.05433/74 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.6525/-15 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 33.5/68 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: 1.479/34 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 15.5/32 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: -0.349066/136 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 1.479/34 - Phi [rad/Hw]: 0.523599/12 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -1.131/-26 - Phi [rad/Hw]: 2.96706/68 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 300.5/602 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 131/263 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 14/29 - Phi [Rad/Hw]: 2.0944/48 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 60/121 - Phi [Rad/Hw]: 2.83616/65 -BX = 3341 **** -BX = 3342 **** -BX = 3343 **** -BX = 3344 **** -BX = 3345 **** -BX = 3346 **** -BX = 3347 **** -BX = 3348 **** -BX = 3349 **** -BX = 3350 **** -BX = 3351 **** -BX = 3352 **** -BX = 3353 **** -BX = 3354 **** -BX = 3355 **** -BX = 3356 **** -BX = 3357 **** -BX = 3358 **** -BX = 3359 **** -BX = 3360 **** -BX = 3361 **** -BX = 3362 **** -BX = 3363 **** -BX = 3364 **** -BX = 3365 **** ---- Jet 0 --- - Et [GeV/Hw]: 95/191 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 61/123 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 36/73 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.83616/65 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 27.5/56 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.2185/-51 - Phi [rad/Hw]: -1.74533/104 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.001/46 - Phi [rad/Hw]: -2.92343/77 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 5.5/12 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 3 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 2.3925/55 - Phi [rad/Hw]: 0.0436332/1 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 0 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.087/2 - Phi [rad/Hw]: 1.5708/36 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: -2.70526/82 - Iso [Hw]: 0 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.39983/55 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 1.5225/35 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 0 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.1315/-49 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 60.5/122 - Eta [rad/Hw]: -1.914/-44 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 29/59 - Eta [rad/Hw]: -0.174/-4 - Phi [rad/Hw]: -2.79253/80 - Iso [Hw]: 0 ---- Tau 8 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: 0.1305/3 - Phi [rad/Hw]: 2.87979/66 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 0.1309/3 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 1.914/44 - Phi [rad/Hw]: 1.8326/42 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: -0.348/-8 - Phi [rad/Hw]: 2.26893/52 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 555/1111 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 193/387 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 17.5/36 - Phi [Rad/Hw]: -1.74533/104 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 37/75 - Phi [Rad/Hw]: -1.39626/112 -BX = 3366 **** -BX = 3367 **** -BX = 3368 **** -BX = 3369 **** -BX = 3370 **** -BX = 3371 **** -BX = 3372 **** -BX = 3373 **** -BX = 3374 **** -BX = 3375 **** -BX = 3376 **** -BX = 3377 **** -BX = 3378 **** -BX = 3379 **** -BX = 3380 **** -BX = 3381 **** -BX = 3382 **** -BX = 3383 **** -BX = 3384 **** -BX = 3385 **** -BX = 3386 **** -BX = 3387 **** -BX = 3388 **** -BX = 3389 **** ---- Jet 0 --- - Et [GeV/Hw]: 38.5/78 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.9135/21 - Phi [rad/Hw]: 0.567232/13 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.9135/-21 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 25/51 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: -2.61799/84 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -0.174533/140 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.4785/11 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.435/-10 - Phi [rad/Hw]: 2.61799/60 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 252.5/506 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 38.5/78 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 9/19 - Phi [Rad/Hw]: 0.1309/3 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 38/77 - Phi [Rad/Hw]: 0.523599/12 -BX = 3390 **** -BX = 3391 **** -BX = 3392 **** -BX = 3393 **** -BX = 3394 **** -BX = 3395 **** -BX = 3396 **** -BX = 3397 **** -BX = 3398 **** -BX = 3399 **** -BX = 3400 **** -BX = 3401 **** -BX = 3402 **** -BX = 3403 **** -BX = 3404 **** -BX = 3405 **** -BX = 3406 **** -BX = 3407 **** -BX = 3408 **** -BX = 3409 **** ---- Jet 0 --- - Et [GeV/Hw]: 24.5/50 - Eta [rad/Hw]: -3.393/-78 - Phi [rad/Hw]: -0.567232/131 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.829032/125 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -1.78896/103 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 20/41 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -2.3925/-55 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 4/9 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.44346/56 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 0 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: -0.1309/141 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: 1.26536/29 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 21.5/44 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 13.5/28 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -1.74533/104 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.392/32 - Phi [rad/Hw]: 0.610865/14 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.44346/56 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 1.0875/25 - Phi [rad/Hw]: -2.35619/90 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: -0.2175/-5 - Phi [rad/Hw]: -1.61443/107 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 346.5/694 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 7/15 - Phi [Rad/Hw]: 1.1781/27 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 3410 **** -BX = 3411 **** -BX = 3412 **** -BX = 3413 **** -BX = 3414 **** -BX = 3415 **** -BX = 3416 **** ---- Jet 0 --- - Et [GeV/Hw]: 26.5/54 - Eta [rad/Hw]: 1.0005/23 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 6.5/14 - Eta [rad/Hw]: 0.2175/5 - Phi [rad/Hw]: 0.741765/17 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 1.35263/31 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 0 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 0.435/10 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 0.305433/7 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.5225/-35 - Phi [rad/Hw]: 1.78896/41 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -1.8326/102 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.6965/-39 - Phi [rad/Hw]: -2.83616/79 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 18/37 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 1.309/30 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 0.6525/15 - Phi [rad/Hw]: -2.66163/83 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0/0 - Phi [rad/Hw]: 2.79253/64 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 9.5/20 - Eta [rad/Hw]: 0.696/16 - Phi [rad/Hw]: -1.0472/120 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 0.261/6 - Phi [rad/Hw]: 0.785398/18 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: -0.436333/134 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 359.5/720 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: -0.5/0 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 27/55 - Phi [Rad/Hw]: -1.74533/104 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: -0.5/0 - Phi [Rad/Hw]: -1.4399/111 -BX = 3417 **** -BX = 3418 **** -BX = 3419 **** -BX = 3420 **** -BX = 3421 **** -BX = 3422 **** -BX = 3423 **** -BX = 3424 **** -BX = 3425 **** ---- Jet 0 --- - Et [GeV/Hw]: 36/73 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: -0.218166/139 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 32.5/66 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -3.915/-90 - Phi [rad/Hw]: -2.13803/95 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 16.5/34 - Eta [rad/Hw]: 3.219/74 - Phi [rad/Hw]: 1.1781/27 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: 1.3485/31 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -1.2615/-29 - Phi [rad/Hw]: 2.74889/63 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 2.5/6 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: -1.35263/113 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.0005/-23 - Phi [rad/Hw]: -2.39983/89 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3.5/8 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 0 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 3 ---- E/Gamma 8 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 9 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.7395/17 - Phi [rad/Hw]: 0.479966/11 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.2615/29 - Phi [rad/Hw]: -0.392699/135 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 1.7835/41 - Phi [rad/Hw]: 1.09083/25 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: 0.0435/1 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -1.653/-38 - Phi [rad/Hw]: 1.4399/33 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 25.5/52 - Eta [rad/Hw]: -1.914/-44 - Phi [rad/Hw]: -0.2618/138 - Iso [Hw]: 1 ---- Tau 7 --- - Et [GeV/Hw]: 22/45 - Eta [rad/Hw]: -1.7835/-41 - Phi [rad/Hw]: 2.70526/62 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 11/23 - Eta [rad/Hw]: 1.305/30 - Phi [rad/Hw]: -0.872665/124 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.3485/-31 - Phi [rad/Hw]: 0.436332/10 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -1.392/-32 - Phi [rad/Hw]: 2.13803/49 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 5/11 - Eta [rad/Hw]: 0.8265/19 - Phi [rad/Hw]: 1.91986/44 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 420/841 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 69/139 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 8/17 - Phi [Rad/Hw]: -1.78896/103 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 6/13 - Phi [Rad/Hw]: -2.44346/88 -BX = 3426 **** -BX = 3427 **** -BX = 3428 **** -BX = 3429 **** -BX = 3430 **** -BX = 3431 **** -BX = 3432 **** -BX = 3433 **** -BX = 3434 **** ---- Jet 0 --- - Et [GeV/Hw]: 17.5/36 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 0 ---- Jet 1 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 0 ---- Jet 2 --- - Et [GeV/Hw]: 9/19 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 0 ---- Jet 3 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 0 ---- Jet 4 --- - Et [GeV/Hw]: 65.5/132 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 5 --- - Et [GeV/Hw]: 45.5/92 - Eta [rad/Hw]: -3.741/-86 - Phi [rad/Hw]: -1.26536/115 - Iso [Hw]: 0 ---- Jet 6 --- - Et [GeV/Hw]: 24/49 - Eta [rad/Hw]: -0.1305/-3 - Phi [rad/Hw]: -1.9635/99 - Iso [Hw]: 0 ---- Jet 7 --- - Et [GeV/Hw]: 23.5/48 - Eta [rad/Hw]: 0.5655/13 - Phi [rad/Hw]: -1.09083/119 - Iso [Hw]: 0 ---- Jet 8 --- - Et [GeV/Hw]: 20.5/42 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 0 ---- Jet 9 --- - Et [GeV/Hw]: 19.5/40 - Eta [rad/Hw]: 0.3915/9 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 0 ---- E/Gamma 0 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 2.088/48 - Phi [rad/Hw]: -1.4399/111 - Iso [Hw]: 3 ---- E/Gamma 1 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: -1.1745/-27 - Phi [rad/Hw]: 3.09796/71 - Iso [Hw]: 3 ---- E/Gamma 2 --- - Et [GeV/Hw]: 10/21 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 3 ---- E/Gamma 3 --- - Et [GeV/Hw]: 4.5/10 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 3 ---- E/Gamma 4 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 0 ---- E/Gamma 5 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.4355/-33 - Phi [rad/Hw]: 1.22173/28 - Iso [Hw]: 3 ---- E/Gamma 6 --- - Et [GeV/Hw]: 3/7 - Eta [rad/Hw]: -1.8705/-43 - Phi [rad/Hw]: 2.66163/61 - Iso [Hw]: 3 ---- E/Gamma 7 --- - Et [GeV/Hw]: 2/5 - Eta [rad/Hw]: 1.1745/27 - Phi [rad/Hw]: -2.05076/97 - Iso [Hw]: 3 ---- Tau 0 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: 1.4355/33 - Phi [rad/Hw]: -0.0436333/143 - Iso [Hw]: 1 ---- Tau 1 --- - Et [GeV/Hw]: 7.5/16 - Eta [rad/Hw]: 0.87/20 - Phi [rad/Hw]: -1.39626/112 - Iso [Hw]: 1 ---- Tau 2 --- - Et [GeV/Hw]: 7/15 - Eta [rad/Hw]: -2.088/-48 - Phi [rad/Hw]: 0.698132/16 - Iso [Hw]: 1 ---- Tau 3 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: 0.957/22 - Phi [rad/Hw]: 3.05433/70 - Iso [Hw]: 1 ---- Tau 4 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.3045/-7 - Phi [rad/Hw]: 1.87623/43 - Iso [Hw]: 1 ---- Tau 5 --- - Et [GeV/Hw]: 6/13 - Eta [rad/Hw]: -0.5655/-13 - Phi [rad/Hw]: -0.916298/123 - Iso [Hw]: 1 ---- Tau 6 --- - Et [GeV/Hw]: 29/59 - Eta [rad/Hw]: 1.131/26 - Phi [rad/Hw]: -1.309/114 - Iso [Hw]: 0 ---- Tau 7 --- - Et [GeV/Hw]: 16/33 - Eta [rad/Hw]: -0.087/-2 - Phi [rad/Hw]: -1.91986/100 - Iso [Hw]: 1 ---- Tau 8 --- - Et [GeV/Hw]: 14.5/30 - Eta [rad/Hw]: -0.0435/-1 - Phi [rad/Hw]: -2.57436/85 - Iso [Hw]: 1 ---- Tau 9 --- - Et [GeV/Hw]: 12/25 - Eta [rad/Hw]: 0.348/8 - Phi [rad/Hw]: 2.31256/53 - Iso [Hw]: 1 ---- Tau 10 --- - Et [GeV/Hw]: 10.5/22 - Eta [rad/Hw]: 0.609/14 - Phi [rad/Hw]: -1.13446/118 - Iso [Hw]: 1 ---- Tau 11 --- - Et [GeV/Hw]: 8.5/18 - Eta [rad/Hw]: -0.7395/-17 - Phi [rad/Hw]: 2.48709/57 - Iso [Hw]: 1 ---- Sum 0 --- -Type: TotalET - Et [GeV/Hw]: 541.5/1084 ---- Sum 1 --- -Type: TotalHT - Et [GeV/Hw]: 65.5/132 ---- Sum 2 --- -Type: ETMiss - Et [GeV/Hw]: 27/55 - Phi [Rad/Hw]: 0.479966/11 ---- Sum 3 --- -Type: HTMiss - Et [GeV/Hw]: 65/131 - Phi [Rad/Hw]: 1.78896/41 -BX = 3435 **** -BX = 3436 **** -BX = 3437 **** -BX = 3438 **** -BX = 3439 **** -BX = 3440 **** -BX = 3441 **** -BX = 3442 **** -BX = 3443 **** -BX = 3444 **** -BX = 3445 **** -BX = 3446 **** -BX = 3447 **** -BX = 3448 **** -BX = 3449 **** -BX = 3450 **** -BX = 3451 **** -BX = 3452 **** -BX = 3453 **** -BX = 3454 **** -BX = 3455 **** -BX = 3456 **** -BX = 3457 **** -BX = 3458 **** -BX = 3459 **** -BX = 3460 **** -BX = 3461 **** -BX = 3462 **** -BX = 3463 **** -BX = 3464 **** -BX = 3465 **** -BX = 3466 **** -BX = 3467 **** -BX = 3468 **** -BX = 3469 **** -BX = 3470 **** -BX = 3471 **** -BX = 3472 **** -BX = 3473 **** -BX = 3474 **** -BX = 3475 **** -BX = 3476 **** -BX = 3477 **** -BX = 3478 **** -BX = 3479 **** -BX = 3480 **** -BX = 3481 **** -BX = 3482 **** -BX = 3483 **** -BX = 3484 **** -BX = 3485 **** -BX = 3486 **** -BX = 3487 **** -BX = 3488 **** -BX = 3489 **** -BX = 3490 **** -BX = 3491 **** -BX = 3492 **** -BX = 3493 **** -BX = 3494 **** -BX = 3495 **** -BX = 3496 **** -BX = 3497 **** -BX = 3498 **** -BX = 3499 **** -BX = 3500 **** -BX = 3501 **** -BX = 3502 **** -BX = 3503 **** -BX = 3504 **** -BX = 3505 **** -BX = 3506 **** -BX = 3507 **** -BX = 3508 **** -BX = 3509 **** -BX = 3510 **** -BX = 3511 **** -BX = 3512 **** -BX = 3513 **** -BX = 3514 **** -BX = 3515 **** -BX = 3516 **** -BX = 3517 **** -BX = 3518 **** -BX = 3519 **** -BX = 3520 **** -BX = 3521 **** -BX = 3522 **** -BX = 3523 **** -BX = 3524 **** -BX = 3525 **** -BX = 3526 **** -BX = 3527 **** -BX = 3528 **** -BX = 3529 **** -BX = 3530 **** -BX = 3531 **** -BX = 3532 **** -BX = 3533 **** -BX = 3534 **** -BX = 3535 **** -BX = 3536 **** -BX = 3537 **** -BX = 3538 **** -BX = 3539 **** -BX = 3540 **** -BX = 3541 **** -BX = 3542 **** -BX = 3543 **** -BX = 3544 **** -BX = 3545 **** -BX = 3546 **** -BX = 3547 **** -BX = 3548 **** -BX = 3549 **** -BX = 3550 **** -BX = 3551 **** -BX = 3552 **** -BX = 3553 **** -BX = 3554 **** -BX = 3555 **** -BX = 3556 **** -BX = 3557 **** -BX = 3558 **** -BX = 3559 **** -BX = 3560 **** -BX = 3561 **** -BX = 3562 **** -BX = 3563 **** -BX = 3564 **** From 4949fc82d6db0d3582dceb067b5014d6a6cce307 Mon Sep 17 00:00:00 2001 From: matteo Date: Thu, 23 Nov 2023 16:16:24 +0100 Subject: [PATCH 037/281] fixed small buggs in the unpackers + renamed scouting namespace --- .../L1Scouting/interface/L1ScoutingCalo.h | 30 +- .../L1Scouting/interface/L1ScoutingMuon.h | 34 +- .../L1Scouting/interface/OrbitCollection.h | 308 ++++++++++-------- DataFormats/L1Scouting/src/classes.h | 3 +- DataFormats/L1Scouting/src/classes_def.xml | 44 +-- .../L1ScoutingRawToDigi/interface/blocks.h | 8 +- .../interface/conversion.h | 8 +- .../L1ScoutingRawToDigi/interface/masks.h | 8 +- .../L1ScoutingRawToDigi/interface/scales.h | 8 +- .../L1ScoutingRawToDigi/interface/shifts.h | 8 +- .../plugins/ScCALORawToDigi.cc | 22 +- .../plugins/ScCALORawToDigi.h | 14 +- .../plugins/ScGMTRawToDigi.cc | 13 +- .../plugins/ScGMTRawToDigi.h | 3 +- .../test/testScoutingRun3_unpackers.py | 6 +- .../Utilities/plugins/BuildFile.xml | 2 +- .../Utilities/plugins/DumpScObjects.cc | 28 +- .../Utilities/test/dumpScObjects.py | 17 +- 18 files changed, 296 insertions(+), 268 deletions(-) diff --git a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h index b4dca978bc637..4adc413c5dc36 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h @@ -1,10 +1,19 @@ #ifndef DataFormats_L1Scouting_L1ScoutingCalo_h #define DataFormats_L1Scouting_L1ScoutingCalo_h +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" #include "DataFormats/L1Trigger/interface/EtSum.h" -#include -namespace scoutingRun3 { +namespace l1ScoutingRun3 { + + class ScJet; + typedef OrbitCollection ScJetOrbitCollection; + class ScEGamma; + typedef OrbitCollection ScEGammaOrbitCollection; + class ScTau; + typedef OrbitCollection ScTauOrbitCollection; + class ScEtSum; + typedef OrbitCollection ScEtSumOrbitCollection; class ScCaloObject { public: @@ -47,27 +56,12 @@ namespace scoutingRun3 { inline int hwPhi() const {return hwPhi_;} inline int hwIso() const {return hwIso_;} - // inline float Et() const { - // return et_scale_* hwEt_; - // } - // inline float eta()const { - // return eta_scale_*hwEta_; - // } - // inline float phi() const { - // float fPhi = phi_scale_*hwPhi_; - // fPhi = fPhi>=M_PI ? fPhi-2.*M_PI : fPhi; - // return fPhi; - // } - private: int hwEt_; int hwEta_; int hwPhi_; int hwIso_; - // static constexpr float phi_scale_ = 2.*M_PI/144.; - // static constexpr float eta_scale_ = 0.0435; - // static constexpr float et_scale_ = 0.5; }; class ScJet: public ScCaloObject { @@ -161,5 +155,5 @@ namespace scoutingRun3 { // static constexpr float et_scale_ = 0.5; }; -} // namespace scoutingRun3 +} // namespace l1ScoutingRun3 #endif // DataFormats_L1Scouting_L1ScoutingCalo_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h index 466804c518fc8..b679b0d6edc03 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h @@ -1,9 +1,12 @@ #ifndef DataFormats_L1Scouting_L1ScoutingMuon_h #define DataFormats_L1Scouting_L1ScoutingMuon_h -#include +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" -namespace scoutingRun3 { +namespace l1ScoutingRun3 { + + class ScMuon; + typedef OrbitCollection ScMuonOrbitCollection; class ScMuon { public: @@ -94,25 +97,6 @@ namespace scoutingRun3 { inline int hwPtUnconstrained() const {return hwPtUnconstrained_;} inline int hwDXY() const {return hwDXY_;} inline int tfMuonIndex() const {return tfIndex_;} - - // inline float pt() const { - // return pt_scale_*(hwPt_-1); - // } - // inline float eta()const { - // return eta_scale_*hwEta_; - // } - // inline float phi() const { - // return phi_scale_*hwPhi_; - // } - // inline float ptUnconstrained() const { - // return pt_scale_*(hwPtUnconstrained_-1); - // } - // inline float etaAtVtx() const { - // return eta_scale_*hwEtaAtVtx_; - // } - // inline float phiAtVtx() const { - // return phi_scale_*hwPhiAtVtx_; - // } private: int hwPt_; @@ -127,14 +111,8 @@ namespace scoutingRun3 { int hwPhiAtVtx_; int hwPtUnconstrained_; int hwDXY_; - - // constants to convert from harware to physical quantities - // static constexpr float pt_scale_ = 0.5; - // static constexpr float ptunconstrained_scale_ = 1.0; - // static constexpr float phi_scale_ = 2.*M_PI/576.; - // static constexpr float eta_scale_ = 0.0870/8; }; -} // namespace scoutingRun3 +} // namespace l1ScoutingRun3 #endif // DataFormats_L1Scouting_L1ScoutingMuon_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/OrbitCollection.h b/DataFormats/L1Scouting/interface/OrbitCollection.h index 0091a2c86624d..8cd0556165fbf 100644 --- a/DataFormats/L1Scouting/interface/OrbitCollection.h +++ b/DataFormats/L1Scouting/interface/OrbitCollection.h @@ -1,150 +1,196 @@ #ifndef DataFormats_L1Scouting_OrbitCollection_h #define DataFormats_L1Scouting_OrbitCollection_h +#include "DataFormats/Common/interface/FillView.h" +#include "DataFormats/Common/interface/fillPtrVector.h" +#include "DataFormats/Common/interface/setPtr.h" #include "DataFormats/Common/interface/traits.h" #include "FWCore/Utilities/interface/GCCPrerequisite.h" - -#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" -#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" #include #include - -namespace scoutingRun3 { - - template - class OrbitCollection { - public: - typedef typename std::vector::const_iterator const_iterator; - - // initialize the offset vector with 0s from 0 to 3565. - // BX range is [1,3564], an extra entry is needed for the offserts of the last BX - OrbitCollection(): bxOffsets_(3566, 0), data_(0) {} - OrbitCollection( - std::vector> &orbitBuffer, - unsigned nObjects=0): bxOffsets_(3566, 0), data_(nObjects) { - fillAndClear(orbitBuffer, nObjects); - } - - OrbitCollection(const OrbitCollection& other) = default; - OrbitCollection(OrbitCollection&& other) = default; - OrbitCollection & operator=(const OrbitCollection& other) = default; - OrbitCollection & operator=(OrbitCollection&& other) = default; - - void swap(OrbitCollection& other){ - using std::swap; - swap(bxOffsets_, other.bxOffsets_); - swap(data_, other.data_); - } - - // Fill the orbit collection starting from a vector of vectors, one per BX. - // Objects are moved into a flat data vector and a vector is used to keep track - // of the starting offset of every BX. - // Input vector must be sorted with increasing BX and contain 3565 elements (BX in [1,3564]) - void fillAndClear(std::vector> &orbitBuffer, unsigned nObjects=0){ - if (orbitBuffer.size()!=3565) - throw cms::Exception("OrbitCollection::fillAndClear") - << "Trying to fill the collection by passing an orbit buffer with incorrect size. " - << "Passed " << orbitBuffer.size() << ", expected 3565" << std::endl; - data_.reserve(nObjects); - bxOffsets_[0] = 0; - unsigned bxIdx = 1; - for (auto &bxVec: orbitBuffer){ - // increase offset by the currect vec size - bxOffsets_[bxIdx] = bxOffsets_[bxIdx-1] + bxVec.size(); - - // if bxVec contains something, move it into the data_ vector - // and clear bxVec objects - if (bxVec.size()>0){ - data_.insert(data_.end(), - std::make_move_iterator(bxVec.begin()), - std::make_move_iterator(bxVec.end()) - ); - bxVec.clear(); - } - - // increment bx index - bxIdx++; +template +class OrbitCollection { + public: + typedef typename std::vector::iterator iterator; + typedef typename std::vector::const_iterator const_iterator; + typedef T value_type; + typedef typename std::vector::size_type size_type; + + // initialize the offset vector with 0s from 0 to 3565. + // BX range is [1,3564], an extra entry is needed for the offserts of the last BX + OrbitCollection(): bxOffsets_(3566, 0), data_(0) {} + OrbitCollection( + std::vector> &orbitBuffer, + unsigned nObjects=0): bxOffsets_(3566, 0), data_(nObjects) { + fillAndClear(orbitBuffer, nObjects); + } + + OrbitCollection(const OrbitCollection& other) = default; + OrbitCollection(OrbitCollection&& other) = default; + OrbitCollection & operator=(const OrbitCollection& other) = default; + OrbitCollection & operator=(OrbitCollection&& other) = default; + + void swap(OrbitCollection& other){ + using std::swap; + swap(bxOffsets_, other.bxOffsets_); + swap(data_, other.data_); + } + + // Fill the orbit collection starting from a vector of vectors, one per BX. + // Objects are moved into a flat data vector and a vector is used to keep track + // of the starting offset of every BX. + // Input vector must be sorted with increasing BX and contain 3565 elements (BX in [1,3564]) + void fillAndClear(std::vector> &orbitBuffer, unsigned nObjects=0){ + if (orbitBuffer.size()!=3565) + throw cms::Exception("OrbitCollection::fillAndClear") + << "Trying to fill the collection by passing an orbit buffer with incorrect size. " + << "Passed " << orbitBuffer.size() << ", expected 3565" << std::endl; + data_.reserve(nObjects); + bxOffsets_[0] = 0; + unsigned bxIdx = 1; + for (auto &bxVec: orbitBuffer){ + // increase offset by the currect vec size + bxOffsets_[bxIdx] = bxOffsets_[bxIdx-1] + bxVec.size(); + + // if bxVec contains something, move it into the data_ vector + // and clear bxVec objects + if (bxVec.size()>0){ + data_.insert(data_.end(), + std::make_move_iterator(bxVec.begin()), + std::make_move_iterator(bxVec.end()) + ); + bxVec.clear(); } - } - - // iterate over all elements contained in data - const_iterator begin() const {return data_.begin();} - const_iterator end() const {return data_.end();} - - // iterate over elements of a bx - const_iterator begin(unsigned bx) const { return bxRange(bx).first; } - const_iterator end(unsigned bx) const { return bxRange(bx).second; } - - std::pair bxRange(unsigned bx) const { - if (bx>3564) - throw cms::Exception("OrbitCollection::getBxVectorView") - << "Trying to access and object outside the orbit range. " - << " BX = " << bx << std::endl; - if (getBxSize(bx)>0){ - return std::make_pair(data_.begin()+bxOffsets_[bx], data_.begin()+bxOffsets_[bx+1]); - } else { - return std::make_pair(end(), end()); - } + // increment bx index + bxIdx++; } - - // get number of objects stored in a BX - int getBxSize(unsigned bx) const { - if (bx>3564){ - edm::LogWarning ("OrbitCollection") - << "Called getBxSize() of a bx out of the orbit range." - << " BX = " << bx << std::endl; - return 0; - } - if (data_.size()==0) { - edm::LogWarning ("OrbitCollection") - << "Called getBxSize() but collection is empty." << std::endl; - } - return bxOffsets_[bx+1] - bxOffsets_[bx]; + } + + // iterate over all elements contained in data + const_iterator begin() const {return data_.begin();} + const_iterator end() const {return data_.end();} + + // iterate over elements of a bx + const_iterator begin(unsigned bx) const { return bxRange(bx).first; } + const_iterator end(unsigned bx) const { return bxRange(bx).second; } + + std::pair bxRange(unsigned bx) const { + if (bx>3564) + throw cms::Exception("OrbitCollection::getBxVectorView") + << "Trying to access and object outside the orbit range. " + << " BX = " << bx << std::endl; + + if (getBxSize(bx)>0){ + return std::make_pair(data_.begin()+bxOffsets_[bx], data_.begin()+bxOffsets_[bx+1]); + } else { + return std::make_pair(end(), end()); } - - // get i-th object from BX - const T& getBxObject(unsigned bx, unsigned i) const { - if (bx>3564) - throw cms::Exception("OrbitCollection::getBxObject") - << "Trying to access and object outside the orbit range. " - << " BX = " << bx << std::endl; - if (i>=getBxSize(bx)) - throw cms::Exception("OrbitCollection::getBxObject") - << "Trying to get element " << i << " but for" - << " BX = " << bx << " there are " << getBxSize(bx) - << " elements." <3564){ + edm::LogWarning ("OrbitCollection") + << "Called getBxSize() of a bx out of the orbit range." + << " BX = " << bx << std::endl; + return 0; } - - // get the list of non empty BXs - std::vector getFilledBxs() const { - std::vector filledBxVec; - if (data_.size()>0){ - for (unsigned bx=0; bx<3565; bx++) { - if (getBxSize(bx)>0) filledBxVec.push_back(bx); - } + if (data_.size()==0) { + edm::LogWarning ("OrbitCollection") + << "Called getBxSize() but collection is empty." << std::endl; + } + return bxOffsets_[bx+1] - bxOffsets_[bx]; + } + + // get i-th object from BX + const T& getBxObject(unsigned bx, unsigned i) const { + if (bx>3564) + throw cms::Exception("OrbitCollection::getBxObject") + << "Trying to access and object outside the orbit range. " + << " BX = " << bx << std::endl; + if (i>=getBxSize(bx)) + throw cms::Exception("OrbitCollection::getBxObject") + << "Trying to get element " << i << " but for" + << " BX = " << bx << " there are " << getBxSize(bx) + << " elements." < getFilledBxs() const { + std::vector filledBxVec; + if (data_.size()>0){ + for (unsigned bx=0; bx<3565; bx++) { + if (getBxSize(bx)>0) filledBxVec.push_back(bx); } - return filledBxVec; } - - int size() const { return data_.size(); } - - private: - // store data vector and BX offsets as flat vectors. - // offset contains one entry per BX, indicating the starting index - // of the objects for that BX. - std::vector bxOffsets_; - std::vector data_; + return filledBxVec; + } + + int size() const { return data_.size(); } + + T& operator[](std::size_t i) { return data_[i]; } + const T& operator[](std::size_t i) const { return data_[i]; } + + // edm::View support + void fillView(edm::ProductID const& id, + std::vector& pointers, + edm::FillViewHelperVector& helpers) const { + edm::detail::reallyFillView(*this, id, pointers, helpers); + } + // edm::Ptr support + void setPtr(std::type_info const& toType, unsigned long index, void const*& ptr) const { + edm::detail::reallySetPtr >(*this, toType, index, ptr); + } + void fillPtrVector(std::type_info const& toType, + std::vector const& indices, + std::vector& ptrs) const { + edm::detail::reallyfillPtrVector(*this, toType, indices, ptrs); + } + + private: + // store data vector and BX offsets as flat vectors. + // offset contains one entry per BX, indicating the starting index + // of the objects for that BX. + std::vector bxOffsets_; + std::vector data_; +}; + +// edm::View support +namespace edm { + template + inline void fillView(OrbitCollection const& obj, + edm::ProductID const& id, + std::vector& pointers, + edm::FillViewHelperVector& helpers) { + obj.fillView(id, pointers, helpers); + } + template + struct has_fillView > { + static bool const value = true; + }; +} // namespace edm +// edm::Ptr support +template +inline void setPtr(OrbitCollection const& obj, std::type_info const& toType, unsigned long index, void const*& ptr) { + obj.setPtr(toType, index, ptr); +} +template +inline void fillPtrVector(OrbitCollection const& obj, + std::type_info const& toType, + std::vector const& indices, + std::vector& ptrs) { + obj.fillPtrVector(toType, indices, ptrs); +} +namespace edm { + template + struct has_setPtr > { + static bool const value = true; }; - - typedef OrbitCollection ScMuonOrbitCollection; - typedef OrbitCollection ScJetOrbitCollection; - typedef OrbitCollection ScEGammaOrbitCollection; - typedef OrbitCollection ScTauOrbitCollection; - typedef OrbitCollection ScEtSumOrbitCollection; } #endif // DataFormats_L1Scouting_OrbitCollection_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/classes.h b/DataFormats/L1Scouting/src/classes.h index b699475e41922..9cf7945282771 100644 --- a/DataFormats/L1Scouting/src/classes.h +++ b/DataFormats/L1Scouting/src/classes.h @@ -5,7 +5,8 @@ #include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" #include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" -namespace scoutingRun3 { +namespace l1ScoutingRun3 { + edm::Wrapper ScMuonOrbitCollectionWrapper; edm::Wrapper ScJetOrbitCollectionWrapper; edm::Wrapper ScEGammaOrbitCollectionWrapper; diff --git a/DataFormats/L1Scouting/src/classes_def.xml b/DataFormats/L1Scouting/src/classes_def.xml index 9a2875c6f3a3e..88c0da686b26c 100644 --- a/DataFormats/L1Scouting/src/classes_def.xml +++ b/DataFormats/L1Scouting/src/classes_def.xml @@ -1,30 +1,30 @@ - - - - + + + + - - + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/interface/blocks.h b/EventFilter/L1ScoutingRawToDigi/interface/blocks.h index e5068a241a919..79bacd540f71c 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/blocks.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/blocks.h @@ -1,12 +1,12 @@ -#ifndef DataFormats_Scouting_BLOCKS_H -#define DataFormats_Scouting_BLOCKS_H +#ifndef L1ScoutingRawToDigi_blocks_h +#define L1ScoutingRawToDigi_blocks_h #include #include #include #include "scales.h" -namespace scoutingRun3 { +namespace l1ScoutingRun3 { namespace ugmt { @@ -50,4 +50,4 @@ namespace demux { } } -#endif +#endif // L1ScoutingRawToDigi_blocks_h diff --git a/EventFilter/L1ScoutingRawToDigi/interface/conversion.h b/EventFilter/L1ScoutingRawToDigi/interface/conversion.h index 28d4827c44eaf..4fa75925a706e 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/conversion.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/conversion.h @@ -3,7 +3,7 @@ #include "EventFilter/L1ScoutingRawToDigi/interface/scales.h" -namespace scoutingRun3 { +namespace l1ScoutingRun3 { namespace ugmt { @@ -19,7 +19,7 @@ namespace scoutingRun3 { return fPhi_; }; inline float fPtUnconstrained(int hwPtUnconstrained) { - return scales::ptunconstrained_scale*hwPtUnconstrained; + return scales::ptunconstrained_scale*(hwPtUnconstrained-1); }; inline float fEtaAtVtx(int hwEtaAtVtx) { return scales::eta_scale*hwEtaAtVtx; @@ -35,7 +35,7 @@ namespace scoutingRun3 { namespace demux { inline float fEt(int hwEt) { - return scales::et_scale*(hwEt-1); + return scales::et_scale*hwEt; }; inline float fEta(int hwEta) { return scales::eta_scale*hwEta; @@ -48,7 +48,7 @@ namespace scoutingRun3 { } // namespace demux -} // namespace scoutingRun3 +} // namespace l1ScoutingRun3 #endif \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/interface/masks.h b/EventFilter/L1ScoutingRawToDigi/interface/masks.h index 5f9f11bd86dfa..ba1fa65418790 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/masks.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/masks.h @@ -1,10 +1,10 @@ -#ifndef DF_S_MASKS_H -#define DF_S_MASKS_H +#ifndef L1ScoutingRawToDigi_masks_h +#define L1ScoutingRawToDigi_masks_h #include #include "shifts.h" -namespace scoutingRun3 { +namespace l1ScoutingRun3 { namespace ugmt { // struct masks{ @@ -103,4 +103,4 @@ struct header_masks { }; } -#endif +#endif // L1ScoutingRawToDigi_masks_h diff --git a/EventFilter/L1ScoutingRawToDigi/interface/scales.h b/EventFilter/L1ScoutingRawToDigi/interface/scales.h index a1b07e0beb84e..bdc9aa0e225cf 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/scales.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/scales.h @@ -1,10 +1,10 @@ -#ifndef DF_S_SCALES_H -#define DF_S_SCALES_H +#ifndef L1ScoutingRawToDigi_scales_h +#define L1ScoutingRawToDigi_scales_h #include #include -namespace scoutingRun3 { +namespace l1ScoutingRun3 { namespace ugmt { struct scales { @@ -25,4 +25,4 @@ namespace scoutingRun3 { } } -#endif +#endif // L1ScoutingRawToDigi_scales_h diff --git a/EventFilter/L1ScoutingRawToDigi/interface/shifts.h b/EventFilter/L1ScoutingRawToDigi/interface/shifts.h index 9d2f909238c1e..c5b278d938cd7 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/shifts.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/shifts.h @@ -1,9 +1,9 @@ -#ifndef DF_S_SHIFTS_H -#define DF_S_SHIFTS_H +#ifndef L1ScoutingRawToDigi_shifts_h +#define L1ScoutingRawToDigi_shifts_h #include -namespace scoutingRun3 { +namespace l1ScoutingRun3 { namespace ugmt { // struct shifts{ @@ -97,4 +97,4 @@ struct header_shifts { }; } -#endif +#endif // L1ScoutingRawToDigi_shifts_h diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc index f06e7d59d600e..872d17c66527f 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc @@ -2,14 +2,14 @@ ScCaloRawToDigi::ScCaloRawToDigi(const edm::ParameterSet& iConfig) { using namespace edm; - using namespace scoutingRun3; + using namespace l1ScoutingRun3; srcInputTag = iConfig.getParameter("srcInputTag"); debug_ = iConfig.getUntrackedParameter("debug", false); - orbitBufferJets_ = std::vector>(3565); - orbitBufferEGammas_ = std::vector>(3565); - orbitBufferTaus_ = std::vector>(3565); - orbitBufferEtSums_ = std::vector>(3565); + orbitBufferJets_ = std::vector>(3565); + orbitBufferEGammas_ = std::vector>(3565); + orbitBufferTaus_ = std::vector>(3565); + orbitBufferEtSums_ = std::vector>(3565); nJetsOrbit_=0; nEGammasOrbit_=0; nTausOrbit_=0; nEtSumsOrbit_=0; @@ -25,7 +25,7 @@ ScCaloRawToDigi::~ScCaloRawToDigi() {}; void ScCaloRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { using namespace edm; - using namespace scoutingRun3; + using namespace l1ScoutingRun3; Handle ScoutingRawDataCollection; iEvent.getByToken( rawToken, ScoutingRawDataCollection ); @@ -61,7 +61,7 @@ void ScCaloRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) void ScCaloRawToDigi::unpackOrbit( const unsigned char* buf, size_t len ){ - using namespace scoutingRun3; + using namespace l1ScoutingRun3; // reset counters nJetsOrbit_=0; nEGammasOrbit_=0; nTausOrbit_=0; nEtSumsOrbit_=0; @@ -116,7 +116,7 @@ void ScCaloRawToDigi::unpackOrbit( } void ScCaloRawToDigi::unpackLinkJets(uint32_t* dataBlock, int bx){ - using namespace scoutingRun3; + using namespace l1ScoutingRun3; int32_t ET(0), Eta(0), Phi(0); for (uint32_t i=0; i<6; i++) { @@ -144,7 +144,7 @@ void ScCaloRawToDigi::unpackLinkJets(uint32_t* dataBlock, int bx){ } void ScCaloRawToDigi::unpackLinkEGammas(uint32_t* dataBlock, int bx){ - using namespace scoutingRun3; + using namespace l1ScoutingRun3; int32_t ET(0), Eta(0), Phi(0), Iso(0); for (uint32_t i=0; i<6; i++) { @@ -173,7 +173,7 @@ void ScCaloRawToDigi::unpackLinkEGammas(uint32_t* dataBlock, int bx){ } void ScCaloRawToDigi::unpackLinkTaus(uint32_t* dataBlock, int bx){ - using namespace scoutingRun3; + using namespace l1ScoutingRun3; int32_t ET(0), Eta(0), Phi(0), Iso(0); for (uint32_t i=0; i<6; i++) { @@ -202,7 +202,7 @@ void ScCaloRawToDigi::unpackLinkTaus(uint32_t* dataBlock, int bx){ } void ScCaloRawToDigi::unpackEtSums(uint32_t* dataBlock, int bx){ - using namespace scoutingRun3; + using namespace l1ScoutingRun3; int32_t ETEt(0), HTEt(0), ETmissEt(0), ETmissPhi(0), HTmissEt(0), HTmissPhi(0); diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h index 2a4c9a549d817..8ea8ec76260ad 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h @@ -1,4 +1,3 @@ -#include #include "FWCore/Framework/interface/Frameworkfwd.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/Framework/interface/stream/EDProducer.h" @@ -20,6 +19,9 @@ #include "EventFilter/L1ScoutingRawToDigi/interface/blocks.h" #include "EventFilter/L1ScoutingRawToDigi/interface/conversion.h" +#include +#include + class ScCaloRawToDigi : public edm::stream::EDProducer<> { public: explicit ScCaloRawToDigi(const edm::ParameterSet&); @@ -40,10 +42,12 @@ class ScCaloRawToDigi : public edm::stream::EDProducer<> { void unpackEtSums(uint32_t* dataBlock, int bx); int nJetsOrbit_, nEGammasOrbit_, nTausOrbit_, nEtSumsOrbit_; - std::vector> orbitBufferJets_; - std::vector> orbitBufferEGammas_; - std::vector> orbitBufferTaus_; - std::vector> orbitBufferEtSums_; + // vectors holding data for every bunch crossing + // before filling the orbit collection + std::vector> orbitBufferJets_; + std::vector> orbitBufferEGammas_; + std::vector> orbitBufferTaus_; + std::vector> orbitBufferEtSums_; bool debug_ = false; edm::InputTag srcInputTag; diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc index a520c54da7138..d3f2995cbe9ec 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc @@ -6,13 +6,13 @@ ScGMTRawToDigi::ScGMTRawToDigi(const edm::ParameterSet& iConfig) { debug_ = iConfig.getUntrackedParameter("debug", false); // initialize orbit buffer for BX 1->3564; - orbitBuffer_ = std::vector>(3565); + orbitBuffer_ = std::vector>(3565); for (auto &bxVec: orbitBuffer_){ bxVec.reserve(8); } nMuonsOrbit_ = 0; - produces().setBranchAlias( "ScMuonOrbitCollection" ); + produces().setBranchAlias( "ScMuonOrbitCollection" ); rawToken = consumes(srcInputTag); } @@ -27,7 +27,7 @@ void ScGMTRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) const FEDRawData& sourceRawData = ScoutingRawDataCollection->FEDData(SDSNumbering::GmtSDSID); size_t orbitSize = sourceRawData.size(); - std::unique_ptr unpackedMuons(new scoutingRun3::ScMuonOrbitCollection); + std::unique_ptr unpackedMuons(new l1ScoutingRun3::ScMuonOrbitCollection); if((sourceRawData.size()==0) && debug_){ std::cout << "No raw data for GMT FED\n"; @@ -47,7 +47,7 @@ void ScGMTRawToDigi::unpackOrbit( const unsigned char* buf, size_t len ){ - using namespace scoutingRun3; + using namespace l1ScoutingRun3; // reset counters nMuonsOrbit_ = 0; @@ -146,7 +146,7 @@ void ScGMTRawToDigi::unpackOrbit( // increment muon counter nMuonsOrbit_ ++; - scoutingRun3::ScMuon muon( + l1ScoutingRun3::ScMuon muon( ipt, ieta, iphi, @@ -175,7 +175,8 @@ void ScGMTRawToDigi::unpackOrbit( std::cout << " PhiVtx [rad/Hw]: " << ugmt::fPhiAtVtx(muon.hwPhiAtVtx()) << "/" << muon.hwPhiAtVtx() << "\n"; std::cout << " EtaVtx [rad/Hw]: " << ugmt::fEtaAtVtx(muon.hwEtaAtVtx()) << "/" << muon.hwEtaAtVtx() << "\n"; std::cout << " Pt uncon[GeV/Hw]: " << ugmt::fPtUnconstrained(muon.hwPtUnconstrained()) << "/" << muon.hwPtUnconstrained() << "\n"; - std::cout << " Dxy: " << muon.hwDXY() << "\n"; + std::cout << " Dxy: " << muon.hwDXY() << "\n"; + std::cout << " Qual: " << muon.hwQual() << "\n"; std::cout << " TF index: " << muon.tfMuonIndex() << "\n"; } diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h index 58bf3a5c7f63a..43ec20ef66168 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h @@ -20,6 +20,7 @@ #include #include +#include class ScGMTRawToDigi : public edm::stream::EDProducer<> { public: @@ -37,7 +38,7 @@ class ScGMTRawToDigi : public edm::stream::EDProducer<> { // vector holding data for every bunch crossing // before filling the orbit collection - std::vector> orbitBuffer_; + std::vector> orbitBuffer_; int nMuonsOrbit_; bool debug_ = false; diff --git a/EventFilter/Utilities/test/testScoutingRun3_unpackers.py b/EventFilter/Utilities/test/testScoutingRun3_unpackers.py index 74f0799083bb1..84bfd757c99bd 100644 --- a/EventFilter/Utilities/test/testScoutingRun3_unpackers.py +++ b/EventFilter/Utilities/test/testScoutingRun3_unpackers.py @@ -36,13 +36,13 @@ "FFF base directory") options.register ("numThreads", - 2, + 8, VarParsing.VarParsing.multiplicity.singleton, VarParsing.VarParsing.varType.int, "Number of CMSSW threads") options.register ("numFwkStreams", - 2, + 8, VarParsing.VarParsing.multiplicity.singleton, VarParsing.VarParsing.varType.int, "Number of CMSSW streams") @@ -102,7 +102,7 @@ ram_dir_path=options.buBaseDir+"/run"+str(options.runNumber).zfill(6)+"/" flist = [ - ram_dir_path + "run" + str(options.runNumber) + "_ls0340_index000001.raw" + ram_dir_path + "run" + str(options.runNumber) + "_ls0340_index000028.raw" ] process.source = cms.Source("DAQSource", diff --git a/L1TriggerScouting/Utilities/plugins/BuildFile.xml b/L1TriggerScouting/Utilities/plugins/BuildFile.xml index c3a3a1c716568..2a4e53b8cc764 100644 --- a/L1TriggerScouting/Utilities/plugins/BuildFile.xml +++ b/L1TriggerScouting/Utilities/plugins/BuildFile.xml @@ -1,4 +1,4 @@ - + diff --git a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc index 650c5dd00b8e7..52a3545b26931 100644 --- a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc +++ b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc @@ -7,7 +7,6 @@ #include #include "FWCore/Framework/interface/stream/EDAnalyzer.h" - #include "FWCore/Framework/interface/Event.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/Utilities/interface/EDGetToken.h" @@ -23,7 +22,7 @@ #include "DataFormats/L1Trigger/interface/EtSum.h" #include "EventFilter/L1ScoutingRawToDigi/interface/conversion.h" -using namespace scoutingRun3; +using namespace l1ScoutingRun3; // ----------------------------- CLASS DECLARATION ---------------------------- class DumpScObjects : public edm::stream::EDAnalyzer<> { @@ -46,17 +45,17 @@ class DumpScObjects : public edm::stream::EDAnalyzer<> { void printBx(unsigned bx); // the tokens to access the data - edm::EDGetTokenT gmtMuonsToken_; - edm::EDGetTokenT caloJetsToken_; - edm::EDGetTokenT caloEGammasToken_; - edm::EDGetTokenT caloTausToken_; - edm::EDGetTokenT caloEtSumsToken_; - - edm::Handle muonHandle_; - edm::Handle jetHandle_; - edm::Handle eGammaHandle_; - edm::Handle tauHandle_; - edm::Handle etSumHandle_; + edm::EDGetTokenT gmtMuonsToken_; + edm::EDGetTokenT caloJetsToken_; + edm::EDGetTokenT caloEGammasToken_; + edm::EDGetTokenT caloTausToken_; + edm::EDGetTokenT caloEtSumsToken_; + + edm::Handle muonHandle_; + edm::Handle jetHandle_; + edm::Handle eGammaHandle_; + edm::Handle tauHandle_; + edm::Handle etSumHandle_; // the min and max BX to be analyzed unsigned minBx_; @@ -188,7 +187,8 @@ void DumpScObjects::printMuon(const ScMuon* muon){ std::cout << " PhiVtx [rad/Hw]: " << ugmt::fPhiAtVtx(muon->hwPhiAtVtx()) << "/" << muon->hwPhiAtVtx() << "\n"; std::cout << " EtaVtx [rad/Hw]: " << ugmt::fEtaAtVtx(muon->hwEtaAtVtx()) << "/" << muon->hwEtaAtVtx() << "\n"; std::cout << " Pt uncon[GeV/Hw]: " << ugmt::fPtUnconstrained(muon->hwPtUnconstrained()) << "/" << muon->hwPtUnconstrained() << "\n"; - std::cout << " Dxy: " << muon->hwDXY() << "\n"; + std::cout << " Dxy: " << muon->hwDXY() << "\n"; + std::cout << " Qual: " << muon->hwQual() << "\n"; std::cout << " TF index: " << muon->tfMuonIndex() << "\n"; } diff --git a/L1TriggerScouting/Utilities/test/dumpScObjects.py b/L1TriggerScouting/Utilities/test/dumpScObjects.py index 698f89d55fcee..49c438686fffa 100644 --- a/L1TriggerScouting/Utilities/test/dumpScObjects.py +++ b/L1TriggerScouting/Utilities/test/dumpScObjects.py @@ -31,7 +31,7 @@ ) process.dump = cms.EDAnalyzer("DumpScObjects", - #gmtMuonsTag = cms.InputTag("GmtUnpacker", "", "SCPU"), + gmtMuonsTag = cms.InputTag("GmtUnpacker", "", "SCPU"), caloJetsTag = cms.InputTag("CaloUnpacker", "", "SCPU"), caloEGammasTag = cms.InputTag("CaloUnpacker", "", "SCPU"), caloTausTag = cms.InputTag("CaloUnpacker", "", "SCPU"), @@ -39,14 +39,17 @@ minBx = cms.untracked.uint32(0), maxBx = cms.untracked.uint32(3564), - skipEmptyBx = cms.untracked.bool(False), + skipEmptyBx = cms.untracked.bool(True), # don't show empty BX - checkMuons = cms.untracked.bool(False), + #checkMuons = cms.untracked.bool(False), # test removing a collection - #searchEvent = cms.untracked.bool(True), - #orbitNumber = cms.untracked.uint32(88870912), - #searchStartBx = cms.untracked.uint32(3385), - #searchStopBx = cms.untracked.uint32(3390), + searchEvent = cms.untracked.bool(True), + orbitNumber = cms.untracked.uint32(88985058), + searchStartBx = cms.untracked.uint32(2395-2), + searchStopBx = cms.untracked.uint32(2395+2), + #orbitNumber = cms.untracked.uint32(88981531), + #searchStartBx = cms.untracked.uint32(1027-2), + #searchStopBx = cms.untracked.uint32(1027+2), ) process.p = cms.Path( From afe8b59257860864937b417680ba7ede174bb455 Mon Sep 17 00:00:00 2001 From: matteo Date: Mon, 27 Nov 2023 09:54:54 +0100 Subject: [PATCH 038/281] New structure for EtSums --- .../L1Scouting/interface/L1ScoutingCalo.h | 133 +++++++++++++-- DataFormats/L1Scouting/src/classes.h | 1 + DataFormats/L1Scouting/src/classes_def.xml | 5 + .../interface/conversion.h | 20 +-- .../L1ScoutingRawToDigi/interface/masks.h | 8 +- .../L1ScoutingRawToDigi/interface/shifts.h | 2 + .../plugins/ScCALORawToDigi.cc | 153 +++++++++++++----- .../plugins/ScCALORawToDigi.h | 3 +- .../test/testScoutingRun3_unpackers.py | 4 +- .../Utilities/test/dumpScObjects.py | 9 +- 10 files changed, 265 insertions(+), 73 deletions(-) diff --git a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h index 4adc413c5dc36..61f6f8cc1a2d3 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h @@ -14,6 +14,8 @@ namespace l1ScoutingRun3 { typedef OrbitCollection ScTauOrbitCollection; class ScEtSum; typedef OrbitCollection ScEtSumOrbitCollection; + class ScBxSums; + typedef OrbitCollection ScBxSumsOrbitCollection; class ScCaloObject { public: @@ -72,8 +74,12 @@ namespace l1ScoutingRun3 { int hwEt, int hwEta, int hwPhi, - int iso) - : ScCaloObject(hwEt, hwEta ,hwPhi , iso) {} + int hwQual) + : ScCaloObject(hwEt, hwEta ,hwPhi , hwQual) {} + + // store quality instead of iso + inline void setHwQual(int hwQual) { setHwIso(hwQual);} + inline int hwQual() const {return hwIso();} }; @@ -137,22 +143,123 @@ namespace l1ScoutingRun3 { inline int hwPhi() const {return hwPhi_;} inline l1t::EtSum::EtSumType type() const {return type_;} - // inline float Et() const { - // return et_scale_* hwEt_; - // } - // inline float phi() const { - // float fPhi = phi_scale_*hwPhi_; - // fPhi = fPhi>=M_PI ? fPhi-2.*M_PI : fPhi; - // return fPhi; - // } - private: int hwEt_; int hwPhi_; l1t::EtSum::EtSumType type_; + }; + + class ScBxSums { + + public: + ScBxSums() + : hwTotalEt_(0), hwTotalEtEm_(0), minBiasHFP0_(0), + hwTotalHt_(0), towerCount_(0), minBiasHFM0_(0), + hwMissEt_(0), hwMissEtPhi_(0), hwAsymEt_(0), minBiasHFP1_(0), + hwMissHt_(0), hwMissHtPhi_(0), hwAsymHt_(0), minBiasHFM1_(0), + hwMissEtHF_(0), hwMissEtHFPhi_(0), hwAsymEtHF_(0), + hwMissHtHF_(0), hwMissHtHFPhi_(0), hwAsymHtHF_(0), centrality_(0) + {} - // static constexpr float phi_scale_ = 2.*M_PI/144.; - // static constexpr float et_scale_ = 0.5; + ScBxSums( + int hwTotalEt, int hwTotalEtEm, int minBiasHFP0, + int hwTotalHt, int towerCount, int minBiasHFM0, + int hwMissEt, int hwMissEtPhi, int hwAsymEt, int minBiasHFP1, + int hwMissHt, int hwMissHtPhi, int hwAsymHt, int minBiasHFM1, + int hwMissEtHF, int hwMissEtHFPhi, int hwAsymEtHF, + int hwMissHtHF, int hwMissHtHFPhi, int hwAsymHtHF, int centrality + ) + : hwTotalEt_(hwTotalEt), hwTotalEtEm_(hwTotalEtEm), minBiasHFP0_(minBiasHFP0), + hwTotalHt_(hwTotalHt), towerCount_(towerCount), minBiasHFM0_(minBiasHFM0), + hwMissEt_(hwMissEt), hwMissEtPhi_(hwMissEtPhi), hwAsymEt_(hwAsymEt), + minBiasHFP1_(minBiasHFP1), hwMissHt_(hwMissHt), hwMissHtPhi_(hwMissHtPhi), + hwAsymHt_(hwAsymHt), minBiasHFM1_(minBiasHFM1), hwMissEtHF_(hwMissEtHF), + hwMissEtHFPhi_(hwMissEtHFPhi), hwAsymEtHF_(hwAsymEtHF), hwMissHtHF_(hwMissHtHF), + hwMissHtHFPhi_(hwMissHtHFPhi), hwAsymHtHF_(hwAsymHtHF), centrality_(centrality) + {} + + ScBxSums(const ScBxSums& other) = default; + ScBxSums(ScBxSums&& other) = default; + ScBxSums & operator=(const ScBxSums& other) = default; + ScBxSums & operator=(ScBxSums&& other) = default; + + void swap(ScBxSums& other){ + using std::swap; + swap(hwTotalEt_, other.hwTotalEt_); + swap(hwTotalEtEm_, other.hwTotalEtEm_); + swap(minBiasHFP0_, other.minBiasHFP0_); + swap(hwTotalHt_, other.hwTotalHt_); + swap(towerCount_, other.towerCount_); + swap(minBiasHFM0_, other.minBiasHFM0_); + swap(hwMissEt_, other.hwMissEt_); + swap(hwMissEtPhi_, other.hwMissEtPhi_); + swap(hwAsymEt_, other.hwAsymEt_); + swap(minBiasHFP1_, other.minBiasHFP1_); + swap(hwMissHt_, other.hwMissHt_); + swap(hwMissHtPhi_, other.hwMissHtPhi_); + swap(hwAsymHt_, other.hwAsymHt_); + swap(minBiasHFM1_, other.minBiasHFM1_); + swap(hwMissEtHF_, other.hwMissEtHF_); + swap(hwMissEtHFPhi_, other.hwMissEtHFPhi_); + swap(hwAsymEtHF_, other.hwAsymEtHF_); + swap(hwMissHtHF_, other.hwMissHtHF_); + swap(hwMissHtHFPhi_, other.hwMissHtHFPhi_); + swap(hwAsymHtHF_, other.hwAsymHtHF_); + swap(centrality_, other.centrality_); + + } + + inline void setHwTotalEt(int hwTotalEt) {hwTotalEt_ = hwTotalEt;} + inline void setHwTotalEtEm(int hwTotalEtEm) {hwTotalEtEm_ = hwTotalEtEm;} + inline void setMinBiasHFP0(int minBiasHFP0) {minBiasHFP0_ = minBiasHFP0;} + inline void setHwTotalHt(int hwTotalHt) {hwTotalHt_ = hwTotalHt;} + inline void setTowerCount(int towerCount) {towerCount_ = towerCount;} + inline void setMinBiasHFM0(int minBiasHFM0) {minBiasHFM0_ = minBiasHFM0;} + inline void setHwMissEt(int hwMissEt) {hwMissEt_ = hwMissEt;} + inline void setHwMissEtPhi(int hwMissEtPhi) {hwMissEtPhi_ = hwMissEtPhi;} + inline void setHwAsymEt(int hwAsymEt) {hwAsymEt_ = hwAsymEt;} + inline void setMinBiasHFP1(int minBiasHFP1) {minBiasHFP1_ = minBiasHFP1;} + inline void setHwMissHt(int hwMissHt) {hwMissHt_ = hwMissHt;} + inline void setHwMissHtPhi(int hwMissHtPhi) {hwMissHtPhi_ = hwMissHtPhi;} + inline void setHwAsymHt(int hwAsymHt) {hwAsymHt_ = hwAsymHt;} + inline void setMinBiasHFM1(int minBiasHFM1) {minBiasHFM1_ = minBiasHFM1;} + inline void setHwMissEtHF(int hwMissEtHF) {hwMissEtHF_ = hwMissEtHF;} + inline void setHwMissEtHFPhi(int hwMissEtHFPhi) {hwMissEtHFPhi_ = hwMissEtHFPhi;} + inline void setHwAsymEtHF(int hwAsymEtHF) {hwAsymEtHF_ = hwAsymEtHF;} + inline void setHwMissHtHF(int hwMissHtHF) {hwMissHtHF_ = hwMissHtHF;} + inline void setHwMissHtHFPhi(int hwMissHtHFPhi) {hwMissHtHFPhi_ = hwMissHtHFPhi;} + inline void setHwAsymHtHF(int hwAsymHtHF) {hwAsymHtHF_ = hwAsymHtHF;} + inline void setCentrality(int centrality) {centrality_ = centrality;} + + const int hwTotalEt() { return hwTotalEt_;} + const int hwTotalEtEm() { return hwTotalEtEm_;} + const int minBiasHFP0() { return minBiasHFP0_;} + const int hwTotalHt() { return hwTotalHt_;} + const int towerCount() { return towerCount_;} + const int minBiasHFM0() { return minBiasHFM0_;} + const int hwMissEt() { return hwMissEt_;} + const int hwMissEtPhi() { return hwMissEtPhi_;} + const int hwAsymEt() { return hwAsymEt_;} + const int minBiasHFP1() { return minBiasHFP1_;} + const int hwMissHt() { return hwMissHt_;} + const int hwMissHtPhi() { return hwMissHtPhi_;} + const int hwAsymHt() { return hwAsymHt_;} + const int minBiasHFM1() { return minBiasHFM1_;} + const int hwMissEtHF() { return hwMissEtHF_;} + const int hwMissEtHFPhi() { return hwMissEtHFPhi_;} + const int hwAsymEtHF() { return hwAsymEtHF_;} + const int hwMissHtHF() { return hwMissHtHF_;} + const int hwMissHtHFPhi() { return hwMissHtHFPhi_;} + const int hwAsymHtHF() { return hwAsymHtHF_;} + const int centrality() { return centrality_;} + + private: + int hwTotalEt_, hwTotalEtEm_, minBiasHFP0_; // sums from ET block + int hwTotalHt_, towerCount_, minBiasHFM0_; // sums from HT block + int hwMissEt_, hwMissEtPhi_, hwAsymEt_, minBiasHFP1_; // sums from EtMiss block + int hwMissHt_, hwMissHtPhi_, hwAsymHt_, minBiasHFM1_; // sums from HTMiss block + int hwMissEtHF_, hwMissEtHFPhi_, hwAsymEtHF_; // sums from ETHFMiss block + int hwMissHtHF_, hwMissHtHFPhi_, hwAsymHtHF_, centrality_; // sums from HTHFMiss block }; } // namespace l1ScoutingRun3 diff --git a/DataFormats/L1Scouting/src/classes.h b/DataFormats/L1Scouting/src/classes.h index 9cf7945282771..4e473b6ddd498 100644 --- a/DataFormats/L1Scouting/src/classes.h +++ b/DataFormats/L1Scouting/src/classes.h @@ -12,4 +12,5 @@ namespace l1ScoutingRun3 { edm::Wrapper ScEGammaOrbitCollectionWrapper; edm::Wrapper ScTauOrbitCollectionWrapper; edm::Wrapper ScEtSumOrbitCollectionWrapper; + edm::Wrapper ScBxSumsOrbitCollectionWrapper; } \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/classes_def.xml b/DataFormats/L1Scouting/src/classes_def.xml index 88c0da686b26c..9296247961b8b 100644 --- a/DataFormats/L1Scouting/src/classes_def.xml +++ b/DataFormats/L1Scouting/src/classes_def.xml @@ -26,5 +26,10 @@ + + + + + \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/interface/conversion.h b/EventFilter/L1ScoutingRawToDigi/interface/conversion.h index 4fa75925a706e..a240dafd3f42c 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/conversion.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/conversion.h @@ -4,6 +4,11 @@ #include "EventFilter/L1ScoutingRawToDigi/interface/scales.h" namespace l1ScoutingRun3 { + + inline float _setPhiRange(float phi) { + phi = phi >= M_PI ? phi-2.*M_PI : phi; + return phi; + } namespace ugmt { @@ -14,9 +19,8 @@ namespace l1ScoutingRun3 { return scales::eta_scale*hwEta; }; inline float fPhi(int hwPhi) { - float fPhi_ = scales::phi_scale*hwPhi; - fPhi_ = fPhi_>=M_PI ? fPhi_-2.*M_PI : fPhi_; - return fPhi_; + //float fPhi_ = scales::phi_scale*hwPhi; + return _setPhiRange(scales::phi_scale*hwPhi); }; inline float fPtUnconstrained(int hwPtUnconstrained) { return scales::ptunconstrained_scale*(hwPtUnconstrained-1); @@ -25,9 +29,8 @@ namespace l1ScoutingRun3 { return scales::eta_scale*hwEtaAtVtx; }; inline float fPhiAtVtx(int hwPhiAtVtx) { - float fPhi_ = scales::phi_scale*hwPhiAtVtx; - fPhi_ = fPhi_>=M_PI ? fPhi_-2.*M_PI : fPhi_; - return fPhi_; + //float fPhi_ = scales::phi_scale*hwPhiAtVtx; + return _setPhiRange(scales::phi_scale*hwPhiAtVtx); }; } // namespace ugmt @@ -41,9 +44,8 @@ namespace l1ScoutingRun3 { return scales::eta_scale*hwEta; }; inline float fPhi(int hwPhi) { - float fPhi_ = scales::phi_scale*hwPhi; - fPhi_ = fPhi_>= M_PI ? fPhi_-2.*M_PI : fPhi_; - return fPhi_; + //float fPhi_ = scales::phi_scale*hwPhi; + return _setPhiRange(scales::phi_scale*hwPhi); }; } // namespace demux diff --git a/EventFilter/L1ScoutingRawToDigi/interface/masks.h b/EventFilter/L1ScoutingRawToDigi/interface/masks.h index ba1fa65418790..add18839cf66b 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/masks.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/masks.h @@ -43,6 +43,8 @@ namespace demux { static constexpr uint32_t ET = 0x07ff; static constexpr uint32_t eta = 0x00ff; static constexpr uint32_t phi = 0x00ff; + static constexpr uint32_t disp = 0x0001; + static constexpr uint32_t qual = 0x0003; }; // struct masksCaloEGamma{ @@ -69,17 +71,17 @@ namespace demux { static constexpr uint32_t HTEt = 0x0fff; // Et of HT object static constexpr uint32_t HTtowerCount = 0x1fff; - static constexpr uint32_t HTMinBiasHF = 0x0003; + static constexpr uint32_t HTMinBiasHF = 0x000f; static constexpr uint32_t ETmissEt = 0x0fff; static constexpr uint32_t ETmissPhi = 0x00ff; static constexpr uint32_t ETmissASYMET = 0x00ff; - static constexpr uint32_t ETmissMinBiasHF = 0x0003; + static constexpr uint32_t ETmissMinBiasHF = 0x000f; static constexpr uint32_t HTmissEt = 0x0fff; static constexpr uint32_t HTmissPhi = 0x00ff; static constexpr uint32_t HTmissASYMHT = 0x00ff; - static constexpr uint32_t HTmissMinBiasHF = 0x0003; + static constexpr uint32_t HTmissMinBiasHF = 0x000f; static constexpr uint32_t ETHFmissEt = 0x0fff; static constexpr uint32_t ETHFmissPhi = 0x00ff; diff --git a/EventFilter/L1ScoutingRawToDigi/interface/shifts.h b/EventFilter/L1ScoutingRawToDigi/interface/shifts.h index c5b278d938cd7..1d1bb04189e67 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/shifts.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/shifts.h @@ -37,6 +37,8 @@ namespace demux { static constexpr uint32_t ET = 0; static constexpr uint32_t eta = 11; static constexpr uint32_t phi = 19; + static constexpr uint32_t disp = 27; + static constexpr uint32_t qual = 28; }; // struct shiftsCaloEGamma{ diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc index 872d17c66527f..134292e68137d 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc @@ -9,14 +9,16 @@ ScCaloRawToDigi::ScCaloRawToDigi(const edm::ParameterSet& iConfig) { orbitBufferJets_ = std::vector>(3565); orbitBufferEGammas_ = std::vector>(3565); orbitBufferTaus_ = std::vector>(3565); - orbitBufferEtSums_ = std::vector>(3565); + // orbitBufferEtSums_ = std::vector>(3565); + orbitBufferEtSums_ = std::vector>(3565); nJetsOrbit_=0; nEGammasOrbit_=0; nTausOrbit_=0; nEtSumsOrbit_=0; produces().setBranchAlias( "ScJetOrbitCollection" ); produces().setBranchAlias( "ScTauOrbitCollection" ); produces().setBranchAlias( "ScEGammaOrbitCollection" ); - produces().setBranchAlias( "ScEtSumOrbitCollection" ); + // produces().setBranchAlias( "ScEtSumOrbitCollection" ); + produces().setBranchAlias( "ScBxSumsOrbitCollection" ); rawToken = consumes(srcInputTag); } @@ -36,7 +38,8 @@ void ScCaloRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) std::unique_ptr unpackedJets(new ScJetOrbitCollection); std::unique_ptr unpackedTaus(new ScTauOrbitCollection); std::unique_ptr unpackedEGammas(new ScEGammaOrbitCollection); - std::unique_ptr unpackedEtSums(new ScEtSumOrbitCollection); + // std::unique_ptr unpackedEtSums(new ScEtSumOrbitCollection); + std::unique_ptr unpackedEtSums(new ScBxSumsOrbitCollection); if((sourceRawData.size()==0) && debug_ ){ std::cout << "No raw data for CALO source\n"; @@ -118,17 +121,18 @@ void ScCaloRawToDigi::unpackOrbit( void ScCaloRawToDigi::unpackLinkJets(uint32_t* dataBlock, int bx){ using namespace l1ScoutingRun3; - int32_t ET(0), Eta(0), Phi(0); + int32_t ET(0), Eta(0), Phi(0), Qual(0); for (uint32_t i=0; i<6; i++) { ET = ((dataBlock[i] >> demux::shiftsJet::ET) & demux::masksJet::ET); if (ET != 0) { - Eta = ((dataBlock[i] >> demux::shiftsJet::eta) & demux::masksJet::eta); - Phi = ((dataBlock[i] >> demux::shiftsJet::phi) & demux::masksJet::phi); + Eta = ((dataBlock[i] >> demux::shiftsJet::eta) & demux::masksJet::eta); + Phi = ((dataBlock[i] >> demux::shiftsJet::phi) & demux::masksJet::phi); + Qual = ((dataBlock[i] >> demux::shiftsJet::qual) & demux::masksJet::qual); if (Eta > 127) Eta = Eta - 256; - ScJet jet(ET, Eta, Phi, 0); + ScJet jet(ET, Eta, Phi, Qual); orbitBufferJets_[bx].push_back(jet); nJetsOrbit_ ++; @@ -204,58 +208,129 @@ void ScCaloRawToDigi::unpackLinkTaus(uint32_t* dataBlock, int bx){ void ScCaloRawToDigi::unpackEtSums(uint32_t* dataBlock, int bx){ using namespace l1ScoutingRun3; - int32_t ETEt(0), HTEt(0), ETmissEt(0), ETmissPhi(0), HTmissEt(0), HTmissPhi(0); + ScBxSums bxSums; + int32_t ETEt(0), ETEttem(0), ETMinBiasHFP0(0); // ET + int32_t HTEt(0), HTtowerCount(0), HTMinBiasHFM0(0); // HT + int32_t ETmissEt(0), ETmissPhi(0), ETmissASYMET(0), ETmissMinBiasHFP1(0); //ETMiss + int32_t HTmissEt(0), HTmissPhi(0), HTmissASYMHT(0), HTmissMinBiasHFM1(0); // HTMiss + int32_t ETHFmissEt(0), ETHFmissPhi(0), ETHFmissASYMETHF(0), ETHFmissCENT(0); // ETHFMiss + int32_t HTHFmissEt(0), HTHFmissPhi(0), HTHFmissASYMHTHF(0), HTHFmissCENT(0); // HTHFMiss + // ET ETEt = ((dataBlock[0] >> demux::shiftsESums::ETEt) & demux::masksESums::ETEt); - - ScEtSum sumTotEt(ETEt, 0, l1t::EtSum::EtSumType::kTotalEt); - orbitBufferEtSums_[bx].push_back(sumTotEt); + ETEttem = ((dataBlock[0] >> demux::shiftsESums::ETEttem) & demux::masksESums::ETEttem); + ETMinBiasHFP0 = ((dataBlock[0] >> demux::shiftsESums::ETMinBiasHF) & demux::masksESums::ETMinBiasHF); + + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETEt, 0, l1t::EtSum::EtSumType::kTotalEt)); + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETEttem, 0, l1t::EtSum::EtSumType::kTotalEtEm)); + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETMinBiasHFP0, 0, l1t::EtSum::EtSumType::kMinBiasHFP0)); + bxSums.setHwTotalEt(ETEt); + bxSums.setHwTotalEtEm(ETEttem); + bxSums.setMinBiasHFP0(ETMinBiasHFP0); // HT HTEt = ((dataBlock[1] >> demux::shiftsESums::HTEt) & demux::masksESums::HTEt); + HTtowerCount = ((dataBlock[1] >> demux::shiftsESums::HTtowerCount) & demux::masksESums::HTtowerCount); + HTMinBiasHFM0 = ((dataBlock[1] >> demux::shiftsESums::HTMinBiasHF) & demux::masksESums::HTMinBiasHF); - ScEtSum sumTotHt(HTEt, 0, l1t::EtSum::EtSumType::kTotalHt); - orbitBufferEtSums_[bx].push_back(sumTotHt); + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTEt, 0, l1t::EtSum::EtSumType::kTotalHt)); + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTtowerCount, 0, l1t::EtSum::EtSumType::kTowerCount)); + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTMinBiasHFM0, 0, l1t::EtSum::EtSumType::kMinBiasHFM0)); + + bxSums.setHwTotalHt(HTEt); + bxSums.setTowerCount(HTtowerCount); + bxSums.setMinBiasHFM0(HTMinBiasHFM0); // ETMiss ETmissEt = ((dataBlock[2] >> demux::shiftsESums::ETmissEt) & demux::masksESums::ETmissEt); ETmissPhi = ((dataBlock[2] >> demux::shiftsESums::ETmissPhi) & demux::masksESums::ETmissPhi); + ETmissASYMET = ((dataBlock[2] >> demux::shiftsESums::ETmissASYMET) & demux::masksESums::ETmissASYMET); + ETmissMinBiasHFP1 = ((dataBlock[2] >> demux::shiftsESums::ETmissMinBiasHF) & demux::masksESums::ETmissMinBiasHF); + + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETmissEt, ETmissPhi, l1t::EtSum::EtSumType::kMissingEt)); + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETmissASYMET, 0, l1t::EtSum::EtSumType::kAsymEt)); + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETmissMinBiasHFP1, 0, l1t::EtSum::EtSumType::kMinBiasHFP1)); - ScEtSum sumMissEt(ETmissEt, ETmissPhi, l1t::EtSum::EtSumType::kMissingEt); - orbitBufferEtSums_[bx].push_back(sumMissEt); + bxSums.setHwMissEt(ETmissEt); + bxSums.setHwMissEtPhi(ETmissPhi); + bxSums.setHwAsymEt(ETmissASYMET); + bxSums.setMinBiasHFP1(ETmissMinBiasHFP1); // HTMiss HTmissEt = ((dataBlock[3] >> demux::shiftsESums::HTmissEt) & demux::masksESums::HTmissEt); HTmissPhi = ((dataBlock[3] >> demux::shiftsESums::HTmissPhi) & demux::masksESums::HTmissPhi); + HTmissASYMHT = ((dataBlock[3] >> demux::shiftsESums::HTmissASYMHT) & demux::masksESums::HTmissASYMHT); + HTmissMinBiasHFM1 = ((dataBlock[3] >> demux::shiftsESums::HTmissMinBiasHF) & demux::masksESums::HTmissMinBiasHF); + + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTmissEt, HTmissPhi, l1t::EtSum::EtSumType::kMissingHt)); + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTmissASYMHT, 0, l1t::EtSum::EtSumType::kAsymHt)); + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTmissMinBiasHFM1, 0, l1t::EtSum::EtSumType::kMinBiasHFM1)); + + std::cout << "BX " << bx << ", Frame 3: " << std::endl; + std::cout << " Raw: 0x" << std::hex << dataBlock[3] << std::dec << "\n" + << " MHTEt: " << HTmissEt << ", MHTEt PHI: " << HTmissPhi << std::endl; + + bxSums.setHwMissHt(HTmissEt); + bxSums.setHwMissHtPhi(HTmissPhi); + bxSums.setHwAsymHt(HTmissASYMHT); + bxSums.setMinBiasHFM1(HTmissMinBiasHFM1); + + // ETHFMiss + ETHFmissEt = ((dataBlock[4] >> demux::shiftsESums::ETHFmissEt) & demux::masksESums::ETHFmissEt); + ETHFmissPhi = ((dataBlock[4] >> demux::shiftsESums::ETHFmissPhi) & demux::masksESums::ETHFmissPhi); + ETHFmissASYMETHF = ((dataBlock[4] >> demux::shiftsESums::ETHFmissASYMETHF) & demux::masksESums::ETHFmissASYMETHF); + ETHFmissCENT = ((dataBlock[4] >> demux::shiftsESums::ETHFmissCENT) & demux::masksESums::ETHFmissCENT); + + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETHFmissEt, ETHFmissPhi, l1t::EtSum::EtSumType::kMissingEtHF)); + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETHFmissASYMETHF, 0, l1t::EtSum::EtSumType::kAsymEtHF)); + + bxSums.setHwMissEtHF(ETHFmissEt); + bxSums.setHwMissEtHFPhi(ETHFmissPhi); + bxSums.setHwAsymEtHF(ETHFmissASYMETHF); + + // HTHFMiss + HTHFmissEt = ((dataBlock[5] >> demux::shiftsESums::ETHFmissEt) & demux::masksESums::ETHFmissEt); + HTHFmissPhi = ((dataBlock[5] >> demux::shiftsESums::ETHFmissPhi) & demux::masksESums::ETHFmissPhi); + HTHFmissASYMHTHF = ((dataBlock[5] >> demux::shiftsESums::ETHFmissASYMETHF) & demux::masksESums::ETHFmissASYMETHF); + HTHFmissCENT = ((dataBlock[5] >> demux::shiftsESums::ETHFmissCENT) & demux::masksESums::ETHFmissCENT); + + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTHFmissEt, HTHFmissPhi, l1t::EtSum::EtSumType::kMissingHtHF)); + // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTHFmissASYMHTHF, 0, l1t::EtSum::EtSumType::kAsymHtHF)); + // orbitBufferEtSums_[bx].emplace_back(ScEtSum((HTHFmissCENT<<4) + ETHFmissCENT, 0, l1t::EtSum::EtSumType::kCentrality)); + + bxSums.setHwMissHtHF(HTHFmissEt); + bxSums.setHwMissHtHFPhi(HTHFmissPhi); + bxSums.setHwAsymHtHF(HTHFmissASYMHTHF); + bxSums.setCentrality((HTHFmissCENT<<4) + ETHFmissCENT); - ScEtSum sumMissHt(HTmissEt, HTmissPhi, l1t::EtSum::EtSumType::kMissingHt); - orbitBufferEtSums_[bx].push_back(sumMissHt); + // nEtSumsOrbit_ += 17; + nEtSumsOrbit_ += 1; - nEtSumsOrbit_ += 4; + orbitBufferEtSums_[bx].push_back(bxSums); if (debug_){ - std::cout << "Type: TotalET\n" - << " Raw: 0x" << std::hex << dataBlock[0] << std::dec << "\n" - << " Et [GeV/Hw]: " << demux::fEt(sumTotEt.hwEt()) << "/" << sumTotEt.hwEt() - << std::endl; - - std::cout << "Type: TotalHT\n" - << " Raw: 0x" << std::hex << dataBlock[1] << std::dec << "\n" - << " Et [GeV/Hw]: " << demux::fEt(sumTotEt.hwEt()) << "/" << sumTotEt.hwEt() - << std::endl; - - std::cout << "Type: ETMiss\n" - << " Raw: 0x" << std::hex << dataBlock[2] << std::dec << "\n" - << " Et [GeV/Hw]: " << demux::fEt(sumMissEt.hwEt()) << "/" << sumMissEt.hwEt() << "\n" - << " Phi [Rad/Hw]: " << demux::fPhi(sumMissEt.hwPhi()) << "/" << sumMissEt.hwPhi() - << std::endl; - - std::cout << "Type: HTMiss\n" - << " Raw: 0x" << std::hex << dataBlock[3] << std::dec << "\n" - << " Et [GeV/Hw]: " << demux::fEt(sumMissHt.hwEt()) << "/" << sumMissHt.hwEt() << "\n" - << " Phi [Rad/Hw]: " << demux::fPhi(sumMissHt.hwPhi()) << "/" << sumMissHt.hwPhi() - << std::endl; + // std::cout << "Type: TotalET\n" + // << " Raw: 0x" << std::hex << dataBlock[0] << std::dec << "\n" + // << " Et [GeV/Hw]: " << demux::fEt(sumTotEt.hwEt()) << "/" << sumTotEt.hwEt() + // << std::endl; + + // std::cout << "Type: TotalHT\n" + // << " Raw: 0x" << std::hex << dataBlock[1] << std::dec << "\n" + // << " Et [GeV/Hw]: " << demux::fEt(sumTotHt.hwEt()) << "/" << sumTotHt.hwEt() + // << std::endl; + + // std::cout << "Type: ETMiss\n" + // << " Raw: 0x" << std::hex << dataBlock[2] << std::dec << "\n" + // << " Et [GeV/Hw]: " << demux::fEt(sumMissEt.hwEt()) << "/" << sumMissEt.hwEt() << "\n" + // << " Phi [Rad/Hw]: " << demux::fPhi(sumMissEt.hwPhi()) << "/" << sumMissEt.hwPhi() + // << std::endl; + + // std::cout << "Type: HTMiss\n" + // << " Raw: 0x" << std::hex << dataBlock[3] << std::dec << "\n" + // << " Et [GeV/Hw]: " << demux::fEt(sumMissHt.hwEt()) << "/" << sumMissHt.hwEt() << "\n" + // << " Phi [Rad/Hw]: " << demux::fPhi(sumMissHt.hwPhi()) << "/" << sumMissHt.hwPhi() + // << std::endl; } } diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h index 8ea8ec76260ad..49bc27351ceb6 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h @@ -47,7 +47,8 @@ class ScCaloRawToDigi : public edm::stream::EDProducer<> { std::vector> orbitBufferJets_; std::vector> orbitBufferEGammas_; std::vector> orbitBufferTaus_; - std::vector> orbitBufferEtSums_; + //std::vector> orbitBufferEtSums_; + std::vector> orbitBufferEtSums_; bool debug_ = false; edm::InputTag srcInputTag; diff --git a/EventFilter/Utilities/test/testScoutingRun3_unpackers.py b/EventFilter/Utilities/test/testScoutingRun3_unpackers.py index 84bfd757c99bd..eece932ed8623 100644 --- a/EventFilter/Utilities/test/testScoutingRun3_unpackers.py +++ b/EventFilter/Utilities/test/testScoutingRun3_unpackers.py @@ -53,7 +53,7 @@ process = cms.Process("SCPU") process.maxEvents = cms.untracked.PSet( - input = cms.untracked.int32(-1) + input = cms.untracked.int32(1) ) process.options = cms.untracked.PSet( @@ -102,7 +102,7 @@ ram_dir_path=options.buBaseDir+"/run"+str(options.runNumber).zfill(6)+"/" flist = [ - ram_dir_path + "run" + str(options.runNumber) + "_ls0340_index000028.raw" + ram_dir_path + "run" + str(options.runNumber) + "_ls0340_index000001.raw"#"_ls0340_index000028.raw" ] process.source = cms.Source("DAQSource", diff --git a/L1TriggerScouting/Utilities/test/dumpScObjects.py b/L1TriggerScouting/Utilities/test/dumpScObjects.py index 49c438686fffa..ff40699c4876b 100644 --- a/L1TriggerScouting/Utilities/test/dumpScObjects.py +++ b/L1TriggerScouting/Utilities/test/dumpScObjects.py @@ -44,12 +44,9 @@ #checkMuons = cms.untracked.bool(False), # test removing a collection searchEvent = cms.untracked.bool(True), - orbitNumber = cms.untracked.uint32(88985058), - searchStartBx = cms.untracked.uint32(2395-2), - searchStopBx = cms.untracked.uint32(2395+2), - #orbitNumber = cms.untracked.uint32(88981531), - #searchStartBx = cms.untracked.uint32(1027-2), - #searchStopBx = cms.untracked.uint32(1027+2), + orbitNumber = cms.untracked.uint32(88982581), + searchStartBx = cms.untracked.uint32(1484-2), + searchStopBx = cms.untracked.uint32(1484+2), ) process.p = cms.Path( From 6dacd69c17b567e1a3cce7ed40d77decc4620723 Mon Sep 17 00:00:00 2001 From: Shahzad Malik Muzaffar Date: Mon, 27 Nov 2023 18:13:02 +0100 Subject: [PATCH 039/281] [GENERATORS] [DEVEL] Fix warnings on deprecated copy-constructors --- .../GeneratorProducts/interface/GenFilterInfo.h | 1 - .../GeneratorProducts/interface/GenLumiInfoProduct.h | 3 --- .../GeneratorProducts/interface/GenRunInfoProduct.h | 2 -- SimDataFormats/GeneratorProducts/src/GenFilterInfo.cc | 9 --------- .../GeneratorProducts/src/GenLumiInfoProduct.cc | 3 --- .../GeneratorProducts/src/GenRunInfoProduct.cc | 6 ------ SimDataFormats/GeneratorProducts/src/classes_def.xml | 5 ++--- 7 files changed, 2 insertions(+), 27 deletions(-) diff --git a/SimDataFormats/GeneratorProducts/interface/GenFilterInfo.h b/SimDataFormats/GeneratorProducts/interface/GenFilterInfo.h index a197572924b4d..660a4b51824d4 100644 --- a/SimDataFormats/GeneratorProducts/interface/GenFilterInfo.h +++ b/SimDataFormats/GeneratorProducts/interface/GenFilterInfo.h @@ -14,7 +14,6 @@ class GenFilterInfo { GenFilterInfo(); GenFilterInfo(unsigned int, unsigned int); // obsolete, should be avoided for new classes GenFilterInfo(unsigned int, unsigned int, unsigned int, unsigned int, double, double, double, double); - GenFilterInfo(const GenFilterInfo&); virtual ~GenFilterInfo(); // getters diff --git a/SimDataFormats/GeneratorProducts/interface/GenLumiInfoProduct.h b/SimDataFormats/GeneratorProducts/interface/GenLumiInfoProduct.h index f48a377fc0588..f5ea7343a1e9c 100644 --- a/SimDataFormats/GeneratorProducts/interface/GenLumiInfoProduct.h +++ b/SimDataFormats/GeneratorProducts/interface/GenLumiInfoProduct.h @@ -17,7 +17,6 @@ class GenLumiInfoProduct { // constructors, destructors GenLumiInfoProduct(); GenLumiInfoProduct(const int id); - GenLumiInfoProduct(const GenLumiInfoProduct &other); virtual ~GenLumiInfoProduct(); // getters @@ -35,7 +34,6 @@ class GenLumiInfoProduct { public: XSec() : value_(-1.), error_(-1.) {} XSec(double v, double e = -1.) : value_(v), error_(e) {} - XSec(const XSec &other) : value_(other.value_), error_(other.error_) {} double value() const { return value_; } double error() const { return error_; } @@ -57,7 +55,6 @@ class GenLumiInfoProduct { public: FinalStat() : n_(0), sum_(0.0), sum2_(0.0) {} FinalStat(unsigned int n1, double sum1, double sum21) : n_(n1), sum_(sum1), sum2_(sum21) {} - FinalStat(const FinalStat &other) : n_(other.n_), sum_(other.sum_), sum2_(other.sum2_) {} unsigned int n() const { return n_; } double sum() const { return sum_; } diff --git a/SimDataFormats/GeneratorProducts/interface/GenRunInfoProduct.h b/SimDataFormats/GeneratorProducts/interface/GenRunInfoProduct.h index a96e96fa425ab..9bb7eeb2e4632 100644 --- a/SimDataFormats/GeneratorProducts/interface/GenRunInfoProduct.h +++ b/SimDataFormats/GeneratorProducts/interface/GenRunInfoProduct.h @@ -12,7 +12,6 @@ class GenRunInfoProduct { // constructors, destructors GenRunInfoProduct(); - GenRunInfoProduct(const GenRunInfoProduct &other); // getters @@ -33,7 +32,6 @@ class GenRunInfoProduct { public: XSec() : value_(-1.), error_(-1.) {} XSec(double value, double error = -1.) : value_(value), error_(error) {} - XSec(const XSec &other) : value_(other.value_), error_(other.error_) {} double value() const { return value_; } double error() const { return error_; } diff --git a/SimDataFormats/GeneratorProducts/src/GenFilterInfo.cc b/SimDataFormats/GeneratorProducts/src/GenFilterInfo.cc index ba61cc5e0d8de..aaff9e0c00e85 100644 --- a/SimDataFormats/GeneratorProducts/src/GenFilterInfo.cc +++ b/SimDataFormats/GeneratorProducts/src/GenFilterInfo.cc @@ -46,15 +46,6 @@ GenFilterInfo::GenFilterInfo(unsigned int passp, sumTotalWeights_(totalw), sumTotalWeights2_(totalw2) {} -GenFilterInfo::GenFilterInfo(const GenFilterInfo& other) - : numPassPositiveEvents_(other.numPassPositiveEvents_), - numPassNegativeEvents_(other.numPassNegativeEvents_), - numTotalPositiveEvents_(other.numTotalPositiveEvents_), - numTotalNegativeEvents_(other.numTotalNegativeEvents_), - sumPassWeights_(other.sumPassWeights_), - sumPassWeights2_(other.sumPassWeights2_), - sumTotalWeights_(other.sumTotalWeights_), - sumTotalWeights2_(other.sumTotalWeights2_) {} GenFilterInfo::~GenFilterInfo() {} diff --git a/SimDataFormats/GeneratorProducts/src/GenLumiInfoProduct.cc b/SimDataFormats/GeneratorProducts/src/GenLumiInfoProduct.cc index 543a7b33d27ad..69b9700aecf92 100644 --- a/SimDataFormats/GeneratorProducts/src/GenLumiInfoProduct.cc +++ b/SimDataFormats/GeneratorProducts/src/GenLumiInfoProduct.cc @@ -71,9 +71,6 @@ GenLumiInfoProduct::GenLumiInfoProduct() : hepidwtup_(-1) { internalProcesses_.c GenLumiInfoProduct::GenLumiInfoProduct(const int id) : hepidwtup_(id) { internalProcesses_.clear(); } -GenLumiInfoProduct::GenLumiInfoProduct(GenLumiInfoProduct const& other) - : hepidwtup_(other.hepidwtup_), internalProcesses_(other.internalProcesses_) {} - GenLumiInfoProduct::~GenLumiInfoProduct() {} bool GenLumiInfoProduct::mergeProduct(GenLumiInfoProduct const& other) { diff --git a/SimDataFormats/GeneratorProducts/src/GenRunInfoProduct.cc b/SimDataFormats/GeneratorProducts/src/GenRunInfoProduct.cc index f675e7f3406bb..bfc45ca649cf2 100644 --- a/SimDataFormats/GeneratorProducts/src/GenRunInfoProduct.cc +++ b/SimDataFormats/GeneratorProducts/src/GenRunInfoProduct.cc @@ -10,12 +10,6 @@ using namespace std; GenRunInfoProduct::GenRunInfoProduct() : externalFilterEfficiency_(-1.) {} -GenRunInfoProduct::GenRunInfoProduct(GenRunInfoProduct const &other) - : internalXSec_(other.internalXSec_), - externalXSecLO_(other.externalXSecLO_), - externalXSecNLO_(other.externalXSecNLO_), - externalFilterEfficiency_(other.externalFilterEfficiency_) {} - bool GenRunInfoProduct::isProductEqual(GenRunInfoProduct const &other) const { bool result = externalXSecLO_ == other.externalXSecLO_ && externalXSecNLO_ == other.externalXSecNLO_ && externalFilterEfficiency_ == other.externalFilterEfficiency_; diff --git a/SimDataFormats/GeneratorProducts/src/classes_def.xml b/SimDataFormats/GeneratorProducts/src/classes_def.xml index d90af6a9d19ba..196789071d14f 100644 --- a/SimDataFormats/GeneratorProducts/src/classes_def.xml +++ b/SimDataFormats/GeneratorProducts/src/classes_def.xml @@ -102,7 +102,6 @@ - @@ -174,7 +173,7 @@ - + @@ -217,7 +216,7 @@ - + From 924ab10b1418e9bf55bc1d9ade91d70997047cd0 Mon Sep 17 00:00:00 2001 From: Shahzad Malik Muzaffar Date: Mon, 27 Nov 2023 18:13:13 +0100 Subject: [PATCH 040/281] apply code format --- SimDataFormats/GeneratorProducts/src/GenFilterInfo.cc | 1 - 1 file changed, 1 deletion(-) diff --git a/SimDataFormats/GeneratorProducts/src/GenFilterInfo.cc b/SimDataFormats/GeneratorProducts/src/GenFilterInfo.cc index aaff9e0c00e85..1b2f3e30a6419 100644 --- a/SimDataFormats/GeneratorProducts/src/GenFilterInfo.cc +++ b/SimDataFormats/GeneratorProducts/src/GenFilterInfo.cc @@ -46,7 +46,6 @@ GenFilterInfo::GenFilterInfo(unsigned int passp, sumTotalWeights_(totalw), sumTotalWeights2_(totalw2) {} - GenFilterInfo::~GenFilterInfo() {} bool GenFilterInfo::mergeProduct(GenFilterInfo const& other) { From c0504e0cf6b922ccbb6bde77a073645fd0a21ccb Mon Sep 17 00:00:00 2001 From: Ivan Razumov Date: Tue, 28 Nov 2023 11:00:31 +0100 Subject: [PATCH 041/281] Add new test for pytorch --- .../PythonAnalysis/test/BuildFile.xml | 5 ++ .../test/time_serie_prediction.cpp | 52 +++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp diff --git a/PhysicsTools/PythonAnalysis/test/BuildFile.xml b/PhysicsTools/PythonAnalysis/test/BuildFile.xml index d8dcf1048356c..fa35e3eed1846 100644 --- a/PhysicsTools/PythonAnalysis/test/BuildFile.xml +++ b/PhysicsTools/PythonAnalysis/test/BuildFile.xml @@ -146,3 +146,8 @@ + + + + + diff --git a/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp b/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp new file mode 100644 index 0000000000000..04ced75df46a3 --- /dev/null +++ b/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp @@ -0,0 +1,52 @@ +#include + +template +void pretty_print(const std::string& info, T&& data) { + std::cout << info << std::endl; + std::cout << data << std::endl << std::endl; +} + +int main(int /*argc*/, char* /*argv*/[]) { + // Use GPU when present, CPU otherwise. + torch::Device device(torch::kCPU); + if (torch::cuda::is_available()) { + device = torch::Device(torch::kCUDA); + std::cout << "CUDA is available! Training on GPU." << std::endl; + } + + const size_t kSequenceLen = 1; + const size_t kInputDim = 1; + const size_t kHiddenDim = 5; + const size_t kOuputDim = 1; + auto time_serie_detector = torch::nn::LSTM(torch::nn::LSTMOptions(kInputDim, kHiddenDim) + .dropout(0.2) + .layers(kSequenceLen) + .bidirectional(false)); + time_serie_detector->to(device); + std::cout << time_serie_detector << std::endl; + + torch::Tensor input = torch::empty({kSequenceLen, kInputDim}); + torch::Tensor state = torch::zeros({2, kSequenceLen, kHiddenDim}); + auto input_acc = input.accessor(); + size_t count = 0; + for (float i = 0.1; i < 0.4; i += 0.1) { + input_acc[count][0] = i; + count++; + } + input = input.toBackend(c10::Backend::CUDA); + state = state.toBackend(c10::Backend::CUDA); + std::cout << "input = " << input << std::endl; + time_serie_detector->zero_grad(); + + auto i_tmp = input.view({input.size(0), 1, -1}); + auto s_tmp = state.view({2, state.size(0) / 2, 1, -1}); + + pretty_print("input: ", i_tmp); + pretty_print("state: ", s_tmp); + + auto rnn_output = time_serie_detector->forward(i_tmp, s_tmp); + pretty_print("rnn_output/output: ", rnn_output.output); + pretty_print("rnn_output/state: ", rnn_output.state); + + return 0; +} From fc36f99445f844d01bbc9fd8337591ba6136b5ed Mon Sep 17 00:00:00 2001 From: Ivan Razumov Date: Tue, 28 Nov 2023 11:13:02 +0100 Subject: [PATCH 042/281] Code-format --- PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp b/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp index 04ced75df46a3..61f821afd8dad 100644 --- a/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp +++ b/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp @@ -18,10 +18,8 @@ int main(int /*argc*/, char* /*argv*/[]) { const size_t kInputDim = 1; const size_t kHiddenDim = 5; const size_t kOuputDim = 1; - auto time_serie_detector = torch::nn::LSTM(torch::nn::LSTMOptions(kInputDim, kHiddenDim) - .dropout(0.2) - .layers(kSequenceLen) - .bidirectional(false)); + auto time_serie_detector = torch::nn::LSTM( + torch::nn::LSTMOptions(kInputDim, kHiddenDim).dropout(0.2).layers(kSequenceLen).bidirectional(false)); time_serie_detector->to(device); std::cout << time_serie_detector << std::endl; From 802b29905aa2d15d3b25d040fb503808d2f3ebaa Mon Sep 17 00:00:00 2001 From: Shahzad Malik Muzaffar Date: Tue, 28 Nov 2023 16:19:25 +0100 Subject: [PATCH 043/281] Revert auto_ptr change for root dict --- SimDataFormats/GeneratorProducts/src/classes_def.xml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/SimDataFormats/GeneratorProducts/src/classes_def.xml b/SimDataFormats/GeneratorProducts/src/classes_def.xml index 196789071d14f..d90af6a9d19ba 100644 --- a/SimDataFormats/GeneratorProducts/src/classes_def.xml +++ b/SimDataFormats/GeneratorProducts/src/classes_def.xml @@ -102,6 +102,7 @@ + @@ -173,7 +174,7 @@ - + @@ -216,7 +217,7 @@ - + From 2f1a7c52c5e5f921c9f45ebc3790ce4e2c64cb82 Mon Sep 17 00:00:00 2001 From: matteo Date: Tue, 28 Nov 2023 17:49:39 +0100 Subject: [PATCH 044/281] =?UTF-8?q?Added=20Aa=C3=83=C3=B2ll=20sums=20and?= =?UTF-8?q?=20moved=20conversion=20scripts=20to=20L1TScouting?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../L1Scouting/interface/L1ScoutingCalo.h | 244 +++++++++++------- .../L1Scouting/interface/L1ScoutingMuon.h | 50 ++-- .../L1Scouting/interface/OrbitCollection.h | 7 +- EventFilter/L1ScoutingRawToDigi/BuildFile.xml | 1 + .../L1ScoutingRawToDigi/interface/blocks.h | 15 +- .../L1ScoutingRawToDigi/plugins/BuildFile.xml | 21 +- .../plugins/ScCALORawToDigi.cc | 183 ++++++------- .../plugins/ScCALORawToDigi.h | 5 +- .../plugins/ScGMTRawToDigi.cc | 11 +- .../plugins/ScGMTRawToDigi.h | 3 +- .../test/testScoutingRun3_daqsource.py | 128 --------- .../test/testScoutingRun3_unpackers.py | 10 +- .../Utilities}/interface/conversion.h | 10 +- .../Utilities/interface/printScObjects.h | 20 ++ .../Utilities}/interface/scales.h | 8 +- .../Utilities/plugins/BuildFile.xml | 17 +- .../Utilities/plugins/DumpScObjects.cc | 76 +----- .../Utilities/src/printScObjects.cc | 76 ++++++ .../Utilities/test/dumpScObjects.py | 6 +- 19 files changed, 410 insertions(+), 481 deletions(-) delete mode 100644 EventFilter/Utilities/test/testScoutingRun3_daqsource.py rename {EventFilter/L1ScoutingRawToDigi => L1TriggerScouting/Utilities}/interface/conversion.h (79%) create mode 100644 L1TriggerScouting/Utilities/interface/printScObjects.h rename {EventFilter/L1ScoutingRawToDigi => L1TriggerScouting/Utilities}/interface/scales.h (76%) create mode 100644 L1TriggerScouting/Utilities/src/printScObjects.cc diff --git a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h index 61f6f8cc1a2d3..994bfa1fb2246 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h @@ -48,15 +48,15 @@ namespace l1ScoutingRun3 { swap(hwIso_, other.hwIso_); } - inline void setHwEt(int hwEt) { hwEt_= hwEt;} - inline void setHwEta(int hwEta) { hwEta_= hwEta;} - inline void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} - inline void setHwIso(int hwIso) { hwIso_= hwIso;} + void setHwEt(int hwEt) { hwEt_= hwEt;} + void setHwEta(int hwEta) { hwEta_= hwEta;} + void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} + void setHwIso(int hwIso) { hwIso_= hwIso;} - inline int hwEt() const {return hwEt_;} - inline int hwEta() const {return hwEta_;} - inline int hwPhi() const {return hwPhi_;} - inline int hwIso() const {return hwIso_;} + int hwEt() const {return hwEt_;} + int hwEta() const {return hwEta_;} + int hwPhi() const {return hwPhi_;} + int hwIso() const {return hwIso_;} private: int hwEt_; @@ -78,8 +78,8 @@ namespace l1ScoutingRun3 { : ScCaloObject(hwEt, hwEta ,hwPhi , hwQual) {} // store quality instead of iso - inline void setHwQual(int hwQual) { setHwIso(hwQual);} - inline int hwQual() const {return hwIso();} + void setHwQual(int hwQual) { setHwIso(hwQual);} + int hwQual() const {return hwIso();} }; @@ -135,13 +135,13 @@ namespace l1ScoutingRun3 { swap(type_, other.type_); } - inline void setHwEt(int hwEt) { hwEt_= hwEt;} - inline void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} - inline void setType(l1t::EtSum::EtSumType type) { type_= type;} + void setHwEt(int hwEt) { hwEt_= hwEt;} + void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} + void setType(l1t::EtSum::EtSumType type) { type_= type;} - inline int hwEt() const {return hwEt_;} - inline int hwPhi() const {return hwPhi_;} - inline l1t::EtSum::EtSumType type() const {return type_;} + int hwEt() const {return hwEt_;} + int hwPhi() const {return hwPhi_;} + l1t::EtSum::EtSumType type() const {return type_;} private: int hwEt_; @@ -153,29 +153,73 @@ namespace l1ScoutingRun3 { public: ScBxSums() - : hwTotalEt_(0), hwTotalEtEm_(0), minBiasHFP0_(0), - hwTotalHt_(0), towerCount_(0), minBiasHFM0_(0), - hwMissEt_(0), hwMissEtPhi_(0), hwAsymEt_(0), minBiasHFP1_(0), - hwMissHt_(0), hwMissHtPhi_(0), hwAsymHt_(0), minBiasHFM1_(0), - hwMissEtHF_(0), hwMissEtHFPhi_(0), hwAsymEtHF_(0), - hwMissHtHF_(0), hwMissHtHFPhi_(0), hwAsymHtHF_(0), centrality_(0) + : hwTotalEt_(0), + hwTotalEtEm_(0), + hwTotalHt_(0), + hwMissEt_(0), + hwMissEtPhi_(0), + hwMissHt_(0), + hwMissHtPhi_(0), + hwMissEtHF_(0), + hwMissEtHFPhi_(0), + hwMissHtHF_(0), + hwMissHtHFPhi_(0), + hwAsymEt_(0), + hwAsymHt_(0), + hwAsymEtHF_(0), + hwAsymHtHF_(0), + minBiasHFP0_(0), + minBiasHFM0_(0), + minBiasHFP1_(0), + minBiasHFM1_(0), + towerCount_(0), + centrality_(0) {} ScBxSums( - int hwTotalEt, int hwTotalEtEm, int minBiasHFP0, - int hwTotalHt, int towerCount, int minBiasHFM0, - int hwMissEt, int hwMissEtPhi, int hwAsymEt, int minBiasHFP1, - int hwMissHt, int hwMissHtPhi, int hwAsymHt, int minBiasHFM1, - int hwMissEtHF, int hwMissEtHFPhi, int hwAsymEtHF, - int hwMissHtHF, int hwMissHtHFPhi, int hwAsymHtHF, int centrality + int hwTotalEt, + int hwTotalEtEm, + int hwTotalHt, + int hwMissEt, + int hwMissEtPhi, + int hwMissHt, + int hwMissHtPhi, + int hwMissEtHF, + int hwMissEtHFPhi, + int hwMissHtHF, + int hwMissHtHFPhi, + int hwAsymEt, + int hwAsymHt, + int hwAsymEtHF, + int hwAsymHtHF, + int minBiasHFP0, + int minBiasHFM0, + int minBiasHFP1, + int minBiasHFM1, + int towerCount, + int centrality ) - : hwTotalEt_(hwTotalEt), hwTotalEtEm_(hwTotalEtEm), minBiasHFP0_(minBiasHFP0), - hwTotalHt_(hwTotalHt), towerCount_(towerCount), minBiasHFM0_(minBiasHFM0), - hwMissEt_(hwMissEt), hwMissEtPhi_(hwMissEtPhi), hwAsymEt_(hwAsymEt), - minBiasHFP1_(minBiasHFP1), hwMissHt_(hwMissHt), hwMissHtPhi_(hwMissHtPhi), - hwAsymHt_(hwAsymHt), minBiasHFM1_(minBiasHFM1), hwMissEtHF_(hwMissEtHF), - hwMissEtHFPhi_(hwMissEtHFPhi), hwAsymEtHF_(hwAsymEtHF), hwMissHtHF_(hwMissHtHF), - hwMissHtHFPhi_(hwMissHtHFPhi), hwAsymHtHF_(hwAsymHtHF), centrality_(centrality) + : hwTotalEt_(hwTotalEt), + hwTotalEtEm_(hwTotalEtEm), + hwTotalHt_(hwTotalHt), + hwMissEt_(hwMissEt), + hwMissEtPhi_(hwMissEtPhi), + hwMissHt_(hwMissHt), + hwMissHtPhi_(hwMissHtPhi), + hwMissEtHF_(hwMissEtHF), + hwMissEtHFPhi_(hwMissEtHFPhi), + hwMissHtHF_(hwMissHtHF), + hwMissHtHFPhi_(hwMissHtHFPhi), + hwAsymEt_(hwAsymEt), + hwAsymHt_(hwAsymHt), + hwAsymEtHF_(hwAsymEtHF), + hwAsymHtHF_(hwAsymHtHF), + minBiasHFP0_(minBiasHFP0), + minBiasHFM0_(minBiasHFM0), + minBiasHFP1_(minBiasHFP1), + minBiasHFM1_(minBiasHFM1), + towerCount_(towerCount), + centrality_(centrality) {} ScBxSums(const ScBxSums& other) = default; @@ -187,79 +231,93 @@ namespace l1ScoutingRun3 { using std::swap; swap(hwTotalEt_, other.hwTotalEt_); swap(hwTotalEtEm_, other.hwTotalEtEm_); - swap(minBiasHFP0_, other.minBiasHFP0_); swap(hwTotalHt_, other.hwTotalHt_); - swap(towerCount_, other.towerCount_); - swap(minBiasHFM0_, other.minBiasHFM0_); swap(hwMissEt_, other.hwMissEt_); swap(hwMissEtPhi_, other.hwMissEtPhi_); - swap(hwAsymEt_, other.hwAsymEt_); - swap(minBiasHFP1_, other.minBiasHFP1_); swap(hwMissHt_, other.hwMissHt_); swap(hwMissHtPhi_, other.hwMissHtPhi_); - swap(hwAsymHt_, other.hwAsymHt_); - swap(minBiasHFM1_, other.minBiasHFM1_); swap(hwMissEtHF_, other.hwMissEtHF_); swap(hwMissEtHFPhi_, other.hwMissEtHFPhi_); - swap(hwAsymEtHF_, other.hwAsymEtHF_); swap(hwMissHtHF_, other.hwMissHtHF_); swap(hwMissHtHFPhi_, other.hwMissHtHFPhi_); + swap(hwAsymEt_, other.hwAsymEt_); + swap(hwAsymHt_, other.hwAsymHt_); + swap(hwAsymEtHF_, other.hwAsymEtHF_); swap(hwAsymHtHF_, other.hwAsymHtHF_); + swap(minBiasHFP0_, other.minBiasHFP0_); + swap(minBiasHFM0_, other.minBiasHFM0_); + swap(minBiasHFP1_, other.minBiasHFP1_); + swap(minBiasHFM1_, other.minBiasHFM1_); + swap(towerCount_, other.towerCount_); swap(centrality_, other.centrality_); - } - inline void setHwTotalEt(int hwTotalEt) {hwTotalEt_ = hwTotalEt;} - inline void setHwTotalEtEm(int hwTotalEtEm) {hwTotalEtEm_ = hwTotalEtEm;} - inline void setMinBiasHFP0(int minBiasHFP0) {minBiasHFP0_ = minBiasHFP0;} - inline void setHwTotalHt(int hwTotalHt) {hwTotalHt_ = hwTotalHt;} - inline void setTowerCount(int towerCount) {towerCount_ = towerCount;} - inline void setMinBiasHFM0(int minBiasHFM0) {minBiasHFM0_ = minBiasHFM0;} - inline void setHwMissEt(int hwMissEt) {hwMissEt_ = hwMissEt;} - inline void setHwMissEtPhi(int hwMissEtPhi) {hwMissEtPhi_ = hwMissEtPhi;} - inline void setHwAsymEt(int hwAsymEt) {hwAsymEt_ = hwAsymEt;} - inline void setMinBiasHFP1(int minBiasHFP1) {minBiasHFP1_ = minBiasHFP1;} - inline void setHwMissHt(int hwMissHt) {hwMissHt_ = hwMissHt;} - inline void setHwMissHtPhi(int hwMissHtPhi) {hwMissHtPhi_ = hwMissHtPhi;} - inline void setHwAsymHt(int hwAsymHt) {hwAsymHt_ = hwAsymHt;} - inline void setMinBiasHFM1(int minBiasHFM1) {minBiasHFM1_ = minBiasHFM1;} - inline void setHwMissEtHF(int hwMissEtHF) {hwMissEtHF_ = hwMissEtHF;} - inline void setHwMissEtHFPhi(int hwMissEtHFPhi) {hwMissEtHFPhi_ = hwMissEtHFPhi;} - inline void setHwAsymEtHF(int hwAsymEtHF) {hwAsymEtHF_ = hwAsymEtHF;} - inline void setHwMissHtHF(int hwMissHtHF) {hwMissHtHF_ = hwMissHtHF;} - inline void setHwMissHtHFPhi(int hwMissHtHFPhi) {hwMissHtHFPhi_ = hwMissHtHFPhi;} - inline void setHwAsymHtHF(int hwAsymHtHF) {hwAsymHtHF_ = hwAsymHtHF;} - inline void setCentrality(int centrality) {centrality_ = centrality;} - - const int hwTotalEt() { return hwTotalEt_;} - const int hwTotalEtEm() { return hwTotalEtEm_;} - const int minBiasHFP0() { return minBiasHFP0_;} - const int hwTotalHt() { return hwTotalHt_;} - const int towerCount() { return towerCount_;} - const int minBiasHFM0() { return minBiasHFM0_;} - const int hwMissEt() { return hwMissEt_;} - const int hwMissEtPhi() { return hwMissEtPhi_;} - const int hwAsymEt() { return hwAsymEt_;} - const int minBiasHFP1() { return minBiasHFP1_;} - const int hwMissHt() { return hwMissHt_;} - const int hwMissHtPhi() { return hwMissHtPhi_;} - const int hwAsymHt() { return hwAsymHt_;} - const int minBiasHFM1() { return minBiasHFM1_;} - const int hwMissEtHF() { return hwMissEtHF_;} - const int hwMissEtHFPhi() { return hwMissEtHFPhi_;} - const int hwAsymEtHF() { return hwAsymEtHF_;} - const int hwMissHtHF() { return hwMissHtHF_;} - const int hwMissHtHFPhi() { return hwMissHtHFPhi_;} - const int hwAsymHtHF() { return hwAsymHtHF_;} - const int centrality() { return centrality_;} + void setHwTotalEt(int hwTotalEt) {hwTotalEt_ = hwTotalEt;} + void setHwTotalEtEm(int hwTotalEtEm) {hwTotalEtEm_ = hwTotalEtEm;} + void setMinBiasHFP0(int minBiasHFP0) {minBiasHFP0_ = minBiasHFP0;} + void setHwTotalHt(int hwTotalHt) {hwTotalHt_ = hwTotalHt;} + void setTowerCount(int towerCount) {towerCount_ = towerCount;} + void setMinBiasHFM0(int minBiasHFM0) {minBiasHFM0_ = minBiasHFM0;} + void setHwMissEt(int hwMissEt) {hwMissEt_ = hwMissEt;} + void setHwMissEtPhi(int hwMissEtPhi) {hwMissEtPhi_ = hwMissEtPhi;} + void setHwAsymEt(int hwAsymEt) {hwAsymEt_ = hwAsymEt;} + void setMinBiasHFP1(int minBiasHFP1) {minBiasHFP1_ = minBiasHFP1;} + void setHwMissHt(int hwMissHt) {hwMissHt_ = hwMissHt;} + void setHwMissHtPhi(int hwMissHtPhi) {hwMissHtPhi_ = hwMissHtPhi;} + void setHwAsymHt(int hwAsymHt) {hwAsymHt_ = hwAsymHt;} + void setMinBiasHFM1(int minBiasHFM1) {minBiasHFM1_ = minBiasHFM1;} + void setHwMissEtHF(int hwMissEtHF) {hwMissEtHF_ = hwMissEtHF;} + void setHwMissEtHFPhi(int hwMissEtHFPhi) {hwMissEtHFPhi_ = hwMissEtHFPhi;} + void setHwAsymEtHF(int hwAsymEtHF) {hwAsymEtHF_ = hwAsymEtHF;} + void setHwMissHtHF(int hwMissHtHF) {hwMissHtHF_ = hwMissHtHF;} + void setHwMissHtHFPhi(int hwMissHtHFPhi) {hwMissHtHFPhi_ = hwMissHtHFPhi;} + void setHwAsymHtHF(int hwAsymHtHF) {hwAsymHtHF_ = hwAsymHtHF;} + void setCentrality(int centrality) {centrality_ = centrality;} + + const int hwTotalEt() const { return hwTotalEt_;} + const int hwTotalEtEm() const { return hwTotalEtEm_;} + const int minBiasHFP0() const { return minBiasHFP0_;} + const int hwTotalHt() const { return hwTotalHt_;} + const int towerCount() const { return towerCount_;} + const int minBiasHFM0() const { return minBiasHFM0_;} + const int hwMissEt() const { return hwMissEt_;} + const int hwMissEtPhi() const { return hwMissEtPhi_;} + const int hwAsymEt() const { return hwAsymEt_;} + const int minBiasHFP1() const { return minBiasHFP1_;} + const int hwMissHt() const { return hwMissHt_;} + const int hwMissHtPhi() const { return hwMissHtPhi_;} + const int hwAsymHt() const { return hwAsymHt_;} + const int minBiasHFM1() const { return minBiasHFM1_;} + const int hwMissEtHF() const { return hwMissEtHF_;} + const int hwMissEtHFPhi() const { return hwMissEtHFPhi_;} + const int hwAsymEtHF() const { return hwAsymEtHF_;} + const int hwMissHtHF() const { return hwMissHtHF_;} + const int hwMissHtHFPhi() const { return hwMissHtHFPhi_;} + const int hwAsymHtHF() const { return hwAsymHtHF_;} + const int centrality() const { return centrality_;} private: - int hwTotalEt_, hwTotalEtEm_, minBiasHFP0_; // sums from ET block - int hwTotalHt_, towerCount_, minBiasHFM0_; // sums from HT block - int hwMissEt_, hwMissEtPhi_, hwAsymEt_, minBiasHFP1_; // sums from EtMiss block - int hwMissHt_, hwMissHtPhi_, hwAsymHt_, minBiasHFM1_; // sums from HTMiss block - int hwMissEtHF_, hwMissEtHFPhi_, hwAsymEtHF_; // sums from ETHFMiss block - int hwMissHtHF_, hwMissHtHFPhi_, hwAsymHtHF_, centrality_; // sums from HTHFMiss block + int hwTotalEt_; + int hwTotalEtEm_; + int hwTotalHt_; + int hwMissEt_; + int hwMissEtPhi_; + int hwMissHt_; + int hwMissHtPhi_; + int hwMissEtHF_; + int hwMissEtHFPhi_; + int hwMissHtHF_; + int hwMissHtHFPhi_; + int hwAsymEt_; + int hwAsymHt_; + int hwAsymEtHF_; + int hwAsymHtHF_; + int minBiasHFP0_; + int minBiasHFM0_; + int minBiasHFP1_; + int minBiasHFM1_; + int towerCount_; + int centrality_; }; } // namespace l1ScoutingRun3 diff --git a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h index b679b0d6edc03..61bb5a1916cec 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h @@ -71,32 +71,32 @@ namespace l1ScoutingRun3 { swap(hwDXY_, other.hwDXY_); } - inline void setHwPt(int hwPt) { hwPt_= hwPt;} - inline void setHwEta(int hwEta) { hwEta_= hwEta;} - inline void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} - inline void setHwQual(int hwQual) { hwQual_= hwQual;} - inline void setHwChrg(int hwChrg) { hwChrg_= hwChrg;} - inline void setHwChrgv(int hwChrgv) { hwChrgv_= hwChrgv;} - inline void setHwIso(int hwIso) { hwIso_= hwIso;} - inline void setTfIndex(int tfIndex) { tfIndex_= tfIndex;} - inline void setHwEtaAtVtx(int hwEtaAtVtx) { hwEtaAtVtx_= hwEtaAtVtx;} - inline void setHwPhiAtVtx(int hwPhiAtVtx) { hwPhiAtVtx_= hwPhiAtVtx;} - inline void setHwPtUnconstrained(int hwPtUnconstrained) { hwPtUnconstrained_= hwPtUnconstrained;} - inline void setHwDXY(int hwDXY) { hwDXY_= hwDXY;} + void setHwPt(int hwPt) { hwPt_= hwPt;} + void setHwEta(int hwEta) { hwEta_= hwEta;} + void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} + void setHwQual(int hwQual) { hwQual_= hwQual;} + void setHwChrg(int hwChrg) { hwChrg_= hwChrg;} + void setHwChrgv(int hwChrgv) { hwChrgv_= hwChrgv;} + void setHwIso(int hwIso) { hwIso_= hwIso;} + void setTfIndex(int tfIndex) { tfIndex_= tfIndex;} + void setHwEtaAtVtx(int hwEtaAtVtx) { hwEtaAtVtx_= hwEtaAtVtx;} + void setHwPhiAtVtx(int hwPhiAtVtx) { hwPhiAtVtx_= hwPhiAtVtx;} + void setHwPtUnconstrained(int hwPtUnconstrained) { hwPtUnconstrained_= hwPtUnconstrained;} + void setHwDXY(int hwDXY) { hwDXY_= hwDXY;} - inline int hwPt() const {return hwPt_;} - inline int hwEta() const {return hwEta_;} - inline int hwPhi() const {return hwPhi_;} - inline int hwQual() const {return hwQual_;} - inline int hwCharge() const {return hwChrg_;} - inline int hwChargeValid() const {return hwChrgv_;} - inline int hwIso() const {return hwIso_;} - inline int hwIndex() const {return tfIndex_;} - inline int hwEtaAtVtx() const {return hwEtaAtVtx_;} - inline int hwPhiAtVtx() const {return hwPhiAtVtx_;} - inline int hwPtUnconstrained() const {return hwPtUnconstrained_;} - inline int hwDXY() const {return hwDXY_;} - inline int tfMuonIndex() const {return tfIndex_;} + int hwPt() const {return hwPt_;} + int hwEta() const {return hwEta_;} + int hwPhi() const {return hwPhi_;} + int hwQual() const {return hwQual_;} + int hwCharge() const {return hwChrg_;} + int hwChargeValid() const {return hwChrgv_;} + int hwIso() const {return hwIso_;} + int hwIndex() const {return tfIndex_;} + int hwEtaAtVtx() const {return hwEtaAtVtx_;} + int hwPhiAtVtx() const {return hwPhiAtVtx_;} + int hwPtUnconstrained() const {return hwPtUnconstrained_;} + int hwDXY() const {return hwDXY_;} + int tfMuonIndex() const {return tfIndex_;} private: int hwPt_; diff --git a/DataFormats/L1Scouting/interface/OrbitCollection.h b/DataFormats/L1Scouting/interface/OrbitCollection.h index 8cd0556165fbf..adbf5f8f24515 100644 --- a/DataFormats/L1Scouting/interface/OrbitCollection.h +++ b/DataFormats/L1Scouting/interface/OrbitCollection.h @@ -136,13 +136,12 @@ class OrbitCollection { T& operator[](std::size_t i) { return data_[i]; } const T& operator[](std::size_t i) const { return data_[i]; } - // edm::View support void fillView(edm::ProductID const& id, std::vector& pointers, edm::FillViewHelperVector& helpers) const { edm::detail::reallyFillView(*this, id, pointers, helpers); } - // edm::Ptr support + void setPtr(std::type_info const& toType, unsigned long index, void const*& ptr) const { edm::detail::reallySetPtr >(*this, toType, index, ptr); } @@ -160,7 +159,6 @@ class OrbitCollection { std::vector data_; }; -// edm::View support namespace edm { template inline void fillView(OrbitCollection const& obj, @@ -174,7 +172,6 @@ namespace edm { static bool const value = true; }; } // namespace edm -// edm::Ptr support template inline void setPtr(OrbitCollection const& obj, std::type_info const& toType, unsigned long index, void const*& ptr) { obj.setPtr(toType, index, ptr); @@ -191,6 +188,6 @@ namespace edm { struct has_setPtr > { static bool const value = true; }; -} +} // namespace edm #endif // DataFormats_L1Scouting_OrbitCollection_h \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/BuildFile.xml b/EventFilter/L1ScoutingRawToDigi/BuildFile.xml index 920689c518329..04bc54b4991df 100644 --- a/EventFilter/L1ScoutingRawToDigi/BuildFile.xml +++ b/EventFilter/L1ScoutingRawToDigi/BuildFile.xml @@ -5,6 +5,7 @@ + \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/interface/blocks.h b/EventFilter/L1ScoutingRawToDigi/interface/blocks.h index 79bacd540f71c..9df5b230b4b10 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/blocks.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/blocks.h @@ -2,9 +2,6 @@ #define L1ScoutingRawToDigi_blocks_h #include -#include -#include -#include "scales.h" namespace l1ScoutingRun3 { @@ -31,21 +28,21 @@ namespace demux { uint32_t bx; uint32_t orbit; uint32_t link0; - uint32_t jet1[6]; - uint32_t link1; uint32_t jet2[6]; + uint32_t link1; + uint32_t jet1[6]; uint32_t link2; - uint32_t egamma1[6]; - uint32_t link3; uint32_t egamma2[6]; + uint32_t link3; + uint32_t egamma1[6]; uint32_t link4; uint32_t empty[6]; uint32_t link5; uint32_t sum[6]; uint32_t link6; - uint32_t tau1[6]; - uint32_t link7; uint32_t tau2[6]; + uint32_t link7; + uint32_t tau1[6]; }; } diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/BuildFile.xml b/EventFilter/L1ScoutingRawToDigi/plugins/BuildFile.xml index 32f0b6b906b36..dbb651083a6fb 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/BuildFile.xml +++ b/EventFilter/L1ScoutingRawToDigi/plugins/BuildFile.xml @@ -1,11 +1,10 @@ - - - - - - - - - - - \ No newline at end of file + + + + + + + + + + \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc index 134292e68137d..7cc3df1ef42a0 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc @@ -4,12 +4,12 @@ ScCaloRawToDigi::ScCaloRawToDigi(const edm::ParameterSet& iConfig) { using namespace edm; using namespace l1ScoutingRun3; srcInputTag = iConfig.getParameter("srcInputTag"); + enableAllSums_ = iConfig.getUntrackedParameter("enableAllSums", false); debug_ = iConfig.getUntrackedParameter("debug", false); orbitBufferJets_ = std::vector>(3565); orbitBufferEGammas_ = std::vector>(3565); orbitBufferTaus_ = std::vector>(3565); - // orbitBufferEtSums_ = std::vector>(3565); orbitBufferEtSums_ = std::vector>(3565); nJetsOrbit_=0; nEGammasOrbit_=0; nTausOrbit_=0; nEtSumsOrbit_=0; @@ -17,7 +17,6 @@ ScCaloRawToDigi::ScCaloRawToDigi(const edm::ParameterSet& iConfig) { produces().setBranchAlias( "ScJetOrbitCollection" ); produces().setBranchAlias( "ScTauOrbitCollection" ); produces().setBranchAlias( "ScEGammaOrbitCollection" ); - // produces().setBranchAlias( "ScEtSumOrbitCollection" ); produces().setBranchAlias( "ScBxSumsOrbitCollection" ); rawToken = consumes(srcInputTag); @@ -38,7 +37,6 @@ void ScCaloRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) std::unique_ptr unpackedJets(new ScJetOrbitCollection); std::unique_ptr unpackedTaus(new ScTauOrbitCollection); std::unique_ptr unpackedEGammas(new ScEGammaOrbitCollection); - // std::unique_ptr unpackedEtSums(new ScEtSumOrbitCollection); std::unique_ptr unpackedEtSums(new ScBxSumsOrbitCollection); if((sourceRawData.size()==0) && debug_ ){ @@ -89,7 +87,7 @@ void ScCaloRawToDigi::unpackOrbit( // unpack jets from first link if (debug_) std::cout << "--- Jets link 1 ---\n"; unpackLinkJets(bl->jet1, bx); - + // unpack jets from second link if (debug_) std::cout << "--- Jets link 2 ---\n"; unpackLinkJets(bl->jet2, bx); @@ -97,7 +95,7 @@ void ScCaloRawToDigi::unpackOrbit( // unpack eg from first link if (debug_) std::cout << "--- E/g link 1 ---\n"; unpackLinkEGammas(bl->egamma1, bx); - + // unpack eg from second link link if (debug_) std::cout << "--- E/g link 2 ---\n"; unpackLinkEGammas(bl->egamma2, bx); @@ -105,7 +103,7 @@ void ScCaloRawToDigi::unpackOrbit( // unpack taus from first link if (debug_) std::cout << "--- Taus link 1 ---\n"; unpackLinkTaus(bl->tau1, bx); - + // unpack taus from second link if (debug_) std::cout << "--- Taus link 2 ---\n"; unpackLinkTaus(bl->tau2, bx); @@ -114,7 +112,7 @@ void ScCaloRawToDigi::unpackOrbit( if (debug_) std::cout << "--- Sums ---\n"; unpackEtSums(bl->sum, bx); - } // end of orbit loop + } // end of bx objects } @@ -139,9 +137,7 @@ void ScCaloRawToDigi::unpackLinkJets(uint32_t* dataBlock, int bx){ if (debug_){ std::cout << "Jet " << i << std::endl; std::cout << " Raw: 0x" << std::hex << dataBlock[i] << std::dec << std::endl; - std::cout << " Et [GeV/Hw]: " << demux::fEt(jet.hwEt()) << "/" << jet.hwEt() << "\n"; - std::cout << " Eta [rad/Hw]: " << demux::fEta(jet.hwEta()) << "/" << jet.hwEta() << "\n"; - std::cout << " Phi [rad/Hw]: " << demux::fPhi(jet.hwPhi()) << "/" << jet.hwPhi() << "\n"; + printScJet(jet); } } } // end link jets unpacking loop @@ -167,10 +163,7 @@ void ScCaloRawToDigi::unpackLinkEGammas(uint32_t* dataBlock, int bx){ if (debug_){ std::cout << "E/g " << i << std::endl; std::cout << " Raw: 0x" << std::hex << dataBlock[i] << std::dec << std::endl; - std::cout << " Et [GeV/Hw]: " << demux::fEt(eGamma.hwEt()) << "/" << eGamma.hwEt() << "\n"; - std::cout << " Eta [rad/Hw]: " << demux::fEta(eGamma.hwEta()) << "/" << eGamma.hwEta() << "\n"; - std::cout << " Phi [rad/Hw]: " << demux::fPhi(eGamma.hwPhi()) << "/" << eGamma.hwPhi() << "\n"; - std::cout << " Iso [Hw]: " << eGamma.hwIso() << "\n"; + printScEGamma(eGamma); } } } // end link e/gammas unpacking loop @@ -196,10 +189,7 @@ void ScCaloRawToDigi::unpackLinkTaus(uint32_t* dataBlock, int bx){ if (debug_){ std::cout << "Tau " << i << std::endl; std::cout << " Raw: 0x" << std::hex << dataBlock[i] << std::dec << std::endl; - std::cout << " Et [GeV/Hw]: " << demux::fEt(tau.hwEt()) << "/" << tau.hwEt() << "\n"; - std::cout << " Eta [rad/Hw]: " << demux::fEta(tau.hwEta()) << "/" << tau.hwEta() << "\n"; - std::cout << " Phi [rad/Hw]: " << demux::fPhi(tau.hwPhi()) << "/" << tau.hwPhi() << "\n"; - std::cout << " Iso [Hw]: " << tau.hwIso() << "\n"; + printScTau(tau); } } } // end link taus unpacking loop @@ -217,120 +207,105 @@ void ScCaloRawToDigi::unpackEtSums(uint32_t* dataBlock, int bx){ int32_t ETHFmissEt(0), ETHFmissPhi(0), ETHFmissASYMETHF(0), ETHFmissCENT(0); // ETHFMiss int32_t HTHFmissEt(0), HTHFmissPhi(0), HTHFmissASYMHTHF(0), HTHFmissCENT(0); // HTHFMiss - // ET + // ET block ETEt = ((dataBlock[0] >> demux::shiftsESums::ETEt) & demux::masksESums::ETEt); ETEttem = ((dataBlock[0] >> demux::shiftsESums::ETEttem) & demux::masksESums::ETEttem); - ETMinBiasHFP0 = ((dataBlock[0] >> demux::shiftsESums::ETMinBiasHF) & demux::masksESums::ETMinBiasHF); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETEt, 0, l1t::EtSum::EtSumType::kTotalEt)); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETEttem, 0, l1t::EtSum::EtSumType::kTotalEtEm)); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETMinBiasHFP0, 0, l1t::EtSum::EtSumType::kMinBiasHFP0)); bxSums.setHwTotalEt(ETEt); bxSums.setHwTotalEtEm(ETEttem); - bxSums.setMinBiasHFP0(ETMinBiasHFP0); - // HT + // HT block HTEt = ((dataBlock[1] >> demux::shiftsESums::HTEt) & demux::masksESums::HTEt); - HTtowerCount = ((dataBlock[1] >> demux::shiftsESums::HTtowerCount) & demux::masksESums::HTtowerCount); - HTMinBiasHFM0 = ((dataBlock[1] >> demux::shiftsESums::HTMinBiasHF) & demux::masksESums::HTMinBiasHF); - - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTEt, 0, l1t::EtSum::EtSumType::kTotalHt)); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTtowerCount, 0, l1t::EtSum::EtSumType::kTowerCount)); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTMinBiasHFM0, 0, l1t::EtSum::EtSumType::kMinBiasHFM0)); - + bxSums.setHwTotalHt(HTEt); - bxSums.setTowerCount(HTtowerCount); - bxSums.setMinBiasHFM0(HTMinBiasHFM0); - // ETMiss + // ETMiss block ETmissEt = ((dataBlock[2] >> demux::shiftsESums::ETmissEt) & demux::masksESums::ETmissEt); ETmissPhi = ((dataBlock[2] >> demux::shiftsESums::ETmissPhi) & demux::masksESums::ETmissPhi); - ETmissASYMET = ((dataBlock[2] >> demux::shiftsESums::ETmissASYMET) & demux::masksESums::ETmissASYMET); - ETmissMinBiasHFP1 = ((dataBlock[2] >> demux::shiftsESums::ETmissMinBiasHF) & demux::masksESums::ETmissMinBiasHF); - - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETmissEt, ETmissPhi, l1t::EtSum::EtSumType::kMissingEt)); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETmissASYMET, 0, l1t::EtSum::EtSumType::kAsymEt)); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETmissMinBiasHFP1, 0, l1t::EtSum::EtSumType::kMinBiasHFP1)); - - bxSums.setHwMissEt(ETmissEt); - bxSums.setHwMissEtPhi(ETmissPhi); - bxSums.setHwAsymEt(ETmissASYMET); - bxSums.setMinBiasHFP1(ETmissMinBiasHFP1); - // HTMiss + if (ETmissEt>0){ + bxSums.setHwMissEt(ETmissEt); + bxSums.setHwMissEtPhi(ETmissPhi); + } + + // HTMiss block HTmissEt = ((dataBlock[3] >> demux::shiftsESums::HTmissEt) & demux::masksESums::HTmissEt); HTmissPhi = ((dataBlock[3] >> demux::shiftsESums::HTmissPhi) & demux::masksESums::HTmissPhi); - HTmissASYMHT = ((dataBlock[3] >> demux::shiftsESums::HTmissASYMHT) & demux::masksESums::HTmissASYMHT); - HTmissMinBiasHFM1 = ((dataBlock[3] >> demux::shiftsESums::HTmissMinBiasHF) & demux::masksESums::HTmissMinBiasHF); + + if (HTmissEt>0){ + bxSums.setHwMissHt(HTmissEt); + bxSums.setHwMissHtPhi(HTmissPhi); + } + + // ETHFMiss block + ETHFmissEt = ((dataBlock[4] >> demux::shiftsESums::ETHFmissEt) & demux::masksESums::ETHFmissEt); + ETHFmissPhi = ((dataBlock[4] >> demux::shiftsESums::ETHFmissPhi) & demux::masksESums::ETHFmissPhi); + + if (ETHFmissEt>0){ + bxSums.setHwMissEtHF(ETHFmissEt); + bxSums.setHwMissEtHFPhi(ETHFmissPhi); + } - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTmissEt, HTmissPhi, l1t::EtSum::EtSumType::kMissingHt)); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTmissASYMHT, 0, l1t::EtSum::EtSumType::kAsymHt)); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTmissMinBiasHFM1, 0, l1t::EtSum::EtSumType::kMinBiasHFM1)); + // HTHFMiss block + HTHFmissEt = ((dataBlock[5] >> demux::shiftsESums::ETHFmissEt) & demux::masksESums::ETHFmissEt); + HTHFmissPhi = ((dataBlock[5] >> demux::shiftsESums::ETHFmissPhi) & demux::masksESums::ETHFmissPhi); - std::cout << "BX " << bx << ", Frame 3: " << std::endl; - std::cout << " Raw: 0x" << std::hex << dataBlock[3] << std::dec << "\n" - << " MHTEt: " << HTmissEt << ", MHTEt PHI: " << HTmissPhi << std::endl; + if (HTHFmissEt>0) { + bxSums.setHwMissHtHF(HTHFmissEt); + bxSums.setHwMissHtHFPhi(HTHFmissPhi); + } - bxSums.setHwMissHt(HTmissEt); - bxSums.setHwMissHtPhi(HTmissPhi); - bxSums.setHwAsymHt(HTmissASYMHT); - bxSums.setMinBiasHFM1(HTmissMinBiasHFM1); + // Insert additional sums + if (enableAllSums_) { - // ETHFMiss - ETHFmissEt = ((dataBlock[4] >> demux::shiftsESums::ETHFmissEt) & demux::masksESums::ETHFmissEt); - ETHFmissPhi = ((dataBlock[4] >> demux::shiftsESums::ETHFmissPhi) & demux::masksESums::ETHFmissPhi); - ETHFmissASYMETHF = ((dataBlock[4] >> demux::shiftsESums::ETHFmissASYMETHF) & demux::masksESums::ETHFmissASYMETHF); - ETHFmissCENT = ((dataBlock[4] >> demux::shiftsESums::ETHFmissCENT) & demux::masksESums::ETHFmissCENT); + // ET block + ETMinBiasHFP0 = ((dataBlock[0] >> demux::shiftsESums::ETMinBiasHF) & demux::masksESums::ETMinBiasHF); + bxSums.setMinBiasHFP0(ETMinBiasHFP0); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETHFmissEt, ETHFmissPhi, l1t::EtSum::EtSumType::kMissingEtHF)); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(ETHFmissASYMETHF, 0, l1t::EtSum::EtSumType::kAsymEtHF)); + // HT block + HTtowerCount = ((dataBlock[1] >> demux::shiftsESums::HTtowerCount) & demux::masksESums::HTtowerCount); + HTMinBiasHFM0 = ((dataBlock[1] >> demux::shiftsESums::HTMinBiasHF) & demux::masksESums::HTMinBiasHF); - bxSums.setHwMissEtHF(ETHFmissEt); - bxSums.setHwMissEtHFPhi(ETHFmissPhi); - bxSums.setHwAsymEtHF(ETHFmissASYMETHF); + bxSums.setTowerCount(HTtowerCount); + bxSums.setMinBiasHFM0(HTMinBiasHFM0); - // HTHFMiss - HTHFmissEt = ((dataBlock[5] >> demux::shiftsESums::ETHFmissEt) & demux::masksESums::ETHFmissEt); - HTHFmissPhi = ((dataBlock[5] >> demux::shiftsESums::ETHFmissPhi) & demux::masksESums::ETHFmissPhi); - HTHFmissASYMHTHF = ((dataBlock[5] >> demux::shiftsESums::ETHFmissASYMETHF) & demux::masksESums::ETHFmissASYMETHF); - HTHFmissCENT = ((dataBlock[5] >> demux::shiftsESums::ETHFmissCENT) & demux::masksESums::ETHFmissCENT); + // ET Miss block + ETmissASYMET = ((dataBlock[2] >> demux::shiftsESums::ETmissASYMET) & demux::masksESums::ETmissASYMET); + ETmissMinBiasHFP1 = ((dataBlock[2] >> demux::shiftsESums::ETmissMinBiasHF) & demux::masksESums::ETmissMinBiasHF); + bxSums.setHwAsymEt(ETmissASYMET); + bxSums.setMinBiasHFP1(ETmissMinBiasHFP1); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTHFmissEt, HTHFmissPhi, l1t::EtSum::EtSumType::kMissingHtHF)); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum(HTHFmissASYMHTHF, 0, l1t::EtSum::EtSumType::kAsymHtHF)); - // orbitBufferEtSums_[bx].emplace_back(ScEtSum((HTHFmissCENT<<4) + ETHFmissCENT, 0, l1t::EtSum::EtSumType::kCentrality)); + // HT Miss block + HTmissASYMHT = ((dataBlock[3] >> demux::shiftsESums::HTmissASYMHT) & demux::masksESums::HTmissASYMHT); + HTmissMinBiasHFM1 = ((dataBlock[3] >> demux::shiftsESums::HTmissMinBiasHF) & demux::masksESums::HTmissMinBiasHF); - bxSums.setHwMissHtHF(HTHFmissEt); - bxSums.setHwMissHtHFPhi(HTHFmissPhi); - bxSums.setHwAsymHtHF(HTHFmissASYMHTHF); - bxSums.setCentrality((HTHFmissCENT<<4) + ETHFmissCENT); + bxSums.setHwAsymHt(HTmissASYMHT); + bxSums.setMinBiasHFM1(HTmissMinBiasHFM1); - // nEtSumsOrbit_ += 17; - nEtSumsOrbit_ += 1; + // ETHFMiss + ETHFmissASYMETHF = ((dataBlock[4] >> demux::shiftsESums::ETHFmissASYMETHF) & demux::masksESums::ETHFmissASYMETHF); + ETHFmissCENT = ((dataBlock[4] >> demux::shiftsESums::ETHFmissCENT) & demux::masksESums::ETHFmissCENT); + + bxSums.setHwAsymEtHF(ETHFmissASYMETHF); + + // HTHFMiss + HTHFmissASYMHTHF = ((dataBlock[5] >> demux::shiftsESums::ETHFmissASYMETHF) & demux::masksESums::ETHFmissASYMETHF); + HTHFmissCENT = ((dataBlock[5] >> demux::shiftsESums::ETHFmissCENT) & demux::masksESums::ETHFmissCENT); + + bxSums.setHwAsymHtHF(HTHFmissASYMHTHF); + bxSums.setCentrality((HTHFmissCENT<<4) + ETHFmissCENT); + } orbitBufferEtSums_[bx].push_back(bxSums); + nEtSumsOrbit_ += 1; if (debug_){ - // std::cout << "Type: TotalET\n" - // << " Raw: 0x" << std::hex << dataBlock[0] << std::dec << "\n" - // << " Et [GeV/Hw]: " << demux::fEt(sumTotEt.hwEt()) << "/" << sumTotEt.hwEt() - // << std::endl; - - // std::cout << "Type: TotalHT\n" - // << " Raw: 0x" << std::hex << dataBlock[1] << std::dec << "\n" - // << " Et [GeV/Hw]: " << demux::fEt(sumTotHt.hwEt()) << "/" << sumTotHt.hwEt() - // << std::endl; - - // std::cout << "Type: ETMiss\n" - // << " Raw: 0x" << std::hex << dataBlock[2] << std::dec << "\n" - // << " Et [GeV/Hw]: " << demux::fEt(sumMissEt.hwEt()) << "/" << sumMissEt.hwEt() << "\n" - // << " Phi [Rad/Hw]: " << demux::fPhi(sumMissEt.hwPhi()) << "/" << sumMissEt.hwPhi() - // << std::endl; - - // std::cout << "Type: HTMiss\n" - // << " Raw: 0x" << std::hex << dataBlock[3] << std::dec << "\n" - // << " Et [GeV/Hw]: " << demux::fEt(sumMissHt.hwEt()) << "/" << sumMissHt.hwEt() << "\n" - // << " Phi [Rad/Hw]: " << demux::fPhi(sumMissHt.hwPhi()) << "/" << sumMissHt.hwPhi() - // << std::endl; + std::cout << "Raw frames:\n"; + for(int frame=0; frame<6; frame++){ + std::cout << " frame " << frame << ": 0x" + << std::hex << dataBlock[frame] << std::dec << std::endl; + } + printScBxSums(bxSums); } } diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h index 49bc27351ceb6..c8665cefd9918 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h @@ -14,10 +14,9 @@ #include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" #include "EventFilter/L1ScoutingRawToDigi/interface/shifts.h" -#include "EventFilter/L1ScoutingRawToDigi/interface/scales.h" #include "EventFilter/L1ScoutingRawToDigi/interface/masks.h" #include "EventFilter/L1ScoutingRawToDigi/interface/blocks.h" -#include "EventFilter/L1ScoutingRawToDigi/interface/conversion.h" +#include "L1TriggerScouting/Utilities/interface/printScObjects.h" #include #include @@ -47,10 +46,10 @@ class ScCaloRawToDigi : public edm::stream::EDProducer<> { std::vector> orbitBufferJets_; std::vector> orbitBufferEGammas_; std::vector> orbitBufferTaus_; - //std::vector> orbitBufferEtSums_; std::vector> orbitBufferEtSums_; bool debug_ = false; + bool enableAllSums_ = false; edm::InputTag srcInputTag; edm::EDGetToken rawToken; }; diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc index d3f2995cbe9ec..dc5f6c46b6700 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc @@ -168,16 +168,7 @@ void ScGMTRawToDigi::unpackOrbit( std::cout << " Raw f: 0x" << std::hex << bl->mu[i].f << std::dec << "\n"; std::cout << " Raw s: 0x" << std::hex << bl->mu[i].s << std::dec << "\n"; std::cout << " Raw extra: 0x" << std::hex << bl->mu[i].extra << std::dec << "\n"; - std::cout << " Pt [GeV/Hw]: " << ugmt::fPt(muon.hwPt()) << "/" << muon.hwPt() << "\n"; - std::cout << " Eta [rad/Hw]: " << ugmt::fEta(muon.hwEta()) << "/" << muon.hwEta() << "\n"; - std::cout << " Phi [rad/Hw]: " << ugmt::fPhi(muon.hwPhi()) << "/" << muon.hwPhi() << "\n"; - std::cout << " Charge/valid: " << muon.hwCharge() << "/" << muon.hwChargeValid() << "\n"; - std::cout << " PhiVtx [rad/Hw]: " << ugmt::fPhiAtVtx(muon.hwPhiAtVtx()) << "/" << muon.hwPhiAtVtx() << "\n"; - std::cout << " EtaVtx [rad/Hw]: " << ugmt::fEtaAtVtx(muon.hwEtaAtVtx()) << "/" << muon.hwEtaAtVtx() << "\n"; - std::cout << " Pt uncon[GeV/Hw]: " << ugmt::fPtUnconstrained(muon.hwPtUnconstrained()) << "/" << muon.hwPtUnconstrained() << "\n"; - std::cout << " Dxy: " << muon.hwDXY() << "\n"; - std::cout << " Qual: " << muon.hwQual() << "\n"; - std::cout << " TF index: " << muon.tfMuonIndex() << "\n"; + printScMuon(muon); } } // end of bx diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h index 43ec20ef66168..abe5299017bd1 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h @@ -13,10 +13,9 @@ #include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" #include "EventFilter/L1ScoutingRawToDigi/interface/shifts.h" -#include "EventFilter/L1ScoutingRawToDigi/interface/scales.h" #include "EventFilter/L1ScoutingRawToDigi/interface/masks.h" #include "EventFilter/L1ScoutingRawToDigi/interface/blocks.h" -#include "EventFilter/L1ScoutingRawToDigi/interface/conversion.h" +#include "L1TriggerScouting/Utilities/interface/printScObjects.h" #include #include diff --git a/EventFilter/Utilities/test/testScoutingRun3_daqsource.py b/EventFilter/Utilities/test/testScoutingRun3_daqsource.py deleted file mode 100644 index ed31287924bb7..0000000000000 --- a/EventFilter/Utilities/test/testScoutingRun3_daqsource.py +++ /dev/null @@ -1,128 +0,0 @@ -from __future__ import print_function -import FWCore.ParameterSet.Config as cms -import FWCore.ParameterSet.VarParsing as VarParsing -import os, sys - -options = VarParsing.VarParsing ("analysis") - -options.register ("runNumber", - 368636, - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, - "Run Number") - -options.register ("daqSourceMode", - "ScoutingRun3", - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, - "DAQ source data mode") - -options.register ("buBaseDir", - "/dev/shm", - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, - "BU base directory") - -options.register ("fuBaseDir", - "/tmp/", - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, - "BU base directory") - -options.register ("fffBaseDir", - "/dev/shm", - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, - "FFF base directory") - -options.register ("numThreads", - 2, - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, - "Number of CMSSW threads") - -options.register ("numFwkStreams", - 2, - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, - "Number of CMSSW streams") - -options.parseArguments() - -cmsswbase = os.path.expandvars("$CMSSW_BASE/") - -process = cms.Process("SCPU") -process.maxEvents = cms.untracked.PSet( - input = cms.untracked.int32(-1) -) - -process.options = cms.untracked.PSet( - wantSummary = cms.untracked.bool(True), - numberOfThreads = cms.untracked.uint32(options.numThreads), - numberOfStreams = cms.untracked.uint32(options.numFwkStreams), - numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(1) -) -process.MessageLogger = cms.Service("MessageLogger", - cout = cms.untracked.PSet( - threshold = cms.untracked.string( "INFO" ) - ), - destinations = cms.untracked.vstring( "cout" ), -) - -process.FastMonitoringService = cms.Service("FastMonitoringService", - sleepTime = cms.untracked.int32(1) -) - -process.EvFDaqDirector = cms.Service("EvFDaqDirector", - useFileBroker = cms.untracked.bool(False), - buBaseDirsAll = cms.untracked.vstring( - options.buBaseDir - ), - buBaseDirsNumStreams = cms.untracked.vint32( - 2 - ), - fileBrokerHostFromCfg = cms.untracked.bool(True), - fileBrokerHost = cms.untracked.string("htcp40.cern.ch"), - runNumber = cms.untracked.uint32(options.runNumber), - baseDir = cms.untracked.string(options.fffBaseDir+"/"+options.fuBaseDir), - buBaseDir = cms.untracked.string(options.fffBaseDir+"/"+options.buBaseDir), - directorIsBU = cms.untracked.bool(False), -) - -try: - os.makedirs(options.fffBaseDir+"/"+options.fuBaseDir+"/run"+str(options.runNumber).zfill(6)) -except Exception as ex: - print(str(ex)) - pass - -ram_dir_path=options.buBaseDir+"/run"+str(options.runNumber).zfill(6)+"/" -flist = [ - ram_dir_path + "run" + str(options.runNumber) + "_ls0340_index000001.raw" -] - -process.source = cms.Source("DAQSource", - testing = cms.untracked.bool(True), - dataMode = cms.untracked.string(options.daqSourceMode), - verifyChecksum = cms.untracked.bool(False), - useL1EventID = cms.untracked.bool(False), - eventChunkBlock = cms.untracked.uint32(64), - eventChunkSize = cms.untracked.uint32(128), - maxChunkSize = cms.untracked.uint32(256), - numBuffers = cms.untracked.uint32(2), - maxBufferedFiles = cms.untracked.uint32(2), - fileListMode = cms.untracked.bool(True), - fileNames = cms.untracked.vstring(*flist) - -) - -process.outputZB = cms.OutputModule("PoolOutputModule", - fileName = cms.untracked.string('file:PoolOutputTest.root'), - outputCommands = cms.untracked.vstring( - "drop *", - "keep *_rawDataCollector_*_*" - ) -) - -process.ep = cms.EndPath( - process.outputZB -) \ No newline at end of file diff --git a/EventFilter/Utilities/test/testScoutingRun3_unpackers.py b/EventFilter/Utilities/test/testScoutingRun3_unpackers.py index eece932ed8623..c5b73cd91d2cc 100644 --- a/EventFilter/Utilities/test/testScoutingRun3_unpackers.py +++ b/EventFilter/Utilities/test/testScoutingRun3_unpackers.py @@ -53,7 +53,7 @@ process = cms.Process("SCPU") process.maxEvents = cms.untracked.PSet( - input = cms.untracked.int32(1) + input = cms.untracked.int32(-1) ) process.options = cms.untracked.PSet( @@ -102,7 +102,7 @@ ram_dir_path=options.buBaseDir+"/run"+str(options.runNumber).zfill(6)+"/" flist = [ - ram_dir_path + "run" + str(options.runNumber) + "_ls0340_index000001.raw"#"_ls0340_index000028.raw" + ram_dir_path + "run" + str(options.runNumber) + "_ls0340_index000028.raw" ] process.source = cms.Source("DAQSource", @@ -129,19 +129,19 @@ process.GmtUnpacker = cms.EDProducer('ScGMTRawToDigi', srcInputTag = cms.InputTag('rawDataCollector'), - debug=cms.untracked.bool(False) + debug = cms.untracked.bool(False) ) process.CaloUnpacker = cms.EDProducer('ScCaloRawToDigi', srcInputTag = cms.InputTag('rawDataCollector'), - debug=cms.untracked.bool(False) + enableAllSums = cms.untracked.bool(True), + debug = cms.untracked.bool(False) ) process.outputZB = cms.OutputModule("PoolOutputModule", fileName = cms.untracked.string('file:/dev/shm/PoolOutputTest.root'), outputCommands = cms.untracked.vstring( "drop *", - #"keep *_rawDataCollector_*_*", "keep *_GmtUnpacker_*_*", "keep *_CaloUnpacker_*_*" ), diff --git a/EventFilter/L1ScoutingRawToDigi/interface/conversion.h b/L1TriggerScouting/Utilities/interface/conversion.h similarity index 79% rename from EventFilter/L1ScoutingRawToDigi/interface/conversion.h rename to L1TriggerScouting/Utilities/interface/conversion.h index a240dafd3f42c..87b072ee3e1f3 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/conversion.h +++ b/L1TriggerScouting/Utilities/interface/conversion.h @@ -1,7 +1,8 @@ -#ifndef L1ScoutingRawToDigi_conversion_h -#define L1ScoutingRawToDigi_conversion_h +#ifndef L1TriggerScouting_Utilities_conversion_h +#define L1TriggerScouting_Utilities_conversion_h -#include "EventFilter/L1ScoutingRawToDigi/interface/scales.h" +#include "L1TriggerScouting/Utilities/interface/scales.h" +#include namespace l1ScoutingRun3 { @@ -19,7 +20,6 @@ namespace l1ScoutingRun3 { return scales::eta_scale*hwEta; }; inline float fPhi(int hwPhi) { - //float fPhi_ = scales::phi_scale*hwPhi; return _setPhiRange(scales::phi_scale*hwPhi); }; inline float fPtUnconstrained(int hwPtUnconstrained) { @@ -29,7 +29,6 @@ namespace l1ScoutingRun3 { return scales::eta_scale*hwEtaAtVtx; }; inline float fPhiAtVtx(int hwPhiAtVtx) { - //float fPhi_ = scales::phi_scale*hwPhiAtVtx; return _setPhiRange(scales::phi_scale*hwPhiAtVtx); }; @@ -44,7 +43,6 @@ namespace l1ScoutingRun3 { return scales::eta_scale*hwEta; }; inline float fPhi(int hwPhi) { - //float fPhi_ = scales::phi_scale*hwPhi; return _setPhiRange(scales::phi_scale*hwPhi); }; diff --git a/L1TriggerScouting/Utilities/interface/printScObjects.h b/L1TriggerScouting/Utilities/interface/printScObjects.h new file mode 100644 index 0000000000000..148303969f297 --- /dev/null +++ b/L1TriggerScouting/Utilities/interface/printScObjects.h @@ -0,0 +1,20 @@ +#ifndef L1TriggerScouting_Utilities_printScObjects_h +#define L1TriggerScouting_Utilities_printScObjects_h + +#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" +#include "L1TriggerScouting/Utilities/interface/conversion.h" + +namespace l1ScoutingRun3 { + + void printScMuon(const ScMuon& muon, std::ostream &outs = std::cout); + template + void printScCaloObject(const T& obj, std::ostream &outs = std::cout); + void printScJet(const ScJet& jet, std::ostream &outs = std::cout); + void printScEGamma(const ScEGamma& eGamma, std::ostream &outs = std::cout); + void printScTau(const ScTau& tau, std::ostream &outs = std::cout); + void printScBxSums(const ScBxSums& sums, std::ostream &outs = std::cout); + +} // end namespace L1ScoutingRun3 + +#endif // L1TriggerScouting_Utilities_printScObjects_h \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/interface/scales.h b/L1TriggerScouting/Utilities/interface/scales.h similarity index 76% rename from EventFilter/L1ScoutingRawToDigi/interface/scales.h rename to L1TriggerScouting/Utilities/interface/scales.h index bdc9aa0e225cf..c335ce7293e88 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/scales.h +++ b/L1TriggerScouting/Utilities/interface/scales.h @@ -1,11 +1,13 @@ -#ifndef L1ScoutingRawToDigi_scales_h -#define L1ScoutingRawToDigi_scales_h +#ifndef L1TriggerScouting_Utilities_scales_h +#define L1TriggerScouting_Utilities_scales_h #include #include namespace l1ScoutingRun3 { + // Scaled used to convert scouting hw values to physical quantities + namespace ugmt { struct scales { static constexpr float pt_scale = 0.5; @@ -25,4 +27,4 @@ namespace l1ScoutingRun3 { } } -#endif // L1ScoutingRawToDigi_scales_h +#endif // L1TriggerScouting_Utilities_scales_h diff --git a/L1TriggerScouting/Utilities/plugins/BuildFile.xml b/L1TriggerScouting/Utilities/plugins/BuildFile.xml index 2a4e53b8cc764..2e16c87937d04 100644 --- a/L1TriggerScouting/Utilities/plugins/BuildFile.xml +++ b/L1TriggerScouting/Utilities/plugins/BuildFile.xml @@ -1,9 +1,8 @@ - - - - - - - - - + + + + + + + + \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc index 52a3545b26931..25b0b2f08079a 100644 --- a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc +++ b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc @@ -19,8 +19,7 @@ #include "DataFormats/L1Scouting/interface/OrbitCollection.h" #include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" #include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" -#include "DataFormats/L1Trigger/interface/EtSum.h" -#include "EventFilter/L1ScoutingRawToDigi/interface/conversion.h" +#include "L1TriggerScouting/Utilities/interface/printScObjects.h" using namespace l1ScoutingRun3; @@ -37,11 +36,7 @@ class DumpScObjects : public edm::stream::EDAnalyzer<> { private: - void printMuon(const ScMuon* muon); - template - void printCaloObject(const T* obj); - void printCaloSum(const ScEtSum* sum); - + // dump contenct of BX void printBx(unsigned bx); // the tokens to access the data @@ -49,13 +44,13 @@ class DumpScObjects : public edm::stream::EDAnalyzer<> { edm::EDGetTokenT caloJetsToken_; edm::EDGetTokenT caloEGammasToken_; edm::EDGetTokenT caloTausToken_; - edm::EDGetTokenT caloEtSumsToken_; + edm::EDGetTokenT caloEtSumsToken_; edm::Handle muonHandle_; edm::Handle jetHandle_; edm::Handle eGammaHandle_; edm::Handle tauHandle_; - edm::Handle etSumHandle_; + edm::Handle etSumHandle_; // the min and max BX to be analyzed unsigned minBx_; @@ -104,7 +99,7 @@ DumpScObjects::DumpScObjects(const edm::ParameterSet& iConfig): if (checkJets_) caloJetsToken_ = consumes(iConfig.getParameter("caloJetsTag")); if (checkEGammas_) caloEGammasToken_ = consumes(iConfig.getParameter("caloEGammasTag")); if (checkTaus_) caloTausToken_ = consumes(iConfig.getParameter("caloTausTag")); - if (checkEtSums_) caloEtSumsToken_ = consumes(iConfig.getParameter("caloEtSumsTag")); + if (checkEtSums_) caloEtSumsToken_ = consumes(iConfig.getParameter("caloEtSumsTag")); } // ----------------------------------------------------------------------------- @@ -179,55 +174,6 @@ void DumpScObjects::analyze(const edm::Event& iEvent, const edm::EventSetup& evS } // ----------------------------------------------------------------------------- -void DumpScObjects::printMuon(const ScMuon* muon){ - std::cout << " Pt [GeV/Hw]: " << ugmt::fPt(muon->hwPt()) << "/" << muon->hwPt() << "\n"; - std::cout << " Eta [rad/Hw]: " << ugmt::fEta(muon->hwEta()) << "/" << muon->hwEta() << "\n"; - std::cout << " Phi [rad/Hw]: " << ugmt::fPhi(muon->hwPhi()) << "/" << muon->hwPhi() << "\n"; - std::cout << " Charge/valid: " << muon->hwCharge() << "/" << muon->hwChargeValid() << "\n"; - std::cout << " PhiVtx [rad/Hw]: " << ugmt::fPhiAtVtx(muon->hwPhiAtVtx()) << "/" << muon->hwPhiAtVtx() << "\n"; - std::cout << " EtaVtx [rad/Hw]: " << ugmt::fEtaAtVtx(muon->hwEtaAtVtx()) << "/" << muon->hwEtaAtVtx() << "\n"; - std::cout << " Pt uncon[GeV/Hw]: " << ugmt::fPtUnconstrained(muon->hwPtUnconstrained()) << "/" << muon->hwPtUnconstrained() << "\n"; - std::cout << " Dxy: " << muon->hwDXY() << "\n"; - std::cout << " Qual: " << muon->hwQual() << "\n"; - std::cout << " TF index: " << muon->tfMuonIndex() << "\n"; -} - -template -void DumpScObjects::printCaloObject(const T* obj){ - std::cout << " Et [GeV/Hw]: " << demux::fEt(obj->hwEt()) << "/" << obj->hwEt() << "\n"; - std::cout << " Eta [rad/Hw]: " << demux::fEta(obj->hwEta()) << "/" << obj->hwEta() << "\n"; - std::cout << " Phi [rad/Hw]: " << demux::fPhi(obj->hwPhi()) << "/" << obj->hwPhi() << "\n"; - std::cout << " Iso [Hw]: " << obj->hwIso() << "\n"; -} - -void DumpScObjects::printCaloSum(const ScEtSum* sum){ - - if (sum->type() == l1t::EtSum::kTotalEt){ - std::cout << "Type: TotalET\n" - << " Et [GeV/Hw]: " << demux::fEt(sum->hwEt()) << "/" << sum->hwEt() - << std::endl; - } - if (sum->type() == l1t::EtSum::kTotalHt){ - std::cout << "Type: TotalHT\n" - << " Et [GeV/Hw]: " << demux::fEt(sum->hwEt()) << "/" << sum->hwEt() - << std::endl; - } - - if (sum->type() == l1t::EtSum::kMissingEt){ - std::cout << "Type: ETMiss\n" - << " Et [GeV/Hw]: " << demux::fEt(sum->hwEt()) << "/" << sum->hwEt() << "\n" - << " Phi [Rad/Hw]: " << demux::fPhi(sum->hwPhi()) << "/" << sum->hwPhi() - << std::endl; - } - - if (sum->type() == l1t::EtSum::kMissingHt){ - std::cout << "Type: HTMiss\n" - << " Et [GeV/Hw]: " << demux::fEt(sum->hwEt()) << "/" << sum->hwEt() << "\n" - << " Phi [Rad/Hw]: " << demux::fPhi(sum->hwPhi()) << "/" << sum->hwPhi() - << std::endl; - } -} - void DumpScObjects::printBx(unsigned bx){ std::cout << "BX = " << bx <<" ****" << std::endl; @@ -235,7 +181,7 @@ void DumpScObjects::printBx(unsigned bx){ int i=0; for (auto muon = muonHandle_->begin(bx); muon!=muonHandle_->end(bx); muon++){ std::cout << "--- Muon " << i << " ---\n"; - printMuon(&*muon); + printScMuon(*muon); i++; } } @@ -244,7 +190,7 @@ void DumpScObjects::printBx(unsigned bx){ int i=0; for (auto jet = jetHandle_->begin(bx); jet!=jetHandle_->end(bx); jet++){ std::cout << "--- Jet " << i << " ---\n"; - printCaloObject(&*jet); + printScJet(*jet); i++; } } @@ -253,7 +199,7 @@ void DumpScObjects::printBx(unsigned bx){ int i=0; for (auto egamma = eGammaHandle_->begin(bx); egamma!=eGammaHandle_->end(bx); egamma++){ std::cout << "--- E/Gamma " << i << " ---\n"; - printCaloObject(&*egamma); + printScEGamma(*egamma); i++; } } @@ -262,7 +208,7 @@ void DumpScObjects::printBx(unsigned bx){ int i=0; for (auto tau = tauHandle_->begin(bx); tau!=tauHandle_->end(bx); tau++){ std::cout << "--- Tau " << i << " ---\n"; - printCaloObject(&*tau); + printScTau(*tau); i++; } } @@ -270,8 +216,8 @@ void DumpScObjects::printBx(unsigned bx){ if(checkEtSums_ && etSumHandle_.isValid()){ int i=0; for (auto sum = etSumHandle_->begin(bx); sum!=etSumHandle_->end(bx); sum++){ - std::cout << "--- Sum " << i << " ---\n"; - printCaloSum(&*sum); + std::cout << "--- Calo Sums ---\n"; + printScBxSums(*sum); i++; } } diff --git a/L1TriggerScouting/Utilities/src/printScObjects.cc b/L1TriggerScouting/Utilities/src/printScObjects.cc new file mode 100644 index 0000000000000..87c3ecf1b2193 --- /dev/null +++ b/L1TriggerScouting/Utilities/src/printScObjects.cc @@ -0,0 +1,76 @@ +#include "L1TriggerScouting/Utilities/interface/printScObjects.h" + +namespace l1ScoutingRun3 { + + void printScMuon(const ScMuon& muon, std::ostream &outs){ + outs << " Pt [GeV/Hw]: " << ugmt::fPt(muon.hwPt()) << "/" << muon.hwPt() << "\n" + << " Eta [rad/Hw]: " << ugmt::fEta(muon.hwEta()) << "/" << muon.hwEta() << "\n" + << " Phi [rad/Hw]: " << ugmt::fPhi(muon.hwPhi()) << "/" << muon.hwPhi() << "\n" + << " Charge/valid: " << muon.hwCharge() << "/" << muon.hwChargeValid() << "\n" + << " PhiVtx [rad/Hw]: " << ugmt::fPhiAtVtx(muon.hwPhiAtVtx()) << "/" << muon.hwPhiAtVtx() << "\n" + << " EtaVtx [rad/Hw]: " << ugmt::fEtaAtVtx(muon.hwEtaAtVtx()) << "/" << muon.hwEtaAtVtx() << "\n" + << " Pt uncon[GeV/Hw]: " << ugmt::fPtUnconstrained(muon.hwPtUnconstrained()) << "/" << muon.hwPtUnconstrained() << "\n" + << " Dxy: " << muon.hwDXY() << "\n" + << " Qual: " << muon.hwQual() << "\n" + << " TF index: " << muon.tfMuonIndex() << "\n"; + } + + template + void printScCaloObject(const T& obj, std::ostream &outs){ + outs << " Et [GeV/Hw]: " << demux::fEt(obj.hwEt()) << "/" << obj.hwEt() << "\n" + << " Eta [rad/Hw]: " << demux::fEta(obj.hwEta()) << "/" << obj.hwEta() << "\n" + << " Phi [rad/Hw]: " << demux::fPhi(obj.hwPhi()) << "/" << obj.hwPhi() << "\n" + << " Iso [Hw]: " << obj.hwIso() << "\n"; + } + + void printScJet(const ScJet& jet, std::ostream &outs){ + printScCaloObject(jet, outs); + } + void printScEGamma(const ScEGamma& eGamma, std::ostream &outs){ + printScCaloObject(eGamma, outs); + } + void printScTau(const ScTau& tau, std::ostream &outs){ + printScCaloObject(tau, outs); + } + + void printScBxSums(const ScBxSums& sums, std::ostream &outs){ + outs << "Total ET\n" + << " Et [GeV/Hw]: " << demux::fEt(sums.hwTotalEt()) << "/" << sums.hwTotalEt() << "\n" + << "Total ETEm\n" + << " Et [GeV/Hw]: " << demux::fEt(sums.hwTotalEtEm()) << "/" << sums.hwTotalEtEm() << "\n" + << "Total HT\n" + << " Et [GeV/Hw]: " << demux::fEt(sums.hwTotalHt()) << "/" << sums.hwTotalHt() << "\n" + << "Missing ET\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwMissEt()) << "/" << sums.hwMissEt() << "\n" + << " Phi [Rad/Hw]: " << demux::fPhi(sums.hwMissEtPhi()) << "/" << sums.hwMissEtPhi() << "\n" + << "Missing HT\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwMissHt()) << "/" << sums.hwMissHt() << "\n" + << " Phi [Rad/Hw]: " << demux::fPhi(sums.hwMissHtPhi()) << "/" << sums.hwMissHtPhi() << "\n" + << "Missing ETHF\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwMissEtHF()) << "/" << sums.hwMissEtHF() << "\n" + << " Phi [Rad/Hw]: " << demux::fPhi(sums.hwMissEtHFPhi()) << "/" << sums.hwMissEtHFPhi() << "\n" + << "Missing HTHF\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwMissHtHF()) << "/" << sums.hwMissHtHF() << "\n" + << " Phi [Rad/Hw]: " << demux::fPhi(sums.hwMissHtHFPhi()) << "/" << sums.hwMissHtHFPhi() << "\n" + << "AsymEt\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwAsymEt()) << "/" << sums.hwAsymEt() << "\n" + << "AsymHt\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwAsymHt()) << "/" << sums.hwAsymHt() << "\n" + << "AsymEtHF\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwAsymEtHF()) << "/" << sums.hwAsymEtHF() << "\n" + << "AsymHtHF\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwAsymHtHF()) << "/" << sums.hwAsymHtHF() << "\n" + << "MinBiasHFP0\n" + << " Hw: " << sums.minBiasHFP0() << "\n" + << "MinBiasHFM0\n" + << " Hw: " << sums.minBiasHFM0() << "\n" + << "MinBiasHFP1\n" + << " Hw: " << sums.minBiasHFP1() << "\n" + << "MinBiasHFM1\n" + << " Hw: " << sums.minBiasHFM1() << "\n" + << "Centrality\n" + << " Hw: " << sums.centrality() << "\n" + << "Tower Count\n" + << " Hw: " << sums.towerCount() << "\n"; + } +} \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/test/dumpScObjects.py b/L1TriggerScouting/Utilities/test/dumpScObjects.py index ff40699c4876b..957ac3d77e7a2 100644 --- a/L1TriggerScouting/Utilities/test/dumpScObjects.py +++ b/L1TriggerScouting/Utilities/test/dumpScObjects.py @@ -44,9 +44,9 @@ #checkMuons = cms.untracked.bool(False), # test removing a collection searchEvent = cms.untracked.bool(True), - orbitNumber = cms.untracked.uint32(88982581), - searchStartBx = cms.untracked.uint32(1484-2), - searchStopBx = cms.untracked.uint32(1484+2), + orbitNumber = cms.untracked.uint32(88981531), + searchStartBx = cms.untracked.uint32(1027-2), + searchStopBx = cms.untracked.uint32(1027+2), ) process.p = cms.Path( From f59a381471a749f95f2ee03c456fed2ccb02a55a Mon Sep 17 00:00:00 2001 From: matteo Date: Fri, 10 Nov 2023 16:24:08 +0100 Subject: [PATCH 045/281] New DAQ source for L1Trigger scouting Implemented a new DAQSourceModel to read and merge Run3 L1T scouting raw data. - Similar to the existing FRDStriped input source - Modified EvFDaqDirector to enable the possibility of having multiple data sources per ramdisk - Added DataFormats/L1Scouting containing Scouting Raw Data Collection - Vector of FEDRawData - Included optional argument wordSize in the FEDRawData resize methods: 8 bytes by default, can be set to 4 bytes for scouting - Not a real FED, using a SRDCollection since L1scouting data will never be mixed with event data - Removed old scouting files that were used as an example Added first two unpackers for uGMT and CaloL2 data - Custom data format, similar to l1t objects, but more efficent in term of storage and write speed. - Save 30% in storage - Objects stored in an OrbitCollection Example of dummy analyzer used to dump scouting data - consumes collections produced by unpackers and dump them to screen --- DataFormats/FEDRawData/interface/FEDRawData.h | 8 +- DataFormats/FEDRawData/src/FEDRawData.cc | 14 +- DataFormats/L1Scouting/BuildFile.xml | 5 + .../L1Scouting/interface/L1ScoutingCalo.h | 324 ++++++++++++++++++ .../L1Scouting/interface/L1ScoutingMuon.h | 118 +++++++ .../L1Scouting/interface/OrbitCollection.h | 193 +++++++++++ DataFormats/L1Scouting/src/classes.h | 16 + DataFormats/L1Scouting/src/classes_def.xml | 35 ++ DataFormats/L1ScoutingRawData/BuildFile.xml | 7 + .../interface/SDSNumbering.h | 26 ++ .../interface/SDSRawDataCollection.h | 38 ++ .../src/SDSRawDataCollection.cc | 12 + DataFormats/L1ScoutingRawData/src/classes.h | 4 + .../L1ScoutingRawData/src/classes_def.xml | 5 + EventFilter/L1ScoutingRawToDigi/BuildFile.xml | 11 + .../L1ScoutingRawToDigi/interface/blocks.h | 50 +++ .../L1ScoutingRawToDigi/interface/masks.h | 108 ++++++ .../L1ScoutingRawToDigi/interface/shifts.h | 102 ++++++ .../L1ScoutingRawToDigi/plugins/BuildFile.xml | 10 + .../plugins/ScCALORawToDigi.cc | 318 +++++++++++++++++ .../plugins/ScCALORawToDigi.h | 55 +++ .../plugins/ScGMTRawToDigi.cc | 188 ++++++++++ .../plugins/ScGMTRawToDigi.h | 46 +++ EventFilter/Utilities/BuildFile.xml | 1 + .../Utilities/interface/DAQSourceModels.h | 4 +- .../Utilities/interface/DAQSourceModelsFRD.h | 8 +- .../interface/DAQSourceModelsScouting.h | 268 --------------- .../interface/DAQSourceModelsScoutingRun3.h | 135 ++++++++ .../Utilities/interface/EvFDaqDirector.h | 2 + .../Utilities/plugins/DumpMuonScouting.cc | 112 ------ .../Utilities/scripts/scoutingToRaw.py | 259 -------------- EventFilter/Utilities/src/DAQSource.cc | 9 +- .../Utilities/src/DAQSourceModelsFRD.cc | 4 +- .../Utilities/src/DAQSourceModelsScouting.cc | 312 ----------------- .../src/DAQSourceModelsScoutingRun3.cc | 184 ++++++++++ EventFilter/Utilities/src/EvFDaqDirector.cc | 20 ++ EventFilter/Utilities/test/FU_scouting.py | 114 ------ EventFilter/Utilities/test/FU_scouting_2.py | 117 ------- .../Utilities/test/dumpMuonScouting.py | 30 -- .../test/testScoutingRun3_unpackers.py | 160 +++++++++ L1TriggerScouting/Utilities/BuildFile.xml | 7 + .../Utilities/interface/conversion.h | 54 +++ .../Utilities/interface/printScObjects.h | 20 ++ .../Utilities/interface/scales.h | 30 ++ .../Utilities/plugins/BuildFile.xml | 8 + .../Utilities/plugins/DumpScObjects.cc | 227 ++++++++++++ .../Utilities/src/printScObjects.cc | 76 ++++ .../Utilities/test/dumpScObjects.py | 54 +++ 48 files changed, 2680 insertions(+), 1228 deletions(-) create mode 100644 DataFormats/L1Scouting/BuildFile.xml create mode 100644 DataFormats/L1Scouting/interface/L1ScoutingCalo.h create mode 100644 DataFormats/L1Scouting/interface/L1ScoutingMuon.h create mode 100644 DataFormats/L1Scouting/interface/OrbitCollection.h create mode 100644 DataFormats/L1Scouting/src/classes.h create mode 100644 DataFormats/L1Scouting/src/classes_def.xml create mode 100644 DataFormats/L1ScoutingRawData/BuildFile.xml create mode 100644 DataFormats/L1ScoutingRawData/interface/SDSNumbering.h create mode 100644 DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h create mode 100644 DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc create mode 100644 DataFormats/L1ScoutingRawData/src/classes.h create mode 100644 DataFormats/L1ScoutingRawData/src/classes_def.xml create mode 100644 EventFilter/L1ScoutingRawToDigi/BuildFile.xml create mode 100644 EventFilter/L1ScoutingRawToDigi/interface/blocks.h create mode 100644 EventFilter/L1ScoutingRawToDigi/interface/masks.h create mode 100644 EventFilter/L1ScoutingRawToDigi/interface/shifts.h create mode 100644 EventFilter/L1ScoutingRawToDigi/plugins/BuildFile.xml create mode 100644 EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc create mode 100644 EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h create mode 100644 EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc create mode 100644 EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h delete mode 100644 EventFilter/Utilities/interface/DAQSourceModelsScouting.h create mode 100644 EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h delete mode 100644 EventFilter/Utilities/plugins/DumpMuonScouting.cc delete mode 100755 EventFilter/Utilities/scripts/scoutingToRaw.py delete mode 100644 EventFilter/Utilities/src/DAQSourceModelsScouting.cc create mode 100644 EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc delete mode 100644 EventFilter/Utilities/test/FU_scouting.py delete mode 100644 EventFilter/Utilities/test/FU_scouting_2.py delete mode 100644 EventFilter/Utilities/test/dumpMuonScouting.py create mode 100644 EventFilter/Utilities/test/testScoutingRun3_unpackers.py create mode 100644 L1TriggerScouting/Utilities/BuildFile.xml create mode 100644 L1TriggerScouting/Utilities/interface/conversion.h create mode 100644 L1TriggerScouting/Utilities/interface/printScObjects.h create mode 100644 L1TriggerScouting/Utilities/interface/scales.h create mode 100644 L1TriggerScouting/Utilities/plugins/BuildFile.xml create mode 100644 L1TriggerScouting/Utilities/plugins/DumpScObjects.cc create mode 100644 L1TriggerScouting/Utilities/src/printScObjects.cc create mode 100644 L1TriggerScouting/Utilities/test/dumpScObjects.py diff --git a/DataFormats/FEDRawData/interface/FEDRawData.h b/DataFormats/FEDRawData/interface/FEDRawData.h index 8def41c8e270b..124ace19fcfc7 100644 --- a/DataFormats/FEDRawData/interface/FEDRawData.h +++ b/DataFormats/FEDRawData/interface/FEDRawData.h @@ -26,8 +26,8 @@ class FEDRawData { /// Ctor specifying the size to be preallocated, in bytes. /// It is required that the size is a multiple of the size of a FED - /// word (8 bytes) - FEDRawData(size_t newsize); + /// word (8 bytes default) + FEDRawData(size_t newsize, size_t wordsize=8); /// Copy constructor FEDRawData(const FEDRawData &); @@ -45,8 +45,8 @@ class FEDRawData { size_t size() const { return data_.size(); } /// Resize to the specified size in bytes. It is required that - /// the size is a multiple of the size of a FED word (8 bytes) - void resize(size_t newsize); + /// the size is a multiple of the size of a FED word (8 bytes default) + void resize(size_t newsize, size_t wordsize=8); private: Data data_; diff --git a/DataFormats/FEDRawData/src/FEDRawData.cc b/DataFormats/FEDRawData/src/FEDRawData.cc index 28bbaa55bd19f..bdd4eeb012d57 100644 --- a/DataFormats/FEDRawData/src/FEDRawData.cc +++ b/DataFormats/FEDRawData/src/FEDRawData.cc @@ -13,9 +13,10 @@ using namespace std; FEDRawData::FEDRawData() {} -FEDRawData::FEDRawData(size_t newsize) : data_(newsize) { - if (newsize % 8 != 0) - throw cms::Exception("DataCorrupt") << "FEDRawData::resize: " << newsize << " is not a multiple of 8 bytes." +FEDRawData::FEDRawData(size_t newsize, size_t wordsize) : data_(newsize) { + if (newsize % wordsize != 0) + throw cms::Exception("DataCorrupt") << "FEDRawData::resize: " << newsize << " is not a multiple of " + << wordsize << " bytes." << endl; } @@ -25,13 +26,14 @@ const unsigned char *FEDRawData::data() const { return data_.data(); } unsigned char *FEDRawData::data() { return data_.data(); } -void FEDRawData::resize(size_t newsize) { +void FEDRawData::resize(size_t newsize, size_t wordsize) { if (size() == newsize) return; data_.resize(newsize); - if (newsize % 8 != 0) - throw cms::Exception("DataCorrupt") << "FEDRawData::resize: " << newsize << " is not a multiple of 8 bytes." + if (newsize % wordsize != 0) + throw cms::Exception("DataCorrupt") << "FEDRawData::resize: " << newsize << " is not a multiple of " + << wordsize << " bytes." << endl; } diff --git a/DataFormats/L1Scouting/BuildFile.xml b/DataFormats/L1Scouting/BuildFile.xml new file mode 100644 index 0000000000000..0f37f92979ed5 --- /dev/null +++ b/DataFormats/L1Scouting/BuildFile.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h new file mode 100644 index 0000000000000..994bfa1fb2246 --- /dev/null +++ b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h @@ -0,0 +1,324 @@ +#ifndef DataFormats_L1Scouting_L1ScoutingCalo_h +#define DataFormats_L1Scouting_L1ScoutingCalo_h + +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" +#include "DataFormats/L1Trigger/interface/EtSum.h" + +namespace l1ScoutingRun3 { + + class ScJet; + typedef OrbitCollection ScJetOrbitCollection; + class ScEGamma; + typedef OrbitCollection ScEGammaOrbitCollection; + class ScTau; + typedef OrbitCollection ScTauOrbitCollection; + class ScEtSum; + typedef OrbitCollection ScEtSumOrbitCollection; + class ScBxSums; + typedef OrbitCollection ScBxSumsOrbitCollection; + + class ScCaloObject { + public: + ScCaloObject() + : hwEt_(0), + hwEta_(0), + hwPhi_(0), + hwIso_(0){} + + ScCaloObject( + int hwEt, + int hwEta, + int hwPhi, + int iso) + : hwEt_(hwEt), + hwEta_(hwEta), + hwPhi_(hwPhi), + hwIso_(iso) {} + + ScCaloObject(const ScCaloObject& other) = default; + ScCaloObject(ScCaloObject&& other) = default; + ScCaloObject & operator=(const ScCaloObject& other) = default; + ScCaloObject & operator=(ScCaloObject&& other) = default; + + void swap(ScCaloObject& other){ + using std::swap; + swap(hwEt_, other.hwEt_); + swap(hwEta_, other.hwEta_); + swap(hwPhi_, other.hwPhi_); + swap(hwIso_, other.hwIso_); + } + + void setHwEt(int hwEt) { hwEt_= hwEt;} + void setHwEta(int hwEta) { hwEta_= hwEta;} + void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} + void setHwIso(int hwIso) { hwIso_= hwIso;} + + int hwEt() const {return hwEt_;} + int hwEta() const {return hwEta_;} + int hwPhi() const {return hwPhi_;} + int hwIso() const {return hwIso_;} + + private: + int hwEt_; + int hwEta_; + int hwPhi_; + int hwIso_; + + }; + + class ScJet: public ScCaloObject { + public: + ScJet(): ScCaloObject(0, 0 ,0 , 0){} + + ScJet( + int hwEt, + int hwEta, + int hwPhi, + int hwQual) + : ScCaloObject(hwEt, hwEta ,hwPhi , hwQual) {} + + // store quality instead of iso + void setHwQual(int hwQual) { setHwIso(hwQual);} + int hwQual() const {return hwIso();} + + }; + + class ScEGamma: public ScCaloObject { + public: + ScEGamma(): ScCaloObject(0, 0 ,0 , 0){} + + ScEGamma( + int hwEt, + int hwEta, + int hwPhi, + int iso) + : ScCaloObject(hwEt, hwEta ,hwPhi , iso) {} + }; + + class ScTau: public ScCaloObject { + public: + ScTau(): ScCaloObject(0, 0 ,0 , 0){} + + ScTau( + int hwEt, + int hwEta, + int hwPhi, + int iso) + : ScCaloObject(hwEt, hwEta ,hwPhi , iso) {} + }; + + + class ScEtSum { + public: + ScEtSum() + : hwEt_(0), + hwPhi_(0), + type_(l1t::EtSum::kUninitialized) {} + + ScEtSum( + int hwEt, + int hwPhi, + l1t::EtSum::EtSumType type) + : hwEt_(hwEt), + hwPhi_(hwPhi), + type_(type) {} + + ScEtSum(const ScEtSum& other) = default; + ScEtSum(ScEtSum&& other) = default; + ScEtSum & operator=(const ScEtSum& other) = default; + ScEtSum & operator=(ScEtSum&& other) = default; + + void swap(ScEtSum& other){ + using std::swap; + swap(hwEt_, other.hwEt_); + swap(hwPhi_, other.hwPhi_); + swap(type_, other.type_); + } + + void setHwEt(int hwEt) { hwEt_= hwEt;} + void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} + void setType(l1t::EtSum::EtSumType type) { type_= type;} + + int hwEt() const {return hwEt_;} + int hwPhi() const {return hwPhi_;} + l1t::EtSum::EtSumType type() const {return type_;} + + private: + int hwEt_; + int hwPhi_; + l1t::EtSum::EtSumType type_; + }; + + class ScBxSums { + + public: + ScBxSums() + : hwTotalEt_(0), + hwTotalEtEm_(0), + hwTotalHt_(0), + hwMissEt_(0), + hwMissEtPhi_(0), + hwMissHt_(0), + hwMissHtPhi_(0), + hwMissEtHF_(0), + hwMissEtHFPhi_(0), + hwMissHtHF_(0), + hwMissHtHFPhi_(0), + hwAsymEt_(0), + hwAsymHt_(0), + hwAsymEtHF_(0), + hwAsymHtHF_(0), + minBiasHFP0_(0), + minBiasHFM0_(0), + minBiasHFP1_(0), + minBiasHFM1_(0), + towerCount_(0), + centrality_(0) + {} + + ScBxSums( + int hwTotalEt, + int hwTotalEtEm, + int hwTotalHt, + int hwMissEt, + int hwMissEtPhi, + int hwMissHt, + int hwMissHtPhi, + int hwMissEtHF, + int hwMissEtHFPhi, + int hwMissHtHF, + int hwMissHtHFPhi, + int hwAsymEt, + int hwAsymHt, + int hwAsymEtHF, + int hwAsymHtHF, + int minBiasHFP0, + int minBiasHFM0, + int minBiasHFP1, + int minBiasHFM1, + int towerCount, + int centrality + ) + : hwTotalEt_(hwTotalEt), + hwTotalEtEm_(hwTotalEtEm), + hwTotalHt_(hwTotalHt), + hwMissEt_(hwMissEt), + hwMissEtPhi_(hwMissEtPhi), + hwMissHt_(hwMissHt), + hwMissHtPhi_(hwMissHtPhi), + hwMissEtHF_(hwMissEtHF), + hwMissEtHFPhi_(hwMissEtHFPhi), + hwMissHtHF_(hwMissHtHF), + hwMissHtHFPhi_(hwMissHtHFPhi), + hwAsymEt_(hwAsymEt), + hwAsymHt_(hwAsymHt), + hwAsymEtHF_(hwAsymEtHF), + hwAsymHtHF_(hwAsymHtHF), + minBiasHFP0_(minBiasHFP0), + minBiasHFM0_(minBiasHFM0), + minBiasHFP1_(minBiasHFP1), + minBiasHFM1_(minBiasHFM1), + towerCount_(towerCount), + centrality_(centrality) + {} + + ScBxSums(const ScBxSums& other) = default; + ScBxSums(ScBxSums&& other) = default; + ScBxSums & operator=(const ScBxSums& other) = default; + ScBxSums & operator=(ScBxSums&& other) = default; + + void swap(ScBxSums& other){ + using std::swap; + swap(hwTotalEt_, other.hwTotalEt_); + swap(hwTotalEtEm_, other.hwTotalEtEm_); + swap(hwTotalHt_, other.hwTotalHt_); + swap(hwMissEt_, other.hwMissEt_); + swap(hwMissEtPhi_, other.hwMissEtPhi_); + swap(hwMissHt_, other.hwMissHt_); + swap(hwMissHtPhi_, other.hwMissHtPhi_); + swap(hwMissEtHF_, other.hwMissEtHF_); + swap(hwMissEtHFPhi_, other.hwMissEtHFPhi_); + swap(hwMissHtHF_, other.hwMissHtHF_); + swap(hwMissHtHFPhi_, other.hwMissHtHFPhi_); + swap(hwAsymEt_, other.hwAsymEt_); + swap(hwAsymHt_, other.hwAsymHt_); + swap(hwAsymEtHF_, other.hwAsymEtHF_); + swap(hwAsymHtHF_, other.hwAsymHtHF_); + swap(minBiasHFP0_, other.minBiasHFP0_); + swap(minBiasHFM0_, other.minBiasHFM0_); + swap(minBiasHFP1_, other.minBiasHFP1_); + swap(minBiasHFM1_, other.minBiasHFM1_); + swap(towerCount_, other.towerCount_); + swap(centrality_, other.centrality_); + } + + void setHwTotalEt(int hwTotalEt) {hwTotalEt_ = hwTotalEt;} + void setHwTotalEtEm(int hwTotalEtEm) {hwTotalEtEm_ = hwTotalEtEm;} + void setMinBiasHFP0(int minBiasHFP0) {minBiasHFP0_ = minBiasHFP0;} + void setHwTotalHt(int hwTotalHt) {hwTotalHt_ = hwTotalHt;} + void setTowerCount(int towerCount) {towerCount_ = towerCount;} + void setMinBiasHFM0(int minBiasHFM0) {minBiasHFM0_ = minBiasHFM0;} + void setHwMissEt(int hwMissEt) {hwMissEt_ = hwMissEt;} + void setHwMissEtPhi(int hwMissEtPhi) {hwMissEtPhi_ = hwMissEtPhi;} + void setHwAsymEt(int hwAsymEt) {hwAsymEt_ = hwAsymEt;} + void setMinBiasHFP1(int minBiasHFP1) {minBiasHFP1_ = minBiasHFP1;} + void setHwMissHt(int hwMissHt) {hwMissHt_ = hwMissHt;} + void setHwMissHtPhi(int hwMissHtPhi) {hwMissHtPhi_ = hwMissHtPhi;} + void setHwAsymHt(int hwAsymHt) {hwAsymHt_ = hwAsymHt;} + void setMinBiasHFM1(int minBiasHFM1) {minBiasHFM1_ = minBiasHFM1;} + void setHwMissEtHF(int hwMissEtHF) {hwMissEtHF_ = hwMissEtHF;} + void setHwMissEtHFPhi(int hwMissEtHFPhi) {hwMissEtHFPhi_ = hwMissEtHFPhi;} + void setHwAsymEtHF(int hwAsymEtHF) {hwAsymEtHF_ = hwAsymEtHF;} + void setHwMissHtHF(int hwMissHtHF) {hwMissHtHF_ = hwMissHtHF;} + void setHwMissHtHFPhi(int hwMissHtHFPhi) {hwMissHtHFPhi_ = hwMissHtHFPhi;} + void setHwAsymHtHF(int hwAsymHtHF) {hwAsymHtHF_ = hwAsymHtHF;} + void setCentrality(int centrality) {centrality_ = centrality;} + + const int hwTotalEt() const { return hwTotalEt_;} + const int hwTotalEtEm() const { return hwTotalEtEm_;} + const int minBiasHFP0() const { return minBiasHFP0_;} + const int hwTotalHt() const { return hwTotalHt_;} + const int towerCount() const { return towerCount_;} + const int minBiasHFM0() const { return minBiasHFM0_;} + const int hwMissEt() const { return hwMissEt_;} + const int hwMissEtPhi() const { return hwMissEtPhi_;} + const int hwAsymEt() const { return hwAsymEt_;} + const int minBiasHFP1() const { return minBiasHFP1_;} + const int hwMissHt() const { return hwMissHt_;} + const int hwMissHtPhi() const { return hwMissHtPhi_;} + const int hwAsymHt() const { return hwAsymHt_;} + const int minBiasHFM1() const { return minBiasHFM1_;} + const int hwMissEtHF() const { return hwMissEtHF_;} + const int hwMissEtHFPhi() const { return hwMissEtHFPhi_;} + const int hwAsymEtHF() const { return hwAsymEtHF_;} + const int hwMissHtHF() const { return hwMissHtHF_;} + const int hwMissHtHFPhi() const { return hwMissHtHFPhi_;} + const int hwAsymHtHF() const { return hwAsymHtHF_;} + const int centrality() const { return centrality_;} + + private: + int hwTotalEt_; + int hwTotalEtEm_; + int hwTotalHt_; + int hwMissEt_; + int hwMissEtPhi_; + int hwMissHt_; + int hwMissHtPhi_; + int hwMissEtHF_; + int hwMissEtHFPhi_; + int hwMissHtHF_; + int hwMissHtHFPhi_; + int hwAsymEt_; + int hwAsymHt_; + int hwAsymEtHF_; + int hwAsymHtHF_; + int minBiasHFP0_; + int minBiasHFM0_; + int minBiasHFP1_; + int minBiasHFM1_; + int towerCount_; + int centrality_; + }; + +} // namespace l1ScoutingRun3 +#endif // DataFormats_L1Scouting_L1ScoutingCalo_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h new file mode 100644 index 0000000000000..61bb5a1916cec --- /dev/null +++ b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h @@ -0,0 +1,118 @@ +#ifndef DataFormats_L1Scouting_L1ScoutingMuon_h +#define DataFormats_L1Scouting_L1ScoutingMuon_h + +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" + +namespace l1ScoutingRun3 { + + class ScMuon; + typedef OrbitCollection ScMuonOrbitCollection; + class ScMuon { + public: + + ScMuon() + : hwPt_(0), + hwEta_(0), + hwPhi_(0), + hwQual_(0), + hwChrg_(0), + hwChrgv_(0), + hwIso_(0), + tfIndex_(0), + hwEtaAtVtx_(0), + hwPhiAtVtx_(0), + hwPtUnconstrained_(0), + hwDXY_(0) {} + + ScMuon( + int hwPt, + int hwEta, + int hwPhi, + int hwQual, + int hwChrg, + int hwChrgv, + int hwIso, + int tfIndex, + int hwEtaAtVtx, + int hwPhiAtVtx, + int hwPtUnconstrained, + int hwDXY) + : hwPt_(hwPt), + hwEta_(hwEta), + hwPhi_(hwPhi), + hwQual_(hwQual), + hwChrg_(hwChrg), + hwChrgv_(hwChrgv), + hwIso_(hwIso), + tfIndex_(tfIndex), + hwEtaAtVtx_(hwEtaAtVtx), + hwPhiAtVtx_(hwPhiAtVtx), + hwPtUnconstrained_(hwPtUnconstrained), + hwDXY_(hwDXY) {} + + ScMuon(const ScMuon& other) = default; + ScMuon(ScMuon&& other) = default; + ScMuon & operator=(const ScMuon& other) = default; + ScMuon & operator=(ScMuon&& other) = default; + + void swap(ScMuon& other){ + using std::swap; + swap(hwPt_, other.hwPt_); + swap(hwEta_, other.hwEta_); + swap(hwPhi_, other.hwPhi_); + swap(hwQual_, other.hwQual_); + swap(hwChrg_, other.hwChrg_); + swap(hwChrgv_, other.hwChrgv_); + swap(hwIso_, other.hwIso_); + swap(tfIndex_, other.tfIndex_); + swap(hwEtaAtVtx_, other.hwEtaAtVtx_); + swap(hwPhiAtVtx_, other.hwPhiAtVtx_); + swap(hwPtUnconstrained_, other.hwPtUnconstrained_); + swap(hwDXY_, other.hwDXY_); + } + + void setHwPt(int hwPt) { hwPt_= hwPt;} + void setHwEta(int hwEta) { hwEta_= hwEta;} + void setHwPhi(int hwPhi) { hwPhi_= hwPhi;} + void setHwQual(int hwQual) { hwQual_= hwQual;} + void setHwChrg(int hwChrg) { hwChrg_= hwChrg;} + void setHwChrgv(int hwChrgv) { hwChrgv_= hwChrgv;} + void setHwIso(int hwIso) { hwIso_= hwIso;} + void setTfIndex(int tfIndex) { tfIndex_= tfIndex;} + void setHwEtaAtVtx(int hwEtaAtVtx) { hwEtaAtVtx_= hwEtaAtVtx;} + void setHwPhiAtVtx(int hwPhiAtVtx) { hwPhiAtVtx_= hwPhiAtVtx;} + void setHwPtUnconstrained(int hwPtUnconstrained) { hwPtUnconstrained_= hwPtUnconstrained;} + void setHwDXY(int hwDXY) { hwDXY_= hwDXY;} + + int hwPt() const {return hwPt_;} + int hwEta() const {return hwEta_;} + int hwPhi() const {return hwPhi_;} + int hwQual() const {return hwQual_;} + int hwCharge() const {return hwChrg_;} + int hwChargeValid() const {return hwChrgv_;} + int hwIso() const {return hwIso_;} + int hwIndex() const {return tfIndex_;} + int hwEtaAtVtx() const {return hwEtaAtVtx_;} + int hwPhiAtVtx() const {return hwPhiAtVtx_;} + int hwPtUnconstrained() const {return hwPtUnconstrained_;} + int hwDXY() const {return hwDXY_;} + int tfMuonIndex() const {return tfIndex_;} + + private: + int hwPt_; + int hwEta_; + int hwPhi_; + int hwQual_; + int hwChrg_; + int hwChrgv_; + int hwIso_; + int tfIndex_; + int hwEtaAtVtx_; + int hwPhiAtVtx_; + int hwPtUnconstrained_; + int hwDXY_; + }; + +} // namespace l1ScoutingRun3 + +#endif // DataFormats_L1Scouting_L1ScoutingMuon_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/OrbitCollection.h b/DataFormats/L1Scouting/interface/OrbitCollection.h new file mode 100644 index 0000000000000..adbf5f8f24515 --- /dev/null +++ b/DataFormats/L1Scouting/interface/OrbitCollection.h @@ -0,0 +1,193 @@ +#ifndef DataFormats_L1Scouting_OrbitCollection_h +#define DataFormats_L1Scouting_OrbitCollection_h + +#include "DataFormats/Common/interface/FillView.h" +#include "DataFormats/Common/interface/fillPtrVector.h" +#include "DataFormats/Common/interface/setPtr.h" +#include "DataFormats/Common/interface/traits.h" +#include "FWCore/Utilities/interface/GCCPrerequisite.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" + +#include +#include +template +class OrbitCollection { + public: + typedef typename std::vector::iterator iterator; + typedef typename std::vector::const_iterator const_iterator; + typedef T value_type; + typedef typename std::vector::size_type size_type; + + // initialize the offset vector with 0s from 0 to 3565. + // BX range is [1,3564], an extra entry is needed for the offserts of the last BX + OrbitCollection(): bxOffsets_(3566, 0), data_(0) {} + OrbitCollection( + std::vector> &orbitBuffer, + unsigned nObjects=0): bxOffsets_(3566, 0), data_(nObjects) { + fillAndClear(orbitBuffer, nObjects); + } + + OrbitCollection(const OrbitCollection& other) = default; + OrbitCollection(OrbitCollection&& other) = default; + OrbitCollection & operator=(const OrbitCollection& other) = default; + OrbitCollection & operator=(OrbitCollection&& other) = default; + + void swap(OrbitCollection& other){ + using std::swap; + swap(bxOffsets_, other.bxOffsets_); + swap(data_, other.data_); + } + + // Fill the orbit collection starting from a vector of vectors, one per BX. + // Objects are moved into a flat data vector and a vector is used to keep track + // of the starting offset of every BX. + // Input vector must be sorted with increasing BX and contain 3565 elements (BX in [1,3564]) + void fillAndClear(std::vector> &orbitBuffer, unsigned nObjects=0){ + if (orbitBuffer.size()!=3565) + throw cms::Exception("OrbitCollection::fillAndClear") + << "Trying to fill the collection by passing an orbit buffer with incorrect size. " + << "Passed " << orbitBuffer.size() << ", expected 3565" << std::endl; + data_.reserve(nObjects); + bxOffsets_[0] = 0; + unsigned bxIdx = 1; + for (auto &bxVec: orbitBuffer){ + // increase offset by the currect vec size + bxOffsets_[bxIdx] = bxOffsets_[bxIdx-1] + bxVec.size(); + + // if bxVec contains something, move it into the data_ vector + // and clear bxVec objects + if (bxVec.size()>0){ + data_.insert(data_.end(), + std::make_move_iterator(bxVec.begin()), + std::make_move_iterator(bxVec.end()) + ); + bxVec.clear(); + } + + // increment bx index + bxIdx++; + } + } + + // iterate over all elements contained in data + const_iterator begin() const {return data_.begin();} + const_iterator end() const {return data_.end();} + + // iterate over elements of a bx + const_iterator begin(unsigned bx) const { return bxRange(bx).first; } + const_iterator end(unsigned bx) const { return bxRange(bx).second; } + + std::pair bxRange(unsigned bx) const { + if (bx>3564) + throw cms::Exception("OrbitCollection::getBxVectorView") + << "Trying to access and object outside the orbit range. " + << " BX = " << bx << std::endl; + + if (getBxSize(bx)>0){ + return std::make_pair(data_.begin()+bxOffsets_[bx], data_.begin()+bxOffsets_[bx+1]); + } else { + return std::make_pair(end(), end()); + } + } + + // get number of objects stored in a BX + int getBxSize(unsigned bx) const { + if (bx>3564){ + edm::LogWarning ("OrbitCollection") + << "Called getBxSize() of a bx out of the orbit range." + << " BX = " << bx << std::endl; + return 0; + } + if (data_.size()==0) { + edm::LogWarning ("OrbitCollection") + << "Called getBxSize() but collection is empty." << std::endl; + } + return bxOffsets_[bx+1] - bxOffsets_[bx]; + } + + // get i-th object from BX + const T& getBxObject(unsigned bx, unsigned i) const { + if (bx>3564) + throw cms::Exception("OrbitCollection::getBxObject") + << "Trying to access and object outside the orbit range. " + << " BX = " << bx << std::endl; + if (i>=getBxSize(bx)) + throw cms::Exception("OrbitCollection::getBxObject") + << "Trying to get element " << i << " but for" + << " BX = " << bx << " there are " << getBxSize(bx) + << " elements." < getFilledBxs() const { + std::vector filledBxVec; + if (data_.size()>0){ + for (unsigned bx=0; bx<3565; bx++) { + if (getBxSize(bx)>0) filledBxVec.push_back(bx); + } + } + return filledBxVec; + } + + int size() const { return data_.size(); } + + T& operator[](std::size_t i) { return data_[i]; } + const T& operator[](std::size_t i) const { return data_[i]; } + + void fillView(edm::ProductID const& id, + std::vector& pointers, + edm::FillViewHelperVector& helpers) const { + edm::detail::reallyFillView(*this, id, pointers, helpers); + } + + void setPtr(std::type_info const& toType, unsigned long index, void const*& ptr) const { + edm::detail::reallySetPtr >(*this, toType, index, ptr); + } + void fillPtrVector(std::type_info const& toType, + std::vector const& indices, + std::vector& ptrs) const { + edm::detail::reallyfillPtrVector(*this, toType, indices, ptrs); + } + + private: + // store data vector and BX offsets as flat vectors. + // offset contains one entry per BX, indicating the starting index + // of the objects for that BX. + std::vector bxOffsets_; + std::vector data_; +}; + +namespace edm { + template + inline void fillView(OrbitCollection const& obj, + edm::ProductID const& id, + std::vector& pointers, + edm::FillViewHelperVector& helpers) { + obj.fillView(id, pointers, helpers); + } + template + struct has_fillView > { + static bool const value = true; + }; +} // namespace edm +template +inline void setPtr(OrbitCollection const& obj, std::type_info const& toType, unsigned long index, void const*& ptr) { + obj.setPtr(toType, index, ptr); +} +template +inline void fillPtrVector(OrbitCollection const& obj, + std::type_info const& toType, + std::vector const& indices, + std::vector& ptrs) { + obj.fillPtrVector(toType, indices, ptrs); +} +namespace edm { + template + struct has_setPtr > { + static bool const value = true; + }; +} // namespace edm + +#endif // DataFormats_L1Scouting_OrbitCollection_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/classes.h b/DataFormats/L1Scouting/src/classes.h new file mode 100644 index 0000000000000..4e473b6ddd498 --- /dev/null +++ b/DataFormats/L1Scouting/src/classes.h @@ -0,0 +1,16 @@ +#include "DataFormats/Common/interface/RefProd.h" +#include "DataFormats/Common/interface/Wrapper.h" + +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" + +namespace l1ScoutingRun3 { + + edm::Wrapper ScMuonOrbitCollectionWrapper; + edm::Wrapper ScJetOrbitCollectionWrapper; + edm::Wrapper ScEGammaOrbitCollectionWrapper; + edm::Wrapper ScTauOrbitCollectionWrapper; + edm::Wrapper ScEtSumOrbitCollectionWrapper; + edm::Wrapper ScBxSumsOrbitCollectionWrapper; +} \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/classes_def.xml b/DataFormats/L1Scouting/src/classes_def.xml new file mode 100644 index 0000000000000..9296247961b8b --- /dev/null +++ b/DataFormats/L1Scouting/src/classes_def.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/BuildFile.xml b/DataFormats/L1ScoutingRawData/BuildFile.xml new file mode 100644 index 0000000000000..832b36382f2f1 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/BuildFile.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h b/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h new file mode 100644 index 0000000000000..e054122e79bf2 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h @@ -0,0 +1,26 @@ +#ifndef L1ScoutingRawData_SDSNumbering_h +#define L1ScoutingRawData_SDSNumbering_h + +/** + * + * This class holds the Scouting Data Source (SDS) + * numbering scheme for the Level 1 scouting system + * + */ + +class SDSNumbering { + public: + static constexpr int lastSDSId() { return MAXSDSID; } + + enum { + NOT_A_SDSID = -1, + MAXSDSID = 32, + GmtSDSID = 1, + CaloSDSID = 2, + GtSDSID = 4, + BmtfMinSDSID = 10, + BmtfMaxSDSID = 21 + }; +}; + +#endif // L1ScoutingRawData_SDSNumbering_h \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h b/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h new file mode 100644 index 0000000000000..8d8c8ac607052 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h @@ -0,0 +1,38 @@ +#ifndef L1ScoutingRawData_SDSRawDataCollection_h +#define L1ScoutingRawData_SDSRawDataCollection_h + +#include "DataFormats/FEDRawData/interface/FEDRawData.h" +#include "DataFormats/Common/interface/traits.h" +#include "FWCore/Utilities/interface/GCCPrerequisite.h" + + +/** + * + * This collection holds the raw data for all the + * scouting data sources. It is a collection of FEDRawData + * + */ + +class SRDCollection: public edm::DoNotRecordParents { + public: + SRDCollection(); + + virtual ~SRDCollection(); + + // retrive data for the scouting source at sourceId + const FEDRawData& FEDData(int sourceId) const; + + // retrive data for the scouting source at sourceId + FEDRawData& FEDData(int sourceId); + + SRDCollection(const SRDCollection&); + + void swap(SRDCollection& other) { data_.swap(other.data_); } + + private: + std::vector data_; // vector of raw data +}; + +inline void swap(SRDCollection& a, SRDCollection& b) { a.swap(b); } + +#endif // L1ScoutingRawData_SDSRawDataCollection_h \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc b/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc new file mode 100644 index 0000000000000..f08e423693f4f --- /dev/null +++ b/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc @@ -0,0 +1,12 @@ +#include +#include + +SRDCollection::SRDCollection() : data_(SDSNumbering::lastSDSId() + 1) {} + +SRDCollection::SRDCollection(const SRDCollection& in) : data_(in.data_) {} + +SRDCollection::~SRDCollection() {} + +const FEDRawData& SRDCollection::FEDData(int sourceId) const { return data_[sourceId]; } + +FEDRawData& SRDCollection::FEDData(int sourceId) { return data_[sourceId]; } \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/src/classes.h b/DataFormats/L1ScoutingRawData/src/classes.h new file mode 100644 index 0000000000000..9801506e6e233 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/src/classes.h @@ -0,0 +1,4 @@ +#include +#include + +#include \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/src/classes_def.xml b/DataFormats/L1ScoutingRawData/src/classes_def.xml new file mode 100644 index 0000000000000..b86b822479c46 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/src/classes_def.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/BuildFile.xml b/EventFilter/L1ScoutingRawToDigi/BuildFile.xml new file mode 100644 index 0000000000000..04bc54b4991df --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/BuildFile.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/interface/blocks.h b/EventFilter/L1ScoutingRawToDigi/interface/blocks.h new file mode 100644 index 0000000000000..9df5b230b4b10 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/interface/blocks.h @@ -0,0 +1,50 @@ +#ifndef L1ScoutingRawToDigi_blocks_h +#define L1ScoutingRawToDigi_blocks_h + +#include + +namespace l1ScoutingRun3 { + +namespace ugmt { + + struct muon { + uint32_t f; + uint32_t s; + uint32_t extra; + }; + + struct block { + uint32_t bx; + uint32_t orbit; + muon mu[16]; + }; +} + +namespace demux { + + // unrolled frame block + struct block { + uint32_t header; + uint32_t bx; + uint32_t orbit; + uint32_t link0; + uint32_t jet2[6]; + uint32_t link1; + uint32_t jet1[6]; + uint32_t link2; + uint32_t egamma2[6]; + uint32_t link3; + uint32_t egamma1[6]; + uint32_t link4; + uint32_t empty[6]; + uint32_t link5; + uint32_t sum[6]; + uint32_t link6; + uint32_t tau2[6]; + uint32_t link7; + uint32_t tau1[6]; + }; +} + +} +#endif // L1ScoutingRawToDigi_blocks_h diff --git a/EventFilter/L1ScoutingRawToDigi/interface/masks.h b/EventFilter/L1ScoutingRawToDigi/interface/masks.h new file mode 100644 index 0000000000000..add18839cf66b --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/interface/masks.h @@ -0,0 +1,108 @@ +#ifndef L1ScoutingRawToDigi_masks_h +#define L1ScoutingRawToDigi_masks_h + +#include +#include "shifts.h" + +namespace l1ScoutingRun3 { + +namespace ugmt { + // struct masks{ + struct masksMuon { + // bx word: 16 bits used for actual bx, MS 4 bits are muon type + // 0xf intermediate, + // 0x0 final + // following 4 bits for link id + static constexpr uint32_t bx = 0x1fff; + static constexpr uint32_t interm = 0x0001; + //masks for muon 64 bits + static constexpr uint32_t phiext = 0x03ff; + static constexpr uint32_t pt = 0x01ff; + static constexpr uint32_t ptuncon = 0x00ff; // 8 bits + static constexpr uint32_t qual = 0x000f; + static constexpr uint32_t etaext = 0x01ff; + static constexpr uint32_t etaextv = 0x00ff; + static constexpr uint32_t etaexts = 0x0100; + static constexpr uint32_t iso = 0x0003; + static constexpr uint32_t chrg = 0x0001; + static constexpr uint32_t chrgv = 0x0001; + static constexpr uint32_t index = 0x007f; + static constexpr uint32_t phi = 0x03ff; + static constexpr uint32_t eta = 0x01ff; + static constexpr uint32_t etav = 0x00ff; + static constexpr uint32_t etas = 0x0100; + static constexpr uint32_t dxy = 0x0003; + }; +} + + + +namespace demux { + // struct masksCaloJet{ + struct masksJet { + static constexpr uint32_t ET = 0x07ff; + static constexpr uint32_t eta = 0x00ff; + static constexpr uint32_t phi = 0x00ff; + static constexpr uint32_t disp = 0x0001; + static constexpr uint32_t qual = 0x0003; + }; + + // struct masksCaloEGamma{ + struct masksEGamma { + static constexpr uint32_t ET = 0x01ff; + static constexpr uint32_t eta = 0x00ff; + static constexpr uint32_t phi = 0x00ff; + static constexpr uint32_t iso = 0x0003; + }; + + // struct masksCaloTau{ + struct masksTau { + static constexpr uint32_t ET = 0x01ff; + static constexpr uint32_t eta = 0x00ff; + static constexpr uint32_t phi = 0x00ff; + static constexpr uint32_t iso = 0x0003; + }; + + // struct masksCaloESums{ + struct masksESums { + static constexpr uint32_t ETEt = 0x0fff; // Et of ET object + static constexpr uint32_t ETEttem = 0x0fff; + static constexpr uint32_t ETMinBiasHF = 0x000f; + + static constexpr uint32_t HTEt = 0x0fff; // Et of HT object + static constexpr uint32_t HTtowerCount = 0x1fff; + static constexpr uint32_t HTMinBiasHF = 0x000f; + + static constexpr uint32_t ETmissEt = 0x0fff; + static constexpr uint32_t ETmissPhi = 0x00ff; + static constexpr uint32_t ETmissASYMET = 0x00ff; + static constexpr uint32_t ETmissMinBiasHF = 0x000f; + + static constexpr uint32_t HTmissEt = 0x0fff; + static constexpr uint32_t HTmissPhi = 0x00ff; + static constexpr uint32_t HTmissASYMHT = 0x00ff; + static constexpr uint32_t HTmissMinBiasHF = 0x000f; + + static constexpr uint32_t ETHFmissEt = 0x0fff; + static constexpr uint32_t ETHFmissPhi = 0x00ff; + static constexpr uint32_t ETHFmissASYMETHF = 0x00ff; + static constexpr uint32_t ETHFmissCENT = 0x0003; + + static constexpr uint32_t HTHFmissEt = 0x0fff; + static constexpr uint32_t HTHFmissPhi = 0x00ff; + static constexpr uint32_t HTHFmissASYMHTHF = 0x00ff; + static constexpr uint32_t HTHFmissCENT = 0x0003; + }; +} + +struct header_masks { + static constexpr uint32_t bxmatch = 0x00ff << header_shifts::bxmatch; + static constexpr uint32_t mAcount = 0x000f << header_shifts::mAcount; + static constexpr uint32_t orbitmatch = 0x00ff << header_shifts::orbitmatch; + static constexpr uint32_t warningTestEnabled = 0x0001 << header_shifts::warningTestEnabled; + static constexpr uint32_t mBcount = 0x000f << header_shifts::mBcount; + static constexpr uint32_t sBmtfCount = 0x000f << header_shifts::sBmtfCount; +}; + +} +#endif // L1ScoutingRawToDigi_masks_h diff --git a/EventFilter/L1ScoutingRawToDigi/interface/shifts.h b/EventFilter/L1ScoutingRawToDigi/interface/shifts.h new file mode 100644 index 0000000000000..1d1bb04189e67 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/interface/shifts.h @@ -0,0 +1,102 @@ +#ifndef L1ScoutingRawToDigi_shifts_h +#define L1ScoutingRawToDigi_shifts_h + +#include + +namespace l1ScoutingRun3 { + +namespace ugmt { + // struct shifts{ + struct shiftsMuon { + // bx word: 16 bits used for actual bx, MS 4 bits are muon type + // 0xf intermediate, + // 0x0 final + // following 4 bits for link id + static constexpr uint32_t bx = 0; + static constexpr uint32_t interm = 31; // updated for new run3 format (tj) + // shifts for muon 64 bits + static constexpr uint32_t phiext = 0; + static constexpr uint32_t pt = 10; + static constexpr uint32_t qual = 19; + static constexpr uint32_t etaext = 23; + static constexpr uint32_t iso = 0; + static constexpr uint32_t chrg = 2; + static constexpr uint32_t chrgv = 3; + static constexpr uint32_t index = 4; + static constexpr uint32_t phi = 11; + static constexpr uint32_t eta1 = 13; + static constexpr uint32_t eta2 = 22; + static constexpr uint32_t ptuncon = 21; + static constexpr uint32_t dxy = 30; + }; +} + +namespace demux { + // struct shiftsCaloJet{ + struct shiftsJet { + static constexpr uint32_t ET = 0; + static constexpr uint32_t eta = 11; + static constexpr uint32_t phi = 19; + static constexpr uint32_t disp = 27; + static constexpr uint32_t qual = 28; + }; + + // struct shiftsCaloEGamma{ + struct shiftsEGamma { + static constexpr uint32_t ET = 0; + static constexpr uint32_t eta = 9; + static constexpr uint32_t phi = 17; + static constexpr uint32_t iso = 25; + }; + + // struct shiftsCaloTau{ + struct shiftsTau { + static constexpr uint32_t ET = 0; + static constexpr uint32_t eta = 9; + static constexpr uint32_t phi = 17; + static constexpr uint32_t iso = 25; + }; + + // struct shiftsCaloESums{ + struct shiftsESums { + static constexpr uint32_t ETEt = 0; // Et of ET object + static constexpr uint32_t ETEttem = 12; + static constexpr uint32_t ETMinBiasHF = 28; + + static constexpr uint32_t HTEt = 0; // Et of HT object + static constexpr uint32_t HTtowerCount = 12; + static constexpr uint32_t HTMinBiasHF = 28; + + static constexpr uint32_t ETmissEt = 0; + static constexpr uint32_t ETmissPhi = 12; + static constexpr uint32_t ETmissASYMET = 20; + static constexpr uint32_t ETmissMinBiasHF = 28; + + static constexpr uint32_t HTmissEt = 0; + static constexpr uint32_t HTmissPhi = 12; + static constexpr uint32_t HTmissASYMHT = 20; + static constexpr uint32_t HTmissMinBiasHF = 28; + + static constexpr uint32_t ETHFmissEt = 0; + static constexpr uint32_t ETHFmissPhi = 12; + static constexpr uint32_t ETHFmissASYMETHF = 20; + static constexpr uint32_t ETHFmissCENT = 28; + + static constexpr uint32_t HTHFmissEt = 0; + static constexpr uint32_t HTHFmissPhi = 12; + static constexpr uint32_t HTHFmissASYMHTHF = 20; + static constexpr uint32_t HTHFmissCENT = 28; + }; +} + +struct header_shifts { + static constexpr uint32_t bxmatch = 24; + static constexpr uint32_t mAcount = 16; + static constexpr uint32_t orbitmatch = 8; + static constexpr uint32_t warningTestEnabled = 8; + static constexpr uint32_t mBcount = 0; + static constexpr uint32_t sBmtfCount = 0; +}; + +} +#endif // L1ScoutingRawToDigi_shifts_h diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/BuildFile.xml b/EventFilter/L1ScoutingRawToDigi/plugins/BuildFile.xml new file mode 100644 index 0000000000000..dbb651083a6fb --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/plugins/BuildFile.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc new file mode 100644 index 0000000000000..7cc3df1ef42a0 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc @@ -0,0 +1,318 @@ +#include "EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h" + +ScCaloRawToDigi::ScCaloRawToDigi(const edm::ParameterSet& iConfig) { + using namespace edm; + using namespace l1ScoutingRun3; + srcInputTag = iConfig.getParameter("srcInputTag"); + enableAllSums_ = iConfig.getUntrackedParameter("enableAllSums", false); + debug_ = iConfig.getUntrackedParameter("debug", false); + + orbitBufferJets_ = std::vector>(3565); + orbitBufferEGammas_ = std::vector>(3565); + orbitBufferTaus_ = std::vector>(3565); + orbitBufferEtSums_ = std::vector>(3565); + + nJetsOrbit_=0; nEGammasOrbit_=0; nTausOrbit_=0; nEtSumsOrbit_=0; + + produces().setBranchAlias( "ScJetOrbitCollection" ); + produces().setBranchAlias( "ScTauOrbitCollection" ); + produces().setBranchAlias( "ScEGammaOrbitCollection" ); + produces().setBranchAlias( "ScBxSumsOrbitCollection" ); + + rawToken = consumes(srcInputTag); + } + +ScCaloRawToDigi::~ScCaloRawToDigi() {}; + +void ScCaloRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { + using namespace edm; + using namespace l1ScoutingRun3; + + Handle ScoutingRawDataCollection; + iEvent.getByToken( rawToken, ScoutingRawDataCollection ); + + const FEDRawData& sourceRawData = ScoutingRawDataCollection->FEDData(SDSNumbering::CaloSDSID); + size_t orbitSize = sourceRawData.size(); + + std::unique_ptr unpackedJets(new ScJetOrbitCollection); + std::unique_ptr unpackedTaus(new ScTauOrbitCollection); + std::unique_ptr unpackedEGammas(new ScEGammaOrbitCollection); + std::unique_ptr unpackedEtSums(new ScBxSumsOrbitCollection); + + if((sourceRawData.size()==0) && debug_ ){ + std::cout << "No raw data for CALO source\n"; + } + + // unpack current orbit and store data into the orbitBufferr + unpackOrbit(sourceRawData.data(), orbitSize); + + // fill orbit collection and clear the Bx buffer vector + unpackedJets->fillAndClear(orbitBufferJets_, nJetsOrbit_); + unpackedEGammas->fillAndClear(orbitBufferEGammas_, nEGammasOrbit_); + unpackedTaus->fillAndClear(orbitBufferTaus_, nTausOrbit_); + unpackedEtSums->fillAndClear(orbitBufferEtSums_, nEtSumsOrbit_); + + // store collections in the event + iEvent.put( std::move(unpackedJets) ); + iEvent.put( std::move(unpackedTaus) ); + iEvent.put( std::move(unpackedEGammas) ); + iEvent.put( std::move(unpackedEtSums) ); +} + +void ScCaloRawToDigi::unpackOrbit( + const unsigned char* buf, size_t len + ){ + using namespace l1ScoutingRun3; + + // reset counters + nJetsOrbit_=0; nEGammasOrbit_=0; nTausOrbit_=0; nEtSumsOrbit_=0; + + size_t pos = 0; + + while (pos < len) { + + assert( pos+sizeof(demux::block) <= len ); + + demux::block *bl = (demux::block *)(buf + pos); + pos += sizeof(demux::block); + + assert(pos <= len); + uint32_t orbit = bl->orbit & 0x7FFFFFFF; + uint32_t bx = bl->bx; + + if(debug_) { + std::cout << "CALO Orbit " << orbit << ", BX -> "<< bx << std::endl; + } + + // unpack jets from first link + if (debug_) std::cout << "--- Jets link 1 ---\n"; + unpackLinkJets(bl->jet1, bx); + + // unpack jets from second link + if (debug_) std::cout << "--- Jets link 2 ---\n"; + unpackLinkJets(bl->jet2, bx); + + // unpack eg from first link + if (debug_) std::cout << "--- E/g link 1 ---\n"; + unpackLinkEGammas(bl->egamma1, bx); + + // unpack eg from second link link + if (debug_) std::cout << "--- E/g link 2 ---\n"; + unpackLinkEGammas(bl->egamma2, bx); + + // unpack taus from first link + if (debug_) std::cout << "--- Taus link 1 ---\n"; + unpackLinkTaus(bl->tau1, bx); + + // unpack taus from second link + if (debug_) std::cout << "--- Taus link 2 ---\n"; + unpackLinkTaus(bl->tau2, bx); + + // unpack et sums + if (debug_) std::cout << "--- Sums ---\n"; + unpackEtSums(bl->sum, bx); + + } // end of bx objects + +} + +void ScCaloRawToDigi::unpackLinkJets(uint32_t* dataBlock, int bx){ + using namespace l1ScoutingRun3; + + int32_t ET(0), Eta(0), Phi(0), Qual(0); + for (uint32_t i=0; i<6; i++) { + ET = ((dataBlock[i] >> demux::shiftsJet::ET) & demux::masksJet::ET); + + if (ET != 0) { + Eta = ((dataBlock[i] >> demux::shiftsJet::eta) & demux::masksJet::eta); + Phi = ((dataBlock[i] >> demux::shiftsJet::phi) & demux::masksJet::phi); + Qual = ((dataBlock[i] >> demux::shiftsJet::qual) & demux::masksJet::qual); + + if (Eta > 127) Eta = Eta - 256; + + ScJet jet(ET, Eta, Phi, Qual); + orbitBufferJets_[bx].push_back(jet); + nJetsOrbit_ ++; + + if (debug_){ + std::cout << "Jet " << i << std::endl; + std::cout << " Raw: 0x" << std::hex << dataBlock[i] << std::dec << std::endl; + printScJet(jet); + } + } + } // end link jets unpacking loop +} + +void ScCaloRawToDigi::unpackLinkEGammas(uint32_t* dataBlock, int bx){ + using namespace l1ScoutingRun3; + + int32_t ET(0), Eta(0), Phi(0), Iso(0); + for (uint32_t i=0; i<6; i++) { + ET = ((dataBlock[i] >> demux::shiftsEGamma::ET) & demux::masksEGamma::ET); + if (ET != 0) { + Eta = ((dataBlock[i] >> demux::shiftsEGamma::eta) & demux::masksEGamma::eta); + Phi = ((dataBlock[i] >> demux::shiftsEGamma::phi) & demux::masksEGamma::phi); + Iso = ((dataBlock[i] >> demux::shiftsEGamma::iso) & demux::masksEGamma::iso); + + if (Eta > 127) Eta = Eta - 256; + + ScEGamma eGamma(ET, Eta, Phi, Iso); + orbitBufferEGammas_[bx].push_back(eGamma); + nEGammasOrbit_ ++; + + if (debug_){ + std::cout << "E/g " << i << std::endl; + std::cout << " Raw: 0x" << std::hex << dataBlock[i] << std::dec << std::endl; + printScEGamma(eGamma); + } + } + } // end link e/gammas unpacking loop +} + +void ScCaloRawToDigi::unpackLinkTaus(uint32_t* dataBlock, int bx){ + using namespace l1ScoutingRun3; + + int32_t ET(0), Eta(0), Phi(0), Iso(0); + for (uint32_t i=0; i<6; i++) { + ET = ((dataBlock[i] >> demux::shiftsTau::ET) & demux::masksTau::ET); + if (ET != 0) { + Eta = ((dataBlock[i] >> demux::shiftsTau::eta) & demux::masksTau::eta); + Phi = ((dataBlock[i] >> demux::shiftsTau::phi) & demux::masksTau::phi); + Iso = ((dataBlock[i] >> demux::shiftsTau::iso) & demux::masksTau::iso); + + if (Eta > 127) Eta = Eta - 256; + + ScTau tau(ET, Eta, Phi, Iso); + orbitBufferTaus_[bx].push_back(tau); + nTausOrbit_ ++; + + if (debug_){ + std::cout << "Tau " << i << std::endl; + std::cout << " Raw: 0x" << std::hex << dataBlock[i] << std::dec << std::endl; + printScTau(tau); + } + } + } // end link taus unpacking loop +} + +void ScCaloRawToDigi::unpackEtSums(uint32_t* dataBlock, int bx){ + using namespace l1ScoutingRun3; + + ScBxSums bxSums; + + int32_t ETEt(0), ETEttem(0), ETMinBiasHFP0(0); // ET + int32_t HTEt(0), HTtowerCount(0), HTMinBiasHFM0(0); // HT + int32_t ETmissEt(0), ETmissPhi(0), ETmissASYMET(0), ETmissMinBiasHFP1(0); //ETMiss + int32_t HTmissEt(0), HTmissPhi(0), HTmissASYMHT(0), HTmissMinBiasHFM1(0); // HTMiss + int32_t ETHFmissEt(0), ETHFmissPhi(0), ETHFmissASYMETHF(0), ETHFmissCENT(0); // ETHFMiss + int32_t HTHFmissEt(0), HTHFmissPhi(0), HTHFmissASYMHTHF(0), HTHFmissCENT(0); // HTHFMiss + + // ET block + ETEt = ((dataBlock[0] >> demux::shiftsESums::ETEt) & demux::masksESums::ETEt); + ETEttem = ((dataBlock[0] >> demux::shiftsESums::ETEttem) & demux::masksESums::ETEttem); + + bxSums.setHwTotalEt(ETEt); + bxSums.setHwTotalEtEm(ETEttem); + + // HT block + HTEt = ((dataBlock[1] >> demux::shiftsESums::HTEt) & demux::masksESums::HTEt); + + bxSums.setHwTotalHt(HTEt); + + // ETMiss block + ETmissEt = ((dataBlock[2] >> demux::shiftsESums::ETmissEt) & demux::masksESums::ETmissEt); + ETmissPhi = ((dataBlock[2] >> demux::shiftsESums::ETmissPhi) & demux::masksESums::ETmissPhi); + + if (ETmissEt>0){ + bxSums.setHwMissEt(ETmissEt); + bxSums.setHwMissEtPhi(ETmissPhi); + } + + // HTMiss block + HTmissEt = ((dataBlock[3] >> demux::shiftsESums::HTmissEt) & demux::masksESums::HTmissEt); + HTmissPhi = ((dataBlock[3] >> demux::shiftsESums::HTmissPhi) & demux::masksESums::HTmissPhi); + + if (HTmissEt>0){ + bxSums.setHwMissHt(HTmissEt); + bxSums.setHwMissHtPhi(HTmissPhi); + } + + // ETHFMiss block + ETHFmissEt = ((dataBlock[4] >> demux::shiftsESums::ETHFmissEt) & demux::masksESums::ETHFmissEt); + ETHFmissPhi = ((dataBlock[4] >> demux::shiftsESums::ETHFmissPhi) & demux::masksESums::ETHFmissPhi); + + if (ETHFmissEt>0){ + bxSums.setHwMissEtHF(ETHFmissEt); + bxSums.setHwMissEtHFPhi(ETHFmissPhi); + } + + // HTHFMiss block + HTHFmissEt = ((dataBlock[5] >> demux::shiftsESums::ETHFmissEt) & demux::masksESums::ETHFmissEt); + HTHFmissPhi = ((dataBlock[5] >> demux::shiftsESums::ETHFmissPhi) & demux::masksESums::ETHFmissPhi); + + if (HTHFmissEt>0) { + bxSums.setHwMissHtHF(HTHFmissEt); + bxSums.setHwMissHtHFPhi(HTHFmissPhi); + } + + // Insert additional sums + if (enableAllSums_) { + + // ET block + ETMinBiasHFP0 = ((dataBlock[0] >> demux::shiftsESums::ETMinBiasHF) & demux::masksESums::ETMinBiasHF); + bxSums.setMinBiasHFP0(ETMinBiasHFP0); + + // HT block + HTtowerCount = ((dataBlock[1] >> demux::shiftsESums::HTtowerCount) & demux::masksESums::HTtowerCount); + HTMinBiasHFM0 = ((dataBlock[1] >> demux::shiftsESums::HTMinBiasHF) & demux::masksESums::HTMinBiasHF); + + bxSums.setTowerCount(HTtowerCount); + bxSums.setMinBiasHFM0(HTMinBiasHFM0); + + // ET Miss block + ETmissASYMET = ((dataBlock[2] >> demux::shiftsESums::ETmissASYMET) & demux::masksESums::ETmissASYMET); + ETmissMinBiasHFP1 = ((dataBlock[2] >> demux::shiftsESums::ETmissMinBiasHF) & demux::masksESums::ETmissMinBiasHF); + bxSums.setHwAsymEt(ETmissASYMET); + bxSums.setMinBiasHFP1(ETmissMinBiasHFP1); + + // HT Miss block + HTmissASYMHT = ((dataBlock[3] >> demux::shiftsESums::HTmissASYMHT) & demux::masksESums::HTmissASYMHT); + HTmissMinBiasHFM1 = ((dataBlock[3] >> demux::shiftsESums::HTmissMinBiasHF) & demux::masksESums::HTmissMinBiasHF); + + bxSums.setHwAsymHt(HTmissASYMHT); + bxSums.setMinBiasHFM1(HTmissMinBiasHFM1); + + // ETHFMiss + ETHFmissASYMETHF = ((dataBlock[4] >> demux::shiftsESums::ETHFmissASYMETHF) & demux::masksESums::ETHFmissASYMETHF); + ETHFmissCENT = ((dataBlock[4] >> demux::shiftsESums::ETHFmissCENT) & demux::masksESums::ETHFmissCENT); + + bxSums.setHwAsymEtHF(ETHFmissASYMETHF); + + // HTHFMiss + HTHFmissASYMHTHF = ((dataBlock[5] >> demux::shiftsESums::ETHFmissASYMETHF) & demux::masksESums::ETHFmissASYMETHF); + HTHFmissCENT = ((dataBlock[5] >> demux::shiftsESums::ETHFmissCENT) & demux::masksESums::ETHFmissCENT); + + bxSums.setHwAsymHtHF(HTHFmissASYMHTHF); + bxSums.setCentrality((HTHFmissCENT<<4) + ETHFmissCENT); + } + + orbitBufferEtSums_[bx].push_back(bxSums); + nEtSumsOrbit_ += 1; + + if (debug_){ + std::cout << "Raw frames:\n"; + for(int frame=0; frame<6; frame++){ + std::cout << " frame " << frame << ": 0x" + << std::hex << dataBlock[frame] << std::dec << std::endl; + } + printScBxSums(bxSums); + } +} + +void ScCaloRawToDigi::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.setUnknown(); + descriptions.addDefault(desc); +} + +DEFINE_FWK_MODULE(ScCaloRawToDigi); diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h new file mode 100644 index 0000000000000..c8665cefd9918 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h @@ -0,0 +1,55 @@ +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/Utilities/interface/StreamID.h" + +#include "DataFormats/FEDRawData/interface/FEDRawData.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSNumbering.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h" +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" + +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" + +#include "EventFilter/L1ScoutingRawToDigi/interface/shifts.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/masks.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/blocks.h" +#include "L1TriggerScouting/Utilities/interface/printScObjects.h" + +#include +#include + +class ScCaloRawToDigi : public edm::stream::EDProducer<> { +public: + explicit ScCaloRawToDigi(const edm::ParameterSet&); + ~ScCaloRawToDigi() override; + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + +private: + void produce(edm::Event&, const edm::EventSetup&) override; + + void unpackOrbit( + const unsigned char* buf, size_t len + ); + + void unpackLinkJets(uint32_t* dataBlock, int bx); + void unpackLinkEGammas(uint32_t* dataBlock, int bx); + void unpackLinkTaus(uint32_t* dataBlock, int bx); + void unpackEtSums(uint32_t* dataBlock, int bx); + + int nJetsOrbit_, nEGammasOrbit_, nTausOrbit_, nEtSumsOrbit_; + // vectors holding data for every bunch crossing + // before filling the orbit collection + std::vector> orbitBufferJets_; + std::vector> orbitBufferEGammas_; + std::vector> orbitBufferTaus_; + std::vector> orbitBufferEtSums_; + + bool debug_ = false; + bool enableAllSums_ = false; + edm::InputTag srcInputTag; + edm::EDGetToken rawToken; +}; diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc new file mode 100644 index 0000000000000..dc5f6c46b6700 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc @@ -0,0 +1,188 @@ +#include "EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h" + +ScGMTRawToDigi::ScGMTRawToDigi(const edm::ParameterSet& iConfig) { + using namespace edm; + srcInputTag = iConfig.getParameter( "srcInputTag" ); + debug_ = iConfig.getUntrackedParameter("debug", false); + + // initialize orbit buffer for BX 1->3564; + orbitBuffer_ = std::vector>(3565); + for (auto &bxVec: orbitBuffer_){ + bxVec.reserve(8); + } + nMuonsOrbit_ = 0; + + produces().setBranchAlias( "ScMuonOrbitCollection" ); + rawToken = consumes(srcInputTag); +} + +ScGMTRawToDigi::~ScGMTRawToDigi() {}; + +void ScGMTRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { + using namespace edm; + + Handle ScoutingRawDataCollection; + iEvent.getByToken( rawToken, ScoutingRawDataCollection ); + + const FEDRawData& sourceRawData = ScoutingRawDataCollection->FEDData(SDSNumbering::GmtSDSID); + size_t orbitSize = sourceRawData.size(); + + std::unique_ptr unpackedMuons(new l1ScoutingRun3::ScMuonOrbitCollection); + + if((sourceRawData.size()==0) && debug_){ + std::cout << "No raw data for GMT FED\n"; + } + + // unpack current orbit and store data into the orbitBufferr + unpackOrbit(sourceRawData.data(), orbitSize); + + // fill orbit collection and clear the Bx buffer vector + unpackedMuons->fillAndClear(orbitBuffer_, nMuonsOrbit_); + + // store collection in the event + iEvent.put( std::move(unpackedMuons) ); +} + +void ScGMTRawToDigi::unpackOrbit( + const unsigned char* buf, size_t len + ){ + + using namespace l1ScoutingRun3; + + // reset counters + nMuonsOrbit_ = 0; + + size_t pos = 0; + + while (pos < len) { + assert(pos+4 <= len); + + // get BX header + uint32_t header = *((uint32_t*)(buf + pos)); + pos += 4; + // count mA and mB + uint32_t mAcount = (header & header_masks::mAcount) >> header_shifts::mAcount; + uint32_t mBcount = (header & header_masks::mBcount) >> header_shifts::mBcount; + + // declare block to read + ugmt::block *bl = (ugmt::block *)(buf + pos); + pos += 4 + 4 + (mAcount+mBcount)*12; + assert(pos <= len); + + uint32_t orbit = bl->orbit & 0x7FFFFFFF; + uint32_t bx = bl->bx; + + if (debug_){ + std::cout << "GMT Orbit " << orbit << ", BX -> "<< bx << ", nMuons -> " << mAcount+mBcount << std::endl; + } + + // Unpack muons for this BX + orbitBuffer_[bx].reserve(mAcount+mBcount); + + for (unsigned int i=0; imu[i].extra >> ugmt::shiftsMuon::interm) & ugmt::masksMuon::interm; + if (interm == 1){ + if (debug_){ + std::cout << " -> Excluding intermediate muon\n"; + } + continue; + } + + uint32_t index = (bl->mu[i].s >> ugmt::shiftsMuon::index) & ugmt::masksMuon::index; + uint32_t ietaextu = (bl->mu[i].f >> ugmt::shiftsMuon::etaext) & ugmt::masksMuon::etaextv; + int32_t ietaext; + if (((bl->mu[i].f >> ugmt::shiftsMuon::etaext) & ugmt::masksMuon::etaexts)!=0) { + ietaext = ietaextu -= 256; + } else { + ietaext = ietaextu; + } + + // extract pt and quality and apply cut if required + int32_t iptuncon = (bl->mu[i].s >> ugmt::shiftsMuon::ptuncon) & ugmt::masksMuon::ptuncon; + int32_t ipt = (bl->mu[i].f >> ugmt::shiftsMuon::pt) & ugmt::masksMuon::pt; + if ((ipt-1) < 0) { + continue; + } + uint32_t qual = (bl->mu[i].f >> ugmt::shiftsMuon::qual) & ugmt::masksMuon::qual; + if (qual == 0) { + continue; + } + + // extract integer value for extrapolated phi + int32_t iphiext = ((bl->mu[i].f >> ugmt::shiftsMuon::phiext) & ugmt::masksMuon::phiext); + + // extract integer value for extrapolated phi + int32_t idxy = ((bl->mu[i].s >> ugmt::shiftsMuon::dxy) & ugmt::masksMuon::dxy); + + // extract iso bits and charge + uint32_t iso = (bl->mu[i].s >> ugmt::shiftsMuon::iso) & ugmt::masksMuon::iso; + int32_t chrg = 0; + if (((bl->mu[i].s >> ugmt::shiftsMuon::chrgv) & ugmt::masksMuon::chrgv)==1) + chrg=((bl->mu[i].s >> ugmt::shiftsMuon::chrg) & ugmt::masksMuon::chrg)==1 ? -1 : 1 ; + + // extract eta and phi at muon station + int32_t iphi = (bl->mu[i].s >> ugmt::shiftsMuon::phi) & ugmt::masksMuon::phi; + uint32_t ieta1 = (bl->mu[i].extra >> ugmt::shiftsMuon::eta1) & ugmt::masksMuon::eta; + uint32_t ieta2 = (bl->mu[i].extra >> ugmt::shiftsMuon::eta2) & ugmt::masksMuon::eta; + + + uint32_t ieta_u; + int32_t ieta; + // checking if raw eta should be taken from muon 1 or muon 2 + if ( (bl->mu[i].extra & 0x1) == 0 ) { + ieta_u = ieta1; + } else { + ieta_u = ieta2; + } + + // two's complement + if ( ieta_u > 256 ) { + ieta = ieta_u - 512; + } else { + ieta = ieta_u; + } + + // increment muon counter + nMuonsOrbit_ ++; + + l1ScoutingRun3::ScMuon muon( + ipt, + ieta, + iphi, + qual, + chrg, + chrg!=0, + iso, + index, + ietaext, + iphiext, + iptuncon, + idxy + ); + + orbitBuffer_[bx].push_back(muon); + + if (debug_){ + std::cout << "--- Muon " << i << " ---\n"; + std::cout << " Raw f: 0x" << std::hex << bl->mu[i].f << std::dec << "\n"; + std::cout << " Raw s: 0x" << std::hex << bl->mu[i].s << std::dec << "\n"; + std::cout << " Raw extra: 0x" << std::hex << bl->mu[i].extra << std::dec << "\n"; + printScMuon(muon); + } + + } // end of bx + + } // end orbit while loop + + //muons->flatten(); + +} + +void ScGMTRawToDigi::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.setUnknown(); + descriptions.addDefault(desc); +} + +DEFINE_FWK_MODULE(ScGMTRawToDigi); diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h new file mode 100644 index 0000000000000..abe5299017bd1 --- /dev/null +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h @@ -0,0 +1,46 @@ +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/Utilities/interface/StreamID.h" + +#include "DataFormats/FEDRawData/interface/FEDRawData.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSNumbering.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h" +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" + +#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" + +#include "EventFilter/L1ScoutingRawToDigi/interface/shifts.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/masks.h" +#include "EventFilter/L1ScoutingRawToDigi/interface/blocks.h" +#include "L1TriggerScouting/Utilities/interface/printScObjects.h" + +#include +#include +#include + +class ScGMTRawToDigi : public edm::stream::EDProducer<> { +public: + explicit ScGMTRawToDigi(const edm::ParameterSet&); + ~ScGMTRawToDigi() override; + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + +private: + void produce(edm::Event&, const edm::EventSetup&) override; + + void unpackOrbit( + const unsigned char* buf, size_t len + ); + + // vector holding data for every bunch crossing + // before filling the orbit collection + std::vector> orbitBuffer_; + int nMuonsOrbit_; + + bool debug_ = false; + edm::InputTag srcInputTag; + edm::EDGetToken rawToken; +}; diff --git a/EventFilter/Utilities/BuildFile.xml b/EventFilter/Utilities/BuildFile.xml index 6a69ee301bfe8..2270817d5ce0a 100644 --- a/EventFilter/Utilities/BuildFile.xml +++ b/EventFilter/Utilities/BuildFile.xml @@ -2,6 +2,7 @@ + diff --git a/EventFilter/Utilities/interface/DAQSourceModels.h b/EventFilter/Utilities/interface/DAQSourceModels.h index d886aaf1c26a4..5727dc7aa2164 100644 --- a/EventFilter/Utilities/interface/DAQSourceModels.h +++ b/EventFilter/Utilities/interface/DAQSourceModels.h @@ -61,7 +61,9 @@ class DataMode { bool fileListMode) const = 0; virtual bool isMultiDir() { return false; } - virtual void makeDirectoryEntries(std::vector const& baseDirs, std::string const& runDir) = 0; + virtual void makeDirectoryEntries(std::vector const& baseDirs, + std::vector const& numSources, + std::string const& runDir) = 0; void setTesting(bool testing) { testing_ = testing; } protected: diff --git a/EventFilter/Utilities/interface/DAQSourceModelsFRD.h b/EventFilter/Utilities/interface/DAQSourceModelsFRD.h index bdf770836c3aa..c3e1c896ab623 100644 --- a/EventFilter/Utilities/interface/DAQSourceModelsFRD.h +++ b/EventFilter/Utilities/interface/DAQSourceModelsFRD.h @@ -64,7 +64,9 @@ class DataModeFRD : public DataMode { MAXTCDSuTCAFEDID_ = MAXTCDSuTCAFEDID; } - void makeDirectoryEntries(std::vector const& baseDirs, std::string const& runDir) override {} + void makeDirectoryEntries(std::vector const& baseDirs, + std::vector const& numSources, + std::string const& runDir) override {} std::pair> defineAdditionalFiles(std::string const& primaryName, bool) const override { return std::make_pair(true, std::vector()); @@ -171,7 +173,9 @@ class DataModeFRDStriped : public DataMode { MAXTCDSuTCAFEDID_ = MAXTCDSuTCAFEDID; } - void makeDirectoryEntries(std::vector const& baseDirs, std::string const& runDir) override; + void makeDirectoryEntries(std::vector const& baseDirs, + std::vector const& numSources, + std::string const& runDir) override; std::pair> defineAdditionalFiles(std::string const& primaryName, bool fileListMode) const override; diff --git a/EventFilter/Utilities/interface/DAQSourceModelsScouting.h b/EventFilter/Utilities/interface/DAQSourceModelsScouting.h deleted file mode 100644 index 430fdfdefd34b..0000000000000 --- a/EventFilter/Utilities/interface/DAQSourceModelsScouting.h +++ /dev/null @@ -1,268 +0,0 @@ -#ifndef EventFilter_Utilities_DAQSourceModelsScouting_h -#define EventFilter_Utilities_DAQSourceModelsScouting_h - -#include - -#include "EventFilter/Utilities/interface/DAQSourceModels.h" -#include "DataFormats/L1Trigger/interface/Muon.h" -#include "DataFormats/L1Trigger/interface/BXVector.h" - -namespace scouting { - struct muon { - uint32_t f; - uint32_t s; - }; - - struct block { - uint32_t bx; - uint32_t orbit; - muon mu[16]; - }; - - struct masks { - static constexpr uint32_t phiext = 0x3ff; - static constexpr uint32_t pt = 0x1ff; - static constexpr uint32_t qual = 0xf; - static constexpr uint32_t etaext = 0x1ff; - static constexpr uint32_t etaextv = 0xff; - static constexpr uint32_t etaexts = 0x100; - static constexpr uint32_t iso = 0x3; - static constexpr uint32_t chrg = 0x1; - static constexpr uint32_t chrgv = 0x1; - static constexpr uint32_t index = 0x7f; - static constexpr uint32_t phi = 0x3ff; - static constexpr uint32_t eta = 0x1ff; - static constexpr uint32_t etav = 0xff; - static constexpr uint32_t etas = 0x100; - static constexpr uint32_t phiv = 0x1ff; - static constexpr uint32_t phis = 0x200; - static constexpr uint32_t sv = 0x3; - }; - - struct shifts { - static constexpr uint32_t phiext = 0; - static constexpr uint32_t pt = 10; - static constexpr uint32_t qual = 19; - static constexpr uint32_t etaext = 23; - static constexpr uint32_t iso = 0; - static constexpr uint32_t chrg = 2; - static constexpr uint32_t chrgv = 3; - static constexpr uint32_t index = 4; - static constexpr uint32_t phi = 11; - static constexpr uint32_t eta = 21; - static constexpr uint32_t rsv = 30; - }; - - struct gmt_scales { - static constexpr float pt_scale = 0.5; - static constexpr float phi_scale = 2. * M_PI / 576.; - static constexpr float eta_scale = 0.0870 / 8; //9th MS bit is sign - static constexpr float phi_range = M_PI; - }; - - struct header_shifts { - static constexpr uint32_t bxmatch = 24; - static constexpr uint32_t mAcount = 16; - static constexpr uint32_t orbitmatch = 8; - static constexpr uint32_t mBcount = 0; - }; - - struct header_masks { - static constexpr uint32_t bxmatch = 0xff << header_shifts::bxmatch; - static constexpr uint32_t mAcount = 0xf << header_shifts::mAcount; - static constexpr uint32_t orbitmatch = 0xff << header_shifts::orbitmatch; - static constexpr uint32_t mBcount = 0xf; - }; - -} //namespace scouting - -class DataModeScoutingRun2Muon : public DataMode { -public: - DataModeScoutingRun2Muon(DAQSource* daqSource) : DataMode(daqSource) { - dummyLVec_ = std::make_unique>>(); - } - - ~DataModeScoutingRun2Muon() override{}; - - std::vector>& makeDaqProvenanceHelpers() override; - void readEvent(edm::EventPrincipal& eventPrincipal) override; - - int dataVersion() const override { return detectedFRDversion_; } - void detectVersion(unsigned char* fileBuf, uint32_t fileHeaderOffset) override { - detectedFRDversion_ = *((uint16_t*)(fileBuf + fileHeaderOffset)); - } - - uint32_t headerSize() const override { return FRDHeaderVersionSize[detectedFRDversion_]; } - - bool versionCheck() const override { return detectedFRDversion_ <= FRDHeaderMaxVersion; } - - uint64_t dataBlockSize() const override { return event_->size(); } - - void makeDataBlockView(unsigned char* addr, - size_t maxSize, - std::vector const& fileSizes, - size_t fileHeaderSize) override { - dataBlockAddr_ = addr; - dataBlockMax_ = maxSize; - eventCached_ = false; - nextEventView(); - eventCached_ = true; - } - - bool nextEventView() override; - bool checksumValid() override; - std::string getChecksumError() const override; - - bool isRealData() const override { return event_->isRealData(); } - - uint32_t run() const override { return event_->run(); } - - //true for scouting muon - bool dataBlockCompleted() const override { return true; } - - bool requireHeader() const override { return true; } - - bool fitToBuffer() const override { return true; } - - bool dataBlockInitialized() const override { return true; } - - void setDataBlockInitialized(bool) override{}; - - void setTCDSSearchRange(uint16_t MINTCDSuTCAFEDID, uint16_t MAXTCDSuTCAFEDID) override { return; } - - void makeDirectoryEntries(std::vector const& baseDirs, std::string const& runDir) override {} - - std::pair> defineAdditionalFiles(std::string const& primaryName, bool) const override { - return std::make_pair(true, std::vector()); - } - - char* readPayloadPos() { return (char*)event_->payload(); } - -private: - void unpackOrbit(BXVector* muons, char* buf, size_t len); - - std::vector> daqProvenanceHelpers_; - uint16_t detectedFRDversion_ = 0; - size_t headerSize_ = 0; - std::unique_ptr event_; - - std::unique_ptr>> dummyLVec_; - - unsigned char* dataBlockAddr_ = nullptr; - size_t dataBlockMax_ = 0; - bool eventCached_ = false; -}; - -class DataModeScoutingRun2Multi : public DataMode { -public: - DataModeScoutingRun2Multi(DAQSource* daqSource) : DataMode(daqSource) { - dummyLVec_ = std::make_unique>>(); - } - - ~DataModeScoutingRun2Multi() override{}; - - std::vector>& makeDaqProvenanceHelpers() override; - void readEvent(edm::EventPrincipal& eventPrincipal) override; - - int dataVersion() const override { return detectedFRDversion_; } - void detectVersion(unsigned char* fileBuf, uint32_t fileHeaderOffset) override { - detectedFRDversion_ = *((uint16_t*)(fileBuf + fileHeaderOffset)); - } - - uint32_t headerSize() const override { return FRDHeaderVersionSize[detectedFRDversion_]; } - - bool versionCheck() const override { return detectedFRDversion_ <= FRDHeaderMaxVersion; } - - uint64_t dataBlockSize() const override { - //TODO: adjust to multiple objects - return events_[0]->size(); - } - - void makeDataBlockView(unsigned char* addr, - size_t maxSize, - std::vector const& fileSizes, - size_t fileHeaderSize) override { - fileHeaderSize_ = fileHeaderSize; - numFiles_ = fileSizes.size(); - //add offset address for each file payload - startAddrs_.clear(); - startAddrs_.push_back(addr); - dataBlockAddrs_.clear(); - dataBlockAddrs_.push_back(addr); - dataBlockMaxAddrs_.clear(); - dataBlockMaxAddrs_.push_back(addr + fileSizes[0] - fileHeaderSize); - auto fileAddr = addr; - for (unsigned int i = 1; i < fileSizes.size(); i++) { - fileAddr += fileSizes[i - 1]; - startAddrs_.push_back(fileAddr); - dataBlockAddrs_.push_back(fileAddr); - dataBlockMaxAddrs_.push_back(fileAddr + fileSizes[i] - fileHeaderSize); - } - - dataBlockMax_ = maxSize; - blockCompleted_ = false; - //set event cached as we set initial address here - bool result = makeEvents(); - assert(result); - eventCached_ = true; - setDataBlockInitialized(true); - } - - bool nextEventView() override; - bool checksumValid() override; - std::string getChecksumError() const override; - - bool isRealData() const override { - assert(!events_.empty()); - return events_[0]->isRealData(); - } - - uint32_t run() const override { - assert(!events_.empty()); - return events_[0]->run(); - } - - //true for DAQ3 FRD - bool dataBlockCompleted() const override { return blockCompleted_; } - - bool requireHeader() const override { return true; } - - bool dataBlockInitialized() const override { return dataBlockInitialized_; } - - void setDataBlockInitialized(bool val) override { dataBlockInitialized_ = val; }; - - void setTCDSSearchRange(uint16_t MINTCDSuTCAFEDID, uint16_t MAXTCDSuTCAFEDID) override { return; } - - void makeDirectoryEntries(std::vector const& baseDirs, std::string const& runDir) override { - //receive directory paths for multiple input files ('striped') - } - - std::pair> defineAdditionalFiles(std::string const& primaryName, - bool fileListMode) const override; - -private: - bool makeEvents(); - void unpackMuonOrbit(BXVector* muons, char* buf, size_t len); - - std::vector> daqProvenanceHelpers_; - uint16_t detectedFRDversion_ = 0; - size_t headerSize_ = 0; - std::vector> events_; - - std::unique_ptr>> dummyLVec_; - - unsigned char* dataBlockAddr_ = nullptr; - - //debugging - std::vector startAddrs_; - std::vector dataBlockAddrs_; - std::vector dataBlockMaxAddrs_; - size_t dataBlockMax_ = 0; - size_t fileHeaderSize_ = 0; - short numFiles_ = 0; - bool eventCached_ = false; - bool dataBlockInitialized_ = false; - bool blockCompleted_ = true; -}; - -#endif // EventFilter_Utilities_DAQSourceModelsScouting_h diff --git a/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h b/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h new file mode 100644 index 0000000000000..7439fcc108a4b --- /dev/null +++ b/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h @@ -0,0 +1,135 @@ +#ifndef EventFilter_Utilities_DAQSourceModelsScoutingRun3_h +#define EventFilter_Utilities_DAQSourceModelsScoutingRun3_h + +#include "EventFilter/Utilities/interface/DAQSource.h" +#include "EventFilter/Utilities/interface/DAQSourceModels.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSNumbering.h" + +#include "FWCore/Framework/interface/Event.h" +#include "DataFormats/Provenance/interface/EventAuxiliary.h" +#include "DataFormats/Provenance/interface/EventID.h" + +#include +#include +#include +#include +#include +#include + +class DataModeScoutingRun3 : public DataMode { +public: + DataModeScoutingRun3(DAQSource* daqSource) : DataMode(daqSource) {} + ~DataModeScoutingRun3() override{}; + std::vector>& makeDaqProvenanceHelpers() override; + void readEvent(edm::EventPrincipal& eventPrincipal) override; + + void fillSRDCollection( SRDCollection& rawData, char* buff, size_t len); + + //reuse FRD file and event headers + int dataVersion() const override { return detectedFRDversion_; } + void detectVersion(unsigned char* fileBuf, uint32_t fileHeaderOffset) override { + detectedFRDversion_ = *((uint16_t*)(fileBuf + fileHeaderOffset)); + } + uint32_t headerSize() const override { return FRDHeaderVersionSize[detectedFRDversion_]; } + bool versionCheck() const override { return detectedFRDversion_ <= FRDHeaderMaxVersion; } + + uint64_t dataBlockSize() const override { + // get event size from the first data source (main) + return events_[0]->size(); + } + + void makeDataBlockView(unsigned char* addr, + size_t maxSize, + std::vector const& fileSizes, + size_t fileHeaderSize) override { + fileHeaderSize_ = fileHeaderSize; + numFiles_ = fileSizes.size(); + + // initalize vectors keeping tracks of valid orbits and completed blocks + sourceValidOrbitPair_.clear(); + completedBlocks_.clear(); + for (unsigned int i=0; iisRealData(); + } + + uint32_t run() const override { + assert(!events_.empty()); + return events_[0]->run(); + } + + bool dataBlockCompleted() const override { return blockCompleted_; } + + bool requireHeader() const override { return true; } + + bool fitToBuffer() const override { return true; } + + bool dataBlockInitialized() const override { return dataBlockInitialized_; } + + void setDataBlockInitialized(bool val) override { dataBlockInitialized_ = val; }; + + void setTCDSSearchRange(uint16_t MINTCDSuTCAFEDID, uint16_t MAXTCDSuTCAFEDID) override { return; } + + void makeDirectoryEntries(std::vector const& baseDirs, + std::vector const& numSources, + std::string const& runDir) override; + + std::pair> defineAdditionalFiles(std::string const& primaryName, + bool fileListMode) const override; + +private: + bool makeEvents(); + std::vector> daqProvenanceHelpers_; // + uint16_t detectedFRDversion_ = 0; + size_t fileHeaderSize_ = 0; + size_t headerSize_ = 0; + std::vector> events_; + unsigned char* dataBlockAddr_ = nullptr; + std::vector dataBlockAddrs_; + std::vector dataBlockMaxAddrs_; + size_t dataBlockMax_ = 0; + short numFiles_ = 0; + bool dataBlockInitialized_ = false; + bool blockCompleted_ = true; + bool eventCached_ = false; + std::vector buPaths_; + std::vector buNumSources_; + + // keep track of valid (=aligned) orbits from different data sources + std::vector> sourceValidOrbitPair_; + unsigned int currOrbit_ = 0xFFFFFFFF; + + std::vector completedBlocks_; +}; + +#endif // EventFilter_Utilities_DAQSourceModelsScoutingRun3_h \ No newline at end of file diff --git a/EventFilter/Utilities/interface/EvFDaqDirector.h b/EventFilter/Utilities/interface/EvFDaqDirector.h index 45886d16b0f83..1cbe71014a824 100644 --- a/EventFilter/Utilities/interface/EvFDaqDirector.h +++ b/EventFilter/Utilities/interface/EvFDaqDirector.h @@ -194,6 +194,7 @@ namespace evf { bool inputThrottled(); bool lumisectionDiscarded(unsigned int ls); std::vector const& getBUBaseDirs() const { return bu_base_dirs_all_; } + std::vector const& getBUBaseDirsNSources() const { return bu_base_dirs_nSources_; } private: bool bumpFile(unsigned int& ls, @@ -216,6 +217,7 @@ namespace evf { std::string base_dir_; std::string bu_base_dir_; std::vector bu_base_dirs_all_; + std::vector bu_base_dirs_nSources_; unsigned int run_; bool useFileBroker_; bool fileBrokerHostFromCfg_; diff --git a/EventFilter/Utilities/plugins/DumpMuonScouting.cc b/EventFilter/Utilities/plugins/DumpMuonScouting.cc deleted file mode 100644 index 4f1b37b030b4c..0000000000000 --- a/EventFilter/Utilities/plugins/DumpMuonScouting.cc +++ /dev/null @@ -1,112 +0,0 @@ -/// -/// \class l1t::DumpMuonScouting.cc -/// -/// Description: Dump/Analyze Moun Scouting stored in BXVector -/// -/// Implementation: -/// Based off of Michael Mulhearn's YellowParamTester -/// -/// \author: Brian Winer Ohio State -/// - -// -// This simple module simply retreives the YellowParams object from the event -// setup, and sends its payload as an INFO message, for debugging purposes. -// - -#include "FWCore/Framework/interface/MakerMacros.h" - -// system include files -#include -#include -#include - -// user include files -// base class -#include "FWCore/Framework/interface/stream/EDAnalyzer.h" - -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/Utilities/interface/EDGetToken.h" -#include "FWCore/Utilities/interface/InputTag.h" -#include "FWCore/Framework/interface/EventSetup.h" -#include "FWCore/Framework/interface/Frameworkfwd.h" - -#include "DataFormats/L1Trigger/interface/Muon.h" - -#include "FWCore/MessageLogger/interface/MessageLogger.h" -#include "FWCore/MessageLogger/interface/MessageDrop.h" - -using namespace edm; -using namespace std; - -// class declaration -class DumpMuonScouting : public edm::stream::EDAnalyzer<> { -public: - explicit DumpMuonScouting(const edm::ParameterSet&); - ~DumpMuonScouting() override{}; - void analyze(const edm::Event&, const edm::EventSetup&) override; - - EDGetTokenT> muToken; - - int m_minBx; - int m_maxBx; - -private: - int m_tvVersion; -}; - -DumpMuonScouting::DumpMuonScouting(const edm::ParameterSet& iConfig) { - muToken = consumes(iConfig.getParameter("muInputTag")); - - m_minBx = iConfig.getParameter("minBx"); - m_maxBx = iConfig.getParameter("maxBx"); -} - -// loop over events -void DumpMuonScouting::analyze(const edm::Event& iEvent, const edm::EventSetup& evSetup) { - //input - Handle> muons = iEvent.getHandle(muToken); - - { - cout << " ----------------------------------------------------- " << endl; - cout << " *********** Run " << std::dec << iEvent.id().run() << " Event " << iEvent.id().event() - << " ************** " << endl; - cout << " ----------------------------------------------------- " << endl; - - //Loop over BX - for (int i = m_minBx; i <= m_maxBx; ++i) { - //Loop over Muons - //cout << " ------ Muons --------" << endl; - if (muons.isValid()) { - if (i >= muons->getFirstBX() && i <= muons->getLastBX()) { - for (std::vector::const_iterator mu = muons->begin(i); mu != muons->end(i); ++mu) { - cout << " " << std::dec << std::setw(2) << std::setfill(' ') << std::setfill('0') << ")"; - cout << " Pt " << std::dec << std::setw(3) << mu->hwPt() << " (0x" << std::hex << std::setw(3) - << std::setfill('0') << mu->hwPt() << ")"; - cout << " EtaAtVtx " << std::dec << std::setw(3) << mu->hwEtaAtVtx() << " (0x" << std::hex << std::setw(3) - << std::setfill('0') << (mu->hwEtaAtVtx() & 0x1ff) << ")"; - cout << " Eta " << std::dec << std::setw(3) << mu->hwEta() << " (0x" << std::hex << std::setw(3) - << std::setfill('0') << (mu->hwEta() & 0x1ff) << ")"; - cout << " PhiAtVtx " << std::dec << std::setw(3) << mu->hwPhiAtVtx() << " (0x" << std::hex << std::setw(3) - << std::setfill('0') << mu->hwPhiAtVtx() << ")"; - cout << " Phi " << std::dec << std::setw(3) << mu->hwPhi() << " (0x" << std::hex << std::setw(3) - << std::setfill('0') << mu->hwPhi() << ")"; - cout << " Iso " << std::dec << std::setw(1) << mu->hwIso(); - cout << " Qual " << std::dec << std::setw(1) << mu->hwQual(); - cout << " Chrg " << std::dec << std::setw(1) << mu->hwCharge(); - cout << endl; - } - } else { - cout << "No Muons stored for this bx " << i << endl; - } - } else { - cout << "No Muon Data in this event " << endl; - } - - } //loop over Bx - cout << std::dec << endl; - } //if dumpGtRecord -} - -DEFINE_FWK_MODULE(DumpMuonScouting); diff --git a/EventFilter/Utilities/scripts/scoutingToRaw.py b/EventFilter/Utilities/scripts/scoutingToRaw.py deleted file mode 100755 index d6ce51feae7ad..0000000000000 --- a/EventFilter/Utilities/scripts/scoutingToRaw.py +++ /dev/null @@ -1,259 +0,0 @@ -#!/bin/env python3 - -import struct -import os,sys -import json -import shutil - -os.umask(0) - -#struct muon{ -# uint32_t f; -# uint32_t s; -#}; - -#struct block{ -# uint32_t bx; -# uint32_t orbit; -# muon mu[16]; -#}; - -#class masks: -# phiext = 0x3ff -# pt = 0x1ff -# qual = 0xf -# etaext = 0x1ff -# etaextv = 0xff -# etaexts = 0x100 -# iso = 0x3 -# chrg = 0x1 -# chrgv = 0x1 -# index = 0x7f -# phi = 0x3ff -# eta = 0x1ff -# etav = 0xff -# etas = 0x100 -# phiv = 0x1ff -# phis = 0x200 -# sv = 0x3 - -#class shifts: -# phiext = 0 -# pt = 10 -# qual = 19 -# etaext = 23 -# iso = 0 -# chrg = 2 -# chrgv = 3 -# index = 4 -# phi = 11 -# eta = 21 -# rsv = 30 - -#class gmt_scales: -# pt_scale = 0.5 -# phi_scale = 2.*M_PI/576. -# eta_scale = 0.0870/8 #9th MS bit is sign -# phi_range = M_PI - - -#need to read this to find orbit ("event") boundary and calculate size per orbit -class header_shifts: - bxmatch = 32; - mAcount = 16; - orbitmatch = 8; - mBcount = 0; - -class header_masks: - bxmatch = 0xff << header_shifts.bxmatch; - mAcount = 0xf << header_shifts.mAcount; - orbitmatch = 0xff << header_shifts.orbitmatch; - mBcount = 0xf - - -#new V2 FRD file header (32 bytes) -class frd_file_header_v2: - ver_id = "RAW_0002".encode() # 64 (offset 0B) - header_size = 32 #16 (offset 8B) - data_type = 20 #16 (offset 10) - event_count = 0 #32 (offset 12B) - run_number = 0 #32 (offset 16B) - lumisection = 0 #32 (offset 20B) - file_size = 0 #64 (offset 24B) - - -def parseMuonScoutingRawFile(infilepath, outdir, rn_override, maxorbits): - - if infilepath != 'stdin': - fin = open(infilepath,'rb') - else: - fin = sys.stdin.buffer - - #sys.stdout.flush() - - #orbit count per file - orbitcount=0 - #total - orbitcount_total=0 - - last_ls = 0 - - orbit_data = bytes() - orbit_nr = 0 - orbit_size = 0 - flags = 0 - c_crc32c = 0 - - #ls = 1 - #event header (FRD format) const - version = 6 - - #files - fout = None - if infilepath != 'stdin': - fin = open(infilepath,'rb') - else: - fin = sys.stdin.buffer - - - #write header before closing the file - def update_header(): - nonlocal orbitcount - nonlocal last_ls - h = frd_file_header_v2() - h.event_count = orbitcount - h.run_number = rn_override - h.lumisection = last_ls - h.file_size = fout.tell() - fout.seek(0, 0) - fout.write(frd_file_header_v2.ver_id) - fout.write(struct.pack('H',h.header_size)) - fout.write(struct.pack('H',h.data_type)) - fout.write(struct.pack('I',h.event_count)) - fout.write(struct.pack('I',h.run_number)) - fout.write(struct.pack('I',h.lumisection)) - fout.write(struct.pack('Q',h.file_size)) - - orbitcount = 0 - print(h.ver_id, h.header_size, h.data_type, h.event_count, h.lumisection, h.file_size) - - - #write orbit when next one is detected or file is closed - def write_orbit(): - nonlocal orbit_size - nonlocal orbit_data - if not orbit_size: - return - - #print(fout.tell(), struct.pack('H',version)) - fout.write(struct.pack('H',version)) #could be 8 bytes - fout.write(struct.pack('H',flags)) #could be 8 bytes - fout.write(struct.pack('I',rn_override)) #run - #fout.write(struct.pack('I',ls)) #ls - fout.write(struct.pack('I',last_ls)) #ls - fout.write(struct.pack('I',orbit_nr)) #eid (orbit number, 32-bit) - fout.write(struct.pack('I',orbit_size)) #payload size - fout.write(struct.pack('I',c_crc32c)) #payload checksum (not used) - fout.write(orbit_data) - - orbit_data = bytes() - orbit_size = 0 - - def writeout_close(): - write_orbit() - update_header() - fout.close() - orbit_nr = 0 - - #read loop - while True: - - #check if exceeded max orbits specified - if orbitcount_total > maxorbits: - print(f"finish: {orbitcount_total-1}/{maxorbits} orbits") - writeout_close() - - if infilepath != 'stdin': - fin.close() - sys.exit(0) - - try: - h_raw = fin.read(4) - bxmatch = struct.unpack('B', h_raw[3:4])[0] - mAcount = struct.unpack('B', h_raw[2:3])[0] - orbitmatch = struct.unpack('B', h_raw[1:2])[0] - mBcount = struct.unpack('B', h_raw[0:1])[0] - - #print("bxmatch", bxmatch, "mA", mAcount, "orbitmatch", orbitmatch, "mB", mBcount) - - bx_raw = fin.read(4) - bx = struct.unpack('i', bx_raw)[0] - #print("bx",bx) - orbit_raw = fin.read(4) - orbit = struct.unpack('i', orbit_raw)[0] - - new_ls = orbit >> 18 - - if new_ls > last_ls: - #open a new output file if crossing LS boundary or on first orbit - if last_ls: - write_orbit() - update_header() - fout.close() - orbitcount = 0 - - last_ls = new_ls - fout = open(os.path.join(outdir, f'run{rn_override}_ls{str(new_ls).zfill(4)}_index000000.raw') ,'wb') - #empty file header, will be updated later - fout.write(frd_file_header_v2.ver_id) -# fout.write(bytes(16)) - fout.write(bytes(24)) - - read_len = 8*(mAcount+mBcount) - mu_blk = fin.read(8*(mAcount+mBcount)) - if len(mu_blk) != read_len: - print('incomplete read') - sys.exit(1) - - if not orbit_nr or orbit != orbit_nr: - #received new orbit, write previous one - if orbit_nr: - write_orbit() - - #should not decrease: - if orbit < orbit_nr: - orbit_count = -1 - print("got smaller orbit than earlier!") - sys.exit(1) - - print("new orbit", orbit) - orbit_nr = orbit - - #per LS file counter: - orbitcount += 1 - #total counter: - orbitcount_total += 1 - - #update orbit size and data variables - orbit_size += 12 + read_len - orbit_data += (h_raw + bx_raw + orbit_raw) + mu_blk - - except Exception as ex: - #reached premature end of the file? - print(f"exception: {ex}") - #writeout_close() - #if infilepath != 'stdin': - # fin.close() - sys.exit(1) - - #print count," : ",version,run,lumi,eid,esize,crc32c,"override id/ls/run:",count,1,rn_override - #lumi=1 - -if len(sys.argv) < 5: - print("parameters: input file (or stdin), output directory, run number (use same as input file), orbits to write") -else: - parseMuonScoutingRawFile(sys.argv[1], sys.argv[2], int(sys.argv[3]), int(sys.argv[4])) - - - - diff --git a/EventFilter/Utilities/src/DAQSource.cc b/EventFilter/Utilities/src/DAQSource.cc index b607b13ca1dd0..6dab0959953b0 100644 --- a/EventFilter/Utilities/src/DAQSource.cc +++ b/EventFilter/Utilities/src/DAQSource.cc @@ -7,7 +7,7 @@ #include "EventFilter/Utilities/interface/DAQSource.h" #include "EventFilter/Utilities/interface/DAQSourceModels.h" #include "EventFilter/Utilities/interface/DAQSourceModelsFRD.h" -#include "EventFilter/Utilities/interface/DAQSourceModelsScouting.h" +#include "EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h" #include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/InputSourceDescription.h" @@ -81,6 +81,9 @@ DAQSource::DAQSource(edm::ParameterSet const& pset, edm::InputSourceDescription dataMode_.reset(new DataModeFRD(this)); } else if (dataModeConfig_ == "FRDStriped") { dataMode_.reset(new DataModeFRDStriped(this)); + } + else if (dataModeConfig_ == "ScoutingRun3") { + dataMode_.reset(new DataModeScoutingRun3(this)); } else throw cms::Exception("DAQSource::DAQSource") << "Unknown data mode " << dataModeConfig_; @@ -101,7 +104,9 @@ DAQSource::DAQSource(edm::ParameterSet const& pset, edm::InputSourceDescription } } - dataMode_->makeDirectoryEntries(daqDirector_->getBUBaseDirs(), daqDirector_->runString()); + dataMode_->makeDirectoryEntries(daqDirector_->getBUBaseDirs(), + daqDirector_->getBUBaseDirsNSources(), + daqDirector_->runString()); auto& daqProvenanceHelpers = dataMode_->makeDaqProvenanceHelpers(); for (const auto& daqProvenanceHelper : daqProvenanceHelpers) diff --git a/EventFilter/Utilities/src/DAQSourceModelsFRD.cc b/EventFilter/Utilities/src/DAQSourceModelsFRD.cc index c0dc23cdedeab..2784cef60ec55 100644 --- a/EventFilter/Utilities/src/DAQSourceModelsFRD.cc +++ b/EventFilter/Utilities/src/DAQSourceModelsFRD.cc @@ -153,7 +153,9 @@ std::string DataModeFRD::getChecksumError() const { * FRD Multi Test */ -void DataModeFRDStriped::makeDirectoryEntries(std::vector const& baseDirs, std::string const& runDir) { +void DataModeFRDStriped::makeDirectoryEntries(std::vector const& baseDirs, + std::vector const& numSources, + std::string const& runDir) { std::filesystem::path runDirP(runDir); for (auto& baseDir : baseDirs) { std::filesystem::path baseDirP(baseDir); diff --git a/EventFilter/Utilities/src/DAQSourceModelsScouting.cc b/EventFilter/Utilities/src/DAQSourceModelsScouting.cc deleted file mode 100644 index 4626975e6014e..0000000000000 --- a/EventFilter/Utilities/src/DAQSourceModelsScouting.cc +++ /dev/null @@ -1,312 +0,0 @@ -#include "EventFilter/Utilities/interface/DAQSource.h" -#include "EventFilter/Utilities/interface/DAQSourceModelsScouting.h" - -#include -#include -#include -#include - -#include "FWCore/Framework/interface/Event.h" -#include "DataFormats/Provenance/interface/EventAuxiliary.h" -#include "DataFormats/Provenance/interface/EventID.h" - -using namespace scouting; - -void DataModeScoutingRun2Muon::readEvent(edm::EventPrincipal& eventPrincipal) { - edm::TimeValue_t time; - timeval stv; - gettimeofday(&stv, nullptr); - time = stv.tv_sec; - time = (time << 32) + stv.tv_usec; - edm::Timestamp tstamp(time); - - std::unique_ptr> rawData(new BXVector); - //allow any bx - rawData->setBXRange(0, 4000); - - unpackOrbit(rawData.get(), (char*)event_->payload(), event_->eventSize()); - - uint32_t hdrEventID = event_->event(); - edm::EventID eventID = edm::EventID(daqSource_->eventRunNumber(), daqSource_->currentLumiSection(), hdrEventID); - edm::EventAuxiliary aux( - eventID, daqSource_->processGUID(), tstamp, event_->isRealData(), edm::EventAuxiliary::PhysicsTrigger); - - aux.setProcessHistoryID(daqSource_->processHistoryID()); - daqSource_->makeEventWrapper(eventPrincipal, aux); - - std::unique_ptr edp(new edm::Wrapper>(std::move(rawData))); - eventPrincipal.put( - daqProvenanceHelpers_[0]->branchDescription(), std::move(edp), daqProvenanceHelpers_[0]->dummyProvenance()); -} - -void DataModeScoutingRun2Muon::unpackOrbit(BXVector* muons, char* buf, size_t len) { - using namespace scouting; - size_t pos = 0; - uint32_t o_test = 0; - while (pos < len) { - assert(pos + 4 <= len); - uint32_t header = *((uint32*)(buf + pos)); - uint32_t mAcount = (header & header_masks::mAcount) >> header_shifts::mAcount; - uint32_t mBcount = (header & header_masks::mBcount) >> header_shifts::mBcount; - - block* bl = (block*)(buf + pos + 4); - - pos += 12 + (mAcount + mBcount) * 8; - assert(pos <= len); - - uint32_t bx = bl->bx; - - uint32_t orbit = bl->orbit; - o_test = orbit; - - //should cuts should be applied - bool excludeIntermediate = true; - - for (size_t i = 0; i < (mAcount + mBcount); i++) { - //unpack new muon - //variables: index, ietaext, ipt, qual, iphiext, iso, chrg, iphi, ieta - - // remove intermediate if required - // index==0 and ietaext==0 are a necessary and sufficient condition - uint32_t index = (bl->mu[i].s >> shifts::index) & masks::index; - int32_t ietaext = ((bl->mu[i].f >> shifts::etaext) & masks::etaextv); - if (((bl->mu[i].f >> shifts::etaext) & masks::etaexts) != 0) - ietaext -= 256; - - if (excludeIntermediate && index == 0 && ietaext == 0) - continue; - - //extract pt and quality and apply cut if required - uint32_t ipt = (bl->mu[i].f >> shifts::pt) & masks::pt; - //cuts?? - // if((ipt-1)mu[i].f >> shifts::qual) & masks::qual; - // if(qual < qualcut) {discarded++; continue;} - - //extract integer value for extrapolated phi - int32_t iphiext = ((bl->mu[i].f >> shifts::phiext) & masks::phiext); - - // extract iso bits and charge - uint32_t iso = (bl->mu[i].s >> shifts::iso) & masks::iso; - int32_t chrg = 0; - if (((bl->mu[i].s >> shifts::chrgv) & masks::chrgv) == 1) { - chrg = ((bl->mu[i].s >> shifts::chrg) & masks::chrg) == 1 ? -1 : 1; - } - - // extract eta and phi at muon station - int32_t iphi = ((bl->mu[i].s >> shifts::phi) & masks::phi); - int32_t ieta = (bl->mu[i].s >> shifts::eta) & masks::etav; - if (((bl->mu[i].s >> shifts::eta) & masks::etas) != 0) - ieta -= 256; - - l1t::Muon muon( - *dummyLVec_, ipt, ieta, iphi, qual, chrg, chrg != 0, iso, -1, 0, false, 0, 0, 0, 0, ietaext, iphiext); - muons->push_back(bx, muon); - } - } - std::cout << "end read ... " << o_test << std::endl << std::flush; -} //unpackOrbit - -std::vector>& DataModeScoutingRun2Muon::makeDaqProvenanceHelpers() { - //set FRD data collection - daqProvenanceHelpers_.clear(); - daqProvenanceHelpers_.emplace_back(std::make_shared( - edm::TypeID(typeid(l1t::MuonBxCollection)), "l1t::MuonBxCollection", "l1tMuonBxCollection", "DAQSource")); - return daqProvenanceHelpers_; -} - -bool DataModeScoutingRun2Muon::nextEventView() { - if (eventCached_) - return true; - event_ = std::make_unique(dataBlockAddr_); - if (event_->size() > dataBlockMax_) { - throw cms::Exception("DAQSource::getNextEvent") - << " event id:" << event_->event() << " lumi:" << event_->lumi() << " run:" << event_->run() - << " of size:" << event_->size() << " bytes does not fit into a chunk of size:" << dataBlockMax_ << " bytes"; - } - return true; -} - -bool DataModeScoutingRun2Muon::checksumValid() { return true; } - -std::string DataModeScoutingRun2Muon::getChecksumError() const { return std::string(); } - -// -//2nd model: read multiple input files with different data type -// - -std::pair> DataModeScoutingRun2Multi::defineAdditionalFiles( - std::string const& primaryName, bool fileListMode) const { - std::vector additionalFiles; - - auto fullpath = std::filesystem::path(primaryName); - auto fullname = fullpath.filename(); - std::string stem = fullname.stem().string(); - std::string ext = fullname.extension().string(); - std::regex regexz("_"); - std::vector nameTokens = {std::sregex_token_iterator(stem.begin(), stem.end(), regexz, -1), - std::sregex_token_iterator()}; - - if (nameTokens.size() < 3) { - throw cms::Exception("DAQSource::getNextEvent") - << primaryName << " name doesn't start with run#_ls#_index#_*.ext syntax"; - } - - //Can also filter out non-matching primary files (if detected by DaqDirector). false will tell source to skip the primary file. - if (nameTokens.size() > 3 && nameTokens[3].rfind("secondary", 0) == 0) - return std::make_pair(false, additionalFiles); - - //TODO: provisional, name syntax should be better defined - - additionalFiles.push_back(fullpath.parent_path().string() + "/" + nameTokens[0] + "_" + nameTokens[1] + "_" + - nameTokens[2] + "_secondary" + ext); - //additionalFiles.push_back(fullpath.parent_path.string() + "/" + nameTokens[0] + "_" + nameTokens[1] + "_" + nameTokens[2] + "_tertiary" + ".raw"); - - return std::make_pair(true, additionalFiles); -} - -void DataModeScoutingRun2Multi::readEvent(edm::EventPrincipal& eventPrincipal) { - edm::TimeValue_t time; - timeval stv; - gettimeofday(&stv, nullptr); - time = stv.tv_sec; - time = (time << 32) + stv.tv_usec; - edm::Timestamp tstamp(time); - - std::unique_ptr> rawData(new BXVector); - //allow any bx - rawData->setBXRange(0, 4000); - - unpackMuonOrbit(rawData.get(), (char*)events_[0]->payload(), events_[0]->eventSize()); - - //TODO: implement here other object type (e.g. unpackCaloOrbit) - // - std::unique_ptr> rawDataSec(new BXVector); - //allow any bx - rawDataSec->setBXRange(0, 4000); - - unpackMuonOrbit(rawDataSec.get(), (char*)events_[1]->payload(), events_[1]->eventSize()); - - uint32_t hdrEventID = events_[0]->event(); //take from 1st file - edm::EventID eventID = edm::EventID(daqSource_->eventRunNumber(), daqSource_->currentLumiSection(), hdrEventID); - edm::EventAuxiliary aux( - eventID, daqSource_->processGUID(), tstamp, events_[0]->isRealData(), edm::EventAuxiliary::PhysicsTrigger); - - aux.setProcessHistoryID(daqSource_->processHistoryID()); - daqSource_->makeEventWrapper(eventPrincipal, aux); - - std::unique_ptr edp(new edm::Wrapper>(std::move(rawData))); - eventPrincipal.put( - daqProvenanceHelpers_[0]->branchDescription(), std::move(edp), daqProvenanceHelpers_[0]->dummyProvenance()); - - //TODO: use other object and provenance helper (duplicate is just for demonstration) - // std::unique_ptr edpSec(new edm::Wrapper>(std::move(rawDataSec))); - // eventPrincipal.put(daqProvenanceHelpers_[1]->branchDescription(), std::move(edpSec), daqProvenanceHelpers_[1]->dummyProvenance()); - - eventCached_ = false; -} - -void DataModeScoutingRun2Multi::unpackMuonOrbit(BXVector* muons, char* buf, size_t len) { - using namespace scouting; - size_t pos = 0; - //uint32_t o_test = 0; - while (pos < len) { - assert(pos + 4 <= len); - uint32_t header = *((uint32*)(buf + pos)); - uint32_t mAcount = (header & header_masks::mAcount) >> header_shifts::mAcount; - uint32_t mBcount = (header & header_masks::mBcount) >> header_shifts::mBcount; - - block* bl = (block*)(buf + pos + 4); - - pos += 12 + (mAcount + mBcount) * 8; - assert(pos <= len); - - uint32_t bx = bl->bx; - - //uint32_t orbit = bl->orbit; - //o_test = orbit; - - //should cuts should be applied - bool excludeIntermediate = true; - - for (size_t i = 0; i < (mAcount + mBcount); i++) { - //unpack new muon - //variables: index, ietaext, ipt, qual, iphiext, iso, chrg, iphi, ieta - - // remove intermediate if required - // index==0 and ietaext==0 are a necessary and sufficient condition - uint32_t index = (bl->mu[i].s >> shifts::index) & masks::index; - int32_t ietaext = ((bl->mu[i].f >> shifts::etaext) & masks::etaextv); - if (((bl->mu[i].f >> shifts::etaext) & masks::etaexts) != 0) - ietaext -= 256; - - if (excludeIntermediate && index == 0 && ietaext == 0) - continue; - - //extract pt and quality and apply cut if required - uint32_t ipt = (bl->mu[i].f >> shifts::pt) & masks::pt; - //cuts?? - // if((ipt-1)mu[i].f >> shifts::qual) & masks::qual; - // if(qual < qualcut) {discarded++; continue;} - - //extract integer value for extrapolated phi - int32_t iphiext = ((bl->mu[i].f >> shifts::phiext) & masks::phiext); - - // extract iso bits and charge - uint32_t iso = (bl->mu[i].s >> shifts::iso) & masks::iso; - int32_t chrg = 0; - if (((bl->mu[i].s >> shifts::chrgv) & masks::chrgv) == 1) { - chrg = ((bl->mu[i].s >> shifts::chrg) & masks::chrg) == 1 ? -1 : 1; - } - - // extract eta and phi at muon station - int32_t iphi = ((bl->mu[i].s >> shifts::phi) & masks::phi); - int32_t ieta = (bl->mu[i].s >> shifts::eta) & masks::etav; - if (((bl->mu[i].s >> shifts::eta) & masks::etas) != 0) - ieta -= 256; - - l1t::Muon muon( - *dummyLVec_, ipt, ieta, iphi, qual, chrg, chrg != 0, iso, -1, 0, false, 0, 0, 0, 0, ietaext, iphiext); - muons->push_back(bx, muon); - } - } -} //unpackOrbit - -std::vector>& DataModeScoutingRun2Multi::makeDaqProvenanceHelpers() { - //set FRD data collection - daqProvenanceHelpers_.clear(); - daqProvenanceHelpers_.emplace_back(std::make_shared( - edm::TypeID(typeid(l1t::MuonBxCollection)), "l1t::MuonBxCollection", "l1tMuonBxCollection", "DAQSource")); - //Note: two same kind of objects can not be put in the event from the source, so this example will be changed - daqProvenanceHelpers_.emplace_back(std::make_shared( - edm::TypeID(typeid(l1t::MuonBxCollection)), "l1t::MuonBxCollection", "l1tMuonBxCollection", "DAQSource")); - return daqProvenanceHelpers_; -} - -bool DataModeScoutingRun2Multi::nextEventView() { - blockCompleted_ = false; - if (eventCached_) - return true; - for (unsigned int i = 0; i < events_.size(); i++) { - //add last event length.. - dataBlockAddrs_[i] += events_[i]->size(); - } - return makeEvents(); -} - -bool DataModeScoutingRun2Multi::makeEvents() { - events_.clear(); - for (int i = 0; i < numFiles_; i++) { - if (dataBlockAddrs_[i] >= dataBlockMaxAddrs_[i]) { - blockCompleted_ = true; - return false; - } - events_.emplace_back(std::make_unique(dataBlockAddrs_[i])); - } - return true; -} - -bool DataModeScoutingRun2Multi::checksumValid() { return true; } - -std::string DataModeScoutingRun2Multi::getChecksumError() const { return std::string(); } diff --git a/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc b/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc new file mode 100644 index 0000000000000..6d9b9405ef5d1 --- /dev/null +++ b/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc @@ -0,0 +1,184 @@ +#include "EventFilter//Utilities/interface/DAQSourceModelsScoutingRun3.h" + +void DataModeScoutingRun3::makeDirectoryEntries(std::vector const& baseDirs, + std::vector const& numSources, + std::string const& runDir) { + std::filesystem::path runDirP(runDir); + for (auto& baseDir : baseDirs) { + std::filesystem::path baseDirP(baseDir); + buPaths_.emplace_back(baseDirP / runDirP); + } + + // store the number of sources in each BU + buNumSources_ = numSources; +} + +std::pair> DataModeScoutingRun3::defineAdditionalFiles(std::string const& primaryName, + bool fileListMode) const { + std::vector additionalFiles; + + if (fileListMode) { + // Expected file naming when working in file list mode + for (int j=1; jeventRunNumber(), daqSource_->currentLumiSection(), hdrEventID); + edm::EventAuxiliary aux(eventID, daqSource_->processGUID(), tstamp, events_[0]->isRealData(), edm::EventAuxiliary::PhysicsTrigger); + + aux.setProcessHistoryID(daqSource_->processHistoryID()); + daqSource_->makeEventWrapper(eventPrincipal, aux); + + // create scouting raw data collection + std::unique_ptr rawData(new SRDCollection); + + // Fill the ScoutingRawDataCollection with valid orbit data from the multiple sources + for (const auto& pair: sourceValidOrbitPair_){ + fillSRDCollection(*rawData, (char*)events_[pair.second]->payload(), events_[pair.second]->eventSize()); + } + + std::unique_ptr edp(new edm::Wrapper(std::move(rawData))); + eventPrincipal.put(daqProvenanceHelpers_[0]->branchDescription(), std::move(edp), daqProvenanceHelpers_[0]->dummyProvenance()); + + eventCached_ = false; +} + +void DataModeScoutingRun3::fillSRDCollection( + SRDCollection& rawData, char* buff, size_t len + ){ + + size_t pos = 0; + + // get the source ID + int sourceId = *((uint32_t*)(buff + pos)); + pos += 4; + + // size of the orbit paylod + size_t orbitSize = len-pos; + + // set the size (=orbit size) in the SRDColletion of the current source. + // FRD size is expecting 8 bytes words, while scouting is using 4 bytes + // words. This could be different for some future sources. + FEDRawData& fedData = rawData.FEDData(sourceId); + fedData.resize(orbitSize, 4); + + memcpy(fedData.data(), buff+pos, orbitSize); + + return; +} + +std::vector>& DataModeScoutingRun3::makeDaqProvenanceHelpers() { + //set SRD data collection + daqProvenanceHelpers_.clear(); + daqProvenanceHelpers_.emplace_back(std::make_shared( + edm::TypeID(typeid(SRDCollection)), "SRDCollection", "SRDCollection", "DAQSource")); + return daqProvenanceHelpers_; +} + +bool DataModeScoutingRun3::nextEventView() { + blockCompleted_ = false; + if (eventCached_) + return true; + + // move the data block address only for the sources processed + // un the previous event by adding the last event size + for (const auto& pair: sourceValidOrbitPair_){ + dataBlockAddrs_[pair.first] += events_[pair.second]->size(); + } + + return makeEvents(); +} + +bool DataModeScoutingRun3::makeEvents() { + // clear events and reset current orbit + events_.clear(); + sourceValidOrbitPair_.clear(); + currOrbit_ = 0xFFFFFFFF; // max uint + assert(!blockCompleted_); + + // create current "events" (= orbits) list from each data source, + // check if one dataBlock terminated earlier than others. + for (int i = 0; i < numFiles_; i++) { + if (dataBlockAddrs_[i] >= dataBlockMaxAddrs_[i]) { + completedBlocks_[i] = true; + continue; + } + + // event contains data, add it to the events list + events_.emplace_back(std::make_unique(dataBlockAddrs_[i])); + if (dataBlockAddrs_[i] + events_.back()->size() > dataBlockMaxAddrs_[i]) + throw cms::Exception("DAQSource::getNextEvent") + << " event id:" << events_.back()->event() << " lumi:" << events_.back()->lumi() << " run:" << events_.back()->run() + << " of size:" << events_.back()->size() << " bytes does not fit into the buffer or has corrupted header"; + + // find the minimum orbit for the current event between all files + if ((events_.back()->event()event(); + } + } + + // mark valid orbits from each data source + // e.g. find when orbit is missing from one source + bool allBlocksCompleted = true; + int evt_idx = 0; + for (int i=0; i < numFiles_; i++){ + if (completedBlocks_[i]) { + continue; + } + + if(events_[evt_idx]->event() != currOrbit_){ + // current source (=i-th source) doesn't contain the expected orbit. + // skip it, and move to the next orbit + } else { + // add a pair + // evt_idx can be different from variable i, as some data blocks can be + // completed before others + sourceValidOrbitPair_.emplace_back(std::make_pair(i, evt_idx)); + allBlocksCompleted = false; + } + + evt_idx++; + } + + if (allBlocksCompleted){ + blockCompleted_ = true; + } + return !allBlocksCompleted; +} + +bool DataModeScoutingRun3::checksumValid() { return true; } + +std::string DataModeScoutingRun3::getChecksumError() const { return std::string(); } diff --git a/EventFilter/Utilities/src/EvFDaqDirector.cc b/EventFilter/Utilities/src/EvFDaqDirector.cc index b89a2e4b032ce..4a8f9b13ad254 100644 --- a/EventFilter/Utilities/src/EvFDaqDirector.cc +++ b/EventFilter/Utilities/src/EvFDaqDirector.cc @@ -40,6 +40,7 @@ namespace evf { : base_dir_(pset.getUntrackedParameter("baseDir")), bu_base_dir_(pset.getUntrackedParameter("buBaseDir")), bu_base_dirs_all_(pset.getUntrackedParameter>("buBaseDirsAll")), + bu_base_dirs_nSources_(pset.getUntrackedParameter>("buBaseDirsNumStreams")), run_(pset.getUntrackedParameter("runNumber")), useFileBroker_(pset.getUntrackedParameter("useFileBroker")), fileBrokerHostFromCfg_(pset.getUntrackedParameter("fileBrokerHostFromCfg", true)), @@ -146,6 +147,23 @@ namespace evf { } } + // set number of streams in each BU's ramdisk + if (!bu_base_dirs_nSources_.size()){ + // default is 1 stream per ramdisk + for(unsigned int i=0; i("buBaseDir", ".")->setComment("BU base ramdisk directory "); desc.addUntracked>("buBaseDirsAll", std::vector()) ->setComment("BU base ramdisk directories for multi-file DAQSource models"); + desc.addUntracked>("buBaseDirsNumStreams", std::vector()) + ->setComment("Number of streams for each BU base ramdisk directories for multi-file DAQSource models"); desc.addUntracked("runNumber", 0)->setComment("Run Number in ramdisk to open"); desc.addUntracked("useFileBroker", false) ->setComment("Use BU file service to grab input data instead of NFS file locking"); diff --git a/EventFilter/Utilities/test/FU_scouting.py b/EventFilter/Utilities/test/FU_scouting.py deleted file mode 100644 index 96f1af7d0a436..0000000000000 --- a/EventFilter/Utilities/test/FU_scouting.py +++ /dev/null @@ -1,114 +0,0 @@ -from __future__ import print_function -import FWCore.ParameterSet.Config as cms -import FWCore.ParameterSet.VarParsing as VarParsing -import os - -options = VarParsing.VarParsing ('analysis') - -options.register ('runNumber', -# 325175, # default value - 325172, # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, # string, int, or float - "Run Number") - -options.register ('buBaseDir', - 'ramdisk', # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, # string, int, or float - "BU base directory") - -options.register ('fuBaseDir', - 'data', # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, # string, int, or float - "BU base directory") - -options.register ('fffBaseDir', - '.', # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, # string, int, or float - "FFF base directory") - -options.register ('numThreads', - 4, # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, # string, int, or float - "Number of CMSSW threads") - -options.register ('numFwkStreams', - 4, # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, # string, int, or float - "Number of CMSSW streams") - - -options.parseArguments() - -cmsswbase = os.path.expandvars("$CMSSW_BASE/") - -process = cms.Process("TESTFU") -process.maxEvents.input - -1 - -process.options = dict( - numberOfThreads = options.numThreads, - numberOfStreams = options.numFwkStreams, -# numberOfConcurrentLuminosityBlocks = 1 -) - -process.MessageLogger = cms.Service("MessageLogger", - cout = cms.untracked.PSet(threshold = cms.untracked.string( "ERROR" )), - destinations = cms.untracked.vstring( 'cout' ) -) - -process.FastMonitoringService = cms.Service("FastMonitoringService", - sleepTime = cms.untracked.int32(1) -) - -process.EvFDaqDirector = cms.Service("EvFDaqDirector", - useFileBroker = cms.untracked.bool(False), - fileBrokerHostFromCfg = cms.untracked.bool(True), - fileBrokerHost = cms.untracked.string("htcp40.cern.ch"), - runNumber = cms.untracked.uint32(options.runNumber), - baseDir = cms.untracked.string(options.fffBaseDir+"/"+options.fuBaseDir), - buBaseDir = cms.untracked.string(options.fffBaseDir+"/"+options.buBaseDir), - directorIsBU = cms.untracked.bool(False), -) - -try: - os.makedirs(options.fffBaseDir+"/"+options.fuBaseDir+"/run"+str(options.runNumber).zfill(6)) -except Exception as ex: - print(str(ex)) - pass - -ram_dir_path=options.buBaseDir+"/run"+str(options.runNumber).zfill(6)+"/" - -process.source = cms.Source("DAQSource", - dataMode = cms.untracked.string("ScoutingRun2"), - verifyChecksum = cms.untracked.bool(True), - useL1EventID = cms.untracked.bool(False), - eventChunkSize = cms.untracked.uint32(8), - eventChunkBlock = cms.untracked.uint32(8), - numBuffers = cms.untracked.uint32(2), - maxBufferedFiles = cms.untracked.uint32(2), - fileListMode = cms.untracked.bool(True), - fileNames = cms.untracked.vstring( -# ram_dir_path+"run325175_ls0001_index000001.raw" - ram_dir_path+"run325172_ls0455_index000000.raw" - ) - -) - -process.output = cms.OutputModule("PoolOutputModule", - fileName = cms.untracked.string('file:PoolOutputTest.root'), - outputCommands = cms.untracked.vstring("drop *","keep *_rawDataCollector_*_*") - ) - - -process.ep = cms.EndPath( -# process.streamA -# + process.streamB -# + process.streamC -# + process.streamD - process.output -) diff --git a/EventFilter/Utilities/test/FU_scouting_2.py b/EventFilter/Utilities/test/FU_scouting_2.py deleted file mode 100644 index a45fb4194babc..0000000000000 --- a/EventFilter/Utilities/test/FU_scouting_2.py +++ /dev/null @@ -1,117 +0,0 @@ -from __future__ import print_function -import FWCore.ParameterSet.Config as cms -import FWCore.ParameterSet.VarParsing as VarParsing -import os - -options = VarParsing.VarParsing ('analysis') - -options.register ('runNumber', -# 325175, # default value - 325172, # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, # string, int, or float - "Run Number") - -options.register ('buBaseDir', - 'ramdisk', # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, # string, int, or float - "BU base directory") - -options.register ('fuBaseDir', - 'data', # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, # string, int, or float - "BU base directory") - -options.register ('fffBaseDir', - '.', # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.string, # string, int, or float - "FFF base directory") - -options.register ('numThreads', - 1, # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, # string, int, or float - "Number of CMSSW threads") - -options.register ('numFwkStreams', - 1, # default value - VarParsing.VarParsing.multiplicity.singleton, - VarParsing.VarParsing.varType.int, # string, int, or float - "Number of CMSSW streams") - - -options.parseArguments() - -cmsswbase = os.path.expandvars("$CMSSW_BASE/") - -process = cms.Process("TESTFU") -process.maxEvents = cms.untracked.PSet( - input = cms.untracked.int32(-1) -) - -process.options = cms.untracked.PSet( - numberOfThreads = cms.untracked.uint32(options.numThreads), - numberOfStreams = cms.untracked.uint32(options.numFwkStreams), - numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(1) # ShmStreamConsumer requires synchronization at LuminosityBlock boundaries -) -process.MessageLogger = cms.Service("MessageLogger", - cout = cms.untracked.PSet(threshold = cms.untracked.string( "INFO" )), - destinations = cms.untracked.vstring( 'cout' ) -) - -process.FastMonitoringService = cms.Service("FastMonitoringService", - sleepTime = cms.untracked.int32(1) -) - -process.EvFDaqDirector = cms.Service("EvFDaqDirector", - useFileBroker = cms.untracked.bool(False), - fileBrokerHostFromCfg = cms.untracked.bool(True), - fileBrokerHost = cms.untracked.string("htcp40.cern.ch"), - runNumber = cms.untracked.uint32(options.runNumber), - baseDir = cms.untracked.string(options.fffBaseDir+"/"+options.fuBaseDir), - buBaseDir = cms.untracked.string(options.fffBaseDir+"/"+options.buBaseDir), - directorIsBU = cms.untracked.bool(False), -) - -try: - os.makedirs(options.fffBaseDir+"/"+options.fuBaseDir+"/run"+str(options.runNumber).zfill(6)) -except Exception as ex: - print(str(ex)) - pass - -ram_dir_path=options.buBaseDir+"/run"+str(options.runNumber).zfill(6)+"/" - -process.source = cms.Source("DAQSource", -# dataMode = cms.untracked.string("ScoutingRun2Muon"), - dataMode = cms.untracked.string("ScoutingRun2Multi"), - verifyChecksum = cms.untracked.bool(True), - useL1EventID = cms.untracked.bool(False), - eventChunkSize = cms.untracked.uint32(8), - eventChunkBlock = cms.untracked.uint32(8), - numBuffers = cms.untracked.uint32(2), - maxBufferedFiles = cms.untracked.uint32(2), - fileListMode = cms.untracked.bool(True), - fileNames = cms.untracked.vstring( -# ram_dir_path+"run325175_ls0001_index000001.raw" - ram_dir_path+"run325172_ls0010_index000000.raw", - ram_dir_path+"run325172_ls0380_index000000.raw" - ) - -) - -process.output = cms.OutputModule("PoolOutputModule", - fileName = cms.untracked.string('file:PoolOutputTest.root'), - outputCommands = cms.untracked.vstring("drop *","keep *_rawDataCollector_*_*") - ) - - -process.ep = cms.EndPath( -# process.streamA -# + process.streamB -# + process.streamC -# + process.streamD - process.output -) diff --git a/EventFilter/Utilities/test/dumpMuonScouting.py b/EventFilter/Utilities/test/dumpMuonScouting.py deleted file mode 100644 index f09081855f5ab..0000000000000 --- a/EventFilter/Utilities/test/dumpMuonScouting.py +++ /dev/null @@ -1,30 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -process = cms.Process( "DUMP" ) - -process.MessageLogger = cms.Service("MessageLogger", - cerr = cms.untracked.PSet( - enable = cms.untracked.bool(False) - ), - cout = cms.untracked.PSet( - enable = cms.untracked.bool(True), - threshold = cms.untracked.string('INFO') - ) -) - - -process.source = cms.Source("PoolSource", - fileNames = cms.untracked.vstring("file:PoolOutputTest.root") -) - -process.dump = cms.EDAnalyzer("DumpMuonScouting", - muInputTag = cms.InputTag("rawDataCollector"), - minBx = cms.int32(0), - maxBx = cms.int32(4000) -) - - -process.p = cms.Path( - process.dump -) - diff --git a/EventFilter/Utilities/test/testScoutingRun3_unpackers.py b/EventFilter/Utilities/test/testScoutingRun3_unpackers.py new file mode 100644 index 0000000000000..c5b73cd91d2cc --- /dev/null +++ b/EventFilter/Utilities/test/testScoutingRun3_unpackers.py @@ -0,0 +1,160 @@ +from __future__ import print_function +import FWCore.ParameterSet.Config as cms +import FWCore.ParameterSet.VarParsing as VarParsing +import os, sys + +options = VarParsing.VarParsing ("analysis") + +options.register ("runNumber", + 368636, + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.int, + "Run Number") + +options.register ("daqSourceMode", + "ScoutingRun3", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "DAQ source data mode") + +options.register ("buBaseDir", + "/dev/shm", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "BU base directory") + +options.register ("fuBaseDir", + "/tmp/", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "BU base directory") + +options.register ("fffBaseDir", + "/dev/shm", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "FFF base directory") + +options.register ("numThreads", + 8, + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.int, + "Number of CMSSW threads") + +options.register ("numFwkStreams", + 8, + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.int, + "Number of CMSSW streams") + +options.parseArguments() + +cmsswbase = os.path.expandvars("$CMSSW_BASE/") + +process = cms.Process("SCPU") +process.maxEvents = cms.untracked.PSet( + input = cms.untracked.int32(-1) +) + +process.options = cms.untracked.PSet( + wantSummary = cms.untracked.bool(True), + numberOfThreads = cms.untracked.uint32(options.numThreads), + numberOfStreams = cms.untracked.uint32(options.numFwkStreams), + numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(1) +) +process.MessageLogger = cms.Service("MessageLogger", + cout = cms.untracked.PSet( + threshold = cms.untracked.string( "WARNING" ) + ), + destinations = cms.untracked.vstring( "cout" ), +) + +process.FastMonitoringService = cms.Service("FastMonitoringService", + sleepTime = cms.untracked.int32(1) +) + +process.Timing = cms.Service("Timing", + summaryOnly = cms.untracked.bool(True), + useJobReport = cms.untracked.bool(True) +) + +process.EvFDaqDirector = cms.Service("EvFDaqDirector", + useFileBroker = cms.untracked.bool(False), + buBaseDirsAll = cms.untracked.vstring( + options.buBaseDir + ), + buBaseDirsNumStreams = cms.untracked.vint32( + 2 + ), + fileBrokerHostFromCfg = cms.untracked.bool(True), + fileBrokerHost = cms.untracked.string("htcp40.cern.ch"), + runNumber = cms.untracked.uint32(options.runNumber), + baseDir = cms.untracked.string(options.fffBaseDir+"/"+options.fuBaseDir), + buBaseDir = cms.untracked.string(options.fffBaseDir+"/"+options.buBaseDir), + directorIsBU = cms.untracked.bool(False), +) + +try: + os.makedirs(options.fffBaseDir+"/"+options.fuBaseDir+"/run"+str(options.runNumber).zfill(6)) +except Exception as ex: + print(str(ex)) + pass + +ram_dir_path=options.buBaseDir+"/run"+str(options.runNumber).zfill(6)+"/" +flist = [ + ram_dir_path + "run" + str(options.runNumber) + "_ls0340_index000028.raw" +] + +process.source = cms.Source("DAQSource", + testing = cms.untracked.bool(True), + dataMode = cms.untracked.string(options.daqSourceMode), + verifyChecksum = cms.untracked.bool(False), + useL1EventID = cms.untracked.bool(False), + eventChunkBlock = cms.untracked.uint32(64), + eventChunkSize = cms.untracked.uint32(128), + maxChunkSize = cms.untracked.uint32(256), + numBuffers = cms.untracked.uint32(2), + maxBufferedFiles = cms.untracked.uint32(2), + fileListMode = cms.untracked.bool(True), + fileNames = cms.untracked.vstring(*flist) + +) + +fuDir = options.fuBaseDir+("/run%06d" % options.runNumber) +buDir = options.buBaseDir+("/run%06d" % options.runNumber) +for d in fuDir, buDir, options.fuBaseDir, options.buBaseDir: + if not os.path.isdir(d): + os.makedirs(d) +os.system("touch " + buDir + "/" + "fu.lock") + +process.GmtUnpacker = cms.EDProducer('ScGMTRawToDigi', + srcInputTag = cms.InputTag('rawDataCollector'), + debug = cms.untracked.bool(False) +) + +process.CaloUnpacker = cms.EDProducer('ScCaloRawToDigi', + srcInputTag = cms.InputTag('rawDataCollector'), + enableAllSums = cms.untracked.bool(True), + debug = cms.untracked.bool(False) +) + +process.outputZB = cms.OutputModule("PoolOutputModule", + fileName = cms.untracked.string('file:/dev/shm/PoolOutputTest.root'), + outputCommands = cms.untracked.vstring( + "drop *", + "keep *_GmtUnpacker_*_*", + "keep *_CaloUnpacker_*_*" + ), + #compressionAlgorithm = cms.untracked.string("ZSTD"), + #compressionLevel = cms.untracked.int32(4) +) + +rawToDigiTask = cms.Task( + process.GmtUnpacker,process.CaloUnpacker +) + +process.p = cms.Path(rawToDigiTask) + +process.ep = cms.EndPath( + process.outputZB +) \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/BuildFile.xml b/L1TriggerScouting/Utilities/BuildFile.xml new file mode 100644 index 0000000000000..3cf482ccd33ff --- /dev/null +++ b/L1TriggerScouting/Utilities/BuildFile.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/interface/conversion.h b/L1TriggerScouting/Utilities/interface/conversion.h new file mode 100644 index 0000000000000..87b072ee3e1f3 --- /dev/null +++ b/L1TriggerScouting/Utilities/interface/conversion.h @@ -0,0 +1,54 @@ +#ifndef L1TriggerScouting_Utilities_conversion_h +#define L1TriggerScouting_Utilities_conversion_h + +#include "L1TriggerScouting/Utilities/interface/scales.h" +#include + +namespace l1ScoutingRun3 { + + inline float _setPhiRange(float phi) { + phi = phi >= M_PI ? phi-2.*M_PI : phi; + return phi; + } + + namespace ugmt { + + inline float fPt(int hwPt) { + return scales::pt_scale*(hwPt-1); + }; + inline float fEta(int hwEta) { + return scales::eta_scale*hwEta; + }; + inline float fPhi(int hwPhi) { + return _setPhiRange(scales::phi_scale*hwPhi); + }; + inline float fPtUnconstrained(int hwPtUnconstrained) { + return scales::ptunconstrained_scale*(hwPtUnconstrained-1); + }; + inline float fEtaAtVtx(int hwEtaAtVtx) { + return scales::eta_scale*hwEtaAtVtx; + }; + inline float fPhiAtVtx(int hwPhiAtVtx) { + return _setPhiRange(scales::phi_scale*hwPhiAtVtx); + }; + + } // namespace ugmt + + namespace demux { + + inline float fEt(int hwEt) { + return scales::et_scale*hwEt; + }; + inline float fEta(int hwEta) { + return scales::eta_scale*hwEta; + }; + inline float fPhi(int hwPhi) { + return _setPhiRange(scales::phi_scale*hwPhi); + }; + + } // namespace demux + +} // namespace l1ScoutingRun3 + + +#endif \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/interface/printScObjects.h b/L1TriggerScouting/Utilities/interface/printScObjects.h new file mode 100644 index 0000000000000..148303969f297 --- /dev/null +++ b/L1TriggerScouting/Utilities/interface/printScObjects.h @@ -0,0 +1,20 @@ +#ifndef L1TriggerScouting_Utilities_printScObjects_h +#define L1TriggerScouting_Utilities_printScObjects_h + +#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" +#include "L1TriggerScouting/Utilities/interface/conversion.h" + +namespace l1ScoutingRun3 { + + void printScMuon(const ScMuon& muon, std::ostream &outs = std::cout); + template + void printScCaloObject(const T& obj, std::ostream &outs = std::cout); + void printScJet(const ScJet& jet, std::ostream &outs = std::cout); + void printScEGamma(const ScEGamma& eGamma, std::ostream &outs = std::cout); + void printScTau(const ScTau& tau, std::ostream &outs = std::cout); + void printScBxSums(const ScBxSums& sums, std::ostream &outs = std::cout); + +} // end namespace L1ScoutingRun3 + +#endif // L1TriggerScouting_Utilities_printScObjects_h \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/interface/scales.h b/L1TriggerScouting/Utilities/interface/scales.h new file mode 100644 index 0000000000000..c335ce7293e88 --- /dev/null +++ b/L1TriggerScouting/Utilities/interface/scales.h @@ -0,0 +1,30 @@ +#ifndef L1TriggerScouting_Utilities_scales_h +#define L1TriggerScouting_Utilities_scales_h + +#include +#include + +namespace l1ScoutingRun3 { + + // Scaled used to convert scouting hw values to physical quantities + + namespace ugmt { + struct scales { + static constexpr float pt_scale = 0.5; + static constexpr float ptunconstrained_scale = 1.0; + static constexpr float phi_scale = 2.*M_PI/576.; + static constexpr float eta_scale = 0.0870/8; + static constexpr float phi_range = M_PI; + }; + } + + namespace demux { + struct scales { + static constexpr float phi_scale = 2.*M_PI/144.; + static constexpr float eta_scale = 0.0435; + static constexpr float et_scale = 0.5; + }; + } + +} +#endif // L1TriggerScouting_Utilities_scales_h diff --git a/L1TriggerScouting/Utilities/plugins/BuildFile.xml b/L1TriggerScouting/Utilities/plugins/BuildFile.xml new file mode 100644 index 0000000000000..2e16c87937d04 --- /dev/null +++ b/L1TriggerScouting/Utilities/plugins/BuildFile.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc new file mode 100644 index 0000000000000..25b0b2f08079a --- /dev/null +++ b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc @@ -0,0 +1,227 @@ +#include "FWCore/Framework/interface/MakerMacros.h" + +#include +#include +#include +#include +#include + +#include "FWCore/Framework/interface/stream/EDAnalyzer.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/Utilities/interface/EDGetToken.h" +#include "FWCore/Utilities/interface/InputTag.h" +#include "FWCore/Framework/interface/EventSetup.h" +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/MessageLogger/interface/MessageDrop.h" + +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" +#include "L1TriggerScouting/Utilities/interface/printScObjects.h" + +using namespace l1ScoutingRun3; + +// ----------------------------- CLASS DECLARATION ---------------------------- +class DumpScObjects : public edm::stream::EDAnalyzer<> { + + public: + // constructor and destructor + explicit DumpScObjects(const edm::ParameterSet&); + ~DumpScObjects() override{}; + + // method for analyzing the events + void analyze(const edm::Event&, const edm::EventSetup&) override; + + private: + + // dump contenct of BX + void printBx(unsigned bx); + + // the tokens to access the data + edm::EDGetTokenT gmtMuonsToken_; + edm::EDGetTokenT caloJetsToken_; + edm::EDGetTokenT caloEGammasToken_; + edm::EDGetTokenT caloTausToken_; + edm::EDGetTokenT caloEtSumsToken_; + + edm::Handle muonHandle_; + edm::Handle jetHandle_; + edm::Handle eGammaHandle_; + edm::Handle tauHandle_; + edm::Handle etSumHandle_; + + // the min and max BX to be analyzed + unsigned minBx_; + unsigned maxBx_; + + // select collection to be printed + bool checkMuons_; + bool checkJets_; + bool checkEGammas_; + bool checkTaus_; + bool checkEtSums_; + + // dump a specific (ORBIT, BX RANGE) + bool searchEvent_; + unsigned orbitNum_; + unsigned searchStartBx_; + unsigned searchStopBx_; + + // utils + bool skipEmptyBx_; +}; +// ----------------------------------------------------------------------------- + + +// -------------------------------- constructor ------------------------------- + +DumpScObjects::DumpScObjects(const edm::ParameterSet& iConfig): + minBx_(iConfig.getUntrackedParameter("minBx", 0)), + maxBx_(iConfig.getUntrackedParameter("maxBx", 3564)), + + checkMuons_(iConfig.getUntrackedParameter("checkMuons", true)), + checkJets_(iConfig.getUntrackedParameter("checkJets", true)), + checkEGammas_(iConfig.getUntrackedParameter("checkEGammas", true)), + checkTaus_(iConfig.getUntrackedParameter("checkTaus", true)), + checkEtSums_(iConfig.getUntrackedParameter("checkEtSums", true)), + + searchEvent_(iConfig.getUntrackedParameter("searchEvent", false)), + orbitNum_(iConfig.getUntrackedParameter("orbitNumber", 0)), + searchStartBx_(iConfig.getUntrackedParameter("searchStartBx", 0)), + searchStopBx_(iConfig.getUntrackedParameter("searchStopBx", 0)), + + skipEmptyBx_(iConfig.getUntrackedParameter("skipEmptyBx", true)) +{ + + if (checkMuons_) gmtMuonsToken_ = consumes(iConfig.getParameter("gmtMuonsTag")); + if (checkJets_) caloJetsToken_ = consumes(iConfig.getParameter("caloJetsTag")); + if (checkEGammas_) caloEGammasToken_ = consumes(iConfig.getParameter("caloEGammasTag")); + if (checkTaus_) caloTausToken_ = consumes(iConfig.getParameter("caloTausTag")); + if (checkEtSums_) caloEtSumsToken_ = consumes(iConfig.getParameter("caloEtSumsTag")); + +} +// ----------------------------------------------------------------------------- + +// ----------------------- method called for each orbit ----------------------- +void DumpScObjects::analyze(const edm::Event& iEvent, const edm::EventSetup& evSetup) { + + if (checkMuons_) iEvent.getByToken(gmtMuonsToken_, muonHandle_); + if (checkJets_) iEvent.getByToken(caloJetsToken_, jetHandle_); + if (checkEGammas_) iEvent.getByToken(caloEGammasToken_, eGammaHandle_); + if (checkTaus_) iEvent.getByToken(caloTausToken_, tauHandle_); + if (checkEtSums_) iEvent.getByToken(caloEtSumsToken_, etSumHandle_); + + // get the orbit number + unsigned currOrbit = iEvent.id().event(); + + // if we are looking for a specific orbit + if (searchEvent_){ + if (currOrbit != orbitNum_) return; + + // found the orbit + for (unsigned bx=searchStartBx_; bx<=searchStopBx_; bx++){ + printBx(bx); + } + } else { + + if (skipEmptyBx_){ + + // create a set of non empty BXs + std::set uniqueBx; + + if (checkMuons_) { + for (const unsigned& bx: muonHandle_->getFilledBxs()){ + if ((bx>=minBx_) || (bx<=maxBx_)) uniqueBx.insert(bx); + } + } + if (checkJets_) { + for (const unsigned& bx: jetHandle_->getFilledBxs()){ + if ((bx>=minBx_) || (bx<=maxBx_)) uniqueBx.insert(bx); + } + } + if (checkEGammas_) { + for (const unsigned& bx: eGammaHandle_->getFilledBxs()){ + if ((bx>=minBx_) || (bx<=maxBx_)) uniqueBx.insert(bx); + } + } + if (checkTaus_) { + for (const unsigned& bx: tauHandle_->getFilledBxs()){ + if ((bx>=minBx_) || (bx<=maxBx_)) uniqueBx.insert(bx); + } + } + if (checkEtSums_) { + for (const unsigned& bx: etSumHandle_->getFilledBxs()){ + if ((bx>=minBx_) || (bx<=maxBx_)) uniqueBx.insert(bx); + } + } + + // process bx + for (const unsigned& bx: uniqueBx){ + printBx(bx); + } + + } + else { + // dump all objects + for (unsigned bx=minBx_; bx<=maxBx_; bx++){ + printBx(bx); + } + } + } + +} +// ----------------------------------------------------------------------------- + +void DumpScObjects::printBx(unsigned bx){ + std::cout << "BX = " << bx <<" ****" << std::endl; + + if(checkMuons_ && muonHandle_.isValid()){ + int i=0; + for (auto muon = muonHandle_->begin(bx); muon!=muonHandle_->end(bx); muon++){ + std::cout << "--- Muon " << i << " ---\n"; + printScMuon(*muon); + i++; + } + } + + if(checkJets_ && jetHandle_.isValid()){ + int i=0; + for (auto jet = jetHandle_->begin(bx); jet!=jetHandle_->end(bx); jet++){ + std::cout << "--- Jet " << i << " ---\n"; + printScJet(*jet); + i++; + } + } + + if(checkEGammas_ && jetHandle_.isValid()){ + int i=0; + for (auto egamma = eGammaHandle_->begin(bx); egamma!=eGammaHandle_->end(bx); egamma++){ + std::cout << "--- E/Gamma " << i << " ---\n"; + printScEGamma(*egamma); + i++; + } + } + + if(checkTaus_ && tauHandle_.isValid()){ + int i=0; + for (auto tau = tauHandle_->begin(bx); tau!=tauHandle_->end(bx); tau++){ + std::cout << "--- Tau " << i << " ---\n"; + printScTau(*tau); + i++; + } + } + + if(checkEtSums_ && etSumHandle_.isValid()){ + int i=0; + for (auto sum = etSumHandle_->begin(bx); sum!=etSumHandle_->end(bx); sum++){ + std::cout << "--- Calo Sums ---\n"; + printScBxSums(*sum); + i++; + } + } + +} + +DEFINE_FWK_MODULE(DumpScObjects); \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/src/printScObjects.cc b/L1TriggerScouting/Utilities/src/printScObjects.cc new file mode 100644 index 0000000000000..87c3ecf1b2193 --- /dev/null +++ b/L1TriggerScouting/Utilities/src/printScObjects.cc @@ -0,0 +1,76 @@ +#include "L1TriggerScouting/Utilities/interface/printScObjects.h" + +namespace l1ScoutingRun3 { + + void printScMuon(const ScMuon& muon, std::ostream &outs){ + outs << " Pt [GeV/Hw]: " << ugmt::fPt(muon.hwPt()) << "/" << muon.hwPt() << "\n" + << " Eta [rad/Hw]: " << ugmt::fEta(muon.hwEta()) << "/" << muon.hwEta() << "\n" + << " Phi [rad/Hw]: " << ugmt::fPhi(muon.hwPhi()) << "/" << muon.hwPhi() << "\n" + << " Charge/valid: " << muon.hwCharge() << "/" << muon.hwChargeValid() << "\n" + << " PhiVtx [rad/Hw]: " << ugmt::fPhiAtVtx(muon.hwPhiAtVtx()) << "/" << muon.hwPhiAtVtx() << "\n" + << " EtaVtx [rad/Hw]: " << ugmt::fEtaAtVtx(muon.hwEtaAtVtx()) << "/" << muon.hwEtaAtVtx() << "\n" + << " Pt uncon[GeV/Hw]: " << ugmt::fPtUnconstrained(muon.hwPtUnconstrained()) << "/" << muon.hwPtUnconstrained() << "\n" + << " Dxy: " << muon.hwDXY() << "\n" + << " Qual: " << muon.hwQual() << "\n" + << " TF index: " << muon.tfMuonIndex() << "\n"; + } + + template + void printScCaloObject(const T& obj, std::ostream &outs){ + outs << " Et [GeV/Hw]: " << demux::fEt(obj.hwEt()) << "/" << obj.hwEt() << "\n" + << " Eta [rad/Hw]: " << demux::fEta(obj.hwEta()) << "/" << obj.hwEta() << "\n" + << " Phi [rad/Hw]: " << demux::fPhi(obj.hwPhi()) << "/" << obj.hwPhi() << "\n" + << " Iso [Hw]: " << obj.hwIso() << "\n"; + } + + void printScJet(const ScJet& jet, std::ostream &outs){ + printScCaloObject(jet, outs); + } + void printScEGamma(const ScEGamma& eGamma, std::ostream &outs){ + printScCaloObject(eGamma, outs); + } + void printScTau(const ScTau& tau, std::ostream &outs){ + printScCaloObject(tau, outs); + } + + void printScBxSums(const ScBxSums& sums, std::ostream &outs){ + outs << "Total ET\n" + << " Et [GeV/Hw]: " << demux::fEt(sums.hwTotalEt()) << "/" << sums.hwTotalEt() << "\n" + << "Total ETEm\n" + << " Et [GeV/Hw]: " << demux::fEt(sums.hwTotalEtEm()) << "/" << sums.hwTotalEtEm() << "\n" + << "Total HT\n" + << " Et [GeV/Hw]: " << demux::fEt(sums.hwTotalHt()) << "/" << sums.hwTotalHt() << "\n" + << "Missing ET\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwMissEt()) << "/" << sums.hwMissEt() << "\n" + << " Phi [Rad/Hw]: " << demux::fPhi(sums.hwMissEtPhi()) << "/" << sums.hwMissEtPhi() << "\n" + << "Missing HT\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwMissHt()) << "/" << sums.hwMissHt() << "\n" + << " Phi [Rad/Hw]: " << demux::fPhi(sums.hwMissHtPhi()) << "/" << sums.hwMissHtPhi() << "\n" + << "Missing ETHF\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwMissEtHF()) << "/" << sums.hwMissEtHF() << "\n" + << " Phi [Rad/Hw]: " << demux::fPhi(sums.hwMissEtHFPhi()) << "/" << sums.hwMissEtHFPhi() << "\n" + << "Missing HTHF\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwMissHtHF()) << "/" << sums.hwMissHtHF() << "\n" + << " Phi [Rad/Hw]: " << demux::fPhi(sums.hwMissHtHFPhi()) << "/" << sums.hwMissHtHFPhi() << "\n" + << "AsymEt\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwAsymEt()) << "/" << sums.hwAsymEt() << "\n" + << "AsymHt\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwAsymHt()) << "/" << sums.hwAsymHt() << "\n" + << "AsymEtHF\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwAsymEtHF()) << "/" << sums.hwAsymEtHF() << "\n" + << "AsymHtHF\n" + << " Et [GeV/Hw] : " << demux::fEt(sums.hwAsymHtHF()) << "/" << sums.hwAsymHtHF() << "\n" + << "MinBiasHFP0\n" + << " Hw: " << sums.minBiasHFP0() << "\n" + << "MinBiasHFM0\n" + << " Hw: " << sums.minBiasHFM0() << "\n" + << "MinBiasHFP1\n" + << " Hw: " << sums.minBiasHFP1() << "\n" + << "MinBiasHFM1\n" + << " Hw: " << sums.minBiasHFM1() << "\n" + << "Centrality\n" + << " Hw: " << sums.centrality() << "\n" + << "Tower Count\n" + << " Hw: " << sums.towerCount() << "\n"; + } +} \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/test/dumpScObjects.py b/L1TriggerScouting/Utilities/test/dumpScObjects.py new file mode 100644 index 0000000000000..957ac3d77e7a2 --- /dev/null +++ b/L1TriggerScouting/Utilities/test/dumpScObjects.py @@ -0,0 +1,54 @@ +import FWCore.ParameterSet.Config as cms +import FWCore.ParameterSet.VarParsing as VarParsing + +options = VarParsing.VarParsing ('analysis') + +options.register ('numOrbits', + -1, + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.int, + "Number of orbits to process") + +options.register ('filePath', + "file:/dev/shm/PoolOutputTest.root", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "Sub lumisection number to process") + +options.parseArguments() + +process = cms.Process( "DUMP" ) + + +process.maxEvents = cms.untracked.PSet( + input = cms.untracked.int32(options.numOrbits) +) + +process.load("FWCore.MessageService.MessageLogger_cfi") + +process.source = cms.Source("PoolSource", + fileNames = cms.untracked.vstring(options.filePath) +) + +process.dump = cms.EDAnalyzer("DumpScObjects", + gmtMuonsTag = cms.InputTag("GmtUnpacker", "", "SCPU"), + caloJetsTag = cms.InputTag("CaloUnpacker", "", "SCPU"), + caloEGammasTag = cms.InputTag("CaloUnpacker", "", "SCPU"), + caloTausTag = cms.InputTag("CaloUnpacker", "", "SCPU"), + caloEtSumsTag = cms.InputTag("CaloUnpacker", "", "SCPU"), + minBx = cms.untracked.uint32(0), + maxBx = cms.untracked.uint32(3564), + + skipEmptyBx = cms.untracked.bool(True), # don't show empty BX + + #checkMuons = cms.untracked.bool(False), # test removing a collection + + searchEvent = cms.untracked.bool(True), + orbitNumber = cms.untracked.uint32(88981531), + searchStartBx = cms.untracked.uint32(1027-2), + searchStopBx = cms.untracked.uint32(1027+2), +) + +process.p = cms.Path( + process.dump +) \ No newline at end of file From dfd4f83ba369aa54bac1e4cea4fa614765741b86 Mon Sep 17 00:00:00 2001 From: iarspider Date: Tue, 28 Nov 2023 22:38:55 +0100 Subject: [PATCH 046/281] Update time_serie_prediction.cpp --- .../test/time_serie_prediction.cpp | 35 +++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp b/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp index 61f821afd8dad..20b6e34a854d2 100644 --- a/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp +++ b/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp @@ -1,3 +1,34 @@ +/* +Based on https://github.com/Maverobot/libtorch_examples/blob/master/src/time_serie_prediction.cpp + +Copyright (c) 2019, Zheng Qu +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ #include template @@ -17,9 +48,9 @@ int main(int /*argc*/, char* /*argv*/[]) { const size_t kSequenceLen = 1; const size_t kInputDim = 1; const size_t kHiddenDim = 5; - const size_t kOuputDim = 1; + // const size_t kOuputDim = 1; auto time_serie_detector = torch::nn::LSTM( - torch::nn::LSTMOptions(kInputDim, kHiddenDim).dropout(0.2).layers(kSequenceLen).bidirectional(false)); + torch::nn::LSTMOptions(kInputDim, kHiddenDim).dropout(0.2).num_layers(kSequenceLen).bidirectional(false)); time_serie_detector->to(device); std::cout << time_serie_detector << std::endl; From a75a3d6f1a4b8be6a2945792e9e688297ea304f3 Mon Sep 17 00:00:00 2001 From: apetkovic Date: Wed, 29 Nov 2023 13:19:06 +0100 Subject: [PATCH 047/281] Add HZZ electron ID for Run3 --- PhysicsTools/NanoAOD/python/electrons_cff.py | 7 ++- PhysicsTools/NanoAOD/python/nanoDQM_cfi.py | 2 + .../PatAlgos/python/slimming/miniAOD_tools.py | 3 +- .../egammaObjectModificationsInMiniAOD_cff.py | 4 +- .../python/ElectronMVAValueMapProducer_cfi.py | 4 ++ .../ElectronIdentification/python/FWLite.py | 8 +++ .../mvaElectronID_Winter22_HZZ_V1_cff.py | 49 +++++++++++++++++++ .../test/testElectronMVARun3_cfg.py | 9 +++- 8 files changed, 81 insertions(+), 5 deletions(-) create mode 100644 RecoEgamma/ElectronIdentification/python/Identification/mvaElectronID_Winter22_HZZ_V1_cff.py diff --git a/PhysicsTools/NanoAOD/python/electrons_cff.py b/PhysicsTools/NanoAOD/python/electrons_cff.py index 9168c9d3643a3..3ed85e6a55f1a 100644 --- a/PhysicsTools/NanoAOD/python/electrons_cff.py +++ b/PhysicsTools/NanoAOD/python/electrons_cff.py @@ -12,6 +12,7 @@ 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Summer16UL_ID_ISO_cff', 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Summer17UL_ID_ISO_cff', 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Summer18UL_ID_ISO_cff', + 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Winter22_HZZ_V1_cff', # Fall17: need to include the modules too to make sure they are run 'RecoEgamma.ElectronIdentification.Identification.cutBasedElectronID_Fall17_94X_V2_cff', 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Fall17_iso_V2_cff', @@ -155,7 +156,7 @@ def _get_bitmapVIDForEle_docstring(modules,WorkingPoints): mvaNoIso_Fall17V2 = cms.InputTag("electronMVAValueMapProducer:ElectronMVAEstimatorRun2Fall17NoIsoV2Values"), mvaIso = cms.InputTag("electronMVAValueMapProducer:ElectronMVAEstimatorRun2RunIIIWinter22IsoV1Values"), mvaNoIso = cms.InputTag("electronMVAValueMapProducer:ElectronMVAEstimatorRun2RunIIIWinter22NoIsoV1Values"), - mvaHZZIso = cms.InputTag("electronMVAValueMapProducer:ElectronMVAEstimatorRun2Summer18ULIdIsoValues"), + mvaHZZIso = cms.InputTag("electronMVAValueMapProducer:ElectronMVAEstimatorRun2Winter22HZZV1Values"), miniIsoChg = cms.InputTag("isoForEle:miniIsoChg"), miniIsoAll = cms.InputTag("isoForEle:miniIsoAll"), @@ -184,7 +185,8 @@ def _get_bitmapVIDForEle_docstring(modules,WorkingPoints): mvaNoIso_Fall17V2_WPL = cms.InputTag("egmGsfElectronIDs:mvaEleID-Fall17-noIso-V2-wpLoose"), mvaNoIso_WP90 = cms.InputTag("egmGsfElectronIDs:mvaEleID-RunIIIWinter22-noIso-V1-wp90"), mvaNoIso_WP80 = cms.InputTag("egmGsfElectronIDs:mvaEleID-RunIIIWinter22-noIso-V1-wp80"), - + mvaIso_WPHZZ = cms.InputTag("egmGsfElectronIDs:mvaEleID-Winter22-HZZ-V1"), + cutBasedID_veto = cms.InputTag("egmGsfElectronIDs:cutBasedElectronID-RunIIIWinter22-V1-veto"), cutBasedID_loose = cms.InputTag("egmGsfElectronIDs:cutBasedElectronID-RunIIIWinter22-V1-loose"), cutBasedID_medium = cms.InputTag("egmGsfElectronIDs:cutBasedElectronID-RunIIIWinter22-V1-medium"), @@ -329,6 +331,7 @@ def _get_bitmapVIDForEle_docstring(modules,WorkingPoints): mvaNoIso_WP80 = Var("userInt('mvaNoIso_WP80')",bool,doc="MVA noIso ID WP80, Winter22V1"), mvaNoIso_WP90 = Var("userInt('mvaNoIso_WP90')",bool,doc="MVA noIso ID WP90, Winter22V1"), mvaHZZIso = Var("userFloat('mvaHZZIso')", float,doc="HZZ MVA Iso ID score"), + mvaIso_WPHZZ = Var("userInt('mvaIso_WPHZZ')",bool,doc="MVA Iso ID WPHZZ, Winter22V1"), cutBased = Var("userInt('cutBasedID_veto')+userInt('cutBasedID_loose')+userInt('cutBasedID_medium')+userInt('cutBasedID_tight')", "uint8", doc="cut-based ID RunIII Winter22 (0:fail, 1:veto, 2:loose, 3:medium, 4:tight)"), vidNestedWPBitmap = Var("userInt('VIDNestedWPBitmap')", int, doc=_bitmapVIDForEle_docstring), diff --git a/PhysicsTools/NanoAOD/python/nanoDQM_cfi.py b/PhysicsTools/NanoAOD/python/nanoDQM_cfi.py index 6768e4d2fae3b..1c55ce88faf11 100644 --- a/PhysicsTools/NanoAOD/python/nanoDQM_cfi.py +++ b/PhysicsTools/NanoAOD/python/nanoDQM_cfi.py @@ -106,6 +106,8 @@ Plot1D('mvaNoIso_Fall17V2_WP80', 'mvaNoIso_Fall17V2_WP80', 2, -0.5, 1.5, 'MVA noIso ID WP80, Fall17V2'), Plot1D('mvaNoIso_Fall17V2_WP90', 'mvaNoIso_Fall17V2_WP90', 2, -0.5, 1.5, 'MVA noIso ID WP90, Fall17V2'), Plot1D('mvaNoIso_Fall17V2_WPL', 'mvaNoIso_Fall17V2_WPL', 2, -0.5, 1.5, 'MVA noIso ID loose WP, Fall17V2'), + Plot1D('mvaHZZIso', 'mvaHZZIso', 20, -1, 1, 'HZZ MVA Iso ID score'), + Plot1D('mvaIso_WPHZZ', 'mvaIso_WPHZZ', 2, -0.5, 1.5, 'MVA Iso ID WPHZZ, Winter22V1'), Plot1D('mvaTTH', 'mvaTTH', 20, -1, 1, 'TTH MVA lepton ID score'), Plot1D('pdgId', 'pdgId', 27, -13.5, 13.5, 'PDG code assigned by the event reconstruction (not by MC truth)'), Plot1D('miniPFRelIso_all', 'miniPFRelIso_all', 20, 0, 1, 'mini PF relative isolation, total (with scaled rho*EA PU corrections)'), diff --git a/PhysicsTools/PatAlgos/python/slimming/miniAOD_tools.py b/PhysicsTools/PatAlgos/python/slimming/miniAOD_tools.py index 3230dddce9dc3..ebda1d5cd9645 100644 --- a/PhysicsTools/PatAlgos/python/slimming/miniAOD_tools.py +++ b/PhysicsTools/PatAlgos/python/slimming/miniAOD_tools.py @@ -305,7 +305,8 @@ def _add_deepFlavour(process): 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Summer17UL_ID_ISO_cff', 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Summer18UL_ID_ISO_cff', 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_RunIIIWinter22_noIso_V1_cff', - 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_RunIIIWinter22_iso_V1_cff' + 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_RunIIIWinter22_iso_V1_cff', + 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Winter22_HZZ_V1_cff' ] switchOnVIDElectronIdProducer(process,DataFormat.MiniAOD, task) process.egmGsfElectronIDs.physicsObjectSrc = cms.InputTag("reducedEgamma","reducedGedGsfElectrons") diff --git a/RecoEgamma/EgammaTools/python/egammaObjectModificationsInMiniAOD_cff.py b/RecoEgamma/EgammaTools/python/egammaObjectModificationsInMiniAOD_cff.py index 92b3c3339d8b0..641f493656177 100644 --- a/RecoEgamma/EgammaTools/python/egammaObjectModificationsInMiniAOD_cff.py +++ b/RecoEgamma/EgammaTools/python/egammaObjectModificationsInMiniAOD_cff.py @@ -11,6 +11,7 @@ import RecoEgamma.ElectronIdentification.Identification.mvaElectronID_RunIIIWinter22_iso_V1_cff as ele_RunIIIWinter22_iso_v1 import RecoEgamma.ElectronIdentification.Identification.mvaElectronID_RunIIIWinter22_noIso_V1_cff as ele_RunIIIWinter22_noIso_v1 +import RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Winter22_HZZ_V1_cff as ele_Winter22_HZZ_V1 #photon mva ids import RecoEgamma.PhotonIdentification.Identification.mvaPhotonID_Spring16_nonTrig_V1_cff as pho_spring16_nt_v1 @@ -49,7 +50,8 @@ def setup_mva(val_pset,cat_pset,prod_name,mva_name): ele_fall17_noIso_v2, ele_summer18UL_hzz, ele_RunIIIWinter22_iso_v1, - ele_RunIIIWinter22_noIso_v1 + ele_RunIIIWinter22_noIso_v1, + ele_Winter22_HZZ_V1 ]: setup_mva(egamma_modifications[0].electron_config, diff --git a/RecoEgamma/ElectronIdentification/python/ElectronMVAValueMapProducer_cfi.py b/RecoEgamma/ElectronIdentification/python/ElectronMVAValueMapProducer_cfi.py index 991e11b123d3a..dbc65a274d42a 100644 --- a/RecoEgamma/ElectronIdentification/python/ElectronMVAValueMapProducer_cfi.py +++ b/RecoEgamma/ElectronIdentification/python/ElectronMVAValueMapProducer_cfi.py @@ -48,6 +48,10 @@ import mvaEleID_Summer18UL_ID_ISO_producer_config mvaConfigsForEleProducer.append( mvaEleID_Summer18UL_ID_ISO_producer_config ) +from RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Winter22_HZZ_V1_cff \ + import mvaEleID_Winter22_HZZ_V1_producer_config +mvaConfigsForEleProducer.append( mvaEleID_Winter22_HZZ_V1_producer_config ) + electronMVAValueMapProducer = cms.EDProducer('ElectronMVAValueMapProducer', src = cms.InputTag('slimmedElectrons'), mvaConfigurations = mvaConfigsForEleProducer diff --git a/RecoEgamma/ElectronIdentification/python/FWLite.py b/RecoEgamma/ElectronIdentification/python/FWLite.py index 998c190783e40..d42d090967bfa 100644 --- a/RecoEgamma/ElectronIdentification/python/FWLite.py +++ b/RecoEgamma/ElectronIdentification/python/FWLite.py @@ -100,6 +100,8 @@ def passed(self, ele, mva, category, wp): import mvaSpring16WeightFiles_V1 as mvaSpring16GPWeightFiles_V1 from RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Spring16_HZZ_V1_cff \ import mvaSpring16WeightFiles_V1 as mvaSpring16HZZWeightFiles_V1 +from RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Winter22_HZZ_V1_cff \ + import mvaWeightFiles as mvaWinter22HZZWeightFiles_V1 from RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Spring16_GeneralPurpose_V1_cff \ import workingPoints as mvaSpring16GP_V1_workingPoints @@ -113,6 +115,8 @@ def passed(self, ele, mva, category, wp): import workingPoints as RunIIIWinter22_iso_V1_workingPoints from RecoEgamma.ElectronIdentification.Identification.mvaElectronID_RunIIIWinter22_noIso_V1_cff \ import workingPoints as RunIIIWinter22_noIso_V1_workingPoints +from RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Winter22_HZZ_V1_cff \ + import workingPoints as Winter22_HZZ_V1_workingPoints # Dictionary with the relecant e/gmma MVAs @@ -129,6 +133,8 @@ def passed(self, ele, mva, category, wp): EleMVA_6CategoriesCuts, mvaSpring16HZZWeightFiles_V1, mvaVariablesFile), "Spring16GPV1" : ElectronMVAID("ElectronMVAEstimatorRun2","Spring16GeneralPurposeV1", EleMVA_3CategoriesCuts, mvaSpring16GPWeightFiles_V1, mvaVariablesFile), + "Winter22HZZV1" : ElectronMVAID("ElectronMVAEstimatorRun2","Winter22HZZV1", + EleMVA_6CategoriesCuts, mvaWinter22HZZWeightFiles_V1, mvaVariablesFileRun3), } working_points = { @@ -144,5 +150,7 @@ def passed(self, ele, mva, category, wp): mvaSpring16HZZ_V1_workingPoints, logistic_transform=True), "Spring16GPV1" : WorkingPoints("ElectronMVAEstimatorRun2","Spring16GeneralPurposeV1", mvaSpring16GP_V1_workingPoints, logistic_transform=True), + "Winter22HZZV1" : WorkingPoints("ElectronMVAEstimatorRun2","Winter22HZZV1", + Winter22_HZZ_V1_workingPoints), } diff --git a/RecoEgamma/ElectronIdentification/python/Identification/mvaElectronID_Winter22_HZZ_V1_cff.py b/RecoEgamma/ElectronIdentification/python/Identification/mvaElectronID_Winter22_HZZ_V1_cff.py new file mode 100644 index 0000000000000..b488b3153b55d --- /dev/null +++ b/RecoEgamma/ElectronIdentification/python/Identification/mvaElectronID_Winter22_HZZ_V1_cff.py @@ -0,0 +1,49 @@ +import FWCore.ParameterSet.Config as cms +from RecoEgamma.ElectronIdentification.Identification.mvaElectronID_tools import * +from os import path + +mvaTag = "Winter22HZZV1" + +weightFileDir = "RecoEgamma/ElectronIdentification/data/MVAWeightFiles/Winter22HZZV1" + +mvaWeightFiles = cms.vstring( + path.join(weightFileDir, "EB1_5.weights.xml.gz"), # EB1_5 + path.join(weightFileDir, "EB2_5.weights.xml.gz"), # EB2_5 + path.join(weightFileDir, "EE_5.weights.xml.gz"), # EE_5 + path.join(weightFileDir, "EB1_10.weights.xml.gz"), # EB1_10 + path.join(weightFileDir, "EB2_10.weights.xml.gz"), # EB2_10 + path.join(weightFileDir, "EE_10.weights.xml.gz"), # EE_10 + ) + +categoryCuts = cms.vstring( + "pt < 10. && abs(superCluster.eta) < 0.800", + "pt < 10. && abs(superCluster.eta) >= 0.800 && abs(superCluster.eta) < 1.479", + "pt < 10. && abs(superCluster.eta) >= 1.479", + "pt >= 10. && abs(superCluster.eta) < 0.800", + "pt >= 10. && abs(superCluster.eta) >= 0.800 && abs(superCluster.eta) < 1.479", + "pt >= 10. && abs(superCluster.eta) >= 1.479", +) + +mvaEleID_Winter22_HZZ_V1_container = EleMVARaw_WP( + idName = "mvaEleID-Winter22-HZZ-V1", mvaTag = mvaTag, + cutCategory0 = "1.633973689084034", # EB1_5 + cutCategory1 = "1.5499076306249353", # EB2_5 + cutCategory2 = "2.0629564440753247", # EE_5 + cutCategory3 = "0.3685228146685872", # EB1_10 + cutCategory4 = "0.2662407818935475", # EB2_10 + cutCategory5 = "-0.5444837363886459", # EE_10 + ) + + +mvaEleID_Winter22_HZZ_V1_producer_config = cms.PSet( + mvaName = cms.string(mvaClassName), + mvaTag = cms.string(mvaTag), + nCategories = cms.int32(6), + categoryCuts = categoryCuts, + weightFileNames = mvaWeightFiles, + variableDefinition = cms.string(mvaVariablesFileRun3) + ) + +mvaEleID_Winter22_HZZ_V1 = configureVIDMVAEleID( mvaEleID_Winter22_HZZ_V1_container ) + +mvaEleID_Winter22_HZZ_V1.isPOGApproved = cms.untracked.bool(False) diff --git a/RecoEgamma/ElectronIdentification/test/testElectronMVARun3_cfg.py b/RecoEgamma/ElectronIdentification/test/testElectronMVARun3_cfg.py index 21c837a167eaf..35a9a769e85c5 100644 --- a/RecoEgamma/ElectronIdentification/test/testElectronMVARun3_cfg.py +++ b/RecoEgamma/ElectronIdentification/test/testElectronMVARun3_cfg.py @@ -53,6 +53,7 @@ #'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Fall17_iso_V1_cff', 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_RunIIIWinter22_iso_V1_cff', 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_RunIIIWinter22_noIso_V1_cff', + 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Winter22_HZZ_V1_cff', ] #add them to the VID producer @@ -71,6 +72,7 @@ "egmGsfElectronIDs:mvaEleID-RunIIIWinter22-iso-V1-wp90", "egmGsfElectronIDs:mvaEleID-RunIIIWinter22-noIso-V1-wp80", "egmGsfElectronIDs:mvaEleID-RunIIIWinter22-noIso-V1-wp90", + "egmGsfElectronIDs:mvaEleID-Winter22-HZZ-V1", #"egmGsfElectronIDs:mvaEleID-Fall17-noIso-V2-wp90", #"egmGsfElectronIDs:mvaEleID-Fall17-iso-V2-wpHZZ", # "egmGsfElectronIDs:mvaEleID-Fall17-iso-V2-wp80", @@ -104,7 +106,8 @@ "RunIIIWinter22isoV1wp80", "RunIIIWinter22isoV1wp90", "RunIIIWinter22noIsoV1wp80", - "RunIIIWinter22noIsoV1wp90", + "RunIIIWinter22noIsoV1wp90", + "Winter22isoV1wpHZZ", ), eleMVAValMaps = cms.vstring( #"electronMVAValueMapProducer:ElectronMVAEstimatorRun2Spring16GeneralPurposeV1Values", @@ -121,6 +124,8 @@ "electronMVAValueMapProducer:ElectronMVAEstimatorRun2RunIIIWinter22IsoV1RawValues", "electronMVAValueMapProducer:ElectronMVAEstimatorRun2RunIIIWinter22NoIsoV1Values", "electronMVAValueMapProducer:ElectronMVAEstimatorRun2RunIIIWinter22NoIsoV1RawValues", + "electronMVAValueMapProducer:ElectronMVAEstimatorRun2Winter22HZZV1Values", + "electronMVAValueMapProducer:ElectronMVAEstimatorRun2Winter22HZZV1RawValues", ), eleMVAValMapLabels = cms.vstring( #"Spring16GPV1Vals", @@ -136,6 +141,8 @@ "RunIIIWinter22NoIsoV1RawVals", "RunIIIWinter22IsoV1Vals", "RunIIIWinter22IsoV1RawVals", + "Winter22HZZV1Vals", + "Winter22HZZV1RawVals", ), eleMVACats = cms.vstring( #"electronMVAValueMapProducer:ElectronMVAEstimatorRun2Fall17NoIsoV1Categories", From 90c3620e351554e6b641345e590b07eca0020f9b Mon Sep 17 00:00:00 2001 From: iarspider Date: Wed, 29 Nov 2023 16:12:56 +0100 Subject: [PATCH 048/281] Update time_serie_prediction.cpp --- .../test/time_serie_prediction.cpp | 82 ++++--------------- 1 file changed, 18 insertions(+), 64 deletions(-) diff --git a/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp b/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp index 20b6e34a854d2..604743c9b5f3d 100644 --- a/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp +++ b/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp @@ -1,81 +1,35 @@ -/* -Based on https://github.com/Maverobot/libtorch_examples/blob/master/src/time_serie_prediction.cpp - -Copyright (c) 2019, Zheng Qu -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -3. Neither the name of the copyright holder nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ #include +#include -template -void pretty_print(const std::string& info, T&& data) { - std::cout << info << std::endl; - std::cout << data << std::endl << std::endl; -} +struct Net : torch::nn::Module { + Net(int64_t N, int64_t M) + : linear(register_module("linear", torch::nn::Linear(N, M))) { + another_bias = register_parameter("b", torch::randn(M)); + } + torch::Tensor forward(torch::Tensor input) { + return linear(input) + another_bias; + } + torch::nn::Linear linear; + torch::Tensor another_bias; +}; int main(int /*argc*/, char* /*argv*/[]) { // Use GPU when present, CPU otherwise. + Net net(4, 5); + torch::Device device(torch::kCPU); if (torch::cuda::is_available()) { device = torch::Device(torch::kCUDA); std::cout << "CUDA is available! Training on GPU." << std::endl; } - const size_t kSequenceLen = 1; - const size_t kInputDim = 1; - const size_t kHiddenDim = 5; - // const size_t kOuputDim = 1; - auto time_serie_detector = torch::nn::LSTM( - torch::nn::LSTMOptions(kInputDim, kHiddenDim).dropout(0.2).num_layers(kSequenceLen).bidirectional(false)); - time_serie_detector->to(device); - std::cout << time_serie_detector << std::endl; + net.to(device); - torch::Tensor input = torch::empty({kSequenceLen, kInputDim}); - torch::Tensor state = torch::zeros({2, kSequenceLen, kHiddenDim}); - auto input_acc = input.accessor(); - size_t count = 0; - for (float i = 0.1; i < 0.4; i += 0.1) { - input_acc[count][0] = i; - count++; + for (const auto& pair : net.named_parameters()) { + std::cout << pair.key() << ": " << pair.value() << std::endl; } - input = input.toBackend(c10::Backend::CUDA); - state = state.toBackend(c10::Backend::CUDA); - std::cout << "input = " << input << std::endl; - time_serie_detector->zero_grad(); - - auto i_tmp = input.view({input.size(0), 1, -1}); - auto s_tmp = state.view({2, state.size(0) / 2, 1, -1}); - - pretty_print("input: ", i_tmp); - pretty_print("state: ", s_tmp); - auto rnn_output = time_serie_detector->forward(i_tmp, s_tmp); - pretty_print("rnn_output/output: ", rnn_output.output); - pretty_print("rnn_output/state: ", rnn_output.state); + std::cout << net.forward(torch::ones({2, 4})) << std::endl; return 0; } From db191149442a087e16d23847e488463739af6066 Mon Sep 17 00:00:00 2001 From: Ivan Razumov Date: Wed, 29 Nov 2023 17:21:37 +0100 Subject: [PATCH 049/281] Code-format --- PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp b/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp index 604743c9b5f3d..efe4b7fb6c1ea 100644 --- a/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp +++ b/PhysicsTools/PythonAnalysis/test/time_serie_prediction.cpp @@ -2,13 +2,10 @@ #include struct Net : torch::nn::Module { - Net(int64_t N, int64_t M) - : linear(register_module("linear", torch::nn::Linear(N, M))) { + Net(int64_t N, int64_t M) : linear(register_module("linear", torch::nn::Linear(N, M))) { another_bias = register_parameter("b", torch::randn(M)); } - torch::Tensor forward(torch::Tensor input) { - return linear(input) + another_bias; - } + torch::Tensor forward(torch::Tensor input) { return linear(input) + another_bias; } torch::nn::Linear linear; torch::Tensor another_bias; }; From ab911b84e40f384ca906b5af00821426ab376fc0 Mon Sep 17 00:00:00 2001 From: AdrianoDee Date: Wed, 29 Nov 2023 17:44:31 +0100 Subject: [PATCH 050/281] Updating limited matrix --- .../PyReleaseValidation/scripts/runTheMatrix.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/Configuration/PyReleaseValidation/scripts/runTheMatrix.py b/Configuration/PyReleaseValidation/scripts/runTheMatrix.py index 610460b31f02d..0554c17c0b83f 100755 --- a/Configuration/PyReleaseValidation/scripts/runTheMatrix.py +++ b/Configuration/PyReleaseValidation/scripts/runTheMatrix.py @@ -74,8 +74,6 @@ def runSelected(opt): 136.88811,#2018D JetHT reMINIAOD from UL processing 136.793, #2017C DoubleEG 136.874, #2018C EGamma - 138.4, #2021 MinimumBias prompt reco - 138.5, #2021 MinimumBias express 139.001, #2021 MinimumBias offline with HLT step 140.53, #2011 HI data 140.56, #2018 HI data @@ -89,11 +87,10 @@ def runSelected(opt): 10024.0, #2017 ttbar 10824.0, #2018 ttbar 2018.1, #2018 ttbar fastsim - 11634.911, #2021 DD4hep ttbar reading geometry from XML - 11634.914, #2021 DDD ttbar reading geometry from the DB - 11634.0, #2021 ttbar (switching to DD4hep by default) + 11634.0, #2021 ttbar (switched to DD4hep by default) 13234.0, #2021 ttbar fastsim 12434.0, #2023 ttbar + 12425.0, #2023 ZEE 12634.0, #2023 ttbar PU 12434.7, #2023 ttbar mkFit 14034.0, #2023 ttbar fastsim @@ -107,6 +104,8 @@ def runSelected(opt): 25202.0, #2016 ttbar UP15 PU 250202.181, #2018 ttbar stage1 + stage2 premix 141.044 # 2023D JetMET PD + 141.042 # 2023D ZeroBias PD + 141.046 # 2023D EGamma PD ], 'jetmc': [5.1, 13, 15, 25, 38, 39], #MC 'metmc' : [5.1, 15, 25, 37, 38, 39], #MC From a9bf65fba6a2a01b1596ed406b76710da78feaab Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Wed, 29 Nov 2023 11:23:46 -0600 Subject: [PATCH 051/281] Removed std::auto_ptr from Herwig7Interface Replaced with std::unique_ptr. --- .../Herwig7Interface/interface/Herwig7Interface.h | 4 ++-- .../Herwig7Interface/src/Herwig7Interface.cc | 15 +++++++-------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/GeneratorInterface/Herwig7Interface/interface/Herwig7Interface.h b/GeneratorInterface/Herwig7Interface/interface/Herwig7Interface.h index 0be9757401e19..6b675371ab23b 100644 --- a/GeneratorInterface/Herwig7Interface/interface/Herwig7Interface.h +++ b/GeneratorInterface/Herwig7Interface/interface/Herwig7Interface.h @@ -52,11 +52,11 @@ class Herwig7Interface { bool initGenerator(); void flushRandomNumberGenerator(); - static std::auto_ptr convert(const ThePEG::EventPtr &event); + static std::unique_ptr convert(const ThePEG::EventPtr &event); static double pthat(const ThePEG::EventPtr &event); - std::auto_ptr iobc_; + std::unique_ptr iobc_; // HerwigUi contains settings piped to Herwig7 std::shared_ptr HwUI_; diff --git a/GeneratorInterface/Herwig7Interface/src/Herwig7Interface.cc b/GeneratorInterface/Herwig7Interface/src/Herwig7Interface.cc index 57d20cd91ede2..063676b55bce3 100644 --- a/GeneratorInterface/Herwig7Interface/src/Herwig7Interface.cc +++ b/GeneratorInterface/Herwig7Interface/src/Herwig7Interface.cc @@ -4,13 +4,12 @@ * Dominik Beutel dominik.beutel@cern.ch */ -#include -#include -#include -#include -#include #include #include +#include +#include +#include +#include #include @@ -57,7 +56,7 @@ Herwig7Interface::Herwig7Interface(const edm::ParameterSet &pset) // Write events in hepmc ascii format for debugging purposes string dumpEvents = pset.getUntrackedParameter("dumpEvents", ""); if (!dumpEvents.empty()) { - iobc_.reset(new HepMC::IO_GenEvent(dumpEvents, ios::out)); + iobc_ = std::make_unique(dumpEvents, ios::out); edm::LogInfo("ThePEGSource") << "Event logging switched on (=> " << dumpEvents << ")"; } // Clear dumpConfig target @@ -223,8 +222,8 @@ void Herwig7Interface::flushRandomNumberGenerator() { */ } -auto_ptr Herwig7Interface::convert(const ThePEG::EventPtr &event) { - return std::auto_ptr(ThePEG::HepMCConverter::convert(*event)); +unique_ptr Herwig7Interface::convert(const ThePEG::EventPtr &event) { + return std::unique_ptr(ThePEG::HepMCConverter::convert(*event)); } double Herwig7Interface::pthat(const ThePEG::EventPtr &event) { From 4e207633ec344a597b42faed6d51be451dafc6cb Mon Sep 17 00:00:00 2001 From: AdrianoDee Date: Wed, 29 Nov 2023 18:40:57 +0100 Subject: [PATCH 052/281] Updating limited matrix --- Configuration/PyReleaseValidation/scripts/runTheMatrix.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Configuration/PyReleaseValidation/scripts/runTheMatrix.py b/Configuration/PyReleaseValidation/scripts/runTheMatrix.py index 0554c17c0b83f..30b41a2eadb2f 100755 --- a/Configuration/PyReleaseValidation/scripts/runTheMatrix.py +++ b/Configuration/PyReleaseValidation/scripts/runTheMatrix.py @@ -103,8 +103,8 @@ def runSelected(opt): 23234.0, #2026D94 ttbar (exercise with HFNose) 25202.0, #2016 ttbar UP15 PU 250202.181, #2018 ttbar stage1 + stage2 premix - 141.044 # 2023D JetMET PD - 141.042 # 2023D ZeroBias PD + 141.044, # 2023D JetMET PD + 141.042, # 2023D ZeroBias PD 141.046 # 2023D EGamma PD ], 'jetmc': [5.1, 13, 15, 25, 38, 39], #MC From d7d8792d5ce72700e11a2973057541e83faf9d40 Mon Sep 17 00:00:00 2001 From: apetkovic Date: Thu, 30 Nov 2023 17:05:43 +0100 Subject: [PATCH 053/281] Remove wpHZZ from Run 2 workflows --- PhysicsTools/NanoAOD/python/electrons_cff.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/PhysicsTools/NanoAOD/python/electrons_cff.py b/PhysicsTools/NanoAOD/python/electrons_cff.py index 3ed85e6a55f1a..7adb09972b050 100644 --- a/PhysicsTools/NanoAOD/python/electrons_cff.py +++ b/PhysicsTools/NanoAOD/python/electrons_cff.py @@ -219,6 +219,7 @@ def _get_bitmapVIDForEle_docstring(modules,WorkingPoints): PFIsoAll = None, PFIsoAll04 = None).\ toModify(slimmedElectronsWithUserData.userIntFromBools, + mvaIso_WPHZZ = None, mvaIso_WP90 = None, mvaIso_WP80 = None, mvaNoIso_WP90 = None, @@ -249,10 +250,7 @@ def _get_bitmapVIDForEle_docstring(modules,WorkingPoints): slimmedElectronsWithUserData.userFloats, mvaHZZIso = "electronMVAValueMapProducer:ElectronMVAEstimatorRun2Summer17ULIdIsoValues" ) -(run2_egamma_2018).toModify( - slimmedElectronsWithUserData.userFloats, - mvaHZZIso = "electronMVAValueMapProducer:ElectronMVAEstimatorRun2Summer18ULIdIsoValues" -) + #################################################END slimmedElectrons with user data##################### #################################################finalElectrons##################### From aedb10987aba1f485979bb851f3f824f2662be3c Mon Sep 17 00:00:00 2001 From: Christopher McGinn Date: Wed, 29 Nov 2023 14:03:07 -0500 Subject: [PATCH 054/281] Removal of ZDC LUT file in caloParamsHelper and L1T workflow Removal of zdc LUT file query from L1TCaloStage2ParamsESProducer - obsolete Also need to mod the caloParams file --- .../L1TCalorimeter/plugins/L1TCaloStage2ParamsESProducer.cc | 6 ------ L1Trigger/L1TCalorimeter/python/caloParams_cfi.py | 2 +- 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/L1Trigger/L1TCalorimeter/plugins/L1TCaloStage2ParamsESProducer.cc b/L1Trigger/L1TCalorimeter/plugins/L1TCaloStage2ParamsESProducer.cc index 7ba7ca4e9b388..77d4a54f47306 100644 --- a/L1Trigger/L1TCalorimeter/plugins/L1TCaloStage2ParamsESProducer.cc +++ b/L1Trigger/L1TCalorimeter/plugins/L1TCaloStage2ParamsESProducer.cc @@ -344,12 +344,6 @@ L1TCaloStage2ParamsESProducer::L1TCaloStage2ParamsESProducer(const edm::Paramete std::shared_ptr q2LUT(new LUT(q2LUTStream)); m_params_helper.setQ2LUT(*q2LUT); - // HI ZDC calibration LUT for trigger - edm::FileInPath zdcLUTFile = conf.getParameter("zdcLUTFile"); - std::ifstream zdcLUTStream(zdcLUTFile.fullPath()); - std::shared_ptr zdcLUT(new LUT(zdcLUTStream)); - m_params_helper.setZDCLUT(*zdcLUT); - // Layer 1 LUT specification m_params_helper.setLayer1ECalScaleFactors(conf.getParameter>("layer1ECalScaleFactors")); m_params_helper.setLayer1HCalScaleFactors(conf.getParameter>("layer1HCalScaleFactors")); diff --git a/L1Trigger/L1TCalorimeter/python/caloParams_cfi.py b/L1Trigger/L1TCalorimeter/python/caloParams_cfi.py index abbab772c6e9b..dfe70b9da7cfe 100644 --- a/L1Trigger/L1TCalorimeter/python/caloParams_cfi.py +++ b/L1Trigger/L1TCalorimeter/python/caloParams_cfi.py @@ -142,7 +142,7 @@ minimumBiasThresholds = cms.vint32(0, 0, 0, 0), centralityLUTFile = cms.FileInPath("L1Trigger/L1TCalorimeter/data/centralityLUT_stage1.txt"), q2LUTFile = cms.FileInPath("L1Trigger/L1TCalorimeter/data/q2LUT_stage1.txt"), - zdcLUTFile = cms.FileInPath("L1Trigger/L1TZDC/data/zdcLUT_HI_v0_1.txt"), +# zdcLUTFile = cms.FileInPath("L1Trigger/L1TZDC/data/zdcLUT_HI_v0_1.txt"), # HCal FB LUT layer1HCalFBLUTUpper = cms.vuint32([ From ed5ae4188ec8370178d8923678a5a23f7896236d Mon Sep 17 00:00:00 2001 From: apetkovic Date: Thu, 30 Nov 2023 21:10:19 +0100 Subject: [PATCH 055/281] Fix removing 2018 HZZ --- PhysicsTools/NanoAOD/python/electrons_cff.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/PhysicsTools/NanoAOD/python/electrons_cff.py b/PhysicsTools/NanoAOD/python/electrons_cff.py index 7adb09972b050..0850e496203f8 100644 --- a/PhysicsTools/NanoAOD/python/electrons_cff.py +++ b/PhysicsTools/NanoAOD/python/electrons_cff.py @@ -250,7 +250,10 @@ def _get_bitmapVIDForEle_docstring(modules,WorkingPoints): slimmedElectronsWithUserData.userFloats, mvaHZZIso = "electronMVAValueMapProducer:ElectronMVAEstimatorRun2Summer17ULIdIsoValues" ) - +(run2_egamma_2018).toModify( + slimmedElectronsWithUserData.userFloats, + mvaHZZIso = "electronMVAValueMapProducer:ElectronMVAEstimatorRun2Summer18ULIdIsoValues" +) #################################################END slimmedElectrons with user data##################### #################################################finalElectrons##################### From eee28de588e9649ae3300e94da58c39dc730f18b Mon Sep 17 00:00:00 2001 From: jtao Date: Fri, 1 Dec 2023 11:40:25 +0100 Subject: [PATCH 056/281] Add one more PV variable sumPT2 of pf charged particles associated to PV in NanoAOD --- .../NanoAOD/plugins/VertexTableProducer.cc | 30 +++++++++++++++++++ PhysicsTools/NanoAOD/python/vertices_cff.py | 1 + 2 files changed, 31 insertions(+) diff --git a/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc b/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc index e79ecf40450c8..df8a46e8a3927 100644 --- a/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc +++ b/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc @@ -41,6 +41,10 @@ #include "RecoVertex/VertexPrimitives/interface/VertexState.h" #include "DataFormats/Common/interface/ValueMap.h" +//New +#include "DataFormats/PatCandidates/interface/PackedCandidate.h" +#include "DataFormats/ParticleFlowCandidate/interface/PFCandidate.h" + // // class declaration // @@ -65,6 +69,7 @@ class VertexTableProducer : public edm::stream::EDProducer<> { // ----------member data --------------------------- const edm::EDGetTokenT> pvs_; + const edm::EDGetTokenT pfc_; //New const edm::EDGetTokenT> pvsScore_; const edm::EDGetTokenT> svs_; const StringCutObjectSelector svCut_; @@ -81,6 +86,7 @@ class VertexTableProducer : public edm::stream::EDProducer<> { // VertexTableProducer::VertexTableProducer(const edm::ParameterSet& params) : pvs_(consumes>(params.getParameter("pvSrc"))), + pfc_(consumes(params.getParameter("pfcSrc"))), //New pvsScore_(consumes>(params.getParameter("pvSrc"))), svs_(consumes>(params.getParameter("svSrc"))), svCut_(params.getParameter("svCut"), true), @@ -115,6 +121,9 @@ void VertexTableProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSe const auto& pvsScoreProd = iEvent.get(pvsScore_); auto pvsIn = iEvent.getHandle(pvs_); + //pf candidates collection + auto pfcIn = iEvent.getHandle(pfc_); + auto pvTable = std::make_unique(1, pvName_, true); pvTable->addColumnValue("ndof", (*pvsIn)[0].ndof(), "main primary vertex number of degree of freedom", 8); pvTable->addColumnValue("x", (*pvsIn)[0].position().x(), "main primary vertex position x coordinate", 10); @@ -131,6 +140,26 @@ void VertexTableProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSe pvTable->addColumnValue( "score", pvsScoreProd.get(pvsIn.id(), 0), "main primary vertex score, i.e. sum pt2 of clustered objects", 8); + //New + float pv_sumpt2=0.0; + for (size_t i = 0; i < (*pfcIn).size(); i++) { + if ( (*pfcIn)[i].charge() == 0 ) { continue; } // skip neutrals + double dz = fabs( (*pfcIn)[i].dz( (*pvsIn)[0].position() ) ); + int include_pfc = 0; + if( dz < 0.2) include_pfc = 1; + for (size_t j = 1; j < (*pvsIn).size(); j++) { + double newdz = fabs( (*pfcIn)[i].dz( (*pvsIn)[j].position() ) ); + if(newdz < dz) include_pfc = 0; // this pf candidate belongs to other PV + } + if(include_pfc == 1){ + double pfc_pt = (*pfcIn)[i].pt() ; + pv_sumpt2 += pfc_pt * pfc_pt; + } + } + pvTable->addColumnValue( + "sumpt2", pv_sumpt2, "sum pt2 of tracks for the main primary vertex", 10); //precision from 8 to 10 + + auto otherPVsTable = std::make_unique((*pvsIn).size() > 4 ? 3 : (*pvsIn).size() - 1, "Other" + pvName_, false); std::vector pvsz; @@ -207,6 +236,7 @@ void VertexTableProducer::fillDescriptions(edm::ConfigurationDescriptions& descr desc.add("pvSrc")->setComment( "std::vector and ValueMap primary vertex input collections"); + desc.add("pfcSrc")->setComment("packedPFCandidates input collections"); //New desc.add("goodPvCut")->setComment("selection on the primary vertex"); desc.add("svSrc")->setComment( "reco::VertexCompositePtrCandidate compatible secondary vertex input collection"); diff --git a/PhysicsTools/NanoAOD/python/vertices_cff.py b/PhysicsTools/NanoAOD/python/vertices_cff.py index ddda0ba422c1e..69d105795d25d 100644 --- a/PhysicsTools/NanoAOD/python/vertices_cff.py +++ b/PhysicsTools/NanoAOD/python/vertices_cff.py @@ -10,6 +10,7 @@ vertexTable = cms.EDProducer("VertexTableProducer", pvSrc = cms.InputTag("offlineSlimmedPrimaryVertices"), goodPvCut = cms.string("!isFake && ndof > 4 && abs(z) <= 24 && position.Rho <= 2"), + pfcSrc = cms.InputTag("packedPFCandidates"), svSrc = cms.InputTag("linkedObjects", "vertices"), svCut = cms.string(""), # careful: adding a cut here would make the collection matching inconsistent with the SV table dlenMin = cms.double(0), From e07701bae01465e00cbc541ed59ed4fce8ba4bcd Mon Sep 17 00:00:00 2001 From: Matteo Migliorini Date: Fri, 1 Dec 2023 11:54:54 +0100 Subject: [PATCH 057/281] Removed unused variable --- L1TriggerScouting/Utilities/plugins/DumpScObjects.cc | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc index bbcb274f185fe..00061de47cac7 100644 --- a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc +++ b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc @@ -219,13 +219,11 @@ void DumpScObjects::printBx(unsigned bx) { } if (checkEtSums_ && etSumHandle_.isValid()) { - int i = 0; for (auto sum = etSumHandle_->begin(bx); sum != etSumHandle_->end(bx); sum++) { std::cout << "--- Calo Sums ---\n"; printScBxSums(*sum); - i++; } } } -DEFINE_FWK_MODULE(DumpScObjects); \ No newline at end of file +DEFINE_FWK_MODULE(DumpScObjects); From 2d7bbdd20244d0a2d39654f1fbcbefbc6af1192a Mon Sep 17 00:00:00 2001 From: Andrew Loeliger Date: Wed, 29 Nov 2023 10:48:51 -0600 Subject: [PATCH 058/281] Add in situ pattern testing capability to the CICADA emulator --- .../L1TCaloLayer1/plugins/L1TCaloSummary.cc | 39 ++++++++++- .../python/CICADATestPatterns.py | 64 +++++++++++++++++++ .../python/simCaloStage2Layer1Summary_cfi.py | 6 +- 3 files changed, 107 insertions(+), 2 deletions(-) create mode 100644 L1Trigger/L1TCaloLayer1/python/CICADATestPatterns.py diff --git a/L1Trigger/L1TCaloLayer1/plugins/L1TCaloSummary.cc b/L1Trigger/L1TCaloLayer1/plugins/L1TCaloSummary.cc index 4b93638dbce5a..475fe26d33883 100644 --- a/L1Trigger/L1TCaloLayer1/plugins/L1TCaloSummary.cc +++ b/L1Trigger/L1TCaloLayer1/plugins/L1TCaloSummary.cc @@ -57,6 +57,9 @@ #include "L1Trigger/L1TCaloLayer1/src/UCTLogging.hh" #include +#include +#include + //Anomaly detection includes #include "ap_fixed.h" #include "hls4ml/emulator.h" @@ -110,6 +113,9 @@ class L1TCaloSummary : public edm::stream::EDProducer<> { hls4mlEmulator::ModelLoader loader; std::shared_ptr model; + + bool overwriteWithTestPatterns; + std::vector testPatterns; }; // @@ -137,7 +143,9 @@ L1TCaloSummary::L1TCaloSummary(const edm::ParameterSet& iConfig) verbose(iConfig.getParameter("verbose")), fwVersion(iConfig.getParameter("firmwareVersion")), regionToken(consumes(edm::InputTag("simCaloStage2Layer1Digis"))), - loader(hls4mlEmulator::ModelLoader(iConfig.getParameter("CICADAModelVersion"))) { + loader(hls4mlEmulator::ModelLoader(iConfig.getParameter("CICADAModelVersion"))), + overwriteWithTestPatterns(iConfig.getParameter("useTestPatterns")), + testPatterns(iConfig.getParameter>("testPatterns")) { std::vector pumLUTData; char pumLUTString[10]; for (uint32_t pumBin = 0; pumBin < nPumBins; pumBin++) { @@ -215,6 +223,32 @@ void L1TCaloSummary::produce(edm::Event& iEvent, const edm::Event //CICADA reads this as a flat vector modelInput[14 * i.gctPhi() + (i.gctEta() - 4)] = i.et(); } + // Check if we're using test patterns. If so, we overwrite the inputs with a test pattern + if (overwriteWithTestPatterns) { + unsigned int evt = iEvent.id().event(); + unsigned int totalTestPatterns = testPatterns.size(); + unsigned int patternElement = evt % totalTestPatterns; + const edm::ParameterSet& element = testPatterns.at(patternElement); + std::stringstream inputStream; + std::string PhiRowString; + + edm::LogWarning("L1TCaloSummary") << "Overwriting existing CICADA input with test pattern!\n"; + + for (unsigned short int iPhi = 1; iPhi <= 18; ++iPhi) { + PhiRowString = ""; + std::stringstream PhiRowStringStream; + PhiRowStringStream << "iPhi_" << iPhi; + PhiRowString = PhiRowStringStream.str(); + std::vector phiRow = element.getParameter>(PhiRowString); + for (unsigned short int iEta = 1; iEta <= 14; ++iEta) { + modelInput[14 * (iPhi - 1) + (iEta - 1)] = phiRow.at(iEta - 1); + inputStream << phiRow.at(iEta - 1) << " "; + } + inputStream << "\n"; + } + edm::LogInfo("L1TCaloSummary") << "Input Stream:\n" << inputStream.str(); + } + //Extract model output OUTPUT modelResult[1] = { OUTPUT("0.0", 10)}; //the 10 here refers to the fact that we read in "0.0" as a decimal number @@ -224,6 +258,9 @@ void L1TCaloSummary::produce(edm::Event& iEvent, const edm::Event *CICADAScore = modelResult[0].to_float(); + if (overwriteWithTestPatterns) + edm::LogInfo("L1TCaloSummary") << "Test Pattern Output: " << *CICADAScore; + summaryCard.setRegionData(inputRegions); if (!summaryCard.process()) { diff --git a/L1Trigger/L1TCaloLayer1/python/CICADATestPatterns.py b/L1Trigger/L1TCaloLayer1/python/CICADATestPatterns.py new file mode 100644 index 0000000000000..a209dc998c34f --- /dev/null +++ b/L1Trigger/L1TCaloLayer1/python/CICADATestPatterns.py @@ -0,0 +1,64 @@ +import FWCore.ParameterSet.Config as cms + +standardCICADATestPatterns = cms.VPSet( + cms.PSet( + iPhi_1 = cms.vuint32(0, 0, 1, 0, 1, 0, 2, 3, 0, 0, 0, 3, 6, 0, ), + iPhi_2 = cms.vuint32(2, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 2, ), + iPhi_3 = cms.vuint32(0, 0, 0, 0, 0, 1, 0, 0, 5, 0, 0, 0, 0, 1, ), + iPhi_4 = cms.vuint32(0, 1, 0, 0, 0, 1, 0, 0, 31, 1, 8, 7, 2, 8, ), + iPhi_5 = cms.vuint32(1, 0, 1, 0, 0, 1, 0, 1, 2, 4, 0, 0, 0, 0, ), + iPhi_6 = cms.vuint32(0, 0, 0, 0, 4, 0, 0, 1, 0, 0, 0, 0, 0, 6, ), + iPhi_7 = cms.vuint32(0, 3, 1, 2, 1, 5, 1, 0, 0, 0, 0, 0, 1, 1, ), + iPhi_8 = cms.vuint32(0, 0, 3, 2, 0, 2, 3, 3, 8, 10, 1, 2, 0, 27, ), + iPhi_9 = cms.vuint32(6, 0, 0, 2, 0, 0, 2, 0, 0, 0, 1, 0, 0, 1, ), + iPhi_10 = cms.vuint32(0, 0, 1, 0, 12, 2, 0, 0, 0, 1, 0, 1, 0, 2, ), + iPhi_11 = cms.vuint32(5, 0, 0, 1, 0, 0, 1, 4, 2, 0, 15, 0, 0, 212, ), + iPhi_12 = cms.vuint32(4, 0, 2, 0, 2, 1, 1, 4, 1, 0, 2, 3, 0, 0, ), + iPhi_13 = cms.vuint32(0, 4, 1, 2, 182, 0, 2, 2, 0, 0, 0, 1, 1, 0, ), + iPhi_14 = cms.vuint32(0, 10, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 2, ), + iPhi_15 = cms.vuint32(6, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 12, ), + iPhi_16 = cms.vuint32(0, 0, 0, 1, 0, 1, 0, 0, 3, 1, 0, 0, 0, 1, ), + iPhi_17 = cms.vuint32(0, 0, 0, 0, 0, 2, 0, 4, 2, 0, 3, 0, 0, 2, ), + iPhi_18 = cms.vuint32(2, 0, 0, 0, 0, 1, 0, 4, 0, 2, 4, 5, 0, 0, ), + ), + cms.PSet( + iPhi_1 = cms.vuint32(3, 5, 6, 2, 1, 0, 9, 0, 1, 1, 2, 1, 1, 5, ), + iPhi_2 = cms.vuint32(4, 2, 1, 0, 5, 0, 0, 2, 4, 11, 10, 1, 1, 12, ), + iPhi_3 = cms.vuint32(5, 0, 0, 2, 1, 2, 1, 1, 19, 20, 237, 0, 2, 2, ), + iPhi_4 = cms.vuint32(5, 1, 0, 3, 2, 1, 2, 3, 3, 1, 2, 1, 1, 7, ), + iPhi_5 = cms.vuint32(1, 1, 1, 2, 0, 0, 0, 3, 5, 2, 1, 1, 3, 14, ), + iPhi_6 = cms.vuint32(4, 0, 2, 2, 0, 0, 0, 2, 1, 3, 3, 1, 0, 3, ), + iPhi_7 = cms.vuint32(1, 4, 62, 6, 0, 1, 10, 2, 2, 5, 1, 1, 0, 7, ), + iPhi_8 = cms.vuint32(13, 1, 0, 2, 1, 5, 1, 3, 1, 0, 1, 0, 4, 2, ), + iPhi_9 = cms.vuint32(4, 1, 2, 1, 6, 2, 6, 0, 2, 2, 1, 0, 0, 6, ), + iPhi_10 = cms.vuint32(10, 0, 2, 0, 3, 0, 1, 2, 12, 0, 20, 4, 0, 7, ), + iPhi_11 = cms.vuint32(16, 2, 4, 1, 0, 2, 3, 15, 4, 1, 0, 6, 5, 5, ), + iPhi_12 = cms.vuint32(3, 0, 1, 0, 1, 1, 4, 2, 9, 115, 38, 2, 3, 1, ), + iPhi_13 = cms.vuint32(10, 3, 10, 15, 2, 0, 8, 8, 0, 2, 2, 0, 1, 8, ), + iPhi_14 = cms.vuint32(4, 0, 0, 0, 1, 4, 0, 1, 1, 1, 1, 1, 0, 2, ), + iPhi_15 = cms.vuint32(11, 1, 1, 2, 1, 3, 5, 4, 4, 2, 0, 1, 0, 13, ), + iPhi_16 = cms.vuint32(6, 1, 1, 1, 0, 1, 3, 2, 1, 10, 3, 0, 0, 15, ), + iPhi_17 = cms.vuint32(4, 0, 0, 1, 2, 1, 1, 2, 0, 1, 0, 1, 0, 3, ), + iPhi_18 = cms.vuint32(5, 0, 0, 0, 4, 1, 0, 2, 5, 31, 0, 1, 1, 5, ), + ), + cms.PSet( + iPhi_1 = cms.vuint32(4, 2, 2, 0, 0, 0, 4, 6, 1, 0, 0, 2, 2, 7, ), + iPhi_2 = cms.vuint32(2, 2, 0, 1, 1, 1, 0, 0, 1, 2, 2, 1, 0, 0, ), + iPhi_3 = cms.vuint32(0, 0, 0, 1, 52, 0, 3, 2, 7, 2, 0, 0, 1, 4, ), + iPhi_4 = cms.vuint32(4, 0, 0, 0, 51, 6, 53, 4, 1, 0, 0, 0, 0, 0, ), + iPhi_5 = cms.vuint32(10, 0, 0, 0, 1, 1, 4, 1, 0, 0, 0, 0, 0, 8, ), + iPhi_6 = cms.vuint32(2, 0, 2, 0, 1, 5, 1, 3, 4, 0, 1, 0, 1, 14, ), + iPhi_7 = cms.vuint32(1, 0, 1, 1, 0, 0, 8, 9, 2, 3, 0, 1, 0, 3, ), + iPhi_8 = cms.vuint32(4, 0, 23, 62, 31, 0, 5, 3, 3, 1, 0, 0, 0, 4, ), + iPhi_9 = cms.vuint32(100, 3, 10, 5, 0, 2, 0, 2, 1, 2, 0, 0, 0, 0, ), + iPhi_10 = cms.vuint32(27, 2, 0, 0, 0, 2, 3, 1, 3, 0, 0, 2, 0, 0, ), + iPhi_11 = cms.vuint32(8, 2, 3, 5, 5, 1, 1, 0, 4, 2, 2, 0, 0, 5, ), + iPhi_12 = cms.vuint32(6, 6, 1, 0, 0, 2, 0, 3, 1, 3, 2, 1, 0, 2, ), + iPhi_13 = cms.vuint32(0, 2, 2, 1, 0, 0, 7, 6, 0, 0, 0, 0, 1, 352, ), + iPhi_14 = cms.vuint32(8, 0, 0, 1, 1, 1, 2, 2, 1, 4, 0, 0, 0, 2, ), + iPhi_15 = cms.vuint32(3, 0, 0, 0, 1, 3, 3, 3, 0, 1, 0, 0, 0, 2, ), + iPhi_16 = cms.vuint32(3, 166, 0, 4, 0, 2, 3, 1, 1, 1, 0, 0, 0, 6, ), + iPhi_17 = cms.vuint32(2, 2, 1, 0, 0, 0, 0, 2, 5, 0, 0, 0, 0, 2, ), + iPhi_18 = cms.vuint32(6, 3, 0, 2, 0, 4, 7, 1, 4, 4, 0, 0, 1, 2, ), + ), +) \ No newline at end of file diff --git a/L1Trigger/L1TCaloLayer1/python/simCaloStage2Layer1Summary_cfi.py b/L1Trigger/L1TCaloLayer1/python/simCaloStage2Layer1Summary_cfi.py index 0d26e0b5ad79c..91fd111a33b27 100644 --- a/L1Trigger/L1TCaloLayer1/python/simCaloStage2Layer1Summary_cfi.py +++ b/L1Trigger/L1TCaloLayer1/python/simCaloStage2Layer1Summary_cfi.py @@ -1,5 +1,7 @@ import FWCore.ParameterSet.Config as cms +from L1Trigger.L1TCaloLayer1.CICADATestPatterns import standardCICADATestPatterns + simCaloStage2Layer1Summary = cms.EDProducer('L1TCaloSummaryCICADAv2', nPumBins = cms.uint32(18), pumLUT00n= cms.vdouble(0.43, 0.32, 0.29, 0.36, 0.33, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25), @@ -48,5 +50,7 @@ verbose = cms.bool(False), # See UCTLayer1.hh for firmware version firmwareVersion = cms.int32(1), - CICADAModelVersion = cms.string("CICADAModel_v2p1") + CICADAModelVersion = cms.string("CICADAModel_v2p1"), + useTestPatterns = cms.bool(False), + testPatterns = standardCICADATestPatterns ) From 0a01e6624912ddaaa4885056a616f885328418ae Mon Sep 17 00:00:00 2001 From: jtao Date: Fri, 1 Dec 2023 12:20:20 +0100 Subject: [PATCH 059/281] Add one more PV variable sumPT2 of pf charged particles associated to PV in NanoAOD --- PhysicsTools/NanoAOD/python/nanoDQM_cfi.py | 1 + 1 file changed, 1 insertion(+) diff --git a/PhysicsTools/NanoAOD/python/nanoDQM_cfi.py b/PhysicsTools/NanoAOD/python/nanoDQM_cfi.py index 7feb200b41190..9185efbd0e98f 100644 --- a/PhysicsTools/NanoAOD/python/nanoDQM_cfi.py +++ b/PhysicsTools/NanoAOD/python/nanoDQM_cfi.py @@ -622,6 +622,7 @@ Plot1D('npvs', 'npvs', 20, 0, 60, 'total number of reconstructed primary vertices'), Plot1D('npvsGood', 'npvsGood', 20, 0, 60, 'total number of Good primary vertices'), Plot1D('score', 'score', 20, 0, 300000, 'main primary vertex score, i.e. sum pt2 of clustered objects'), + Plot1D('sumpt2', 'sumpt2', 100, 0, 300000, 'main primary vertex sum pt2 of the charged pf candidates'), Plot1D('x', 'x', 20, -0.3, 0.3, 'main primary vertex position x coordinate'), Plot1D('y', 'y', 20, -0.3, 0.3, 'main primary vertex position y coordinate'), Plot1D('z', 'z', 20, -20, 20, 'main primary vertex position z coordinate'), From 5e83772f24275fe9f95d4cb3b47fb497b787b21c Mon Sep 17 00:00:00 2001 From: apetkovic Date: Fri, 1 Dec 2023 14:29:22 +0100 Subject: [PATCH 060/281] Remove wpHZZ from Run2 nano workflows --- PhysicsTools/NanoAOD/python/electrons_cff.py | 1 + 1 file changed, 1 insertion(+) diff --git a/PhysicsTools/NanoAOD/python/electrons_cff.py b/PhysicsTools/NanoAOD/python/electrons_cff.py index 0850e496203f8..8edf323f5fec8 100644 --- a/PhysicsTools/NanoAOD/python/electrons_cff.py +++ b/PhysicsTools/NanoAOD/python/electrons_cff.py @@ -382,6 +382,7 @@ def _get_bitmapVIDForEle_docstring(modules,WorkingPoints): mvaIso_WPL = Var("userInt('mvaIso_Fall17V2_WPL')",bool,doc="MVA Iso ID loose WP, Fall17V2"), mvaNoIso = Var("userFloat('mvaNoIso_Fall17V2')",float,doc="MVA noIso ID score, Fall17V2"), mvaNoIso_WP80 = Var("userInt('mvaNoIso_Fall17V2_WP80')",bool,doc="MVA noIso ID WP80, Fall17V2"), + mvaIso_WPHZZ = None, mvaNoIso_WP90 = Var("userInt('mvaNoIso_Fall17V2_WP90')",bool,doc="MVA noIso ID WP90, Fall17V2"), mvaNoIso_WPL = Var("userInt('mvaNoIso_Fall17V2_WPL')",bool,doc="MVA noIso ID loose WP, Fall17V2"), cutBased = Var("userInt('cutBasedID_Fall17V2_veto')+userInt('cutBasedID_Fall17V2_loose')+userInt('cutBasedID_Fall17V2_medium')+userInt('cutBasedID_Fall17V2_tight')", "uint8", doc="cut-based ID Fall17V2 (0:fail, 1:veto, 2:loose, 3:medium, 4:tight)"), From e4041f9b3862e8820dae12cb424a4d08810ea1fb Mon Sep 17 00:00:00 2001 From: Javier Date: Fri, 1 Dec 2023 20:07:58 +0100 Subject: [PATCH 061/281] Changed RECO to AOD in Run3 RelVal wfs --- .../python/relval_standard.py | 154 +++++++++--------- .../python/relval_steps.py | 5 + 2 files changed, 82 insertions(+), 77 deletions(-) diff --git a/Configuration/PyReleaseValidation/python/relval_standard.py b/Configuration/PyReleaseValidation/python/relval_standard.py index 2054c7e6e8d89..8e90b26395d31 100644 --- a/Configuration/PyReleaseValidation/python/relval_standard.py +++ b/Configuration/PyReleaseValidation/python/relval_standard.py @@ -440,58 +440,58 @@ workflows[139.005] = ['',['AlCaPhiSym2021','RECOALCAECALPHISYMDR3','ALCAECALPHISYM']] ### run3 (2022) ### -workflows[140.001] = ['',['RunMinimumBias2022A','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.002] = ['',['RunSingleMuon2022A','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.001] = ['',['RunMinimumBias2022A','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.002] = ['',['RunSingleMuon2022A','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] workflows[140.003] = ['',['RunZeroBias2022A','HLTDR3_2022','RECONANORUN3_ZB_reHLT_2022','HARVESTRUN3_ZB_2022']] -workflows[140.004] = ['',['RunBTagMu2022A','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.005] = ['',['RunJetHT2022A','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.006] = ['',['RunDisplacedJet2022A','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.007] = ['',['RunMET2022A','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.008] = ['',['RunEGamma2022A','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.009] = ['',['RunTau2022A','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.010] = ['',['RunDoubleMuon2022A','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.011] = ['',['RunMuonEG2022A','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] - -workflows[140.021] = ['',['RunMinimumBias2022B','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.022] = ['',['RunSingleMuon2022B','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.004] = ['',['RunBTagMu2022A','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.005] = ['',['RunJetHT2022A','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.006] = ['',['RunDisplacedJet2022A','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.007] = ['',['RunMET2022A','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.008] = ['',['RunEGamma2022A','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.009] = ['',['RunTau2022A','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.010] = ['',['RunDoubleMuon2022A','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.011] = ['',['RunMuonEG2022A','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] + +workflows[140.021] = ['',['RunMinimumBias2022B','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.022] = ['',['RunSingleMuon2022B','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] workflows[140.023] = ['',['RunZeroBias2022B','HLTDR3_2022','RECONANORUN3_ZB_reHLT_2022','HARVESTRUN3_ZB_2022']] -workflows[140.024] = ['',['RunBTagMu2022B','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.025] = ['',['RunJetHT2022B','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.026] = ['',['RunDisplacedJet2022B','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.027] = ['',['RunMET2022B','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.028] = ['',['RunEGamma2022B','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.029] = ['',['RunTau2022B','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.030] = ['',['RunDoubleMuon2022B','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.031] = ['',['RunMuonEG2022B','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] - -workflows[140.042] = ['',['RunSingleMuon2022C','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.024] = ['',['RunBTagMu2022B','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.025] = ['',['RunJetHT2022B','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.026] = ['',['RunDisplacedJet2022B','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.027] = ['',['RunMET2022B','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.028] = ['',['RunEGamma2022B','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.029] = ['',['RunTau2022B','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.030] = ['',['RunDoubleMuon2022B','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.031] = ['',['RunMuonEG2022B','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] + +workflows[140.042] = ['',['RunSingleMuon2022C','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] workflows[140.043] = ['',['RunZeroBias2022C','HLTDR3_2022','RECONANORUN3_ZB_reHLT_2022','HARVESTRUN3_ZB_2022']] -workflows[140.044] = ['',['RunBTagMu2022C','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.045] = ['',['RunJetHT2022C','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.046] = ['',['RunDisplacedJet2022C','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.047] = ['',['RunMET2022C','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.048] = ['',['RunEGamma2022C','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.049] = ['',['RunTau2022C','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.050] = ['',['RunDoubleMuon2022C','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.051] = ['',['RunMuonEG2022C','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] - -workflows[140.062] = ['',['RunMuon2022D','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.044] = ['',['RunBTagMu2022C','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.045] = ['',['RunJetHT2022C','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.046] = ['',['RunDisplacedJet2022C','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.047] = ['',['RunMET2022C','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.048] = ['',['RunEGamma2022C','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.049] = ['',['RunTau2022C','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.050] = ['',['RunDoubleMuon2022C','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.051] = ['',['RunMuonEG2022C','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] + +workflows[140.062] = ['',['RunMuon2022D','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] workflows[140.063] = ['',['RunZeroBias2022D','HLTDR3_2022','RECONANORUN3_ZB_reHLT_2022','HARVESTRUN3_ZB_2022']] -workflows[140.064] = ['',['RunBTagMu2022D','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.065] = ['',['RunJetMET2022D','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.066] = ['',['RunDisplacedJet2022D','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.067] = ['',['RunEGamma2022D','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.068] = ['',['RunTau2022D','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.069] = ['',['RunMuonEG2022D','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] - -workflows[140.071] = ['',['RunMuon2022E','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.064] = ['',['RunBTagMu2022D','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.065] = ['',['RunJetMET2022D','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.066] = ['',['RunDisplacedJet2022D','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.067] = ['',['RunEGamma2022D','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.068] = ['',['RunTau2022D','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.069] = ['',['RunMuonEG2022D','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] + +workflows[140.071] = ['',['RunMuon2022E','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] workflows[140.072] = ['',['RunZeroBias2022E','HLTDR3_2022','RECONANORUN3_ZB_reHLT_2022','HARVESTRUN3_ZB_2022']] -workflows[140.073] = ['',['RunBTagMu2022E','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.074] = ['',['RunJetMET2022E','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.075] = ['',['RunDisplacedJet2022E','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.076] = ['',['RunEGamma2022E','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.077] = ['',['RunTau2022E','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] -workflows[140.078] = ['',['RunMuonEG2022E','HLTDR3_2022','RECONANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.073] = ['',['RunBTagMu2022E','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.074] = ['',['RunJetMET2022E','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.075] = ['',['RunDisplacedJet2022E','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.076] = ['',['RunEGamma2022E','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.077] = ['',['RunTau2022E','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] +workflows[140.078] = ['',['RunMuonEG2022E','HLTDR3_2022','AODNANORUN3_reHLT_2022','HARVESTRUN3_2022']] ### run3 (2022) skims ### workflows[140.101] = ['',['RunZeroBias2022D','HLTDR3_2022','SKIMZEROBIASRUN3_reHLT_2022','HARVESTRUN3_ZB_2022']] @@ -513,39 +513,39 @@ workflows[140.202] = ['',['RunJetMET2022D_reMINI', 'REMININANO_data2022']] ### run3 (2023) ### -workflows[141.001] = ['',['RunMuon2023B','HLTDR3_2023B','RECONANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] +workflows[141.001] = ['',['RunMuon2023B','HLTDR3_2023B','AODNANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] workflows[141.002] = ['',['RunZeroBias2023B','HLTDR3_2023B','RECONANORUN3_ZB_reHLT_2023B','HARVESTRUN3_ZB_2023B']] -workflows[141.003] = ['',['RunBTagMu2023B','HLTDR3_2023B','RECONANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] -workflows[141.004] = ['',['RunNoBPTX2023B','HLTDR3_2023B','RECONANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] -workflows[141.005] = ['',['RunHcalNZS2023B','HLTDR3_2023B','RECONANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] -workflows[141.006] = ['',['RunHLTPhysics2023B','HLTDR3_2023B','RECONANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] -workflows[141.007] = ['',['RunCommissioning2023B','HLTDR3_2023B','RECONANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] -workflows[141.008] = ['',['RunJetMET2023B','HLTDR3_2023B','RECONANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] -workflows[141.009] = ['',['RunCosmics2023B','HLTDR3_2023B','RECONANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] -workflows[141.010] = ['',['RunDisplacedJet2023B','HLTDR3_2023B','RECONANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] -workflows[141.011] = ['',['RunEGamma2023B','HLTDR3_2023B','RECONANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] -workflows[141.012] = ['',['RunTau2023B','HLTDR3_2023B','RECONANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] -workflows[141.013] = ['',['RunMuonEG2023B','HLTDR3_2023B','RECONANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] - -workflows[141.031] = ['',['RunMuon2023C','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.003] = ['',['RunBTagMu2023B','HLTDR3_2023B','AODNANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] +workflows[141.004] = ['',['RunNoBPTX2023B','HLTDR3_2023B','AODNANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] +workflows[141.005] = ['',['RunHcalNZS2023B','HLTDR3_2023B','AODNANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] +workflows[141.006] = ['',['RunHLTPhysics2023B','HLTDR3_2023B','AODNANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] +workflows[141.007] = ['',['RunCommissioning2023B','HLTDR3_2023B','AODNANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] +workflows[141.008] = ['',['RunJetMET2023B','HLTDR3_2023B','AODNANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] +workflows[141.009] = ['',['RunCosmics2023B','HLTDR3_2023B','AODNANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] +workflows[141.010] = ['',['RunDisplacedJet2023B','HLTDR3_2023B','AODNANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] +workflows[141.011] = ['',['RunEGamma2023B','HLTDR3_2023B','AODNANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] +workflows[141.012] = ['',['RunTau2023B','HLTDR3_2023B','AODNANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] +workflows[141.013] = ['',['RunMuonEG2023B','HLTDR3_2023B','AODNANORUN3_reHLT_2023B','HARVESTRUN3_2023B']] + +workflows[141.031] = ['',['RunMuon2023C','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] workflows[141.032] = ['',['RunZeroBias2023C','HLTDR3_2023','RECONANORUN3_ZB_reHLT_2023','HARVESTRUN3_ZB_2023']] -workflows[141.033] = ['',['RunBTagMu2023C','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] -workflows[141.034] = ['',['RunJetMET2023C','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] -workflows[141.035] = ['',['RunDisplacedJet2023C','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] -workflows[141.036] = ['',['RunEGamma2023C','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] -workflows[141.037] = ['',['RunTau2023C','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] -workflows[141.038] = ['',['RunMuonEG2023C','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] -workflows[141.039] = ['',['RunParkingDoubleMuonLowMass2023C','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] - -workflows[141.041] = ['',['RunMuon2023D','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.033] = ['',['RunBTagMu2023C','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.034] = ['',['RunJetMET2023C','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.035] = ['',['RunDisplacedJet2023C','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.036] = ['',['RunEGamma2023C','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.037] = ['',['RunTau2023C','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.038] = ['',['RunMuonEG2023C','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.039] = ['',['RunParkingDoubleMuonLowMass2023C','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] + +workflows[141.041] = ['',['RunMuon2023D','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] workflows[141.042] = ['',['RunZeroBias2023D','HLTDR3_2023','RECONANORUN3_ZB_reHLT_2023','HARVESTRUN3_ZB_2023']] -workflows[141.043] = ['',['RunBTagMu2023D','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] -workflows[141.044] = ['',['RunJetMET2023D','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] -workflows[141.045] = ['',['RunDisplacedJet2023D','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] -workflows[141.046] = ['',['RunEGamma2023D','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] -workflows[141.047] = ['',['RunTau2023D','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] -workflows[141.048] = ['',['RunMuonEG2023D','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] -workflows[141.049] = ['',['RunParkingDoubleMuonLowMass2023D','HLTDR3_2023','RECONANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.043] = ['',['RunBTagMu2023D','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.044] = ['',['RunJetMET2023D','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.045] = ['',['RunDisplacedJet2023D','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.046] = ['',['RunEGamma2023D','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.047] = ['',['RunTau2023D','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.048] = ['',['RunMuonEG2023D','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] +workflows[141.049] = ['',['RunParkingDoubleMuonLowMass2023D','HLTDR3_2023','AODNANORUN3_reHLT_2023','HARVESTRUN3_2023']] ### run3 (2023) skims ### workflows[141.101] = ['',['RunZeroBias2023C','HLTDR3_2023','SKIMZEROBIASRUN3_reHLT_2023','HARVESTRUN3_ZB_2023']] diff --git a/Configuration/PyReleaseValidation/python/relval_steps.py b/Configuration/PyReleaseValidation/python/relval_steps.py index 162272cebf54d..313ba4cec6b9f 100644 --- a/Configuration/PyReleaseValidation/python/relval_steps.py +++ b/Configuration/PyReleaseValidation/python/relval_steps.py @@ -2940,12 +2940,17 @@ def gen2023HiMix(fragment,howMuch): steps['RECONANORUN3_ZB_reHLT_2022']=merge([{'-s':'RAW2DIGI,L1Reco,RECO,PAT,NANO,DQM:@rerecoZeroBiasFakeHLT+@miniAODDQM+@nanoAODDQM'},steps['RECONANORUN3_reHLT_2022']]) steps['RECOCOSMRUN3_reHLT_2022']=merge([{'--scenario':'cosmics','-s':'RAW2DIGI,L1Reco,RECO,DQM','--datatier':'RECO,DQMIO','--eventcontent':'RECO,DQM'},steps['RECONANORUN3_reHLT_2022']]) +steps['AODNANORUN3_reHLT_2022']=merge([{'-s':'RAW2DIGI,L1Reco,RECO,PAT,NANO,DQM:@standardDQMFakeHLT+@miniAODDQM+@nanoAODDQM','--datatier':'AOD,MINIAOD,NANOAOD,DQMIO','--eventcontent':'AOD,MINIAOD,NANOEDMAOD,DQM'},steps['RECODR3_reHLT_2022']]) + steps['RECONANORUN3_reHLT_2023']=merge([{'-s':'RAW2DIGI,L1Reco,RECO,PAT,NANO,DQM:@standardDQM+@miniAODDQM+@nanoAODDQM','--datatier':'RECO,MINIAOD,NANOAOD,DQMIO','--eventcontent':'RECO,MINIAOD,NANOEDMAOD,DQM'},steps['RECODR3_reHLT_2023']]) steps['RECONANORUN3_reHLT_2023B']=merge([{'-s':'RAW2DIGI,L1Reco,RECO,PAT,NANO,DQM:@standardDQM+@miniAODDQM+@nanoAODDQM','--datatier':'RECO,MINIAOD,NANOAOD,DQMIO','--eventcontent':'RECO,MINIAOD,NANOEDMAOD,DQM'},steps['RECODR3_reHLT_2023B']]) steps['RECONANORUN3_ZB_reHLT_2023B']=merge([{'-s':'RAW2DIGI,L1Reco,RECO,PAT,NANO,DQM:@rerecoZeroBias+@miniAODDQM+@nanoAODDQM'},steps['RECONANORUN3_reHLT_2023B']]) steps['RECONANORUN3_ZB_reHLT_2023']=merge([{'-s':'RAW2DIGI,L1Reco,RECO,PAT,NANO,DQM:@rerecoZeroBias+@miniAODDQM+@nanoAODDQM'},steps['RECONANORUN3_reHLT_2023']]) steps['RECOCOSMRUN3_reHLT_2023']=merge([{'--scenario':'cosmics','-s':'RAW2DIGI,L1Reco,RECO,DQM','--datatier':'RECO,DQMIO','--eventcontent':'RECO,DQM'},steps['RECONANORUN3_reHLT_2023']]) +steps['AODNANORUN3_reHLT_2023']=merge([{'-s':'RAW2DIGI,L1Reco,RECO,PAT,NANO,DQM:@standardDQM+@miniAODDQM+@nanoAODDQM','--datatier':'AOD,MINIAOD,NANOAOD,DQMIO','--eventcontent':'AOD,MINIAOD,NANOEDMAOD,DQM'},steps['RECODR3_reHLT_2023']]) +steps['AODNANORUN3_reHLT_2023B']=merge([{'-s':'RAW2DIGI,L1Reco,RECO,PAT,NANO,DQM:@standardDQM+@miniAODDQM+@nanoAODDQM','--datatier':'AOD,MINIAOD,NANOAOD,DQMIO','--eventcontent':'AOD,MINIAOD,NANOEDMAOD,DQM'},steps['RECODR3_reHLT_2023B']]) + steps['RECOHIRUN3_reHLT_2023']=merge([{'-s':'RAW2DIGI,L1Reco,RECO,PAT,DQM:@standardDQM','--datatier':'RECO,MINIAOD,DQMIO','--eventcontent':'RECO,MINIAOD,DQM','--era':'Run3_pp_on_PbPb_approxSiStripClusters_2023','--conditions':'auto:run3_data_HIon'},steps['RECODR3_reHLT_2023']]) # patatrack validation in data From e7601d0c07924892f8c6681e2f7789eb1fe213d4 Mon Sep 17 00:00:00 2001 From: jtao Date: Mon, 4 Dec 2023 14:47:25 +0100 Subject: [PATCH 062/281] Update code-format according to suggestions --- .../NanoAOD/plugins/VertexTableProducer.cc | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc b/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc index df8a46e8a3927..67e5e02b4f808 100644 --- a/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc +++ b/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc @@ -41,7 +41,6 @@ #include "RecoVertex/VertexPrimitives/interface/VertexState.h" #include "DataFormats/Common/interface/ValueMap.h" -//New #include "DataFormats/PatCandidates/interface/PackedCandidate.h" #include "DataFormats/ParticleFlowCandidate/interface/PFCandidate.h" @@ -69,7 +68,7 @@ class VertexTableProducer : public edm::stream::EDProducer<> { // ----------member data --------------------------- const edm::EDGetTokenT> pvs_; - const edm::EDGetTokenT pfc_; //New + const edm::EDGetTokenT pfc_; const edm::EDGetTokenT> pvsScore_; const edm::EDGetTokenT> svs_; const StringCutObjectSelector svCut_; @@ -86,7 +85,7 @@ class VertexTableProducer : public edm::stream::EDProducer<> { // VertexTableProducer::VertexTableProducer(const edm::ParameterSet& params) : pvs_(consumes>(params.getParameter("pvSrc"))), - pfc_(consumes(params.getParameter("pfcSrc"))), //New + pfc_(consumes(params.getParameter("pfcSrc"))), pvsScore_(consumes>(params.getParameter("pvSrc"))), svs_(consumes>(params.getParameter("svSrc"))), svCut_(params.getParameter("svCut"), true), @@ -140,17 +139,18 @@ void VertexTableProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSe pvTable->addColumnValue( "score", pvsScoreProd.get(pvsIn.id(), 0), "main primary vertex score, i.e. sum pt2 of clustered objects", 8); - //New float pv_sumpt2=0.0; for (size_t i = 0; i < (*pfcIn).size(); i++) { - if ( (*pfcIn)[i].charge() == 0 ) { continue; } // skip neutrals + if ( (*pfcIn)[i].charge() == 0 ) { + continue; + } // skip neutrals double dz = fabs( (*pfcIn)[i].dz( (*pvsIn)[0].position() ) ); int include_pfc = 0; if( dz < 0.2) include_pfc = 1; for (size_t j = 1; j < (*pvsIn).size(); j++) { double newdz = fabs( (*pfcIn)[i].dz( (*pvsIn)[j].position() ) ); - if(newdz < dz) include_pfc = 0; // this pf candidate belongs to other PV - } + if(newdz < dz) include_pfc = 0; + } // this pf candidate belongs to other PV if(include_pfc == 1){ double pfc_pt = (*pfcIn)[i].pt() ; pv_sumpt2 += pfc_pt * pfc_pt; @@ -236,7 +236,7 @@ void VertexTableProducer::fillDescriptions(edm::ConfigurationDescriptions& descr desc.add("pvSrc")->setComment( "std::vector and ValueMap primary vertex input collections"); - desc.add("pfcSrc")->setComment("packedPFCandidates input collections"); //New + desc.add("pfcSrc")->setComment("packedPFCandidates input collections"); desc.add("goodPvCut")->setComment("selection on the primary vertex"); desc.add("svSrc")->setComment( "reco::VertexCompositePtrCandidate compatible secondary vertex input collection"); From ba318e9ef52d5153e32fb59ee882d8b422f7e8fe Mon Sep 17 00:00:00 2001 From: jtao Date: Mon, 4 Dec 2023 15:19:19 +0100 Subject: [PATCH 063/281] Update code-format --- .../NanoAOD/plugins/VertexTableProducer.cc | 33 ++++++++++--------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc b/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc index 67e5e02b4f808..1249a71baa816 100644 --- a/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc +++ b/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc @@ -139,26 +139,27 @@ void VertexTableProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSe pvTable->addColumnValue( "score", pvsScoreProd.get(pvsIn.id(), 0), "main primary vertex score, i.e. sum pt2 of clustered objects", 8); - float pv_sumpt2=0.0; + float pv_sumpt2 = 0.0; for (size_t i = 0; i < (*pfcIn).size(); i++) { - if ( (*pfcIn)[i].charge() == 0 ) { - continue; - } // skip neutrals - double dz = fabs( (*pfcIn)[i].dz( (*pvsIn)[0].position() ) ); + if ((*pfcIn)[i].charge() == 0) { + continue; + } // skip neutrals + double dz = fabs((*pfcIn)[i].dz((*pvsIn)[0].position())); int include_pfc = 0; - if( dz < 0.2) include_pfc = 1; + if (dz < 0.2) + include_pfc = 1; for (size_t j = 1; j < (*pvsIn).size(); j++) { - double newdz = fabs( (*pfcIn)[i].dz( (*pvsIn)[j].position() ) ); - if(newdz < dz) include_pfc = 0; - } // this pf candidate belongs to other PV - if(include_pfc == 1){ - double pfc_pt = (*pfcIn)[i].pt() ; - pv_sumpt2 += pfc_pt * pfc_pt; - } + double newdz = fabs((*pfcIn)[i].dz((*pvsIn)[j].position())); + if (newdz < dz) + include_pfc = 0; + } // this pf candidate belongs to other PV + if (include_pfc == 1) { + double pfc_pt = (*pfcIn)[i].pt(); + pv_sumpt2 += pfc_pt * pfc_pt; + } } pvTable->addColumnValue( - "sumpt2", pv_sumpt2, "sum pt2 of tracks for the main primary vertex", 10); //precision from 8 to 10 - + "sumpt2", pv_sumpt2, "sum pt2 of tracks for the main primary vertex", 10); //precision from 8 to 10 auto otherPVsTable = std::make_unique((*pvsIn).size() > 4 ? 3 : (*pvsIn).size() - 1, "Other" + pvName_, false); @@ -236,7 +237,7 @@ void VertexTableProducer::fillDescriptions(edm::ConfigurationDescriptions& descr desc.add("pvSrc")->setComment( "std::vector and ValueMap primary vertex input collections"); - desc.add("pfcSrc")->setComment("packedPFCandidates input collections"); + desc.add("pfcSrc")->setComment("packedPFCandidates input collections"); desc.add("goodPvCut")->setComment("selection on the primary vertex"); desc.add("svSrc")->setComment( "reco::VertexCompositePtrCandidate compatible secondary vertex input collection"); From 9eeb80d581089ac4d883b1cc6fff952df83e5f94 Mon Sep 17 00:00:00 2001 From: apetkovic Date: Wed, 6 Dec 2023 14:35:56 +0100 Subject: [PATCH 064/281] Set isPOGApproved to True --- .../python/Identification/mvaElectronID_Winter22_HZZ_V1_cff.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RecoEgamma/ElectronIdentification/python/Identification/mvaElectronID_Winter22_HZZ_V1_cff.py b/RecoEgamma/ElectronIdentification/python/Identification/mvaElectronID_Winter22_HZZ_V1_cff.py index b488b3153b55d..30046434ceed4 100644 --- a/RecoEgamma/ElectronIdentification/python/Identification/mvaElectronID_Winter22_HZZ_V1_cff.py +++ b/RecoEgamma/ElectronIdentification/python/Identification/mvaElectronID_Winter22_HZZ_V1_cff.py @@ -46,4 +46,4 @@ mvaEleID_Winter22_HZZ_V1 = configureVIDMVAEleID( mvaEleID_Winter22_HZZ_V1_container ) -mvaEleID_Winter22_HZZ_V1.isPOGApproved = cms.untracked.bool(False) +mvaEleID_Winter22_HZZ_V1.isPOGApproved = cms.untracked.bool(True) From 665e20e4f2a197be679d36148904aa5c8d93ef79 Mon Sep 17 00:00:00 2001 From: Benjamin Huber Date: Fri, 8 Dec 2023 11:56:54 +0100 Subject: [PATCH 065/281] Add integer hw accessor function to P2GTCandidate --- .../L1Trigger/interface/P2GTCandidate.h | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/DataFormats/L1Trigger/interface/P2GTCandidate.h b/DataFormats/L1Trigger/interface/P2GTCandidate.h index 9fdae587d3c41..1f385b12816f0 100644 --- a/DataFormats/L1Trigger/interface/P2GTCandidate.h +++ b/DataFormats/L1Trigger/interface/P2GTCandidate.h @@ -256,6 +256,27 @@ namespace l1t { ObjectType objectType() const { return objectType_; } + // Nano SimpleCandidateFlatTableProducer accessor functions + int hwPT_toInt() const { return hwPT().to_int(); } + int hwPhi_toInt() const { return hwPhi().to_int(); } + int hwEta_toInt() const { return hwEta().to_int(); } + int hwZ0_toInt() const { return hwZ0().to_int(); } + int hwIso_toInt() const { return hwIso().to_int(); } + int hwQual_toInt() const { return hwQual().to_int(); } + int hwCharge_toInt() const { return hwCharge().to_int(); } + int hwD0_toInt() const { return hwD0().to_int(); } + int hwBeta_toInt() const { return hwBeta().to_int(); } + int hwMass_toInt() const { return hwMass().to_int(); } + int hwIndex_toInt() const { return hwIndex().to_int(); } + int hwSeed_pT_toInt() const { return hwSeed_pT().to_int(); } + int hwSeed_z0_toInt() const { return hwSeed_z0().to_int(); } + int hwSca_sum_toInt() const { return hwSca_sum().to_int(); } + int hwNumber_of_tracks_toInt() const { return hwNumber_of_tracks().to_int(); } + int hwSum_pT_pv_toInt() const { return hwSum_pT_pv().to_int(); } + int hwType_toInt() const { return hwType().to_int(); } + int hwNumber_of_tracks_in_pv_toInt() const { return hwNumber_of_tracks_in_pv().to_int(); } + int hwNumber_of_tracks_not_in_pv_toInt() const { return hwNumber_of_tracks_not_in_pv().to_int(); } + bool operator==(const P2GTCandidate& rhs) const; bool operator!=(const P2GTCandidate& rhs) const; From 3b15f3c986cf0dbc6cc271cf6c7f9cff9205027d Mon Sep 17 00:00:00 2001 From: nancy Date: Fri, 8 Dec 2023 13:51:50 +0100 Subject: [PATCH 066/281] Phase2 Ecal EB Trigger Primitive generation (emulating algos to go on BCP) --- .../EBPhase2TPGTools/BuildFile.xml | 11 + .../EBPhase2TPGTools/plugins/BuildFile.xml | 10 + .../plugins/EcalEBPhase2TPParamProducer.cc | 432 +++++++++++ .../python/ecalEBPhase2TPParamProducer_cfi.py | 24 + .../test/runEBPhase2TPParamProducer.py | 91 +++ CondCore/Utilities/plugins/Module_2XML.cc | 6 + CondCore/Utilities/src/CondDBFetch.cc | 6 + CondCore/Utilities/src/CondDBImport.cc | 6 + CondCore/Utilities/src/CondFormats.h | 6 + .../EcalEBPhase2TPGAmplWeightIdMapRcd.h | 7 + .../EcalEBPhase2TPGLinearizationConstRcd.h | 7 + .../interface/EcalEBPhase2TPGPedestalsRcd.h | 7 + .../EcalEBPhase2TPGTimeWeightIdMapRcd.h | 7 + .../src/EcalEBPhase2TPGAmplWeightIdMapRcd.cc | 4 + .../EcalEBPhase2TPGLinearizationConstRcd.cc | 4 + .../src/EcalEBPhase2TPGPedestalsRcd.cc | 4 + .../src/EcalEBPhase2TPGTimeWeightIdMapRcd.cc | 4 + .../EcalEBPhase2TPGAmplWeightIdMap.h | 27 + .../interface/EcalEBPhase2TPGAmplWeights.h | 56 ++ .../EcalEBPhase2TPGLinearizationConst.h | 27 + .../interface/EcalEBPhase2TPGPedestals.h | 20 + .../EcalEBPhase2TPGTimeWeightIdMap.h | 27 + .../interface/EcalEBPhase2TPGTimeWeights.h | 56 ++ .../src/EcalEBPhase2TPGAmplWeightIdMap.cc | 5 + .../src/EcalEBPhase2TPGAmplWeights.cc | 58 ++ .../src/EcalEBPhase2TPGTimeWeightIdMap.cc | 5 + .../src/EcalEBPhase2TPGTimeWeights.cc | 56 ++ ...entSetup_EcalEBPhase2TPGAmplWeightIdMap.cc | 14 + ...Setup_EcalEBPhase2TPGLinearizationConst.cc | 17 + .../T_EventSetup_EcalEBPhase2TPGPedestals.cc | 17 + ...entSetup_EcalEBPhase2TPGTimeWeightIdMap.cc | 13 + CondFormats/EcalObjects/src/classes.h | 4 + CondFormats/EcalObjects/src/classes_def.xml | 31 + .../Modifier_phase2_ecalTP_devel_cff.py | 4 + .../StandardSequences/python/Eras.py | 2 +- .../EcalDigi/interface/EBDataFrame_Ph2.h | 28 + .../EcalDigi/interface/EcalDigiCollections.h | 3 + .../EcalEBPhase2TriggerPrimitiveDigi.h | 63 ++ .../EcalEBPhase2TriggerPrimitiveSample.h | 49 ++ .../interface/EcalEBTriggerPrimitiveSample.h | 6 +- DataFormats/EcalDigi/src/EBDataFrame_Ph2.cc | 10 + .../src/EcalEBPhase2TriggerPrimitiveDigi.cc | 61 ++ .../src/EcalEBPhase2TriggerPrimitiveSample.cc | 26 + .../src/EcalEBTriggerPrimitiveSample.cc | 1 + DataFormats/EcalDigi/src/classes_def.xml | 13 + .../python/SimCalorimetry_EventContent_cff.py | 1 + .../python/ecalDigiSequence_cff.py | 16 +- .../EcalEBPhase2AmplitudeReconstructor.h | 38 + .../interface/EcalEBPhase2Linearizer.h | 58 ++ .../interface/EcalEBPhase2SpikeTagger.h | 36 + .../interface/EcalEBPhase2TPFormatter.h | 28 + .../interface/EcalEBPhase2TimeReconstructor.h | 115 +++ .../interface/EcalEBPhase2TrigPrimAlgo.h | 217 ++++++ .../src/EcalEBPhase2AmplitudeReconstructor.cc | 142 ++++ .../src/EcalEBPhase2Linearizer.cc | 167 ++++ .../src/EcalEBPhase2SpikeTagger.cc | 53 ++ .../src/EcalEBPhase2TPFormatter.cc | 38 + .../src/EcalEBPhase2TimeReconstructor.cc | 176 +++++ .../src/EcalEBPhase2TrigPrimAlgo.cc | 294 +++++++ .../plugins/EcalEBTrigPrimPhase2ESProducer.cc | 722 ++++++++++++++++++ .../plugins/EcalEBTrigPrimPhase2Producer.cc | 257 +++++++ .../plugins/SealModules.cc | 3 - .../ecalEBTriggerPrimitivePhase2Digis_cff.py | 15 + .../ecalEBTriggerPrimitivePhase2Digis_cfi.py | 15 + ...lEBTriggerPrimitivePhase2ESProducer_cff.py | 73 ++ .../test/testPhase2_13_1_0_pre3.py | 164 ++++ 66 files changed, 3954 insertions(+), 9 deletions(-) create mode 100644 CalibCalorimetry/EBPhase2TPGTools/BuildFile.xml create mode 100644 CalibCalorimetry/EBPhase2TPGTools/plugins/BuildFile.xml create mode 100644 CalibCalorimetry/EBPhase2TPGTools/plugins/EcalEBPhase2TPParamProducer.cc create mode 100644 CalibCalorimetry/EBPhase2TPGTools/python/ecalEBPhase2TPParamProducer_cfi.py create mode 100644 CalibCalorimetry/EBPhase2TPGTools/test/runEBPhase2TPParamProducer.py create mode 100644 CondFormats/DataRecord/interface/EcalEBPhase2TPGAmplWeightIdMapRcd.h create mode 100644 CondFormats/DataRecord/interface/EcalEBPhase2TPGLinearizationConstRcd.h create mode 100644 CondFormats/DataRecord/interface/EcalEBPhase2TPGPedestalsRcd.h create mode 100644 CondFormats/DataRecord/interface/EcalEBPhase2TPGTimeWeightIdMapRcd.h create mode 100644 CondFormats/DataRecord/src/EcalEBPhase2TPGAmplWeightIdMapRcd.cc create mode 100644 CondFormats/DataRecord/src/EcalEBPhase2TPGLinearizationConstRcd.cc create mode 100644 CondFormats/DataRecord/src/EcalEBPhase2TPGPedestalsRcd.cc create mode 100644 CondFormats/DataRecord/src/EcalEBPhase2TPGTimeWeightIdMapRcd.cc create mode 100644 CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeightIdMap.h create mode 100644 CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeights.h create mode 100644 CondFormats/EcalObjects/interface/EcalEBPhase2TPGLinearizationConst.h create mode 100644 CondFormats/EcalObjects/interface/EcalEBPhase2TPGPedestals.h create mode 100644 CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeightIdMap.h create mode 100644 CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeights.h create mode 100644 CondFormats/EcalObjects/src/EcalEBPhase2TPGAmplWeightIdMap.cc create mode 100644 CondFormats/EcalObjects/src/EcalEBPhase2TPGAmplWeights.cc create mode 100644 CondFormats/EcalObjects/src/EcalEBPhase2TPGTimeWeightIdMap.cc create mode 100644 CondFormats/EcalObjects/src/EcalEBPhase2TPGTimeWeights.cc create mode 100644 CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGAmplWeightIdMap.cc create mode 100644 CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGLinearizationConst.cc create mode 100644 CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGPedestals.cc create mode 100644 CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGTimeWeightIdMap.cc create mode 100644 Configuration/Eras/python/Modifier_phase2_ecalTP_devel_cff.py create mode 100644 DataFormats/EcalDigi/interface/EBDataFrame_Ph2.h create mode 100644 DataFormats/EcalDigi/interface/EcalEBPhase2TriggerPrimitiveDigi.h create mode 100644 DataFormats/EcalDigi/interface/EcalEBPhase2TriggerPrimitiveSample.h create mode 100644 DataFormats/EcalDigi/src/EBDataFrame_Ph2.cc create mode 100644 DataFormats/EcalDigi/src/EcalEBPhase2TriggerPrimitiveDigi.cc create mode 100644 DataFormats/EcalDigi/src/EcalEBPhase2TriggerPrimitiveSample.cc create mode 100644 SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h create mode 100644 SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2Linearizer.h create mode 100644 SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2SpikeTagger.h create mode 100644 SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TPFormatter.h create mode 100644 SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TimeReconstructor.h create mode 100644 SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TrigPrimAlgo.h create mode 100644 SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2AmplitudeReconstructor.cc create mode 100644 SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2Linearizer.cc create mode 100644 SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2SpikeTagger.cc create mode 100644 SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TPFormatter.cc create mode 100644 SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TimeReconstructor.cc create mode 100644 SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TrigPrimAlgo.cc create mode 100644 SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2ESProducer.cc create mode 100644 SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2Producer.cc create mode 100644 SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cff.py create mode 100644 SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cfi.py create mode 100644 SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2ESProducer_cff.py create mode 100644 SimCalorimetry/EcalEBTrigPrimProducers/test/testPhase2_13_1_0_pre3.py diff --git a/CalibCalorimetry/EBPhase2TPGTools/BuildFile.xml b/CalibCalorimetry/EBPhase2TPGTools/BuildFile.xml new file mode 100644 index 0000000000000..07af00943a026 --- /dev/null +++ b/CalibCalorimetry/EBPhase2TPGTools/BuildFile.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/CalibCalorimetry/EBPhase2TPGTools/plugins/BuildFile.xml b/CalibCalorimetry/EBPhase2TPGTools/plugins/BuildFile.xml new file mode 100644 index 0000000000000..a9dd20350ca2f --- /dev/null +++ b/CalibCalorimetry/EBPhase2TPGTools/plugins/BuildFile.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/CalibCalorimetry/EBPhase2TPGTools/plugins/EcalEBPhase2TPParamProducer.cc b/CalibCalorimetry/EBPhase2TPGTools/plugins/EcalEBPhase2TPParamProducer.cc new file mode 100644 index 0000000000000..441f081403e4a --- /dev/null +++ b/CalibCalorimetry/EBPhase2TPGTools/plugins/EcalEBPhase2TPParamProducer.cc @@ -0,0 +1,432 @@ +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/one/EDAnalyzer.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/MakerMacros.h" +// +#include "Geometry/CaloGeometry/interface/CaloGeometry.h" +#include "Geometry/CaloGeometry/interface/CaloSubdetectorGeometry.h" +#include "Geometry/CaloGeometry/interface/CaloCellGeometry.h" +#include "Geometry/Records/interface/CaloGeometryRecord.h" +#include "Geometry/CaloTopology/interface/EcalTrigTowerConstituentsMap.h" +#include "Geometry/EcalMapping/interface/EcalElectronicsMapping.h" +#include "Geometry/EcalMapping/interface/EcalMappingRcd.h" +#include "CondFormats/EcalObjects/interface/EcalTPGCrystalStatus.h" +#include "CondFormats/EcalObjects/interface/EcalLiteDTUPedestals.h" +#include "CondFormats/DataRecord/interface/EcalLiteDTUPedestalsRcd.h" +#include "DataFormats/EcalDigi/interface/EcalConstants.h" +#include "DataFormats/EcalDetId/interface/EcalSubdetector.h" +#include "DataFormats/EcalDetId/interface/EBDetId.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +/** +\class EcalEBPhase2TPParamProducer +\author L. Lutton, N. Marinelli - Univ. of Notre Dame +\brief TPG Param Builder for Phase2 +*/ + +class EcalEBPhase2TPParamProducer : public edm::one::EDAnalyzer<> { +public: + explicit EcalEBPhase2TPParamProducer(edm::ParameterSet const& pSet); + ~EcalEBPhase2TPParamProducer() override; + void analyze(const edm::Event& evt, const edm::EventSetup& evtSetup) override; + void beginJob() override; + static void fillDescriptions(edm::ConfigurationDescriptions&); + +private: + std::vector computeWeights(int type); + + void getNumericalDeriv(TGraph graph, TGraph& deriv); + void fillFMat(std::vector clockSampleSet, + bool useThirdPulse, + std::vector sampleSet, + std::vector sampleDotSet, + TMatrix& FMat, + unsigned int binOfMaximum); + void getGMatrix(TMatrix FMat, float scaleMatrixBy, TMatrix& GMat); + void getPulseSampleSet(TGraph pulseGraph, float phaseShift, std::vector& sampleSet); + bool computeLinearizerParam(double theta, double gainRatio, double calibCoeff, int& shift, int& mult); + + const edm::ESGetToken theBarrelGeometryToken_; + const std::string inFile_; + const std::string outFile_; + const int nSamplesToUse_; + const bool useBXPlusOne_; + const double phaseShift_; + const unsigned int nWeightGroups_; + const edm::ESGetToken theEcalTPGPedestals_Token_; + + gzFile out_file_; + TGraph* thePulse_; + TGraph* pulseDot_; + + const UInt_t NPoints_ = 1599; //With the CMSSW pulse + + static constexpr float norm_ = 1 / 503.109; // with the CMSSW pulse shape + static constexpr float offset_ = 0.; // with the CMSSW pulse shape + int multToInt_ = 0x1000; + + int i2cSub_[2] = {0, 0}; + + const double et_sat_; + const double xtal_LSB_; + const unsigned int binOfMaximum_; + static const int linTopRange_; +}; + +EcalEBPhase2TPParamProducer::EcalEBPhase2TPParamProducer(edm::ParameterSet const& pSet) + : theBarrelGeometryToken_(esConsumes(edm::ESInputTag("", "EcalBarrel"))), + inFile_(pSet.getUntrackedParameter("inputFile")), + outFile_(pSet.getUntrackedParameter("outputFile")), + nSamplesToUse_(pSet.getParameter("nSamplesToUse")), + useBXPlusOne_(pSet.getParameter("useBXPlusOne")), + phaseShift_(pSet.getParameter("phaseShift")), + nWeightGroups_(pSet.getParameter("nWeightGroups")), + theEcalTPGPedestals_Token_(esConsumes(edm::ESInputTag("EcalLiteDTUPedestals", ""))), + et_sat_(pSet.getParameter("Et_sat")), + xtal_LSB_(pSet.getParameter("xtal_LSB")), + binOfMaximum_(pSet.getParameter("binOfMaximum")) + +{ + out_file_ = gzopen(outFile_.c_str(), "wb"); + + TFile* inFile = new TFile(inFile_.c_str(), "READ"); + + inFile->GetObject("average-pulse", thePulse_); + delete inFile; + + if (binOfMaximum_ != 6 && binOfMaximum_ != 8) + edm::LogError("EcalEBPhase2TPParamProducer") + << " Value for binOfMaximum " << binOfMaximum_ << " is wrong, The default binOfMaximum=6 will be used"; + + if (nSamplesToUse_ != 6 && nSamplesToUse_ != 8 && nSamplesToUse_ != 12) + edm::LogError("EcalEBPhase2TPParamProducer") + << " Value for nSamplesToUse " << nSamplesToUse_ << " is wrong, The default nSamplesToUse=8 will be used"; +} + +EcalEBPhase2TPParamProducer::~EcalEBPhase2TPParamProducer() { gzclose(out_file_); } + +void EcalEBPhase2TPParamProducer::beginJob() {} + +void EcalEBPhase2TPParamProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.addUntracked("inputFile"); + desc.addUntracked("outputFile"); + desc.add("nSamplesToUse", 8); + desc.add("useBXPlusOne", false); + desc.add("phaseShift", 2.581); + desc.add("nWeightGroups", 61200); + desc.add("Et_sat", 1998.36); + desc.add("xtal_LSB", 0.0488); + desc.add("binOfMaximum", 6); +} + +void EcalEBPhase2TPParamProducer::analyze(const edm::Event& evt, const edm::EventSetup& evtSetup) { + using namespace edm; + using namespace std; + + const EcalLiteDTUPedestals* peds = nullptr; + const auto* theBarrelGeometry = &evtSetup.getData(theBarrelGeometryToken_); + const auto* theEcalTPPedestals = &evtSetup.getData(theEcalTPGPedestals_Token_); + + std::string tmpStringConv; + const char* tmpStringOut; + + // Compute weights // + std::vector ampWeights[nWeightGroups_]; + std::vector timeWeights[nWeightGroups_]; + + for (unsigned int iGr = 0; iGr < nWeightGroups_; iGr++) { + ampWeights[iGr] = computeWeights(1); + timeWeights[iGr] = computeWeights(2); + } + + /* write to compressed file */ + std::stringstream toCompressStream(""); + for (unsigned int iGr = 0; iGr < nWeightGroups_; iGr++) { + toCompressStream << " WEIGHTAMP " << dec << iGr << std::endl; + for (long unsigned int i = 0; i < ampWeights[iGr].size(); i++) { + if (ampWeights[iGr][i] < 0) + toCompressStream << "-0x" << std::hex << abs(ampWeights[iGr][i]) << " "; + else + toCompressStream << "0x" << std::hex << ampWeights[iGr][i] << " "; + } + toCompressStream << "\n"; + } + toCompressStream << "\n"; + tmpStringConv = toCompressStream.str(); + tmpStringOut = tmpStringConv.c_str(); + gzwrite(out_file_, tmpStringOut, std::strlen(tmpStringOut)); + toCompressStream.str(std::string()); + + for (unsigned int iGr = 0; iGr < nWeightGroups_; iGr++) { + toCompressStream << "WEIGHTTIME " << dec << iGr << std::endl; + for (long unsigned int i = 0; i < timeWeights[iGr].size(); i++) { + if (timeWeights[iGr][i] < 0) + toCompressStream << "-0x" << std::hex << abs(timeWeights[iGr][i]) << " "; + else + toCompressStream << "0x" << std::hex << timeWeights[iGr][i] << " "; + } + toCompressStream << "\n"; + } + + toCompressStream << "\n"; + tmpStringConv = toCompressStream.str(); + tmpStringOut = tmpStringConv.c_str(); + gzwrite(out_file_, tmpStringOut, std::strlen(tmpStringOut)); + toCompressStream.str(std::string()); + + // fill map between xTals and groups. If each xTal is a group there is a one-to-one map + const std::vector& ebCells = theBarrelGeometry->getValidDetIds(DetId::Ecal, EcalBarrel); + std::map mapXtalToGroup; + + int iGroup = 0; + for (const auto& it : ebCells) { + EBDetId id(it); + std::pair xTalToGroup(id.rawId(), iGroup); + mapXtalToGroup.insert(xTalToGroup); + iGroup++; + } + + //write to file + + for (std::map::const_iterator it = mapXtalToGroup.begin(); it != mapXtalToGroup.end(); it++) { + toCompressStream << "CRYSTAL " << dec << it->first << std::endl; + toCompressStream << it->second << std::endl; + } + tmpStringConv = toCompressStream.str(); + tmpStringOut = tmpStringConv.c_str(); + gzwrite(out_file_, tmpStringOut, std::strlen(tmpStringOut)); + toCompressStream.str(std::string()); + + ///////////////////////////////////// + + for (const auto& it : ebCells) { + EBDetId id(it); + toCompressStream << "LINCONST " << dec << id.rawId() << std::endl; + double theta = theBarrelGeometry->getGeometry(id)->getPosition().theta(); + EcalLiteDTUPedestalsMap::const_iterator itped = theEcalTPPedestals->getMap().find(id); + + if (itped != theEcalTPPedestals->end()) { + peds = &(*itped); + + } else { + edm::LogError("EcalEBPhase2TPParamProducer") << " could not find EcalLiteDTUPedestal entry for " << id; + throw cms::Exception("could not find pedestals"); + } + + int shift, mult; + double calibCoeff = 1.; + bool ok; + for (unsigned int i = 0; i < ecalPh2::NGAINS; ++i) { + ok = computeLinearizerParam(theta, ecalph2::gains[ecalPh2::NGAINS - 1 - i], calibCoeff, shift, mult); + if (!ok) { + edm::LogError("EcalEBPhase2TPParamProducer") + << "unable to compute the parameters for SM=" << id.ism() << " xt=" << id.ic() << " " << id.rawId(); + throw cms::Exception("unable to compute the parameters"); + + } else { + int tmpPedByGain = (int)(peds->mean(i) + 0.5); + toCompressStream << std::hex << " 0x" << tmpPedByGain << " 0x" << mult << " 0x" << shift << " " << i2cSub_[i] + << std::endl; + } + } + } + tmpStringConv = toCompressStream.str(); + tmpStringOut = tmpStringConv.c_str(); + gzwrite(out_file_, tmpStringOut, std::strlen(tmpStringOut)); + toCompressStream.str(std::string()); +} + +std::vector EcalEBPhase2TPParamProducer::computeWeights(int type) { + std::vector sampleSet; + std::vector sampleDotSet; + std::vector clockSampleSet; + double scaleMatrixBy = 1.; + int lbinOfMaximum = binOfMaximum_; + + switch (binOfMaximum_) { + case 6: + break; + case 8: + break; + default: + lbinOfMaximum = 6; + break; + } + + switch (nSamplesToUse_) { + case 12: + clockSampleSet = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}; + break; + case 8: + switch (lbinOfMaximum) { + case 8: + clockSampleSet = {2, 3, 4, 5, 6, 7, 8, 9}; + break; + case 6: + clockSampleSet = {0, 1, 2, 3, 4, 5, 6, 7}; + break; + } + break; + + case 6: + switch (lbinOfMaximum) { + case 8: + clockSampleSet = {3, 4, 6, 7, 8, 9}; + break; + case 6: + clockSampleSet = {1, 2, 4, 5, 6, 7}; + break; + } + break; + + default: + clockSampleSet = {0, 1, 2, 3, 4, 5, 6, 7}; + break; + } + + getPulseSampleSet(*thePulse_, phaseShift_, sampleSet); + pulseDot_ = new TGraph(); + getNumericalDeriv(*thePulse_, *pulseDot_); + getPulseSampleSet(*pulseDot_, phaseShift_, sampleDotSet); + + unsigned int fMatColumns = useBXPlusOne_ ? 6 : 4; + + TMatrix fMat(clockSampleSet.size(), fMatColumns); + fillFMat(clockSampleSet, useBXPlusOne_, sampleSet, sampleDotSet, fMat, lbinOfMaximum); + TMatrix gMat(fMatColumns, clockSampleSet.size()); + + getGMatrix(fMat, scaleMatrixBy, gMat); + + std::vector tmpWeightVec; + std::vector tmpTimeWeightVec; + unsigned int iClock = 0; + for (unsigned int iSample = 0; iSample < 12; iSample++) { + bool inSampleSet = false; + for (unsigned int clockSample = 0; clockSample < clockSampleSet.size(); clockSample++) { + if (iSample == clockSampleSet[clockSample]) { + inSampleSet = true; + iClock = clockSample; + break; + } + } + if (inSampleSet) { + if (type == 1) + tmpWeightVec.push_back(round(gMat(2, iClock) * multToInt_)); // amp weights + if (type == 2) + tmpWeightVec.push_back(round(gMat(3, iClock) * multToInt_)); // time weights + } else { + if (type == 1) + tmpWeightVec.push_back(0); // amp weights + if (type == 2) + tmpWeightVec.push_back(0); // time weights + } + } + + return tmpWeightVec; +} + +void EcalEBPhase2TPParamProducer::getNumericalDeriv(TGraph graph, TGraph& deriv) { + UInt_t numPoints = graph.GetN(); + if (numPoints != NPoints_) { + edm::LogWarning("EcalEBPhase2TPParamProducer") << "Error! Wrong amount of points in pulse graph! "; + } + Double_t xval; + Double_t yval; + Double_t xvalPOne; + Double_t yvalPOne; + + for (UInt_t p = 0; p < NPoints_ - 1; p++) { + graph.GetPoint(p, xval, yval); + graph.GetPoint(p + 1, xvalPOne, yvalPOne); + float midpoint = (xvalPOne + xval) / 2; + float rise = yvalPOne - yval; + float run = xvalPOne - xval; + deriv.SetPoint(deriv.GetN(), midpoint, rise / run); + } + deriv.SetName("pulse_prime"); +} + +void EcalEBPhase2TPParamProducer::fillFMat(std::vector clockSampleSet, + bool useThirdPulse, + std::vector sampleSet, + std::vector sampleDotSet, + TMatrix& fMat, + uint binOfMaximum) { + Int_t iShift = 8 - binOfMaximum; + for (UInt_t i = 0; i < clockSampleSet.size(); i++) { + Int_t tmpClockToSample = clockSampleSet[i] + iShift; + fMat(i, 0) = sampleSet[tmpClockToSample]; + fMat(i, 1) = sampleDotSet[tmpClockToSample]; + if (tmpClockToSample > 4) { + fMat(i, 2) = sampleSet[tmpClockToSample - 4]; + fMat(i, 3) = sampleDotSet[tmpClockToSample - 4]; + } + if (clockSampleSet[i] > 8 && useThirdPulse) { + fMat(i, 4) = sampleSet[tmpClockToSample - 8]; + fMat(i, 5) = sampleDotSet[tmpClockToSample - 8]; + } + } +} + +void EcalEBPhase2TPParamProducer::getGMatrix(TMatrix fMat, float scaleMatrixBy, TMatrix& gMat) { + TMatrix FT = fMat; + FT.T(); + TMatrix tmpFT = FT; + TMatrix FTDotF = TMatrix(tmpFT, TMatrix::kMult, fMat); + TMatrix InvFTDotF = FTDotF; + + //Possible for this bit to fail depending on the sample set and phase shift + InvFTDotF.Invert(); + + TMatrix tmpMat(InvFTDotF, TMatrix::kMult, FT); + gMat = tmpMat; + gMat *= scaleMatrixBy; +} + +void EcalEBPhase2TPParamProducer::getPulseSampleSet(TGraph pulseGraph, + float phaseShift, + std::vector& sampleSet) { + for (UInt_t i = 0; i < ecalPh2::sampleSize; i++) { + float t = (ecalPh2::Samp_Period * i) + phaseShift; + float y = pulseGraph.Eval(t + offset_) * norm_; + sampleSet.push_back(y); + } +} + +bool EcalEBPhase2TPParamProducer::computeLinearizerParam( + double theta, double gainRatio, double calibCoeff, int& shift, int& mult) { + bool result = false; + + static constexpr double linTopRange_ = 16383.; + // linTopRange_ 16383 = (2**14)-1 is setting the top of the range for the linearizer output + double factor = (linTopRange_ * (xtal_LSB_ * gainRatio * calibCoeff * sin(theta))) / et_sat_; + //first with shift_ = 0 + //add 0.5 (for rounding) and set to int + //Here we are getting mult with a max bit length of 8 + //and shift_ with a max bit length of 4 + mult = (int)(factor + 0.5); + for (shift = 0; shift < 15; shift++) { + if (mult >= 128 && mult < 256) { + result = true; + break; + } + factor *= 2; + mult = (int)(factor + 0.5); + } + + return result; +} + +// DEfine this module as a plug-in +DEFINE_FWK_MODULE(EcalEBPhase2TPParamProducer); diff --git a/CalibCalorimetry/EBPhase2TPGTools/python/ecalEBPhase2TPParamProducer_cfi.py b/CalibCalorimetry/EBPhase2TPGTools/python/ecalEBPhase2TPParamProducer_cfi.py new file mode 100644 index 0000000000000..d9eb9e44eadb8 --- /dev/null +++ b/CalibCalorimetry/EBPhase2TPGTools/python/ecalEBPhase2TPParamProducer_cfi.py @@ -0,0 +1,24 @@ +import FWCore.ParameterSet.Config as cms + +EBPhase2TPGParamProducer = cms.EDAnalyzer("EcalEBPhase2TPParamProducer", +inputFile = cms.untracked.string('../../../SimCalorimetry/EcalEBTrigPrimProducers/data/CMSSWPhaseIIPulseGraphAlt.root'), +outputFile = cms.untracked.string('../../../SimCalorimetry/EcalEBTrigPrimProducers/data/AmpTimeOnPeakXtalWeightsCMSSWPulse_8samples_peakOnSix_WithAndyFixes.txt.gz'), + nSamplesToUse = cms.uint32(8), + useBXPlusOne = cms.bool(False), + phaseShift = cms.double (2.581), + nWeightGroups = cms.uint32(61200), + Et_sat = cms.double(1998.36), + xtal_LSB = cms.double(0.0488), + binOfMaximum = cms.uint32(6) + + +## allowed values of nSamplesToUse: 12, 8, 6. nSamplesToUse=8 is the default +## allowed values of binOfMaximum: 6, 8. binOfMaximum=6 is the default +#### The DEFAULT is nSamplesToUse=8, binOfMaximum=6 ####### + +## If nSamplesToUse is 12 ==> useBXPlusOne is True +## If nSamplesToUse is 8 ==> useBXPlusOne is False +## If nSamplesToUse is 6 ==> useBXPlusOne is False + +) + diff --git a/CalibCalorimetry/EBPhase2TPGTools/test/runEBPhase2TPParamProducer.py b/CalibCalorimetry/EBPhase2TPGTools/test/runEBPhase2TPParamProducer.py new file mode 100644 index 0000000000000..eea149b2c2029 --- /dev/null +++ b/CalibCalorimetry/EBPhase2TPGTools/test/runEBPhase2TPParamProducer.py @@ -0,0 +1,91 @@ +import FWCore.ParameterSet.Config as cms +import CondTools.Ecal.db_credentials as auth +import FWCore.ParameterSet.VarParsing as VarParsing + + +from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9 +from Configuration.Eras.Modifier_phase2_ecal_devel_cff import phase2_ecal_devel + + +#process = cms.Process("ProdTPGParam") +process = cms.Process('DIGI',Phase2C17I13M9,phase2_ecal_devel) + +process.load('Configuration.StandardSequences.Services_cff') +process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi') +process.load('FWCore.MessageService.MessageLogger_cfi') +process.load('Configuration.EventContent.EventContent_cff') +process.load('SimGeneral.MixingModule.mixNoPU_cfi') +process.load('Configuration.Geometry.GeometryExtended2026D88Reco_cff') +process.load('Configuration.Geometry.GeometryExtended2026D88_cff') +process.load('Configuration.StandardSequences.MagneticField_cff') +process.load('Configuration.StandardSequences.Generator_cff') +process.load('IOMC.EventVertexGenerators.VtxSmearedHLLHC14TeV_cfi') +process.load('GeneratorInterface.Core.genFilterSummary_cff') +process.load('Configuration.StandardSequences.SimIdeal_cff') +process.load('Configuration.StandardSequences.Digi_cff') +process.load('Configuration.StandardSequences.EndOfProcess_cff') +#process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') TO BE FIXED +process.load('CalibCalorimetry.EBPhase2TPGTools.ecalEBPhase2TPParamProducer_cfi') +""" +options = VarParsing.VarParsing('tpg') + +options.register ('outFile', + 'testtest.txt', + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "Output file") + +options.parseArguments() +""" +# Calo geometry service model +#process.load("Configuration.StandardSequences.GeometryDB_cff") + +# ecal mapping +process.eegeom = cms.ESSource("EmptyESSource", + recordName = cms.string('EcalMappingRcd'), + iovIsRunNotTime = cms.bool(True), + firstValid = cms.vuint32(1) +) + +# Get hardcoded conditions the same used for standard digitization before CMSSW_3_1_x +## process.load("CalibCalorimetry.EcalTrivialCondModules.EcalTrivialCondRetriever_cfi") +# or Get DB parameters +# process.load('Configuration/StandardSequences/FrontierConditions_GlobalTag_cff') +process.load("CondCore.CondDB.CondDB_cfi") + +process.CondDB.connect = 'frontier://FrontierProd/CMS_CONDITIONS' +process.CondDB.DBParameters.authenticationPath = '/nfshome0/popcondev/conddb' ###P5 stuff + +""" +process.PoolDBESSource = cms.ESSource("PoolDBESSource", + process.CondDB, + timetype = cms.untracked.string('runnumber'), + toGet = cms.VPSet( + cms.PSet( + record = cms.string('EcalPedestalsRcd'), + #tag = cms.string('EcalPedestals_v5_online') + #tag = cms.string('EcalPedestals_2009runs_hlt') ### obviously diff w.r.t previous + tag = cms.string('EcalPedestals_hlt'), ### modif-alex 22/02/2011 + ), + cms.PSet( + record = cms.string('EcalMappingElectronicsRcd'), + tag = cms.string('EcalMappingElectronics_EEMap_v1_mc') + ) + ) + ) +""" + +######################### +process.source = cms.Source("EmptySource", + ##firstRun = cms.untracked.uint32(100000000) ### need to use latest run to pick-up update values from DB + firstRun = cms.untracked.uint32(161310) +) + + +process.maxEvents = cms.untracked.PSet( + input = cms.untracked.int32(1) +) + + + +process.p = cms.Path(process.EBPhase2TPGParamProducer) diff --git a/CondCore/Utilities/plugins/Module_2XML.cc b/CondCore/Utilities/plugins/Module_2XML.cc index 09e00aebbc052..bd0bcc61e92f4 100644 --- a/CondCore/Utilities/plugins/Module_2XML.cc +++ b/CondCore/Utilities/plugins/Module_2XML.cc @@ -115,6 +115,12 @@ PAYLOAD_2XML_MODULE(pluginUtilities_payload2xml) { PAYLOAD_2XML_CLASS(EcalTPGOddWeightGroup); PAYLOAD_2XML_CLASS(EcalTPGOddWeightIdMap); PAYLOAD_2XML_CLASS(EcalTPGTPMode); + PAYLOAD_2XML_CLASS(EcalEBPhase2TPGAmplWeightIdMap); + PAYLOAD_2XML_CLASS(EcalEBPhase2TPGAmplWeights); + PAYLOAD_2XML_CLASS(EcalEBPhase2TPGLinearizationConstant); + PAYLOAD_2XML_CLASS(EcalEBPhase2TPGPedestal); + PAYLOAD_2XML_CLASS(EcalEBPhase2TPGTimeWeightIdMap); + PAYLOAD_2XML_CLASS(EcalEBPhase2TPGTimeWeights); PAYLOAD_2XML_CLASS(EcalTimeBiasCorrections); PAYLOAD_2XML_CLASS(EcalTimeDependentCorrections); PAYLOAD_2XML_CLASS(EcalTimeOffsetConstant); diff --git a/CondCore/Utilities/src/CondDBFetch.cc b/CondCore/Utilities/src/CondDBFetch.cc index f82f1fae959b0..05f231dab8dec 100644 --- a/CondCore/Utilities/src/CondDBFetch.cc +++ b/CondCore/Utilities/src/CondDBFetch.cc @@ -145,6 +145,12 @@ namespace cond { FETCH_PAYLOAD_CASE(EcalPulseCovariance) FETCH_PAYLOAD_CASE(EcalCondObjectContainer) FETCH_PAYLOAD_CASE(EcalPulseSymmCovariance) + FETCH_PAYLOAD_CASE(EcalEBPhase2TPGAmplWeightIdMap) + FETCH_PAYLOAD_CASE(EcalEBPhase2TPGAmplWeights) + FETCH_PAYLOAD_CASE(EcalEBPhase2TPGTimeWeightIdMap) + FETCH_PAYLOAD_CASE(EcalEBPhase2TPGTimeWeights) + FETCH_PAYLOAD_CASE(EcalEBPhase2TPGLinearizationConstant) + FETCH_PAYLOAD_CASE(EcalEBPhase2TPGPedestal) FETCH_PAYLOAD_CASE(FileBlob) FETCH_PAYLOAD_CASE(GBRForest) FETCH_PAYLOAD_CASE(GBRForestD) diff --git a/CondCore/Utilities/src/CondDBImport.cc b/CondCore/Utilities/src/CondDBImport.cc index a35f61600a67c..1d938599159bb 100644 --- a/CondCore/Utilities/src/CondDBImport.cc +++ b/CondCore/Utilities/src/CondDBImport.cc @@ -165,6 +165,12 @@ namespace cond { IMPORT_PAYLOAD_CASE(EcalPulseCovariance) IMPORT_PAYLOAD_CASE(EcalCondObjectContainer) IMPORT_PAYLOAD_CASE(EcalPulseSymmCovariance) + IMPORT_PAYLOAD_CASE(EcalEBPhase2TPGAmplWeightIdMap) + IMPORT_PAYLOAD_CASE(EcalEBPhase2TPGAmplWeights) + IMPORT_PAYLOAD_CASE(EcalEBPhase2TPGTimeWeightIdMap) + IMPORT_PAYLOAD_CASE(EcalEBPhase2TPGTimeWeights) + IMPORT_PAYLOAD_CASE(EcalEBPhase2TPGPedestal) + IMPORT_PAYLOAD_CASE(EcalEBPhase2TPGLinearizationConstant) IMPORT_PAYLOAD_CASE(FileBlob) IMPORT_PAYLOAD_CASE(GBRForest) IMPORT_PAYLOAD_CASE(GBRForestD) diff --git a/CondCore/Utilities/src/CondFormats.h b/CondCore/Utilities/src/CondFormats.h index c35957099e6d4..f5c858609478b 100644 --- a/CondCore/Utilities/src/CondFormats.h +++ b/CondCore/Utilities/src/CondFormats.h @@ -72,6 +72,12 @@ #include "CondFormats/EcalObjects/interface/EcalPulseShapes.h" #include "CondFormats/EcalObjects/interface/EcalPulseCovariances.h" #include "CondFormats/EcalObjects/interface/EcalPulseSymmCovariances.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeightIdMap.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeights.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGLinearizationConst.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGPedestals.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeightIdMap.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeights.h" #include "CondFormats/GBRForest/interface/GBRForest.h" #include "CondFormats/GBRForest/interface/GBRForestD.h" #include "CondFormats/HcalObjects/interface/AbsOOTPileupCorrection.h" diff --git a/CondFormats/DataRecord/interface/EcalEBPhase2TPGAmplWeightIdMapRcd.h b/CondFormats/DataRecord/interface/EcalEBPhase2TPGAmplWeightIdMapRcd.h new file mode 100644 index 0000000000000..a9389ef6367a3 --- /dev/null +++ b/CondFormats/DataRecord/interface/EcalEBPhase2TPGAmplWeightIdMapRcd.h @@ -0,0 +1,7 @@ +#ifndef CondFormats_DataRecord_EcalEBPhase2TPGAmplWeightIdMapRcd_h +#define CondFormats_DataRecord_EcalEBPhase2TPGAmplWeightIdMapRcd_h + +#include "FWCore/Framework/interface/EventSetupRecordImplementation.h" +class EcalEBPhase2TPGAmplWeightIdMapRcd + : public edm::eventsetup::EventSetupRecordImplementation {}; +#endif diff --git a/CondFormats/DataRecord/interface/EcalEBPhase2TPGLinearizationConstRcd.h b/CondFormats/DataRecord/interface/EcalEBPhase2TPGLinearizationConstRcd.h new file mode 100644 index 0000000000000..8cae9d31c7d27 --- /dev/null +++ b/CondFormats/DataRecord/interface/EcalEBPhase2TPGLinearizationConstRcd.h @@ -0,0 +1,7 @@ +#ifndef CondFormats_DataRecord_EcalEBPhase2TPGLinearizationConstRcd_h +#define CondFormats_DataRecord_EcalEBPhase2TPGLinearizationConstRcd_h + +#include "FWCore/Framework/interface/EventSetupRecordImplementation.h" +class EcalEBPhase2TPGLinearizationConstRcd + : public edm::eventsetup::EventSetupRecordImplementation {}; +#endif diff --git a/CondFormats/DataRecord/interface/EcalEBPhase2TPGPedestalsRcd.h b/CondFormats/DataRecord/interface/EcalEBPhase2TPGPedestalsRcd.h new file mode 100644 index 0000000000000..399e780144b4a --- /dev/null +++ b/CondFormats/DataRecord/interface/EcalEBPhase2TPGPedestalsRcd.h @@ -0,0 +1,7 @@ +#ifndef CondFormats_DataRecord_EcalEBPhase2TPGPedestalsRcd_h +#define CondFormats_DataRecord_EcalEBPhase2TPGPedestalsRcd_h + +#include "FWCore/Framework/interface/EventSetupRecordImplementation.h" +class EcalEBPhase2TPGPedestalsRcd + : public edm::eventsetup::EventSetupRecordImplementation {}; +#endif diff --git a/CondFormats/DataRecord/interface/EcalEBPhase2TPGTimeWeightIdMapRcd.h b/CondFormats/DataRecord/interface/EcalEBPhase2TPGTimeWeightIdMapRcd.h new file mode 100644 index 0000000000000..7e591ffe19a73 --- /dev/null +++ b/CondFormats/DataRecord/interface/EcalEBPhase2TPGTimeWeightIdMapRcd.h @@ -0,0 +1,7 @@ +#ifndef CondFormats_DataRecord_EcalEBPhase2TPGTimeWeightIdMapRcd_h +#define CondFormats_DataRecord_EcalEBPhase2TPGTimeWeightIdMapRcd_h + +#include "FWCore/Framework/interface/EventSetupRecordImplementation.h" +class EcalEBPhase2TPGTimeWeightIdMapRcd + : public edm::eventsetup::EventSetupRecordImplementation {}; +#endif diff --git a/CondFormats/DataRecord/src/EcalEBPhase2TPGAmplWeightIdMapRcd.cc b/CondFormats/DataRecord/src/EcalEBPhase2TPGAmplWeightIdMapRcd.cc new file mode 100644 index 0000000000000..e6527eed26d8c --- /dev/null +++ b/CondFormats/DataRecord/src/EcalEBPhase2TPGAmplWeightIdMapRcd.cc @@ -0,0 +1,4 @@ +#include "CondFormats/DataRecord/interface/EcalEBPhase2TPGAmplWeightIdMapRcd.h" +#include "FWCore/Framework/interface/eventsetuprecord_registration_macro.h" + +EVENTSETUP_RECORD_REG(EcalEBPhase2TPGAmplWeightIdMapRcd); diff --git a/CondFormats/DataRecord/src/EcalEBPhase2TPGLinearizationConstRcd.cc b/CondFormats/DataRecord/src/EcalEBPhase2TPGLinearizationConstRcd.cc new file mode 100644 index 0000000000000..9e310ae324038 --- /dev/null +++ b/CondFormats/DataRecord/src/EcalEBPhase2TPGLinearizationConstRcd.cc @@ -0,0 +1,4 @@ +#include "CondFormats/DataRecord/interface/EcalEBPhase2TPGLinearizationConstRcd.h" +#include "FWCore/Framework/interface/eventsetuprecord_registration_macro.h" + +EVENTSETUP_RECORD_REG(EcalEBPhase2TPGLinearizationConstRcd); diff --git a/CondFormats/DataRecord/src/EcalEBPhase2TPGPedestalsRcd.cc b/CondFormats/DataRecord/src/EcalEBPhase2TPGPedestalsRcd.cc new file mode 100644 index 0000000000000..4d0beedfc9bdf --- /dev/null +++ b/CondFormats/DataRecord/src/EcalEBPhase2TPGPedestalsRcd.cc @@ -0,0 +1,4 @@ +#include "CondFormats/DataRecord/interface/EcalEBPhase2TPGPedestalsRcd.h" +#include "FWCore/Framework/interface/eventsetuprecord_registration_macro.h" + +EVENTSETUP_RECORD_REG(EcalEBPhase2TPGPedestalsRcd); diff --git a/CondFormats/DataRecord/src/EcalEBPhase2TPGTimeWeightIdMapRcd.cc b/CondFormats/DataRecord/src/EcalEBPhase2TPGTimeWeightIdMapRcd.cc new file mode 100644 index 0000000000000..1320e879c861f --- /dev/null +++ b/CondFormats/DataRecord/src/EcalEBPhase2TPGTimeWeightIdMapRcd.cc @@ -0,0 +1,4 @@ +#include "CondFormats/DataRecord/interface/EcalEBPhase2TPGTimeWeightIdMapRcd.h" +#include "FWCore/Framework/interface/eventsetuprecord_registration_macro.h" + +EVENTSETUP_RECORD_REG(EcalEBPhase2TPGTimeWeightIdMapRcd); diff --git a/CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeightIdMap.h b/CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeightIdMap.h new file mode 100644 index 0000000000000..ee5a3fdb3b02c --- /dev/null +++ b/CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeightIdMap.h @@ -0,0 +1,27 @@ +#ifndef CondFormats_EcalObjects_EcalEBPhase2TPGAmplWeightIdMap_h +#define CondFormats_EcalObjects_EcalEBPhase2TPGAmplWeightIdMap_h + +#include "CondFormats/Serialization/interface/Serializable.h" + +#include +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeights.h" +#include + +class EcalEBPhase2TPGAmplWeightIdMap { +public: + typedef std::map EcalEBPhase2TPGAmplWeightMap; + typedef std::map::const_iterator EcalEBPhase2TPGAmplWeightMapItr; + + EcalEBPhase2TPGAmplWeightIdMap(){}; + ~EcalEBPhase2TPGAmplWeightIdMap(){}; + + const EcalEBPhase2TPGAmplWeightMap& getMap() const { return map_; } + void setValue(const uint32_t& id, const EcalEBPhase2TPGAmplWeights& value); + +private: + EcalEBPhase2TPGAmplWeightMap map_; + + COND_SERIALIZABLE; +}; + +#endif diff --git a/CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeights.h b/CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeights.h new file mode 100644 index 0000000000000..3352099f69bf4 --- /dev/null +++ b/CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeights.h @@ -0,0 +1,56 @@ +#ifndef CondFormats_EcalObjects_EcalEBPhase2TPGAmplWeights_h +#define CondFormats_EcalObjects_EcalEBPhase2TPGAmplWeights_h + +#include "CondFormats/Serialization/interface/Serializable.h" + +#include +#include + +class EcalEBPhase2TPGAmplWeights { +public: + EcalEBPhase2TPGAmplWeights(); + ~EcalEBPhase2TPGAmplWeights(); + + void getValues(uint32_t& w0, + uint32_t& w1, + uint32_t& w2, + uint32_t& w3, + uint32_t& w4, + uint32_t& w5, + uint32_t& w6, + uint32_t& w7, + uint32_t& w8, + uint32_t& w9, + uint32_t& w10, + uint32_t& w11) const; + void setValues(const uint32_t& w0, + const uint32_t& w1, + const uint32_t& w2, + const uint32_t& w3, + const uint32_t& w4, + const uint32_t& w5, + const uint32_t& w6, + const uint32_t& w7, + const uint32_t& w8, + const uint32_t& w9, + const uint32_t& w10, + const uint32_t& w11); + +private: + uint32_t w0_; + uint32_t w1_; + uint32_t w2_; + uint32_t w3_; + uint32_t w4_; + uint32_t w5_; + uint32_t w6_; + uint32_t w7_; + uint32_t w8_; + uint32_t w9_; + uint32_t w10_; + uint32_t w11_; + + COND_SERIALIZABLE; +}; + +#endif diff --git a/CondFormats/EcalObjects/interface/EcalEBPhase2TPGLinearizationConst.h b/CondFormats/EcalObjects/interface/EcalEBPhase2TPGLinearizationConst.h new file mode 100644 index 0000000000000..68813c46aa63f --- /dev/null +++ b/CondFormats/EcalObjects/interface/EcalEBPhase2TPGLinearizationConst.h @@ -0,0 +1,27 @@ +#ifndef CondFormats_EcalObjects_EcalEBPhase2TPGLinearizationConst_h +#define CondFormats_EcalObjects_EcalEBPhase2TPGLinearizationConst_h + +#include "CondFormats/Serialization/interface/Serializable.h" + +#include "CondFormats/EcalObjects/interface/EcalCondObjectContainer.h" + +struct EcalEBPhase2TPGLinearizationConstant { + EcalEBPhase2TPGLinearizationConstant() + : mult_x10(0), mult_x1(0), shift_x10(0), shift_x1(0), i2cSub_x10(0), i2cSub_x1(0) {} + + uint32_t mult_x10; + uint32_t mult_x1; + uint32_t shift_x10; + uint32_t shift_x1; + uint32_t i2cSub_x10; + uint32_t i2cSub_x1; + + COND_SERIALIZABLE; +}; + +typedef EcalCondObjectContainer EcalEBPhase2TPGLinearizationConstMap; +typedef EcalCondObjectContainer::const_iterator + EcalEBPhase2TPGLinearizationConstMapIterator; +typedef EcalEBPhase2TPGLinearizationConstMap EcalEBPhase2TPGLinearizationConst; + +#endif diff --git a/CondFormats/EcalObjects/interface/EcalEBPhase2TPGPedestals.h b/CondFormats/EcalObjects/interface/EcalEBPhase2TPGPedestals.h new file mode 100644 index 0000000000000..918fa6727f16b --- /dev/null +++ b/CondFormats/EcalObjects/interface/EcalEBPhase2TPGPedestals.h @@ -0,0 +1,20 @@ +#ifndef CondFormats_EcalObjects_EcalEBPhase2TPGPedestals_h +#define CondFormats_EcalObjects_EcalEBPhase2TPGPedestals_h + +#include "CondFormats/Serialization/interface/Serializable.h" + +#include "CondFormats/EcalObjects/interface/EcalCondObjectContainer.h" + +struct EcalEBPhase2TPGPedestal { + EcalEBPhase2TPGPedestal() : mean_x10(0), mean_x1(0) {} + uint32_t mean_x10; + uint32_t mean_x1; + + COND_SERIALIZABLE; +}; + +typedef EcalCondObjectContainer EcalEBPhase2TPGPedestalsMap; +typedef EcalEBPhase2TPGPedestalsMap::const_iterator EcalEBPhase2TPGPedestalsMapIterator; +typedef EcalEBPhase2TPGPedestalsMap EcalEBPhase2TPGPedestals; + +#endif diff --git a/CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeightIdMap.h b/CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeightIdMap.h new file mode 100644 index 0000000000000..051b7c0988227 --- /dev/null +++ b/CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeightIdMap.h @@ -0,0 +1,27 @@ +#ifndef CondFormats_EcalObjects_EcalEBPhase2TPGTimeWeightIdMap_h +#define CondFormats_EcalObjects_EcalEBPhase2TPGTimeWeightIdMap_h + +#include "CondFormats/Serialization/interface/Serializable.h" + +#include +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeights.h" +#include + +class EcalEBPhase2TPGTimeWeightIdMap { +public: + typedef std::map EcalEBPhase2TPGTimeWeightMap; + typedef std::map::const_iterator EcalEBPhase2TPGTimeWeightMapItr; + + EcalEBPhase2TPGTimeWeightIdMap() {} + ~EcalEBPhase2TPGTimeWeightIdMap() {} + + const EcalEBPhase2TPGTimeWeightMap& getMap() const { return map_; } + void setValue(const uint32_t& id, const EcalEBPhase2TPGTimeWeights& value); + +private: + EcalEBPhase2TPGTimeWeightMap map_; + + COND_SERIALIZABLE; +}; + +#endif diff --git a/CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeights.h b/CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeights.h new file mode 100644 index 0000000000000..b534733d5af87 --- /dev/null +++ b/CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeights.h @@ -0,0 +1,56 @@ +#ifndef CondFormats_EcalObjects_EcalEBPhase2TPGTimelWeights_h +#define CondFormats_EcalObjects_EcalEBPhase2TPGTimelWeights_h + +#include "CondFormats/Serialization/interface/Serializable.h" + +#include +#include + +class EcalEBPhase2TPGTimeWeights { +public: + EcalEBPhase2TPGTimeWeights(); + ~EcalEBPhase2TPGTimeWeights() {} + + void getValues(uint32_t& w0, + uint32_t& w1, + uint32_t& w2, + uint32_t& w3, + uint32_t& w4, + uint32_t& w5, + uint32_t& w6, + uint32_t& w7, + uint32_t& w8, + uint32_t& w9, + uint32_t& w10, + uint32_t& w11) const; + void setValues(const uint32_t& w0, + const uint32_t& w1, + const uint32_t& w2, + const uint32_t& w3, + const uint32_t& w4, + const uint32_t& w5, + const uint32_t& w6, + const uint32_t& w7, + const uint32_t& w8, + const uint32_t& w9, + const uint32_t& w10, + const uint32_t& w11); + +private: + uint32_t w0_; + uint32_t w1_; + uint32_t w2_; + uint32_t w3_; + uint32_t w4_; + uint32_t w5_; + uint32_t w6_; + uint32_t w7_; + uint32_t w8_; + uint32_t w9_; + uint32_t w10_; + uint32_t w11_; + + COND_SERIALIZABLE; +}; + +#endif diff --git a/CondFormats/EcalObjects/src/EcalEBPhase2TPGAmplWeightIdMap.cc b/CondFormats/EcalObjects/src/EcalEBPhase2TPGAmplWeightIdMap.cc new file mode 100644 index 0000000000000..8f7f1d3aa59ed --- /dev/null +++ b/CondFormats/EcalObjects/src/EcalEBPhase2TPGAmplWeightIdMap.cc @@ -0,0 +1,5 @@ +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeightIdMap.h" + +void EcalEBPhase2TPGAmplWeightIdMap::setValue(const uint32_t& id, const EcalEBPhase2TPGAmplWeights& value) { + map_[id] = value; +} diff --git a/CondFormats/EcalObjects/src/EcalEBPhase2TPGAmplWeights.cc b/CondFormats/EcalObjects/src/EcalEBPhase2TPGAmplWeights.cc new file mode 100644 index 0000000000000..dafbd250ee753 --- /dev/null +++ b/CondFormats/EcalObjects/src/EcalEBPhase2TPGAmplWeights.cc @@ -0,0 +1,58 @@ +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeights.h" + +EcalEBPhase2TPGAmplWeights::EcalEBPhase2TPGAmplWeights() + : w0_(0), w1_(0), w2_(0), w3_(0), w4_(0), w5_(0), w6_(0), w7_(0), w8_(0), w9_(0), w10_(0), w11_(0) {} + +EcalEBPhase2TPGAmplWeights::~EcalEBPhase2TPGAmplWeights() {} + +void EcalEBPhase2TPGAmplWeights::getValues(uint32_t& w0, + uint32_t& w1, + uint32_t& w2, + uint32_t& w3, + uint32_t& w4, + uint32_t& w5, + uint32_t& w6, + uint32_t& w7, + uint32_t& w8, + uint32_t& w9, + uint32_t& w10, + uint32_t& w11) const { + w0 = w0_; + w1 = w1_; + w2 = w2_; + w3 = w3_; + w4 = w4_; + w5 = w5_; + w6 = w6_; + w7 = w7_; + w8 = w8_; + w9 = w9_; + w10 = w10_; + w11 = w11_; +} + +void EcalEBPhase2TPGAmplWeights::setValues(const uint32_t& w0, + const uint32_t& w1, + const uint32_t& w2, + const uint32_t& w3, + const uint32_t& w4, + const uint32_t& w5, + const uint32_t& w6, + const uint32_t& w7, + const uint32_t& w8, + const uint32_t& w9, + const uint32_t& w10, + const uint32_t& w11) { + w0_ = w0; + w1_ = w1; + w2_ = w2; + w3_ = w3; + w4_ = w4; + w5_ = w5; + w6_ = w6; + w7_ = w7; + w8_ = w8; + w9_ = w9; + w10_ = w10; + w11_ = w11; +} diff --git a/CondFormats/EcalObjects/src/EcalEBPhase2TPGTimeWeightIdMap.cc b/CondFormats/EcalObjects/src/EcalEBPhase2TPGTimeWeightIdMap.cc new file mode 100644 index 0000000000000..dc2124524e175 --- /dev/null +++ b/CondFormats/EcalObjects/src/EcalEBPhase2TPGTimeWeightIdMap.cc @@ -0,0 +1,5 @@ +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeightIdMap.h" + +void EcalEBPhase2TPGTimeWeightIdMap::setValue(const uint32_t& id, const EcalEBPhase2TPGTimeWeights& value) { + map_[id] = value; +} diff --git a/CondFormats/EcalObjects/src/EcalEBPhase2TPGTimeWeights.cc b/CondFormats/EcalObjects/src/EcalEBPhase2TPGTimeWeights.cc new file mode 100644 index 0000000000000..bbc5d47e3973f --- /dev/null +++ b/CondFormats/EcalObjects/src/EcalEBPhase2TPGTimeWeights.cc @@ -0,0 +1,56 @@ +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeights.h" + +EcalEBPhase2TPGTimeWeights::EcalEBPhase2TPGTimeWeights() + : w0_(0), w1_(0), w2_(0), w3_(0), w4_(0), w5_(0), w6_(0), w7_(0), w8_(0), w9_(0), w10_(0), w11_(0) {} + +void EcalEBPhase2TPGTimeWeights::getValues(uint32_t& w0, + uint32_t& w1, + uint32_t& w2, + uint32_t& w3, + uint32_t& w4, + uint32_t& w5, + uint32_t& w6, + uint32_t& w7, + uint32_t& w8, + uint32_t& w9, + uint32_t& w10, + uint32_t& w11) const { + w0 = w0_; + w1 = w1_; + w2 = w2_; + w3 = w3_; + w4 = w4_; + w5 = w5_; + w6 = w6_; + w7 = w7_; + w8 = w8_; + w9 = w9_; + w10 = w10_; + w11 = w11_; +} + +void EcalEBPhase2TPGTimeWeights::setValues(const uint32_t& w0, + const uint32_t& w1, + const uint32_t& w2, + const uint32_t& w3, + const uint32_t& w4, + const uint32_t& w5, + const uint32_t& w6, + const uint32_t& w7, + const uint32_t& w8, + const uint32_t& w9, + const uint32_t& w10, + const uint32_t& w11) { + w0_ = w0; + w1_ = w1; + w2_ = w2; + w3_ = w3; + w4_ = w4; + w5_ = w5; + w6_ = w6; + w7_ = w7; + w8_ = w8; + w9_ = w9; + w10_ = w10; + w11_ = w11; +} diff --git a/CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGAmplWeightIdMap.cc b/CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGAmplWeightIdMap.cc new file mode 100644 index 0000000000000..60f388c8131b7 --- /dev/null +++ b/CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGAmplWeightIdMap.cc @@ -0,0 +1,14 @@ +// -*- C++ -*- +// +// Author: Nancy Marinelli +// Created: +// $Id: T_EventSetup_EcalEBPhase2TPGAmplWeightIdMap.cc $ +// + +// system include files + +// user include files +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeightIdMap.h" +#include "FWCore/Utilities/interface/typelookup.h" + +TYPELOOKUP_DATA_REG(EcalEBPhase2TPGAmplWeightIdMap); diff --git a/CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGLinearizationConst.cc b/CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGLinearizationConst.cc new file mode 100644 index 0000000000000..a5568f53950be --- /dev/null +++ b/CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGLinearizationConst.cc @@ -0,0 +1,17 @@ +// -*- C++ -*- +// +// Implementation: +// create all the 'infrastructure' needed to get into the Context +// +// Author: Nancy Marinelli +// Created: +// $Id: T_EventSetup_EcalEBPhase2TPGLinearizationConst.cc $ +// + +// system include files + +// user include files +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGLinearizationConst.h" +#include "FWCore/Utilities/interface/typelookup.h" + +TYPELOOKUP_DATA_REG(EcalEBPhase2TPGLinearizationConst); diff --git a/CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGPedestals.cc b/CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGPedestals.cc new file mode 100644 index 0000000000000..6919fbd5dd486 --- /dev/null +++ b/CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGPedestals.cc @@ -0,0 +1,17 @@ +// -*- C++ -*- +// +// Implementation: +// create all the 'infrastructure' needed to get into the Context +// +// Author: Nancy Marinelli +// Created: +// $Id: T_EventSetup_EcalEBPhase2TPGPedestals.cc $ +// + +// system include files + +// user include files +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGPedestals.h" +#include "FWCore/Utilities/interface/typelookup.h" + +TYPELOOKUP_DATA_REG(EcalEBPhase2TPGPedestals); diff --git a/CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGTimeWeightIdMap.cc b/CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGTimeWeightIdMap.cc new file mode 100644 index 0000000000000..2b326b3ad9f3a --- /dev/null +++ b/CondFormats/EcalObjects/src/T_EventSetup_EcalEBPhase2TPGTimeWeightIdMap.cc @@ -0,0 +1,13 @@ +// -*- C++ -*- +// +// Author: Nancy Marinelli +// $Id: T_EventSetup_EcalEBPhase2TPGTimeWeightIdMap.cc $ +// + +// system include files + +// user include files +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeightIdMap.h" +#include "FWCore/Utilities/interface/typelookup.h" + +TYPELOOKUP_DATA_REG(EcalEBPhase2TPGTimeWeightIdMap); diff --git a/CondFormats/EcalObjects/src/classes.h b/CondFormats/EcalObjects/src/classes.h index cf9e4896a0f2b..ed447d09237a9 100644 --- a/CondFormats/EcalObjects/src/classes.h +++ b/CondFormats/EcalObjects/src/classes.h @@ -73,3 +73,7 @@ //ECAL PH2: #include "CondFormats/EcalObjects/interface/EcalLiteDTUPedestals.h" #include "CondFormats/EcalObjects/interface/EcalCATIAGainRatios.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeightIdMap.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeightIdMap.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGLinearizationConst.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGPedestals.h" diff --git a/CondFormats/EcalObjects/src/classes_def.xml b/CondFormats/EcalObjects/src/classes_def.xml index a6895cbdf9f58..76e5ece0cb2fe 100644 --- a/CondFormats/EcalObjects/src/classes_def.xml +++ b/CondFormats/EcalObjects/src/classes_def.xml @@ -112,6 +112,18 @@ + + + + + + + + + + + + @@ -123,6 +135,19 @@ + + + + + + + + + + + + + @@ -224,6 +249,12 @@ + + + + + + diff --git a/Configuration/Eras/python/Modifier_phase2_ecalTP_devel_cff.py b/Configuration/Eras/python/Modifier_phase2_ecalTP_devel_cff.py new file mode 100644 index 0000000000000..cd60a1aa06ca6 --- /dev/null +++ b/Configuration/Eras/python/Modifier_phase2_ecalTP_devel_cff.py @@ -0,0 +1,4 @@ +import FWCore.ParameterSet.Config as cms + +phase2_ecalTP_devel = cms.Modifier() + diff --git a/Configuration/StandardSequences/python/Eras.py b/Configuration/StandardSequences/python/Eras.py index de49f65893322..76c788dcf3e7d 100644 --- a/Configuration/StandardSequences/python/Eras.py +++ b/Configuration/StandardSequences/python/Eras.py @@ -70,7 +70,7 @@ def __init__(self): 'phase2_common', 'phase2_tracker', 'phase2_muon', 'phase2_GEM', 'phase2_GE0', 'phase2_hgcal', 'phase2_timing', 'phase2_hfnose', 'phase2_hgcalV10', 'phase2_hgcalV11', 'phase2_hgcalV12', - 'phase2_timing_layer', 'phase2_etlV4', 'phase2_hcal', 'phase2_ecal','phase2_ecal_devel', + 'phase2_timing_layer', 'phase2_etlV4', 'phase2_hcal', 'phase2_ecal','phase2_ecal_devel', 'phase2_ecalTP_devel', 'phase2_trigger', 'phase2_squarePixels', 'phase2_3DPixels', 'trackingLowPU', 'trackingPhase1', diff --git a/DataFormats/EcalDigi/interface/EBDataFrame_Ph2.h b/DataFormats/EcalDigi/interface/EBDataFrame_Ph2.h new file mode 100644 index 0000000000000..aaaf3f8f8ef1b --- /dev/null +++ b/DataFormats/EcalDigi/interface/EBDataFrame_Ph2.h @@ -0,0 +1,28 @@ +#ifndef DataFormats_EcalDigi_EBDataFrame_Ph2_h +#define DataFormats_EcalDigi_EBDataFrame_Ph2_h + +#include "DataFormats/EcalDetId/interface/EBDetId.h" +#include "DataFormats/EcalDigi/interface/EcalDataFrame_Ph2.h" +#include + +/** \class EBDataFrame + +*/ +class EBDataFrame_Ph2 : public EcalDataFrame_Ph2 { +public: + typedef EBDetId key_type; + typedef EcalDataFrame_Ph2 Base; + + EBDataFrame_Ph2() {} + + EBDataFrame_Ph2(edm::DataFrame const& base) : Base(base) {} + EBDataFrame_Ph2(EcalDataFrame_Ph2 const& base) : Base(base) {} + + ~EBDataFrame_Ph2() override {} + + key_type id() const { return Base::id(); } +}; + +std::ostream& operator<<(std::ostream&, const EBDataFrame_Ph2&); + +#endif diff --git a/DataFormats/EcalDigi/interface/EcalDigiCollections.h b/DataFormats/EcalDigi/interface/EcalDigiCollections.h index f9a79f9830972..6e4a04066a1f3 100644 --- a/DataFormats/EcalDigi/interface/EcalDigiCollections.h +++ b/DataFormats/EcalDigi/interface/EcalDigiCollections.h @@ -2,12 +2,14 @@ #define DIGIECAL_ECALDIGICOLLECTION_H #include "DataFormats/EcalDigi/interface/EBDataFrame.h" +#include "DataFormats/EcalDigi/interface/EBDataFrame_Ph2.h" #include "DataFormats/EcalDigi/interface/EcalDataFrame_Ph2.h" #include "DataFormats/EcalDigi/interface/EEDataFrame.h" #include "DataFormats/EcalDigi/interface/ESDataFrame.h" #include "DataFormats/EcalDigi/interface/EcalTimeDigi.h" #include "DataFormats/EcalDigi/interface/EcalTriggerPrimitiveDigi.h" #include "DataFormats/EcalDigi/interface/EcalEBTriggerPrimitiveDigi.h" +#include "DataFormats/EcalDigi/interface/EcalEBPhase2TriggerPrimitiveDigi.h" #include "DataFormats/EcalDigi/interface/EcalTrigPrimCompactColl.h" #include "DataFormats/EcalDigi/interface/EcalPseudoStripInputDigi.h" #include "DataFormats/EcalDigi/interface/EBSrFlag.h" @@ -120,6 +122,7 @@ inline void swap(EBDigiCollectionPh2& lhs, EBDigiCollectionPh2& rhs) { lhs.swap( typedef edm::SortedCollection EcalTimeDigiCollection; typedef edm::SortedCollection EcalTrigPrimDigiCollection; typedef edm::SortedCollection EcalEBTrigPrimDigiCollection; +typedef edm::SortedCollection EcalEBPhase2TrigPrimDigiCollection; typedef edm::SortedCollection EcalPSInputDigiCollection; typedef edm::SortedCollection EBSrFlagCollection; diff --git a/DataFormats/EcalDigi/interface/EcalEBPhase2TriggerPrimitiveDigi.h b/DataFormats/EcalDigi/interface/EcalEBPhase2TriggerPrimitiveDigi.h new file mode 100644 index 0000000000000..82293612f16d7 --- /dev/null +++ b/DataFormats/EcalDigi/interface/EcalEBPhase2TriggerPrimitiveDigi.h @@ -0,0 +1,63 @@ +#ifndef DataFormats_EcalDigi_EcalEBPhase2TriggerPrimitiveDigi_h +#define DataFormats_EcalDigi_EcalEBPhase2TriggerPrimitiveDigi_h + +#include +#include +#include "DataFormats/EcalDetId/interface/EBDetId.h" +#include "DataFormats/EcalDigi/interface/EcalEBPhase2TriggerPrimitiveSample.h" + +/** \class EcalEBPhase2TriggerPrimitiveDigi +\author N. Marinelli - Univ. of Notre Dame + + +*/ + +class EcalEBPhase2TriggerPrimitiveDigi { +public: + typedef EBDetId key_type; ///< For the sorted collection + + EcalEBPhase2TriggerPrimitiveDigi(); // for persistence + EcalEBPhase2TriggerPrimitiveDigi(const EBDetId& id); + + void swap(EcalEBPhase2TriggerPrimitiveDigi& rh) { + std::swap(id_, rh.id_); + std::swap(size_, rh.size_); + std::swap(data_, rh.data_); + } + + const EBDetId& id() const { return id_; } + int size() const { return size_; } + + const EcalEBPhase2TriggerPrimitiveSample& operator[](int i) const { return data_[i]; } + const EcalEBPhase2TriggerPrimitiveSample& sample(int i) const { return data_[i]; } + + void setSize(int size); + void setSample(int i, const EcalEBPhase2TriggerPrimitiveSample& sam); + void setSampleValue(int i, uint16_t value) { data_[i].setValue(value); } + + /// get the 12 bits Et of interesting sample + int encodedEt() const; + + /// Spike flag + bool l1aSpike() const; + + /// Time info + int time() const; + + /// True if debug mode (# of samples > 1) + bool isDebug() const; + + /// Gets the interesting sample + int sampleOfInterest() const; + +private: + EBDetId id_; + int size_; + std::vector data_; +}; + +inline void swap(EcalEBPhase2TriggerPrimitiveDigi& lh, EcalEBPhase2TriggerPrimitiveDigi& rh) { lh.swap(rh); } + +std::ostream& operator<<(std::ostream& s, const EcalEBPhase2TriggerPrimitiveDigi& digi); + +#endif diff --git a/DataFormats/EcalDigi/interface/EcalEBPhase2TriggerPrimitiveSample.h b/DataFormats/EcalDigi/interface/EcalEBPhase2TriggerPrimitiveSample.h new file mode 100644 index 0000000000000..3cc7806b1b275 --- /dev/null +++ b/DataFormats/EcalDigi/interface/EcalEBPhase2TriggerPrimitiveSample.h @@ -0,0 +1,49 @@ +#ifndef DataFormats_EcalDig_EcalEBPhase2TriggerPrimitiveSample_h +#define DataFormats_EcalDig_EcalEBPhase2TriggerPrimitiveSample_h + +#include +#include + +/** \class EcalEBPhase2TriggerPrimitiveSample +\author N. Marinelli - Univ of Notre Dame + +*/ + +class EcalEBPhase2TriggerPrimitiveSample { +public: + EcalEBPhase2TriggerPrimitiveSample(); + EcalEBPhase2TriggerPrimitiveSample(uint32_t data); + EcalEBPhase2TriggerPrimitiveSample(int encodedEt); + EcalEBPhase2TriggerPrimitiveSample(int encodedEt, bool isASpike); + EcalEBPhase2TriggerPrimitiveSample(int encodedEt, bool isASpike, int timing); + + ///Set data + void setValue(uint32_t data) { theSample_ = data; } + // The sample is a 18 bit word defined as: + // + // o o o o o o o o o o o o o o o o o o + // |________| |_______________________| + // ~60ps res spike Et + // time info flag + // + + /// get the raw word + uint32_t raw() const { return theSample_ & 0x3ffff; } + + /// get the encoded Et (12 bits) + int encodedEt() const { return (theSample_ & 0x3ffff) & 0xFFF; } + + bool l1aSpike() const { return (theSample_ & 0x3ffff & 0x1000) != 0; } + + int time() const { return (theSample_ & 0x3ffff) >> 13; } + + /// for streaming + uint32_t operator()() { return theSample_ & 0x3ffff; } + +private: + uint32_t theSample_; +}; + +std::ostream& operator<<(std::ostream& s, const EcalEBPhase2TriggerPrimitiveSample& samp); + +#endif diff --git a/DataFormats/EcalDigi/interface/EcalEBTriggerPrimitiveSample.h b/DataFormats/EcalDigi/interface/EcalEBTriggerPrimitiveSample.h index 105eac61088db..271f76c329d9d 100644 --- a/DataFormats/EcalDigi/interface/EcalEBTriggerPrimitiveSample.h +++ b/DataFormats/EcalDigi/interface/EcalEBTriggerPrimitiveSample.h @@ -21,8 +21,8 @@ class EcalEBTriggerPrimitiveSample { void setValue(uint16_t data) { theSample = data; } // The sample is a 16 bit word defined as: // - // o o o o o o o o o o o o o o o o - // |________| |____________________| + // o o o o o o o o o o o o o o o o + // |________| |_______________________| // ~60ps res spike Et // time info flag // @@ -31,7 +31,7 @@ class EcalEBTriggerPrimitiveSample { uint16_t raw() const { return theSample; } /// get the encoded Et (10 bits) - int encodedEt() const { return theSample & 0x3FF; } + int encodedEt() const { return theSample & 0x3ff; } bool l1aSpike() const { return (theSample & 0x400) != 0; } diff --git a/DataFormats/EcalDigi/src/EBDataFrame_Ph2.cc b/DataFormats/EcalDigi/src/EBDataFrame_Ph2.cc new file mode 100644 index 0000000000000..f48a09cf0eb88 --- /dev/null +++ b/DataFormats/EcalDigi/src/EBDataFrame_Ph2.cc @@ -0,0 +1,10 @@ +#include "DataFormats/EcalDigi/interface/EBDataFrame_Ph2.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include + +std::ostream& operator<<(std::ostream& s, const EBDataFrame_Ph2& digi) { + s << digi.id() << " " << digi.size() << " samples " << std::endl; + for (int i = 0; i < digi.size(); i++) + s << " " << digi[i] << std::endl; + return s; +} diff --git a/DataFormats/EcalDigi/src/EcalEBPhase2TriggerPrimitiveDigi.cc b/DataFormats/EcalDigi/src/EcalEBPhase2TriggerPrimitiveDigi.cc new file mode 100644 index 0000000000000..08be20ff807e3 --- /dev/null +++ b/DataFormats/EcalDigi/src/EcalEBPhase2TriggerPrimitiveDigi.cc @@ -0,0 +1,61 @@ +#include "DataFormats/EcalDigi/interface/EcalEBPhase2TriggerPrimitiveDigi.h" +#include +#include + +static constexpr int MAXSAMPLES = 20; +// This is the number of digi samples one wants to put in the TP digis. In Phase I was 5, but this setting was used. In the end in Phase I one one sample, corresponding to BC0 was filled. For Phase2 we have not decided yet. We leave this setting as it is while we decide what to do + +EcalEBPhase2TriggerPrimitiveDigi::EcalEBPhase2TriggerPrimitiveDigi() : size_(0), data_(MAXSAMPLES) {} + +EcalEBPhase2TriggerPrimitiveDigi::EcalEBPhase2TriggerPrimitiveDigi(const EBDetId& id) + : id_(id), size_(0), data_(MAXSAMPLES) {} + +void EcalEBPhase2TriggerPrimitiveDigi::setSample(int i, const EcalEBPhase2TriggerPrimitiveSample& sam) { + data_[i] = sam; +} + +int EcalEBPhase2TriggerPrimitiveDigi::sampleOfInterest() const { + // sample of interest to be save in the TP digis + if (size_ == 1) + return 0; + else if (size_ == 5) + return 2; + else + return -1; +} + +/// get the encoded/compressed Et of interesting sample +int EcalEBPhase2TriggerPrimitiveDigi::encodedEt() const { + int sample = sampleOfInterest(); + if (sample != -1) + return data_[sample].encodedEt(); + else + return -1; +} + +bool EcalEBPhase2TriggerPrimitiveDigi::l1aSpike() const { + int sample = sampleOfInterest(); + if (sample != -1) + return data_[sample].l1aSpike(); + else + return -1; +} + +int EcalEBPhase2TriggerPrimitiveDigi::time() const { + int sample = sampleOfInterest(); + if (sample != -1) + return data_[sample].time(); + else + return -1; +} + +bool EcalEBPhase2TriggerPrimitiveDigi::isDebug() const { return (size_ > 1); } + +void EcalEBPhase2TriggerPrimitiveDigi::setSize(int size) { size_ = std::clamp(size_, 0, MAXSAMPLES); } + +std::ostream& operator<<(std::ostream& s, const EcalEBPhase2TriggerPrimitiveDigi& digi) { + s << digi.id() << " " << digi.size() << " samples " << std::endl; + for (int i = 0; i < digi.size(); i++) + s << " " << digi.sample(i) << std::endl; + return s; +} diff --git a/DataFormats/EcalDigi/src/EcalEBPhase2TriggerPrimitiveSample.cc b/DataFormats/EcalDigi/src/EcalEBPhase2TriggerPrimitiveSample.cc new file mode 100644 index 0000000000000..c52762709801b --- /dev/null +++ b/DataFormats/EcalDigi/src/EcalEBPhase2TriggerPrimitiveSample.cc @@ -0,0 +1,26 @@ +#include "DataFormats/EcalDigi/interface/EcalEBPhase2TriggerPrimitiveSample.h" +#include + +EcalEBPhase2TriggerPrimitiveSample::EcalEBPhase2TriggerPrimitiveSample() : theSample_(0) {} +EcalEBPhase2TriggerPrimitiveSample::EcalEBPhase2TriggerPrimitiveSample(uint32_t data) : theSample_(data) { + theSample_ = theSample_ & 0x3ffff; +} + +EcalEBPhase2TriggerPrimitiveSample::EcalEBPhase2TriggerPrimitiveSample(int encodedEt, bool isASpike) { + theSample_ = (encodedEt & 0xFFF) | ((isASpike) ? (0x1000) : (0)); + theSample_ = theSample_ & 0x3ffff; +} + +EcalEBPhase2TriggerPrimitiveSample::EcalEBPhase2TriggerPrimitiveSample(int encodedEt, bool isASpike, int timing) { + theSample_ = (encodedEt & 0xFFF) | ((isASpike) ? (0x1000) : (0)) | timing << 13; + theSample_ = theSample_ & 0x3ffff; +} + +EcalEBPhase2TriggerPrimitiveSample::EcalEBPhase2TriggerPrimitiveSample(int encodedEt) { + theSample_ = encodedEt & 0xFFF; + theSample_ = theSample_ & 0x3ffff; +} + +std::ostream& operator<<(std::ostream& s, const EcalEBPhase2TriggerPrimitiveSample& samp) { + return s << "ET=" << samp.encodedEt() << ", isASpike=" << samp.l1aSpike() << " timing= " << samp.time(); +} diff --git a/DataFormats/EcalDigi/src/EcalEBTriggerPrimitiveSample.cc b/DataFormats/EcalDigi/src/EcalEBTriggerPrimitiveSample.cc index 2ff8b7b7f271c..d5b6b4010a91c 100644 --- a/DataFormats/EcalDigi/src/EcalEBTriggerPrimitiveSample.cc +++ b/DataFormats/EcalDigi/src/EcalEBTriggerPrimitiveSample.cc @@ -1,4 +1,5 @@ #include "DataFormats/EcalDigi/interface/EcalEBTriggerPrimitiveSample.h" +#include EcalEBTriggerPrimitiveSample::EcalEBTriggerPrimitiveSample() : theSample(0) {} EcalEBTriggerPrimitiveSample::EcalEBTriggerPrimitiveSample(uint16_t data) : theSample(data) {} diff --git a/DataFormats/EcalDigi/src/classes_def.xml b/DataFormats/EcalDigi/src/classes_def.xml index 7893cc71b2bf2..ec5091b2f078d 100644 --- a/DataFormats/EcalDigi/src/classes_def.xml +++ b/DataFormats/EcalDigi/src/classes_def.xml @@ -11,6 +11,9 @@ + + + @@ -20,12 +23,18 @@ + + + + + + @@ -69,6 +78,7 @@ + @@ -114,6 +124,8 @@ + + @@ -126,6 +138,7 @@ + diff --git a/SimCalorimetry/Configuration/python/SimCalorimetry_EventContent_cff.py b/SimCalorimetry/Configuration/python/SimCalorimetry_EventContent_cff.py index 722afe99fc13e..b5ca031128fbf 100644 --- a/SimCalorimetry/Configuration/python/SimCalorimetry_EventContent_cff.py +++ b/SimCalorimetry/Configuration/python/SimCalorimetry_EventContent_cff.py @@ -7,6 +7,7 @@ 'keep *_simEcalPreshowerDigis_*_*', 'keep *_simEcalTriggerPrimitiveDigis_*_*', 'keep *_simEcalEBTriggerPrimitiveDigis_*_*', + 'keep *_simEcalEBTriggerPrimitivePhase2Digis_*_*', 'keep *_simHcalDigis_*_*', 'keep ZDCDataFramesSorted_simHcalUnsuppressedDigis_*_*', 'drop ZDCDataFramesSorted_mix_simHcalUnsuppressedDigis*_*', diff --git a/SimCalorimetry/Configuration/python/ecalDigiSequence_cff.py b/SimCalorimetry/Configuration/python/ecalDigiSequence_cff.py index 50275b8cbbb70..f1fcf1f69598e 100644 --- a/SimCalorimetry/Configuration/python/ecalDigiSequence_cff.py +++ b/SimCalorimetry/Configuration/python/ecalDigiSequence_cff.py @@ -21,6 +21,8 @@ _phase2_ecalDigiTask = ecalDigiTask.copy() _phase2_ecalDigiTask.add(simEcalEBTriggerPrimitiveDigis) + + from Configuration.Eras.Modifier_phase2_common_cff import phase2_common phase2_common.toReplaceWith(ecalDigiTask,_phase2_ecalDigiTask) @@ -28,9 +30,19 @@ _phase2_ecalDigiTask_devel = cms.Task() phase2_ecal_devel.toReplaceWith(ecalDigiTask,_phase2_ecalDigiTask_devel) -#phase 2 ecal + +from Configuration.Eras.Modifier_phase2_ecalTP_devel_cff import phase2_ecalTP_devel +from SimCalorimetry.EcalEBTrigPrimProducers.ecalEBTriggerPrimitivePhase2Digis_cff import * +_phase2_ecalDigiTask_devel2 = cms.Task(simEcalEBTriggerPrimitivePhase2Digis) +phase2_ecalTP_devel.toReplaceWith(ecalDigiTask,_phase2_ecalDigiTask_devel2) + +#phase 2 ecal def _modifyEcalForPh2( process ): process.load("SimCalorimetry.EcalSimProducers.esEcalLiteDTUPedestalsProducer_cfi") process.load("SimCalorimetry.EcalSimProducers.esCATIAGainProducer_cfi") - modifyDigi_Phase2EcalPed = phase2_ecal_devel.makeProcessModifier(_modifyEcalForPh2) + + +def _modifyEcalTPForPh2( process ): + process.load("SimCalorimetry.EcalEBTrigPrimProducers.ecalEBTriggerPrimitivePhase2ESProducer_cff") +modifyDigi_Phase2EcalTP = phase2_ecalTP_devel.makeProcessModifier(_modifyEcalTPForPh2) diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h new file mode 100644 index 0000000000000..358b2b6f4d38a --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h @@ -0,0 +1,38 @@ +#ifndef SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2AmplitudeReconstructor_h +#define SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2AmplitudeReconstructor_h + +#include +#include + +class EcalEBPhase2TPGAmplWeightIdMap; +class EcalTPGWeightGroup; + +/** \class EcalPhase2AmplitudeReconstructor +\author L. Lutton, N. Marinelli - Univ. of Notre Dame + Description: forPhase II + It uses the new Phase2 digis based on the new EB electronics + and measures the amplitude on xTals basis +*/ + +class EcalEBPhase2AmplitudeReconstructor { +private: + bool debug_; + int inputsAlreadyIn_; + int buffer_[12]; + int weights_[12]; + int shift_; + int setInput(int input); + void process(); + int processedOutput_; + static const int maxSamplesUsed_; + +public: + EcalEBPhase2AmplitudeReconstructor(bool debug); + virtual ~EcalEBPhase2AmplitudeReconstructor(); + virtual void process(std::vector &addout, std::vector &output); + void setParameters(uint32_t raw, + const EcalEBPhase2TPGAmplWeightIdMap *ecaltpgWeightMap, + const EcalTPGWeightGroup *ecaltpgWeightGroup); +}; + +#endif diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2Linearizer.h b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2Linearizer.h new file mode 100644 index 0000000000000..6b86db0dcfb5b --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2Linearizer.h @@ -0,0 +1,58 @@ +#ifndef SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2Linearizer_h +#define SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2Linearizer_h + +#include "DataFormats/EcalDigi/interface/EcalLiteDTUSample.h" +#include "DataFormats/EcalDigi/interface/EcalDigiCollections.h" +#include "CondFormats/EcalObjects/interface/EcalLiteDTUPedestals.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGLinearizationConst.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGPedestals.h" + +#include "CondFormats/EcalObjects/interface/EcalTPGCrystalStatus.h" + +#include + +/** \class EcalEBPhase2Linearizer +\author L. Lutton, N. Marinelli - Univ. of Notre Dame + Description: forPhase II + Performs the linearization of signal from Catia+LiteDTU +*/ + +class EcalEBPhase2Linearizer { +private: + bool debug_; + int uncorrectedSample_; + int gainID_; + uint base_; + uint mult_; + uint shift_; + int strip_; + bool init_; + float gainDivideByTen_ = 0.1; + std::vector coeffs_; + uint coeff_; + //I2C Stuff. Would eventually get from outside linearizer (e.g., database) + //Would also be different for each crystal + uint I2CSub_; + + const EcalLiteDTUPedestals *peds_; + const EcalEBPhase2TPGLinearizationConstant *linConsts_; + const EcalTPGCrystalStatusCode *badXStatus_; + + std::vector vectorbadXStatus_; + + int setInput(const EcalLiteDTUSample &RawSam); + + int doOutput(); + +public: + EcalEBPhase2Linearizer(bool debug); + virtual ~EcalEBPhase2Linearizer(); + + void process(const EBDigiCollectionPh2::Digi &df, std::vector &output_percry); + void setParameters(EBDetId id, + const EcalLiteDTUPedestalsMap *peds, + const EcalEBPhase2TPGLinearizationConstMap *ecaltplin, + const EcalTPGCrystalStatus *ecaltpBadX); +}; + +#endif diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2SpikeTagger.h b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2SpikeTagger.h new file mode 100644 index 0000000000000..1df64a51eee46 --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2SpikeTagger.h @@ -0,0 +1,36 @@ +#ifndef SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2SpikeTagger_h +#define SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2SpikeTagger_h + +#include "DataFormats/EcalDigi/interface/EcalLiteDTUSample.h" +#include "DataFormats/EcalDigi/interface/EcalDigiCollections.h" +#include "CondFormats/EcalObjects/interface/EcalLiteDTUPedestals.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGLinearizationConst.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGPedestals.h" + +#include "CondFormats/EcalObjects/interface/EcalTPGCrystalStatus.h" + +#include + +/** \class EcalEBPhase2SpikeTagger + Tags spikes on a channel basis +*/ + +class EcalEBPhase2SpikeTagger { +private: + bool debug_; + const EcalLiteDTUPedestals *peds_; + const EcalEBPhase2TPGLinearizationConstant *linConsts_; + const EcalTPGCrystalStatusCode *badXStatus_; + +public: + EcalEBPhase2SpikeTagger(bool debug); + virtual ~EcalEBPhase2SpikeTagger(); + + bool process(const std::vector &linInput); + void setParameters(EBDetId id, + const EcalLiteDTUPedestalsMap *peds, + const EcalEBPhase2TPGLinearizationConstMap *ecaltplin, + const EcalTPGCrystalStatus *ecaltpBadX); +}; + +#endif diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TPFormatter.h b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TPFormatter.h new file mode 100644 index 0000000000000..9a73aa394f491 --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TPFormatter.h @@ -0,0 +1,28 @@ +#ifndef SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2TPFormatter_h +#define SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2TPFormatter_h + +#include "DataFormats/EcalDigi/interface/EcalEBTriggerPrimitiveSample.h" + +#include +#include + +/* + \class EcalEBPhase2TPFormatter + +*/ + +class EcalEBPhase2TPFormatter { +private: + bool debug_; + std::vector inputAmp_; + std::vector inputTime_; + +public: + EcalEBPhase2TPFormatter(bool debug); + virtual ~EcalEBPhase2TPFormatter(); + virtual void process(std::vector& ampl, + std::vector& time, + std::vector& outampl, + std::vector& outtime); +}; +#endif diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TimeReconstructor.h b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TimeReconstructor.h new file mode 100644 index 0000000000000..ba19ef0bf1080 --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TimeReconstructor.h @@ -0,0 +1,115 @@ +#ifndef SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2TimeReconstructor_h +#define SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2TimeReconstructor_h + +#include +#include + +class EcalEBPhase2TPGTimeWeightIdMap; +class EcalTPGWeightGroup; + +/** \class EcalEBPhase2TimeReconstructor +\author L. Lutton, N. Marinelli - Univ. of Notre Dame + Description: forPhase II + Measures the timing of a xTal signal +*/ + +class EcalEBPhase2TimeReconstructor { +private: + bool debug_; + int inputsAlreadyIn_; + int buffer_[12]; + int weights_[12]; + uint64_t ampIn_[12]; + int shift_; + bool extraShift_[2] = {false, false}; + int setInput(int input); + void process(); + static const int maxSamplesUsed_; + int processedOutput_; + + // The array invAmpPar is pre-calulated, at least for now since it has shown to be stable. We might decide at a later stage + // to make the calculation dynamic in CMSSW. + // Here some explnation of what this LUT is. + + //The sum of the digis multiplied by the time weight coefficients gives dT*A, where A is the amplitude. + //So to get dT the amplitude, calculated in EcalEBPhase2AmplitudeReconstructor, must be divided off of the result here. + //However, when this is implemented into the BCP hardware (of which we are emulating the behaviour), + //division is not a trivial operation, often requiring relatively large + //amounts of time and resources to complete. + //To optimize this operation, we instead use an approximation of that division via a lookup table (LUT). + //Think about the division as a multiplication of 1/A, then the LUT is filled with all the possible values of 1/A, + //precalculated, in the range that A takes and A itself is used to index the LUT. + //The element received is then multiplied by the dT*A result in order to get a measurement of the timing. + + //Another limitation of hardware is that we do not use floating point numbers. + //So, instead, each element of the LUT is bit shifted to the left by some amount sufficient to make every element + //of the LUT large enough such that converting it to an integer doesn't lead to a loss in performance + //(this bit shift is undone after the multiplication by a corresponding bit shift to the right). + //Another method of approximation used here is that not every element in A's range is included in the LUT. + //Instead, every 8th element is used, since the difference between, e.g., dividing by 1000 and 1008 is generally + //small whereas it can be a significant save in time and resources in hardware to use a smaller LUT. + //Note that this requires the indexing amplitude to be bit shifted by 3 to the right to compensate for the smaller size of the LUT. + //Finally, dT will be in units of ns, but to convert it to ps each element of the LUT is multiplied by 1000. + + //The pre-calculation of the LUT is given by: + //invAmpAr_ = [1000*invMult] #Since 1/0 is undefined, the array starts with 1/1. The rest of the elements will be filled in the following loop: + //for i in range(8,4096,8): #loop is set to do every 8th number, so 1/8, 1/16, 1/24, etc. 4096 is the expected range of A + //invAmpAr_.append(round((ns_to_ps_conv/i)*invMult)) + //Where ns_to_ps_conv = 1000 #this is to convert the resulting dT from units of ns to units of ps + //invMult = 2**18 #Acts as a shift by 18 bits that is done to the fractions to make them integers instead of floats. + + uint64_t invAmpAr_[512] = { + 262144000, 32768000, 16384000, 10922667, 8192000, 6553600, 5461333, 4681143, 4096000, 3640889, 3276800, 2978909, + 2730667, 2520615, 2340571, 2184533, 2048000, 1927529, 1820444, 1724632, 1638400, 1560381, 1489455, 1424696, + 1365333, 1310720, 1260308, 1213630, 1170286, 1129931, 1092267, 1057032, 1024000, 992970, 963765, 936229, + 910222, 885622, 862316, 840205, 819200, 799220, 780190, 762047, 744727, 728178, 712348, 697191, + 682667, 668735, 655360, 642510, 630154, 618264, 606815, 595782, 585143, 574877, 564966, 555390, + 546133, 537180, 528516, 520127, 512000, 504123, 496485, 489075, 481882, 474899, 468114, 461521, + 455111, 448877, 442811, 436907, 431158, 425558, 420103, 414785, 409600, 404543, 399610, 394795, + 390095, 385506, 381023, 376644, 372364, 368180, 364089, 360088, 356174, 352344, 348596, 344926, + 341333, 337814, 334367, 330990, 327680, 324436, 321255, 318136, 315077, 312076, 309132, 306243, + 303407, 300624, 297891, 295207, 292571, 289982, 287439, 284939, 282483, 280068, 277695, 275361, + 273067, 270810, 268590, 266407, 264258, 262144, 260063, 258016, 256000, 254016, 252062, 250137, + 248242, 246376, 244537, 242726, 240941, 239182, 237449, 235741, 234057, 232397, 230761, 229147, + 227556, 225986, 224438, 222912, 221405, 219919, 218453, 217007, 215579, 214170, 212779, 211406, + 210051, 208713, 207392, 206088, 204800, 203528, 202272, 201031, 199805, 198594, 197398, 196216, + 195048, 193893, 192753, 191626, 190512, 189410, 188322, 187246, 186182, 185130, 184090, 183061, + 182044, 181039, 180044, 179060, 178087, 177124, 176172, 175230, 174298, 173376, 172463, 171560, + 170667, 169782, 168907, 168041, 167184, 166335, 165495, 164663, 163840, 163025, 162218, 161419, + 160627, 159844, 159068, 158300, 157538, 156785, 156038, 155299, 154566, 153840, 153121, 152409, + 151704, 151005, 150312, 149626, 148945, 148271, 147604, 146942, 146286, 145636, 144991, 144352, + 143719, 143092, 142470, 141853, 141241, 140635, 140034, 139438, 138847, 138262, 137681, 137105, + 136533, 135967, 135405, 134848, 134295, 133747, 133203, 132664, 132129, 131598, 131072, 130550, + 130032, 129518, 129008, 128502, 128000, 127502, 127008, 126517, 126031, 125548, 125069, 124593, + 124121, 123653, 123188, 122727, 122269, 121814, 121363, 120915, 120471, 120029, 119591, 119156, + 118725, 118296, 117871, 117448, 117029, 116612, 116199, 115788, 115380, 114975, 114573, 114174, + 113778, 113384, 112993, 112605, 112219, 111836, 111456, 111078, 110703, 110330, 109960, 109592, + 109227, 108864, 108503, 108145, 107789, 107436, 107085, 106736, 106390, 106045, 105703, 105363, + 105026, 104690, 104357, 104025, 103696, 103369, 103044, 102721, 102400, 102081, 101764, 101449, + 101136, 100825, 100515, 100208, 99902, 99599, 99297, 98997, 98699, 98402, 98108, 97815, + 97524, 97234, 96947, 96661, 96376, 96094, 95813, 95534, 95256, 94980, 94705, 94432, + 94161, 93891, 93623, 93356, 93091, 92827, 92565, 92304, 92045, 91787, 91531, 91276, + 91022, 90770, 90519, 90270, 90022, 89775, 89530, 89286, 89043, 88802, 88562, 88323, + 88086, 87850, 87615, 87381, 87149, 86918, 86688, 86459, 86232, 86005, 85780, 85556, + 85333, 85112, 84891, 84672, 84454, 84237, 84021, 83806, 83592, 83379, 83168, 82957, + 82747, 82539, 82332, 82125, 81920, 81716, 81512, 81310, 81109, 80909, 80709, 80511, + 80314, 80117, 79922, 79727, 79534, 79341, 79150, 78959, 78769, 78580, 78392, 78205, + 78019, 77834, 77649, 77466, 77283, 77101, 76920, 76740, 76561, 76382, 76205, 76028, + 75852, 75677, 75502, 75329, 75156, 74984, 74813, 74642, 74473, 74304, 74136, 73968, + 73802, 73636, 73471, 73306, 73143, 72980, 72818, 72656, 72496, 72336, 72176, 72018, + 71860, 71702, 71546, 71390, 71235, 71080, 70926, 70773, 70621, 70469, 70318, 70167, + 70017, 69868, 69719, 69571, 69424, 69277, 69131, 68985, 68840, 68696, 68552, 68409, + 68267, 68125, 67983, 67843, 67702, 67563, 67424, 67285, 67148, 67010, 66873, 66737, + 66602, 66467, 66332, 66198, 66065, 65932, 65799, 65667, 65536, 65405, 65275, 65145, + 65016, 64887, 64759, 64631, 64504, 64377, 64251, 64125}; + +public: + EcalEBPhase2TimeReconstructor(bool debug); + virtual ~EcalEBPhase2TimeReconstructor(); + virtual void process(std::vector &addout, std::vector &RecoOutput, std::vector &output); + void setParameters(uint32_t raw, + const EcalEBPhase2TPGTimeWeightIdMap *ecaltpgTimeWeightMap, + const EcalTPGWeightGroup *ecaltpgWeightGroup); +}; + +#endif diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TrigPrimAlgo.h b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TrigPrimAlgo.h new file mode 100644 index 0000000000000..a0dad15d02e26 --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TrigPrimAlgo.h @@ -0,0 +1,217 @@ +#ifndef SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2TrigPrimAlgo_h +#define SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2TrigPrimAlgo_h +/** \class EcalEBPhase2TrigPrimAlgo +\author L. Lutton, N. Marinelli - Univ. of Notre Dame + Description: forPhase II + It uses the new Phase2 digis based onthe new EB electronics + This is the main algo which plugs in all the subcomponents for the + amplitude and time measurement and the spike flagging +*/ + +#include +#include +#include + +#include "Geometry/EcalMapping/interface/EcalElectronicsMapping.h" +#include "Geometry/CaloTopology/interface/EcalTrigTowerConstituentsMap.h" +#include "DataFormats/EcalDetId/interface/EcalTriggerElectronicsId.h" +#include "DataFormats/Common/interface/SortedCollection.h" +#include "DataFormats/EcalDigi/interface/EcalDigiCollections.h" + +#include "FWCore/Framework/interface/EventSetup.h" +#include "FWCore/Framework/interface/ESHandle.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "Geometry/CaloGeometry/interface/CaloGeometry.h" +#include "Geometry/Records/interface/CaloGeometryRecord.h" +#include "Geometry/CaloGeometry/interface/CaloSubdetectorGeometry.h" +#include "Geometry/CaloGeometry/interface/CaloCellGeometry.h" +#include "DataFormats/EcalDigi/interface/EcalDataFrame_Ph2.h" +#include "CondFormats/EcalObjects/interface/EcalLiteDTUPedestals.h" + +#include "SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2Linearizer.h" +#include "SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h" +#include "SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TimeReconstructor.h" +#include "SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2SpikeTagger.h" +#include "SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TPFormatter.h" + +#include +#include + +class EcalTrigTowerDetId; +class ETPCoherenceTest; +class EcalEBPhase2TriggerPrimitiveSample; +class CaloSubdetectorGeometry; +class EBDataFrame_Ph2; + +class EcalEBPhase2TrigPrimAlgo { +public: + explicit EcalEBPhase2TrigPrimAlgo(const EcalTrigTowerConstituentsMap *eTTmap, + const CaloGeometry *theGeometry, + int binofmax, + bool debug); + + virtual ~EcalEBPhase2TrigPrimAlgo(); + + void run(const EBDigiCollectionPh2 *col, EcalEBPhase2TrigPrimDigiCollection &result); + + void setPointers(const EcalLiteDTUPedestalsMap *ecaltpPed, + const EcalEBPhase2TPGLinearizationConstMap *ecaltpLin, + const EcalTPGCrystalStatus *ecaltpgBadX, + const EcalEBPhase2TPGAmplWeightIdMap *ecaltpgAmplWeightMap, + const EcalEBPhase2TPGTimeWeightIdMap *ecaltpgTimeWeightMap, + const EcalTPGWeightGroup *ecaltpgWeightGroup) { + ecaltpPed_ = ecaltpPed; + ecaltpgBadX_ = ecaltpgBadX; + ecaltpLin_ = ecaltpLin; + ecaltpgAmplWeightMap_ = ecaltpgAmplWeightMap; + ecaltpgTimeWeightMap_ = ecaltpgTimeWeightMap; + ecaltpgWeightGroup_ = ecaltpgWeightGroup; + } + +private: + //old void init(const edm::EventSetup & setup); + void init(); + template + void initStructures(std::vector > > > &towMap); + template + void clean(std::vector > > > &towerMap); + + void fillMap(EBDigiCollectionPh2 const *col, + std::vector > > > &towerMap); + + int findStripNr(const EBDetId &id); + + int getIndex(const EBDigiCollectionPh2 *, EcalTrigTowerDetId &id) { return id.hashedIndex(); } + // mind that eta is continuous between barrel+endcap + // int getIndex(const EEDigiCollectionPh2 *, EcalTrigTowerDetId& id) { + // int ind=(id.ietaAbs()-18)*72 + id.iphi(); + // if (id.zside()<0) ind+=792; + // return ind; + // } + + const EcalTrigTowerConstituentsMap *eTTmap_ = nullptr; + const CaloGeometry *theGeometry_ = nullptr; + + int binOfMaximum_; + int maxNrSamples_; + bool debug_; + + int nrTowers_; // nr of towers found by fillmap method + static const unsigned int maxNrTowers_; + static const unsigned int nrSamples_; + + // data structures kept during the whole run + std::vector > striptp_; + std::vector > > > towerMapEB_; + std::vector > hitTowers_; + std::vector towtp_; + std::vector towtp2_; + + enum { nbMaxStrips_ = 5 }; + enum { nbMaxXtals_ = 5 }; + + const EcalElectronicsMapping *theMapping_; + + EcalEBPhase2Linearizer *linearizer_; + + EcalEBPhase2AmplitudeReconstructor *amplitude_reconstructor_; + EcalEBPhase2TimeReconstructor *time_reconstructor_; + EcalEBPhase2SpikeTagger *spike_tagger_; + EcalEBPhase2TPFormatter *tpFormatter_; + + // + + const EcalLiteDTUPedestalsMap *ecaltpPed_; + const EcalTPGCrystalStatus *ecaltpgBadX_; + + const EcalTPGWeightGroup *ecaltpgWeightGroup_; + const EcalEBPhase2TPGLinearizationConstMap *ecaltpLin_; + const EcalEBPhase2TPGAmplWeightIdMap *ecaltpgAmplWeightMap_; + const EcalEBPhase2TPGTimeWeightIdMap *ecaltpgTimeWeightMap_; + + EcalEBPhase2Linearizer *getLinearizer() const { return linearizer_; } + std::vector lin_out_; + // + EcalEBPhase2AmplitudeReconstructor *getAmplitudeFinder() const { return amplitude_reconstructor_; } + std::vector filt_out_; + std::vector time_out_; + std::vector amp_out_; + std::vector outEt_; + std::vector outTime_; + + EcalEBPhase2TimeReconstructor *getTimeFinder() const { return time_reconstructor_; } + EcalEBPhase2SpikeTagger *getSpikeTagger() const { return spike_tagger_; } + EcalEBPhase2TPFormatter *getTPFormatter() const { return tpFormatter_; } + + // +}; + +template +void EcalEBPhase2TrigPrimAlgo::clean(std::vector > > > &towMap) { + // clean internal data structures + for (unsigned int i = 0; i < maxNrTowers_; ++i) + for (int j = 0; j < nbMaxStrips_; ++j) + (towMap[i])[j].first = 0; + return; +} + +inline void EcalEBPhase2TrigPrimAlgo::fillMap( + EBDigiCollectionPh2 const *col, std::vector > > > &towerMap) + +{ + // implementation for Barrel + if (col) { + nrTowers_ = 0; + for (unsigned int i = 0; i < col->size(); ++i) { + EBDigiCollectionPh2::Digi samples((*col)[i]); + EcalTrigTowerDetId coarser = (*eTTmap_).towerOf(samples.id()); + int index = getIndex(col, coarser); + EBDetId id = samples.id(); + int stripnr = findStripNr(id); + + int filled = 0; + for (unsigned int ij = 0; ij < towerMap[index].size(); ++ij) + filled += towerMap[index][ij].first; + if (!filled) { + hitTowers_[nrTowers_++] = std::pair(index, coarser); + } + + //FIXME: temporary protection + int ncryst = towerMap[index][stripnr - 1].first; + if (ncryst >= nbMaxXtals_) { + continue; + } + ((towerMap[index])[stripnr - 1].second)[ncryst] = samples; + (towerMap[index])[stripnr - 1].first++; + } + + if (debug_) + LogDebug("") << "fillMap" + << "[EcalEBPhase2TrigPrimAlgo] (found " << col->size() << " frames in " << towerMap.size() + << " towers) " << std::endl; + } else { + if (debug_) + LogDebug("EcalEBPhase2TrigPrimAlgo") << "FillMap - FillMap Collection size=0 !!!!" << std::endl; + ; + } +} + +template +void EcalEBPhase2TrigPrimAlgo::initStructures(std::vector > > > &towMap) { + //initialise internal data structures + + std::vector vec0(nbMaxXtals_); + std::vector > > vec1(nbMaxStrips_); + for (int i = 0; i < nbMaxStrips_; ++i) + vec1[i] = std::pair >(0, vec0); + towMap.resize(maxNrTowers_); + for (unsigned int i = 0; i < maxNrTowers_; ++i) + towMap[i] = vec1; + + std::vector vecint(maxNrSamples_); + striptp_.resize(nbMaxStrips_); + for (int i = 0; i < nbMaxStrips_; ++i) + striptp_[i] = vecint; +} + +#endif diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2AmplitudeReconstructor.cc b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2AmplitudeReconstructor.cc new file mode 100644 index 0000000000000..83cf357c5910b --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2AmplitudeReconstructor.cc @@ -0,0 +1,142 @@ +#include +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeightIdMap.h" +#include "CondFormats/EcalObjects/interface/EcalTPGWeightGroup.h" +#include "DataFormats/EcalDigi/interface/EcalConstants.h" +#include "CondFormats/EcalObjects/interface/EcalTPGGroups.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" + +#include + +const int EcalEBPhase2AmplitudeReconstructor::maxSamplesUsed_ = 12; + +EcalEBPhase2AmplitudeReconstructor::EcalEBPhase2AmplitudeReconstructor(bool debug) + : debug_(debug), inputsAlreadyIn_(0), shift_(13) {} + +EcalEBPhase2AmplitudeReconstructor::~EcalEBPhase2AmplitudeReconstructor() {} + +int EcalEBPhase2AmplitudeReconstructor::setInput(int input) { + if (input > 0X3FFF) { + edm::LogError("EcalEBPhase2AmplitudeReconstructor") << "ERROR IN INPUT OF AMPLITUDE FILTER" << std::endl; + return -1; + } + + if (inputsAlreadyIn_ < maxSamplesUsed_) { + if (debug_) + LogDebug("") << " EcalEBPhase2AmplitudeReconstructor::setInput inputsAlreadyIn_<5 input " << input << std::endl; + + buffer_[inputsAlreadyIn_] = input; + inputsAlreadyIn_++; + } else { + for (int i = 0; i < (maxSamplesUsed_ - 1); i++) { + buffer_[i] = buffer_[i + 1]; + if (debug_) + LogDebug("") << " EcalEBPhase2AmplitudeReconstructor::setInput inputsAlreadyIn buffer " << buffer_[i] + << std::endl; + } + buffer_[maxSamplesUsed_ - 1] = input; + } + return 1; +} + +void EcalEBPhase2AmplitudeReconstructor::process(std::vector &linout, std::vector &output) { + inputsAlreadyIn_ = 0; + for (unsigned int i = 0; i < maxSamplesUsed_; i++) { + buffer_[i] = 0; + } + + for (unsigned int i = 0; i < linout.size(); i++) { + setInput(linout[i]); + if (debug_) { + for (unsigned int j = 0; j < maxSamplesUsed_; j++) { + LogDebug("") << " buffer_ " << buffer_[j]; + } + LogDebug("") << " " << std::endl; + } + + if (i == (maxSamplesUsed_ - 1)) { + process(); + output[0] = processedOutput_; + } else if (i == (ecalPh2::sampleSize - 1)) { + process(); + output[1] = processedOutput_; + } + } + return; +} + +void EcalEBPhase2AmplitudeReconstructor::process() { + processedOutput_ = 0; + if (inputsAlreadyIn_ < maxSamplesUsed_) + return; + int64_t tmpIntOutput = 0; + for (int i = 0; i < maxSamplesUsed_; i++) { + tmpIntOutput += (weights_[i] * buffer_[i]); + if (debug_) + LogDebug("") << " AmplitudeFilter buffer " << buffer_[i] << " weight " << weights_[i] << std::endl; + } + if (tmpIntOutput < 0) + tmpIntOutput = 0; + tmpIntOutput = tmpIntOutput >> shift_; + if (debug_) + LogDebug("") << " AmplitudeFilter tmpIntOutput " << tmpIntOutput << " shift_ " << shift_ << std::endl; + if (tmpIntOutput > 0X1FFF) + tmpIntOutput = 0X1FFF; + uint output = tmpIntOutput; // should be 13 bit uint at this point + processedOutput_ = output; + if (debug_) + LogDebug("") << " AmplitudeFilter processedOutput_ " << processedOutput_ << std::endl; +} + +void EcalEBPhase2AmplitudeReconstructor::setParameters(uint32_t raw, + const EcalEBPhase2TPGAmplWeightIdMap *ecaltpgWeightMap, + const EcalTPGWeightGroup *ecaltpgWeightGroup) { + uint32_t params_[maxSamplesUsed_]; + const EcalTPGGroups::EcalTPGGroupsMap &groupmap = ecaltpgWeightGroup->getMap(); + if (debug_) + LogDebug("") << " EcalEBPhase2AmplitudeReconstructor::setParameters groupmap size " << groupmap.size() + << " channel ID " << raw << std::endl; + EcalTPGGroups::EcalTPGGroupsMapItr it = groupmap.find(raw); + if (it != groupmap.end()) { + uint32_t weightid = (*it).second; + + const EcalEBPhase2TPGAmplWeightIdMap::EcalEBPhase2TPGAmplWeightMap &weightmap = ecaltpgWeightMap->getMap(); + EcalEBPhase2TPGAmplWeightIdMap::EcalEBPhase2TPGAmplWeightMapItr itw = weightmap.find(weightid); + + (*itw).second.getValues(params_[0], + params_[1], + params_[2], + params_[3], + params_[4], + params_[5], + params_[6], + params_[7], + params_[8], + params_[9], + params_[10], + params_[11]); + + if (debug_) + LogDebug("") << " EcalEBPhase2AmplitudeReconstructor::setParameters weights after the map " << params_[0] << " " + << params_[1] << " " << params_[2] << " " << params_[3] << " " << params_[4] << " " << params_[5] + << " " << params_[6] << " " << params_[7] << " " << params_[8] << " " << params_[9] << " " + << params_[10] << " " << params_[11] << std::endl; + + // we have to transform negative coded in 13 bits into negative coded in 32 bits + // maybe this should go into the getValue method?? + + for (int i = 0; i < maxSamplesUsed_; ++i) { + weights_[i] = (params_[i] & 0x1000) ? (int)(params_[i] | 0xfffff000) : (int)(params_[i]); + } + + if (debug_) { + for (int i = 0; i < maxSamplesUsed_; ++i) { + LogDebug("") << " EcalEBPhase2AmplitudeReconstructor::setParameters weights after the cooking " << weights_[i] + << std::endl; + } + LogDebug("") << std::endl; + } + + } else + edm::LogWarning("EcalTPG") + << " EcalEBPhase2AmplitudeReconstructor::setParameters could not find EcalTPGGroupsMap entry for " << raw; +} diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2Linearizer.cc b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2Linearizer.cc new file mode 100644 index 0000000000000..2802081a81ffa --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2Linearizer.cc @@ -0,0 +1,167 @@ +#include + +//#include + +#include "FWCore/MessageLogger/interface/MessageLogger.h" + +EcalEBPhase2Linearizer::EcalEBPhase2Linearizer(bool debug) + : debug_(debug), init_(false), peds_(nullptr), badXStatus_(nullptr) {} + +EcalEBPhase2Linearizer::~EcalEBPhase2Linearizer() { + if (init_) { + for (int i = 0; i < (int)vectorbadXStatus_.size(); i++) { + delete vectorbadXStatus_[i]; + } + } +} + +void EcalEBPhase2Linearizer::setParameters(EBDetId detId, + const EcalLiteDTUPedestalsMap *ecaltpPed, + const EcalEBPhase2TPGLinearizationConstMap *ecaltpLin, + const EcalTPGCrystalStatus *ecaltpBadX) + +{ + EcalLiteDTUPedestalsMap::const_iterator itped = ecaltpPed->getMap().find(detId); + if (itped != ecaltpPed->end()) + peds_ = &(*itped); + else + edm::LogError("EcalEBPhase2Linearizer") << " could not find EcalLiteDTUPedestal entry for " << detId << std::endl; + + const EcalEBPhase2TPGLinearizationConstMap &linMap = ecaltpLin->getMap(); + EcalEBPhase2TPGLinearizationConstMapIterator it = linMap.find(detId.rawId()); + if (it != linMap.end()) { + linConsts_ = &(*it); + } else + edm::LogError("EcalEBPhase2Linearizer") + << " could not find EcalEBPhase2TPGLinearizationConstMap entry for " << detId.rawId() << std::endl; + + const EcalTPGCrystalStatusMap &badXMap = ecaltpBadX->getMap(); + EcalTPGCrystalStatusMapIterator itbadX = badXMap.find(detId.rawId()); + if (itbadX != badXMap.end()) { + badXStatus_ = &(*itbadX); + } else { + edm::LogWarning("EcalTPG") << " could not find EcalTPGCrystalStatusMap entry for " << detId.rawId(); + badXStatus_ = new EcalTPGCrystalStatusCode(); + vectorbadXStatus_.push_back(&(*badXStatus_)); + init_ = true; + } +} + +int EcalEBPhase2Linearizer::doOutput() { + int tmpIntOut; + if (uncorrectedSample_) { + tmpIntOut = (uncorrectedSample_ - base_ + I2CSub_); //Substract base. Add I2C + } else { + tmpIntOut = 0; + } + if (tmpIntOut < 0) { + tmpIntOut = 0; + } + uint output = tmpIntOut; + output = (output * mult_) >> shift_; + // protect against saturation + // ........... + + return output; +} + +int EcalEBPhase2Linearizer::setInput(const EcalLiteDTUSample &RawSam) + +{ + uncorrectedSample_ = RawSam.adc(); //uncorrectedSample_ + gainID_ = RawSam.gainId(); + + base_ = peds_->mean(gainID_); + + if (gainID_ == 0) { + mult_ = linConsts_->mult_x10; + shift_ = linConsts_->shift_x10; + I2CSub_ = linConsts_->i2cSub_x10; + } else { + mult_ = linConsts_->mult_x1; + shift_ = linConsts_->shift_x1; + I2CSub_ = linConsts_->i2cSub_x1; + } + + return 1; +} + +void EcalEBPhase2Linearizer::process(const EBDigiCollectionPh2::Digi &df, std::vector &output_percry) { + //We know a tower numbering is: // S1 S2 S3 S4 S5 + + // 4 5 14 15 24 + // 3 6 13 16 23 + // 2 7 12 17 22 + // 1 8 11 18 21 + // 0 9 10 19 20 + + for (int i = 0; i < df.size(); i++) { + EcalLiteDTUSample thisSample = df[i]; + setInput(thisSample); + output_percry[i] = doOutput(); + } + + if (debug_) { + LogDebug("EcalEBPhase2Linearizer") << " mult " + << " "; + for (int i = 0; i < df.size(); i++) { + EcalLiteDTUSample thisSample = df[i]; + setInput(thisSample); + LogDebug("") << mult_ << " "; + } + LogDebug("") << " " << std::endl; + + LogDebug("") << " gainID " + << " "; + for (int i = 0; i < df.size(); i++) { + EcalLiteDTUSample thisSample = df[i]; + setInput(thisSample); + LogDebug("") << gainID_ << " "; + } + LogDebug("") << " " << std::endl; + + LogDebug("") << " Ped " + << " "; + for (int i = 0; i < df.size(); i++) { + EcalLiteDTUSample thisSample = df[i]; + setInput(thisSample); + LogDebug("") << base_ << " "; + } + LogDebug("") << " " << std::endl; + + LogDebug("") << " i2c " + << " "; + for (int i = 0; i < df.size(); i++) { + EcalLiteDTUSample thisSample = df[i]; + setInput(thisSample); + LogDebug("") << I2CSub_ << " "; + } + LogDebug("") << " " << std::endl; + + LogDebug("") << " shift " + << " "; + for (int i = 0; i < df.size(); i++) { + EcalLiteDTUSample thisSample = df[i]; + setInput(thisSample); + LogDebug("") << shift_ << " "; + } + LogDebug("") << " " << std::endl; + + LogDebug("") << " lin out " + << " "; + for (int i = 0; i < df.size(); i++) { + LogDebug("") << output_percry[i] << " "; + } + + LogDebug("") << " " << std::endl; + + LogDebug("") << " EcalEBPhase2Linearizer::process(const .. Final output " << std::endl; + LogDebug("") << " output_percry " + << " "; + for (int i = 0; i < df.size(); i++) { + LogDebug("") << output_percry[i] << " "; + } + LogDebug("") << " " << std::endl; + } + return; +} diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2SpikeTagger.cc b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2SpikeTagger.cc new file mode 100644 index 0000000000000..d430c093bfe52 --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2SpikeTagger.cc @@ -0,0 +1,53 @@ +#include + +#include "FWCore/MessageLogger/interface/MessageLogger.h" + +EcalEBPhase2SpikeTagger::EcalEBPhase2SpikeTagger(bool debug) : debug_(debug) {} + +EcalEBPhase2SpikeTagger::~EcalEBPhase2SpikeTagger() {} + +void EcalEBPhase2SpikeTagger::setParameters(EBDetId detId, + const EcalLiteDTUPedestalsMap* ecaltpPed, + const EcalEBPhase2TPGLinearizationConstMap* ecaltpLin, + const EcalTPGCrystalStatus* ecaltpBadX) + +{ + if (debug_) + LogDebug("") << " EcalEBPhase2SpikeTagger::setParameters " << std::endl; + + EcalLiteDTUPedestalsMap::const_iterator itped = ecaltpPed->getMap().find(detId); + if (itped != ecaltpPed->end()) { + peds_ = &(*itped); + } else { + edm::LogError("EcalEBPhase2SpikeTagger::setParameters") + << " could not find EcalLiteDTUPedestal entry for " << detId; + throw cms::Exception("EcalEBPhase2SpikeTagger::setParameters could not find pedestals"); + } + + const EcalEBPhase2TPGLinearizationConstMap& linMap = ecaltpLin->getMap(); + EcalEBPhase2TPGLinearizationConstMapIterator it = linMap.find(detId.rawId()); + if (it != linMap.end()) { + linConsts_ = &(*it); + } else { + edm::LogError("EcalEBPhase2SpikeTagger::setParameters") + << " could not find EcalEBPhase2TPGLinearizationConstMap entry for " << detId.rawId(); + throw cms::Exception("EcalEBPhase2SpikeTagger::setParameters could not find pedestals"); + } +} + +bool EcalEBPhase2SpikeTagger::process(const std::vector& linInput) { + bool isASpike; + isASpike = false; + + if (debug_) { + LogDebug("") << "EcalEBPhase2SpikeTagger::process linearized digis " << std::endl; + for (unsigned int i = 0; i < linInput.size(); i++) { + LogDebug("") << " " << std::dec << linInput[i]; + } + LogDebug("") << std::endl; + } + + // dummy for now. It needs the algorythm to be implememted/plugged in here + + return isASpike; +} diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TPFormatter.cc b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TPFormatter.cc new file mode 100644 index 0000000000000..610809ae58f34 --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TPFormatter.cc @@ -0,0 +1,38 @@ +#include +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include + +EcalEBPhase2TPFormatter::EcalEBPhase2TPFormatter(bool debug) : debug_(debug) {} + +EcalEBPhase2TPFormatter::~EcalEBPhase2TPFormatter() {} + +void EcalEBPhase2TPFormatter::process(std::vector &, + std::vector &time, + std::vector &outEt, + std::vector &outTime) { + unsigned int size = amp.size(); + outEt.resize(size); + outTime.resize(size); + + for (unsigned int i = 0; i < size; ++i) { + outEt[i] = amp[i]; + outTime[i] = time[i]; + } + + for (unsigned int i = 0; i < size; ++i) { + // this is the energy compression to 12 bits to go in the DF. To be done as last thing before building the TP + //Bit shift by 1 to go from 13 bits to 12 + outEt[i] = outEt[i] >> 1; + if (outEt[i] > 0xFFF) + outEt[i] = 0xFFF; + } + + for (unsigned int i = 0; i < size; ++i) { + // this is the time compression to 5 bits to go in the DF. + outTime[i] = outTime[i] >> 6; + if (outTime[i] > 0xf) + outTime[i] = 0xf; + else if (outTime[i] < -0x10) + outTime[i] = -0x10; + } +} diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TimeReconstructor.cc b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TimeReconstructor.cc new file mode 100644 index 0000000000000..42be7e3308502 --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TimeReconstructor.cc @@ -0,0 +1,176 @@ +#include +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeightIdMap.h" +#include "CondFormats/EcalObjects/interface/EcalTPGWeightGroup.h" +#include "DataFormats/EcalDigi/interface/EcalConstants.h" +#include "CondFormats/EcalObjects/interface/EcalTPGGroups.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include + +const int EcalEBPhase2TimeReconstructor::maxSamplesUsed_ = 12; + +EcalEBPhase2TimeReconstructor::EcalEBPhase2TimeReconstructor(bool debug) + : debug_(debug), inputsAlreadyIn_(0), shift_(maxSamplesUsed_) {} + +EcalEBPhase2TimeReconstructor::~EcalEBPhase2TimeReconstructor() {} + +int EcalEBPhase2TimeReconstructor::setInput(int input) { + if (input > 0X7FFF) { + edm::LogError("EcalEBPhase2TimeReconstructor::setInput") << "ERROR IN INPUT OF TIME FILTER" << std::endl; + return -1; + } + if (inputsAlreadyIn_ < maxSamplesUsed_) { + if (debug_) + LogDebug("") << " EcalEBPhase2TimeReconstructor::setInput inputsAlreadyIn_<5 input " << input << std::endl; + + buffer_[inputsAlreadyIn_] = input; + inputsAlreadyIn_++; + } else { + for (int i = 0; i < (maxSamplesUsed_ - 1); i++) { + buffer_[i] = buffer_[i + 1]; + if (debug_) + LogDebug("") << " EcalEBPhase2TimeReconstructor::setInput inputsAlreadyIn buffer " << buffer_[i] << std::endl; + } + buffer_[maxSamplesUsed_ - 1] = input; + inputsAlreadyIn_++; + } + return 1; +} + +void EcalEBPhase2TimeReconstructor::process(std::vector &addout, + std::vector &RecoOutput, + std::vector &output) { + inputsAlreadyIn_ = 0; + for (unsigned int i = 0; i < maxSamplesUsed_; i++) { + buffer_[i] = 0; + } + + //Taking in the results of the amplitude reconstruction + //Bit shifting them for use as index of invAmpAr_ lookup table + // move input amplitude (13 bits) to 9 bits to use as array index + + ampIn_[0] = ampRecoOutput[0] >> 4; + ampIn_[1] = ampRecoOutput[1] >> 4; + + for (unsigned int i = 0; i < addout.size(); i++) { + setInput(addout[i]); + + if (debug_) { + LogDebug("") << " EcalEBPhase2TimeReconstructor::process(std::vector buffer_ " << std::endl; + + for (unsigned int j = 0; j < maxSamplesUsed_; j++) { + LogDebug("") << " buffer_ " << buffer_[j]; + } + LogDebug("") << " " << std::endl; + } + + if (i == (maxSamplesUsed_ - 1)) { + if (debug_) + LogDebug("") << " EcalEBPhase2TimeReconstructor::process(std::vector) i = 11 " << std::endl; + process(); + if (debug_) + LogDebug("") << " EcalEBPhase2TimeReconstructor::process(std::vector) after process() " + << processedOutput_ << std::endl; + output[0] = processedOutput_; + if (debug_) + LogDebug("") << " EcalEBPhase2TimeReconstructor::process(std::vector) after setting the output " + << output[0] << std::endl; + } else if (i == (ecalPh2::sampleSize - 1)) { + if (debug_) + LogDebug("") << " EcalEBPhase2TimeReconstructor::process(std::vector) i = 15 " << std::endl; + process(); + output[1] = processedOutput_; + } + } + + return; +} + +void EcalEBPhase2TimeReconstructor::process() { + //UB FIXME: 5 + processedOutput_ = 0; + if (inputsAlreadyIn_ < 12) + return; + int64_t output = 0; + for (int i = 0; i < 12; i++) { + output += (weights_[i] * buffer_[i]); + if (debug_) + LogDebug("") << " TimeFilter buffer " << buffer_[i] << " weight " << weights_[i] << " output " << output + << std::endl; + } + output = output >> shift_; + if (debug_) + LogDebug("") << " TimeFilter local output " << output << std::endl; + //Dividing output by the result of the amplitude reconstruction via an approximation using the invAmpAr lookup table + int ampInd = 0; + if (debug_) + LogDebug("") << " inputsAlreadyIn_ " << inputsAlreadyIn_ << std::endl; + if (inputsAlreadyIn_ > 12) { + ampInd = 1; + } + + if (debug_) + LogDebug("") << " Begininning Final TimeFilter Calculation" << std::endl; + + int64_t tmpOutput = output * invAmpAr_[ampIn_[ampInd]]; + if (debug_) + LogDebug("") << " output*tmpInvAmpAr " << tmpOutput << std::endl; + + output = tmpOutput >> 20; + if (debug_) + LogDebug("") << " output after bit shift " << output << std::endl; + + if (output < -1024) + output = -1023; + else if (output > 1024) + output = 1023; + if (debug_) + LogDebug("") << " output after if/else " << output << std::endl; + processedOutput_ = output; + + if (debug_) + LogDebug("") << " TimeFilter final output " << processedOutput_ << std::endl; +} + +void EcalEBPhase2TimeReconstructor::setParameters(uint32_t raw, + const EcalEBPhase2TPGTimeWeightIdMap *ecaltpgWeightMap, + const EcalTPGWeightGroup *ecaltpgWeightGroup) { + uint32_t params_[12]; + const EcalTPGGroups::EcalTPGGroupsMap &groupmap = ecaltpgWeightGroup->getMap(); + if (debug_) + LogDebug("") << " EcalEBPhase2TimeReconstructor::setParameters groupmap size " << groupmap.size() << std::endl; + EcalTPGGroups::EcalTPGGroupsMapItr it = groupmap.find(raw); + if (it != groupmap.end()) { + uint32_t weightid = (*it).second; + const EcalEBPhase2TPGTimeWeightIdMap::EcalEBPhase2TPGTimeWeightMap &weightmap = ecaltpgWeightMap->getMap(); + EcalEBPhase2TPGTimeWeightIdMap::EcalEBPhase2TPGTimeWeightMapItr itw = weightmap.find(weightid); + + (*itw).second.getValues(params_[0], + params_[1], + params_[2], + params_[3], + params_[4], + params_[5], + params_[6], + params_[7], + params_[8], + params_[9], + params_[10], + params_[11]); + + if (debug_) + LogDebug("") << " EcalEBPhase2TimeReconstructor::setParameters time weights after the map " << params_[0] << " " + << params_[1] << " " << params_[2] << " " << params_[3] << " " << params_[4] << " " << params_[5] + << " " << params_[6] << " " << params_[7] << " " << params_[8] << " " << params_[9] << " " + << params_[10] << " " << params_[11] << std::endl; + + // we have to transform negative coded in 16 bits into negative coded in 32 bits + // maybe this should go into the getValue method?? + + for (int i = 0; i < 12; ++i) { + weights_[i] = (params_[i] & 0x8000) ? (int)(params_[i] | 0xffff8000) : (int)(params_[i]); + } + + } else + edm::LogWarning("EcalTPG") + << " EcalEBPhase2TimeReconstructor::setParameters could not find EcalTPGGroupsMap entry for " << raw; +} diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TrigPrimAlgo.cc b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TrigPrimAlgo.cc new file mode 100644 index 0000000000000..7aa5558cdd08f --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TrigPrimAlgo.cc @@ -0,0 +1,294 @@ +#include +#include +#include +#include + +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "Geometry/EcalMapping/interface/EcalElectronicsMapping.h" +#include "Geometry/EcalMapping/interface/EcalMappingRcd.h" +#include "Geometry/EcalAlgo/interface/EcalBarrelGeometry.h" + +#include "SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TrigPrimAlgo.h" + +#include "DataFormats/EcalDetId/interface/EcalSubdetector.h" +#include "DataFormats/EcalDigi/interface/EBDataFrame_Ph2.h" +#include "DataFormats/EcalDetId/interface/EcalTrigTowerDetId.h" +#include "DataFormats/EcalDetId/interface/EBDetId.h" +#include "DataFormats/EcalDetId/interface/EcalTriggerElectronicsId.h" + +#include "CondFormats/EcalObjects/interface/EcalTPGPedestals.h" +#include "CondFormats/DataRecord/interface/EcalTPGPedestalsRcd.h" + +#include "DataFormats/EcalDigi/interface/EcalConstants.h" + +#include +#include + +//---------------------------------------------------------------------- + +const unsigned int EcalEBPhase2TrigPrimAlgo::nrSamples_ = + ecalPh2::sampleSize; // set to 16 samples, might change (less than 16) in the future +const unsigned int EcalEBPhase2TrigPrimAlgo::maxNrTowers_ = 2448; // number of towers in EB + +EcalEBPhase2TrigPrimAlgo::EcalEBPhase2TrigPrimAlgo(const EcalTrigTowerConstituentsMap *eTTmap, + const CaloGeometry *theGeometry, + int binofmax, + bool debug) + : eTTmap_(eTTmap), + theGeometry_(theGeometry), + binOfMaximum_(binofmax), + debug_(debug) + +{ + maxNrSamples_ = ecalPh2::sampleSize; + this->init(); +} + +void EcalEBPhase2TrigPrimAlgo::init() { + theMapping_ = new EcalElectronicsMapping(); + // initialise data structures + initStructures(towerMapEB_); + hitTowers_.resize(maxNrTowers_); + + linearizer_ = new EcalEBPhase2Linearizer(debug_); + lin_out_.resize(maxNrSamples_); + + amplitude_reconstructor_ = new EcalEBPhase2AmplitudeReconstructor(debug_); + filt_out_.resize(maxNrSamples_); + + tpFormatter_ = new EcalEBPhase2TPFormatter(debug_); + outEt_.resize(maxNrSamples_); + outTime_.resize(maxNrSamples_); + + // + + time_reconstructor_ = new EcalEBPhase2TimeReconstructor(debug_); + time_out_.resize(maxNrSamples_); + spike_tagger_ = new EcalEBPhase2SpikeTagger(debug_); +} +//---------------------------------------------------------------------- + +EcalEBPhase2TrigPrimAlgo::~EcalEBPhase2TrigPrimAlgo() { + delete linearizer_; + delete amplitude_reconstructor_; + delete time_reconstructor_; + delete spike_tagger_; + delete tpFormatter_; + delete theMapping_; +} + +void EcalEBPhase2TrigPrimAlgo::run(EBDigiCollectionPh2 const *digi, EcalEBPhase2TrigPrimDigiCollection &result) { + if (debug_) + LogDebug("") << " EcalEBPhase2TrigPrimAlgo: digi size " << digi->size() << std::endl; + + EcalEBPhase2TriggerPrimitiveDigi tp; + int firstSample = binOfMaximum_ - 1 - nrSamples_ / 2; + int lastSample = binOfMaximum_ - 1 + nrSamples_ / 2; + + if (debug_) { + LogDebug("") << " binOfMaximum_ " << binOfMaximum_ << " nrSamples_" << nrSamples_ << std::endl; + LogDebug("") << " first sample " << firstSample << " last " << lastSample << std::endl; + } + + clean(towerMapEB_); + fillMap(digi, towerMapEB_); + + int iChannel = 0; + int nXinBCP = 0; + for (int itow = 0; itow < nrTowers_; ++itow) { + int index = hitTowers_[itow].first; + const EcalTrigTowerDetId &thisTower = hitTowers_[itow].second; + if (debug_) + LogDebug("") << " Data for TOWER num " << itow << " index " << index << " TowerId " << thisTower << " zside " + << thisTower.zside() << " ieta " << thisTower.ieta() << " iphi " << thisTower.iphi() << " size " + << towerMapEB_[itow].size() << std::endl; + + // loop over all strips assigned to this trigger tower + int nxstals = 0; + for (unsigned int iStrip = 0; iStrip < towerMapEB_[itow].size(); ++iStrip) { + if (debug_) + LogDebug("") << " Data for STRIP num " << iStrip << std::endl; + std::vector &dataFrames = + (towerMapEB_[index])[iStrip].second; //vector of dataframes for this strip, size; nr of crystals/strip + + nxstals = (towerMapEB_[index])[iStrip].first; + if (nxstals <= 0) + continue; + if (debug_) + LogDebug("") << " Number of xTals " << nxstals << std::endl; + + //const EcalTriggerElectronicsId elId = theMapping_->getTriggerElectronicsId(dataFrames[0].id()); + + // loop over the xstals in a strip + + for (int iXstal = 0; iXstal < nxstals; iXstal++) { + const EBDetId &myid = dataFrames[iXstal].id(); + + nXinBCP++; + if (debug_) { + LogDebug("") << " Data for TOWER num " << itow << " index " << index << " TowerId " << thisTower << " size " + << towerMapEB_[itow].size() << std::endl; + LogDebug("") << "nXinBCP " << nXinBCP << " myid rawId " << myid.rawId() << " xTal iEta " << myid.ieta() + << " iPhi " << myid.iphi() << std::endl; + } + + tp = EcalEBPhase2TriggerPrimitiveDigi(myid); + tp.setSize(nrSamples_); + + iChannel++; + if (debug_) { + LogDebug("") << " " << std::endl; + LogDebug("") << " ****** iChannel " << iChannel << std::endl; + for (int i = 0; i < dataFrames[iXstal].size(); i++) { + LogDebug("") << " " << dataFrames[iXstal][i].adc(); + } + LogDebug("") << " " << std::endl; + } + + if (debug_) { + LogDebug("") << std::endl; + EBDetId id = dataFrames[iXstal].id(); + LogDebug("") << "iXstal= " << iXstal << std::endl; + LogDebug("") << "iXstal= " << iXstal << " id " << id << " EcalDataFrame_Ph2 is: " << std::endl; + for (int i = 0; i < dataFrames[iXstal].size(); i++) { + LogDebug("") << " " << std::dec << dataFrames[iXstal][i].adc(); + } + LogDebug("") << std::endl; + } + + // Call the linearizer + this->getLinearizer()->setParameters(dataFrames[iXstal].id(), ecaltpPed_, ecaltpLin_, ecaltpgBadX_); + this->getLinearizer()->process(dataFrames[iXstal], lin_out_); + + for (unsigned int i = 0; i < lin_out_.size(); i++) { + if (lin_out_[i] > 0X3FFF) + lin_out_[i] = 0X3FFF; + } + + if (debug_) { + LogDebug("") << "EcalEBPhase2TrigPrimAlgo output of linearize for channel " << iXstal << std::endl; + for (unsigned int i = 0; i < lin_out_.size(); i++) { + LogDebug("") << " " << std::dec << lin_out_[i]; + } + LogDebug("") << std::endl; + } + + // call spike finder right after the linearizer + this->getSpikeTagger()->setParameters(dataFrames[iXstal].id(), ecaltpPed_, ecaltpLin_, ecaltpgBadX_); + bool isASpike = this->getSpikeTagger()->process(lin_out_); + + //if (!isASpike) { + + // Call the amplitude reconstructor + this->getAmplitudeFinder()->setParameters(myid.rawId(), ecaltpgAmplWeightMap_, ecaltpgWeightGroup_); + this->getAmplitudeFinder()->process(lin_out_, filt_out_); + + if (debug_) { + LogDebug("") << "EcalEBPhase2TrigPrimAlgo output of amp finder is a vector of size: " << std::dec + << time_out_.size() << std::endl; + for (unsigned int ix = 0; ix < filt_out_.size(); ix++) { + LogDebug("") << std::dec << filt_out_[ix] << " "; + } + LogDebug("") << std::endl; + } + + if (debug_) { + LogDebug("") << " Ampl " + << " "; + for (unsigned int ix = 0; ix < filt_out_.size(); ix++) { + LogDebug("") << std::dec << filt_out_[ix] << " "; + } + LogDebug("") << std::endl; + } + + // call time finder + this->getTimeFinder()->setParameters(myid.rawId(), ecaltpgTimeWeightMap_, ecaltpgWeightGroup_); + this->getTimeFinder()->process(lin_out_, filt_out_, time_out_); + + if (debug_) { + LogDebug("") << " Time " + << " "; + for (unsigned int ix = 0; ix < time_out_.size(); ix++) { + LogDebug("") << std::dec << time_out_[ix] << " "; + } + LogDebug("") << std::endl; + } + + if (debug_) { + LogDebug("") << "EcalEBPhase2TrigPrimAlgo output of timefinder is a vector of size: " << std::dec + << time_out_.size() << std::endl; + for (unsigned int ix = 0; ix < time_out_.size(); ix++) { + LogDebug("") << std::dec << time_out_[ix] << " "; + } + LogDebug("") << std::endl; + } + + this->getTPFormatter()->process(filt_out_, time_out_, outEt_, outTime_); + + if (debug_) { + LogDebug("") << " compressed Et " + << " "; + for (unsigned int iSample = 0; iSample < outEt_.size(); ++iSample) { + LogDebug("") << outEt_[iSample] << " "; + } + LogDebug("") << std::endl; + + LogDebug("") << " compressed time " + << " "; + for (unsigned int iSample = 0; iSample < outEt_.size(); ++iSample) { + LogDebug("") << outTime_[iSample] << " "; + } + LogDebug("") << std::endl; + } + + if (debug_) { + LogDebug("") << " EcalEBPhase2TrigPrimAlgo after getting the formatter " << std::endl; + for (unsigned int iSample = 0; iSample < outEt_.size(); ++iSample) { + LogDebug("") << " outEt " << outEt_[iSample] << " outTime " << outTime_[iSample] << " "; + } + LogDebug("") << std::endl; + } + + // } not a spike + + // create the final TP samples + int etInADC = 0; + ; + int64_t time = -999; + int nSam = 0; + for (int iSample = 0; iSample < 16; ++iSample) { + etInADC = outEt_[iSample]; + time = outTime_[iSample]; + if (debug_) { + LogDebug("") << "TrigPrimAlgo outEt " << outEt_[iSample] << " outTime " << outTime_[iSample] << std::endl; + LogDebug("") << "TrigPrimAlgo etInADCt " << outEt_[iSample] << " outTime " << time << std::endl; + } + + tp.setSample(nSam, EcalEBPhase2TriggerPrimitiveSample(etInADC, isASpike, time)); + nSam++; + } + + result.push_back(tp); + + } // Loop over the xStals + + } //loop over strips in one tower + + if (debug_) { + if (nXinBCP > 0) + LogDebug("") << " Accepted xTals " << nXinBCP << std::endl; + } + } +} + +//---------------------------------------------------------------------- + +int EcalEBPhase2TrigPrimAlgo::findStripNr(const EBDetId &id) { + int stripnr; + int n = ((id.ic() - 1) % 100) / 20; //20 corresponds to 4 * ecal_barrel_crystals_per_strip FIXME!! + if (id.ieta() < 0) + stripnr = n + 1; + else + stripnr = nbMaxStrips_ - n; + return stripnr; +} diff --git a/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2ESProducer.cc b/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2ESProducer.cc new file mode 100644 index 0000000000000..6a3772fdf3ccf --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2ESProducer.cc @@ -0,0 +1,722 @@ +// user include files +#include "DataFormats/EcalDigi/interface/EcalConstants.h" +#include "FWCore/Framework/interface/ESProducer.h" +#include "FWCore/Framework/interface/ModuleFactory.h" +#include "FWCore/Framework/interface/ESHandle.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/FileInPath.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +// +#include "CondFormats/DataRecord/interface/EcalTPGCrystalStatusRcd.h" +#include "CondFormats/DataRecord/interface/EcalTPGPhysicsConstRcd.h" +#include "CondFormats/DataRecord/interface/EcalTPGStripStatusRcd.h" +// commented lines are for a reminder that in future we might need to implement something alike +//#include "CondFormats/DataRecord/interface/EcalTPGSpikeRcd.h" +//#include "CondFormats/DataRecord/interface/EcalTPGTowerStatusRcd.h" +#include "CondFormats/DataRecord/interface/EcalEBPhase2TPGLinearizationConstRcd.h" +#include "CondFormats/DataRecord/interface/EcalTPGWeightGroupRcd.h" +#include "CondFormats/DataRecord/interface/EcalEBPhase2TPGAmplWeightIdMapRcd.h" +#include "CondFormats/DataRecord/interface/EcalEBPhase2TPGTimeWeightIdMapRcd.h" +#include "CondFormats/DataRecord/interface/EcalEBPhase2TPGPedestalsRcd.h" +#include "CondFormats/EcalObjects/interface/EcalTPGCrystalStatus.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGLinearizationConst.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGPedestals.h" +#include "CondFormats/EcalObjects/interface/EcalTPGPhysicsConst.h" +//#include "CondFormats/EcalObjects/interface/EcalTPGSpike.h" +//#include "CondFormats/EcalObjects/interface/EcalTPGTowerStatus.h" +#include "CondFormats/EcalObjects/interface/EcalTPGStripStatus.h" +#include "CondFormats/EcalObjects/interface/EcalTPGWeightGroup.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeightIdMap.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeightIdMap.h" + +#include "zlib.h" +#include +#include +#include +#include + +// +// class declaration +// + +/** \class EcalEBTrigPrimPhase2ESProducer +\author L. Lutton, N. Marinelli - Univ. of Notre Dame + Description: forPhase II +*/ + +class EcalEBTrigPrimPhase2ESProducer : public edm::ESProducer { +public: + EcalEBTrigPrimPhase2ESProducer(const edm::ParameterSet &); + ~EcalEBTrigPrimPhase2ESProducer() override; + + std::unique_ptr produceLinearizationConst( + const EcalEBPhase2TPGLinearizationConstRcd &); + std::unique_ptr producePedestals(const EcalEBPhase2TPGPedestalsRcd &); + std::unique_ptr produceAmpWeight(const EcalEBPhase2TPGAmplWeightIdMapRcd &); + std::unique_ptr produceTimeWeight(const EcalEBPhase2TPGTimeWeightIdMapRcd &); + std::unique_ptr produceWeightGroup(const EcalTPGWeightGroupRcd &); + std::unique_ptr producePhysicsConst(const EcalTPGPhysicsConstRcd &); + std::unique_ptr produceBadX(const EcalTPGCrystalStatusRcd &); + + // These commented lines are a reminder that in the future we might need to implement something alike + //std::unique_ptr produceLutGroup(const EcalTPGLutGroupRcd &); + //std::uniq//std::unique_ptr produceBadStrip(const EcalTPGStripStatusRcd &); + //std::unique_ptr produceBadTT(const EcalTPGTowerStatusRcd &); + //std::unique_ptr produceSpike(const EcalTPGSpikeRcd &); + +private: + void parseTextFile(); + std::vector getRange(int subdet, int smNb, int towerNbInSm, int stripNbInTower = 0, int xtalNbInStrip = 0); + void parseWeightsFile(); + + // ----------member data --------------------------- + std::string dbFilename_; + // std::string configFilename_; + const edm::FileInPath configFilename_; + bool flagPrint_; + std::map> mapXtal_; + std::map> mapStrip_[2]; + std::map> mapTower_[2]; + std::map> mapWeight_; + std::map> mapTimeWeight_; + std::map> mapXtalToGroup_; + std::map> mapXtalToLin_; + std::map> mapPhys_; + static const int maxSamplesUsed_; + static const int nLinConst_; +}; + +// +// input stream from a gz file +// + +struct GzInputStream { + gzFile gzf; + char buffer[256]; + std::istringstream iss; + bool eof; + GzInputStream(const char *file) : eof(false) { + gzf = gzopen(file, "rb"); + edm::LogInfo("EcalEBTrigPrimPhase2ESProducer") << " New weight file " << file; + if (gzf == Z_NULL) { + eof = true; + edm::LogWarning("EcalEBTrigPrimPhase2ESProducer") << "Database file " << file << " not found!!!"; + } else + readLine(); + } + void readLine() { + char *res = gzgets(gzf, buffer, 256); + eof = (res == Z_NULL); + if (!eof) { + iss.clear(); + iss.str(buffer); + } + } + ~GzInputStream() { gzclose(gzf); } + explicit operator bool() const { return ((eof == true) ? false : !iss.fail()); } +}; + +template +GzInputStream &operator>>(GzInputStream &gis, T &var) { + while ((bool)gis && !(gis.iss >> var)) { + gis.readLine(); + } + return gis; +} + +// +// constructors and destructor +// + +const int EcalEBTrigPrimPhase2ESProducer::maxSamplesUsed_ = 12; +const int EcalEBTrigPrimPhase2ESProducer::nLinConst_ = 8; + +EcalEBTrigPrimPhase2ESProducer::EcalEBTrigPrimPhase2ESProducer(const edm::ParameterSet &iConfig) + : dbFilename_(iConfig.getUntrackedParameter("DatabaseFile", "")), + configFilename_(iConfig.getParameter("WeightTextFile")), + flagPrint_(iConfig.getParameter("WriteInFile")) { + parseWeightsFile(); + + // the following lines are needed to tell the framework what + // data is being produced + setWhatProduced(this, &EcalEBTrigPrimPhase2ESProducer::produceLinearizationConst); + setWhatProduced(this, &EcalEBTrigPrimPhase2ESProducer::producePedestals); + setWhatProduced(this, &EcalEBTrigPrimPhase2ESProducer::produceAmpWeight); + setWhatProduced(this, &EcalEBTrigPrimPhase2ESProducer::produceTimeWeight); + setWhatProduced(this, &EcalEBTrigPrimPhase2ESProducer::produceWeightGroup); + setWhatProduced(this, &EcalEBTrigPrimPhase2ESProducer::produceBadX); + // the following commented lines as a reminder for items which might need to be implemented for Phase2 + //setWhatProduced(this, &EcalEBTrigPrimPhase2ESProducer::producePhysicsConst); + //setWhatProduced(this, &EcalEBTrigPrimPhase2ESProducer::produceBadStrip); + //setWhatProduced(this, &EcalEBTrigPrimPhase2ESProducer::produceBadTT); + //setWhatProduced(this, &EcalEBTrigPrimPhase2ESProducer::produceSpike); +} + +EcalEBTrigPrimPhase2ESProducer::~EcalEBTrigPrimPhase2ESProducer() {} + +// +// member functions +// + +// ------------ method called to produce the data ------------ + +std::unique_ptr EcalEBTrigPrimPhase2ESProducer::producePedestals( + const EcalEBPhase2TPGPedestalsRcd &iRecord) { + auto prod = std::make_unique(); + + std::map>::const_iterator it; + for (it = mapXtalToLin_.begin(); it != mapXtalToLin_.end(); it++) { + EBDetId myEBDetId = EBDetId(it->first); + EcalEBPhase2TPGPedestal ped; + + ped.mean_x10 = (it->second)[0]; + ped.mean_x1 = (it->second)[3]; + prod->insert(std::make_pair(myEBDetId, ped)); + } + + return prod; +} + +std::unique_ptr EcalEBTrigPrimPhase2ESProducer::produceLinearizationConst( + const EcalEBPhase2TPGLinearizationConstRcd &iRecord) { + auto prod = std::make_unique(); + + std::map>::const_iterator it; + for (it = mapXtalToLin_.begin(); it != mapXtalToLin_.end(); it++) { + EcalEBPhase2TPGLinearizationConstant param; + + param.mult_x10 = (it->second)[1]; + param.mult_x1 = (it->second)[5]; + param.shift_x10 = (it->second)[2]; + param.shift_x1 = (it->second)[6]; + param.i2cSub_x10 = (it->second)[3]; + param.i2cSub_x1 = (it->second)[7]; + prod->setValue(it->first, param); + } + + return prod; +} + +std::unique_ptr EcalEBTrigPrimPhase2ESProducer::produceAmpWeight( + const EcalEBPhase2TPGAmplWeightIdMapRcd &iRecord) { + auto prod = std::make_unique(); + + EcalEBPhase2TPGAmplWeights weights; + std::map>::const_iterator it; + for (it = mapWeight_.begin(); it != mapWeight_.end(); it++) { + weights.setValues((it->second)[0], + (it->second)[1], + (it->second)[2], + (it->second)[3], + (it->second)[4], + (it->second)[5], + (it->second)[6], + (it->second)[7], + (it->second)[8], + (it->second)[9], + (it->second)[10], + (it->second)[11]); + prod->setValue(it->first, weights); + } + + return prod; +} + +std::unique_ptr EcalEBTrigPrimPhase2ESProducer::produceTimeWeight( + const EcalEBPhase2TPGTimeWeightIdMapRcd &iRecord) { + auto prod = std::make_unique(); + + EcalEBPhase2TPGTimeWeights weights_time; + std::map>::const_iterator it; + for (it = mapTimeWeight_.begin(); it != mapTimeWeight_.end(); it++) { + weights_time.setValues((it->second)[0], + (it->second)[1], + (it->second)[2], + (it->second)[3], + (it->second)[4], + (it->second)[5], + (it->second)[6], + (it->second)[7], + (it->second)[8], + (it->second)[9], + (it->second)[10], + (it->second)[11]); + prod->setValue(it->first, weights_time); + } + + return prod; +} + +std::unique_ptr EcalEBTrigPrimPhase2ESProducer::produceWeightGroup( + const EcalTPGWeightGroupRcd &iRecord) { + auto prod = std::make_unique(); + + const int NGROUPS = 61200; + + for (int iGroup = 0; iGroup < NGROUPS; iGroup++) { + std::map>::const_iterator it; + for (it = mapXtalToGroup_.begin(); it != mapXtalToGroup_.end(); it++) { + prod->setValue(it->first, it->second[0]); + } + } + + return prod; +} + +std::unique_ptr EcalEBTrigPrimPhase2ESProducer::producePhysicsConst( + const EcalTPGPhysicsConstRcd &iRecord) { + auto prod = std::make_unique(); + // EcalEBTrigPrimPhase2ESProducer::producePhysicsConst Needs updating if we want to keep it + + parseTextFile(); + std::map>::const_iterator it; + for (it = mapPhys_.begin(); it != mapPhys_.end(); it++) { + EcalTPGPhysicsConst::Item item; + item.EtSat = (it->second)[0]; + item.ttf_threshold_Low = (it->second)[1]; + item.ttf_threshold_High = (it->second)[2]; + item.FG_lowThreshold = (it->second)[3]; + item.FG_highThreshold = (it->second)[4]; + item.FG_lowRatio = (it->second)[5]; + item.FG_highRatio = (it->second)[6]; + prod->setValue(it->first, item); + } + + return prod; +} + +std::unique_ptr EcalEBTrigPrimPhase2ESProducer::produceBadX( + const EcalTPGCrystalStatusRcd &iRecord) { + auto prod = std::make_unique(); + + parseTextFile(); + std::map>::const_iterator it; + for (it = mapXtal_.begin(); it != mapXtal_.end(); it++) { + EcalTPGCrystalStatusCode badXValue; + badXValue.setStatusCode(0); + prod->setValue(it->first, badXValue); + } + return prod; +} + +void EcalEBTrigPrimPhase2ESProducer::parseWeightsFile() { + uint32_t id; + std::string dataCard; + std::vector param; + + int data; + std::string filename = configFilename_.fullPath(); + ; + std::string finalFileName; + size_t slash = filename.find('/'); + if (slash != 0) { + edm::FileInPath fileInPath(filename); + finalFileName = fileInPath.fullPath(); + } else { + finalFileName = filename; + edm::LogWarning("EcalEBTPGESProducer") + << "Couldnt find database file via fileinpath trying with pathname directly!!"; + } + + GzInputStream gis(finalFileName.c_str()); + while (gis >> dataCard) { + if (dataCard == "WEIGHTAMP") { + gis >> std::dec >> id; + + if (flagPrint_) { + std::cout << dataCard << " " << std::dec << id << std::endl; + } + + param.clear(); + + std::string st6; + for (int i = 0; i < maxSamplesUsed_; i++) { + gis >> std::hex >> data; + param.push_back(data); + /// debug + + if (flagPrint_) { + std::ostringstream oss; + oss << std::hex << data; + std::string result4 = oss.str(); + + st6.append("0x"); + st6.append(result4); + st6.append(" "); + } + } + + // debug + if (flagPrint_) { + std::cout << st6 << std::endl; + std::cout << std::endl; + } + + // std::cout << " WEIGHTAMP id " << id << std::endl; + mapWeight_[id] = param; + } + + if (dataCard == "WEIGHTTIME") { + gis >> std::dec >> id; + + if (flagPrint_) { + std::cout << dataCard << " " << std::dec << id << std::endl; + } + + param.clear(); + + std::string st6; + for (int i = 0; i < maxSamplesUsed_; i++) { + gis >> std::hex >> data; + //std::cout << " Parse time weight filling data " << data; + param.push_back(data); + /// debug + + if (flagPrint_) { + std::ostringstream oss; + oss << std::hex << data; + std::string result4 = oss.str(); + + st6.append("0x"); + st6.append(result4); + st6.append(" "); + } + } + + // debug + if (flagPrint_) { + std::cout << st6 << std::endl; + std::cout << std::endl; + } + mapTimeWeight_[id] = param; + } + + if (dataCard == "CRYSTAL") { + gis >> std::dec >> id; + + if (flagPrint_) { + std::cout << dataCard << " " << std::dec << id << std::endl; + } + + param.clear(); + std::string st6; + gis >> std::dec >> data; + param.push_back(data); + + if (flagPrint_) { + std::ostringstream oss; + oss << std::dec << data; + std::string result4 = oss.str(); + st6.append(result4); + st6.append(" "); + std::cout << st6 << std::endl; + std::cout << std::endl; + } + mapXtalToGroup_[id] = param; + } + + if (dataCard == "LINCONST") { + gis >> std::dec >> id; + + if (flagPrint_) { + std::cout << dataCard << " " << std::dec << id << std::endl; + } + + param.clear(); + std::string st6; + std::string st7; + + for (int i = 0; i < nLinConst_; i++) { + gis >> std::hex >> data; + param.push_back(data); + + if (flagPrint_) { + if (i < 4) { + std::ostringstream oss; + oss << std::hex << data; + std::string result6 = oss.str(); + st6.append("0x"); + st6.append(result6); + if (i != 3) + st6.append(" "); + } else if (i < 8) { + std::ostringstream oss; + oss << std::hex << data; + std::string result7 = oss.str(); + st7.append("0x"); + st7.append(result7); + if (i != 7) + st7.append(" "); + } + } + } + if (flagPrint_) { + std::cout << st6 << std::endl; + std::cout << st7 << std::endl; + } + mapXtalToLin_[id] = param; + } + } +} + +void EcalEBTrigPrimPhase2ESProducer::parseTextFile() { + if (!mapXtal_.empty()) + return; // just parse the file once! + + uint32_t id; + std::string dataCard; + std::string line; + std::ifstream infile; + std::vector param; + std::vector paramF; + int NBstripparams[2] = {4, 4}; + unsigned int data; + + std::string bufString; + std::string iString; + std::string fString; + std::string filename = "SimCalorimetry/EcalTrigPrimProducers/data/" + dbFilename_; + std::string finalFileName; + size_t slash = dbFilename_.find('/'); + if (slash != 0) { + edm::FileInPath fileInPath(filename); + finalFileName = fileInPath.fullPath(); + } else { + finalFileName = dbFilename_; + edm::LogWarning("EcalTPG") << "Couldnt find database file via fileinpath, " + "trying with pathname directly!!"; + } + + int k = 0; + + GzInputStream gis(finalFileName.c_str()); + while (gis >> dataCard) { + if (dataCard == "CRYSTAL") { + gis >> std::dec >> id; + + std::string st3; + std::string st4; + std::string st5; + + if (flagPrint_) { + // Print this comment only one time + if (k == 0) + std::cout << "COMMENT ====== barrel crystals ====== " << std::endl; + + if (k == 61200) + std::cout << "COMMENT ====== endcap crystals ====== " << std::endl; + + k = k + 1; + + std::cout << dataCard << " " << std::dec << id << std::endl; + } + + param.clear(); + for (int i = 0; i < 9; i++) { + gis >> std::hex >> data; + param.push_back(data); + + if (flagPrint_) { + if (i < 3) { + std::ostringstream oss; + oss << std::hex << data; + std::string result1 = oss.str(); + + st3.append("0x"); + st3.append(result1); + if (i != 2) + st3.append(" "); + + } else if (i > 2 && i < 6) { + std::ostringstream oss; + oss << std::hex << data; + std::string result2 = oss.str(); + + st4.append("0x"); + st4.append(result2); + if (i != 5) + st4.append(" "); + } else if (i > 5 && i < 9) { + std::ostringstream oss; + oss << std::hex << data; + std::string result3 = oss.str(); + + st5.append("0x"); + st5.append(result3); + if (i != 8) + st5.append(" "); + } + } + + } // end for + + if (flagPrint_) { + std::cout << " " << st3 << std::endl; + std::cout << " " << st4 << std::endl; + std::cout << " " << st5 << std::endl; + } + + mapXtal_[id] = param; + } + + if (dataCard == "STRIP_EB") { + gis >> std::dec >> id; + + std::string st1; + + if (flagPrint_) + std::cout << dataCard << " " << std::dec << id << std::endl; + + param.clear(); + for (int i = 0; i < NBstripparams[0]; i++) { + gis >> std::hex >> data; + param.push_back(data); + + if (flagPrint_) { + if (i == 0) { + std::cout << "0x" << std::hex << data << std::endl; + } else if (i == 1) { + std::cout << "" << std::hex << data << std::endl; + } else if (i > 1) { + std::ostringstream oss; + if (i == 2) { + oss << "0x" << std::hex << data; + std::string result4 = oss.str(); + st1.append(result4); + } else if (i == 3) { + std::ostringstream oss; + oss << " 0x" << std::hex << data; + std::string result5 = oss.str(); + + st1.append(result5); + std::cout << "" << st1 << std::endl; + } + } + } + } + + mapStrip_[0][id] = param; + } + + if (dataCard == "STRIP_EE") { + gis >> std::dec >> id; + + std::string st6; + + if (flagPrint_) { + std::cout << dataCard << " " << std::dec << id << std::endl; + } + + param.clear(); + for (int i = 0; i < NBstripparams[1]; i++) { + gis >> std::hex >> data; + param.push_back(data); + + if (flagPrint_) { + if (i == 0) { + std::cout << "0x" << std::hex << data << std::endl; + } else if (i == 1) { + std::cout << " " << std::hex << data << std::endl; + } else if (i > 1) { + std::ostringstream oss; + if (i == 2) { + oss << "0x" << std::hex << data; + std::string result4 = oss.str(); + st6.append(result4); + } else if (i == 3) { + std::ostringstream oss; + oss << " 0x" << std::hex << data; + std::string result5 = oss.str(); + + st6.append(result5); + std::cout << "" << st6 << std::endl; + } + } + } + } + + mapStrip_[1][id] = param; + } + + if (dataCard == "TOWER_EE") { + gis >> std::dec >> id; + + if (flagPrint_) + std::cout << dataCard << " " << std::dec << id << std::endl; + + param.clear(); + for (int i = 0; i < 2; i++) { + gis >> std::hex >> data; + param.push_back(data); + + if (flagPrint_) { + if (i == 1) { + std::cout << "0x" << std::dec << data << std::endl; + } else { + std::cout << " " << std::dec << data << std::endl; + } + } + } + + mapTower_[1][id] = param; + } + + if (dataCard == "TOWER_EB") { + gis >> std::dec >> id; + + if (flagPrint_) + std::cout << dataCard << " " << std::dec << id << std::endl; + + param.clear(); + for (int i = 0; i < 3; i++) { + gis >> std::dec >> data; + + if (flagPrint_) { + std::cout << " " << std::dec << data << std::endl; + } + + param.push_back(data); + } + + mapTower_[0][id] = param; + } + } +} + +/// This method is not used at all, however is a reminder that something alike will probably be needed once the mapping EB to BCPs will be in place +std::vector EcalEBTrigPrimPhase2ESProducer::getRange( + int subdet, int tccNb, int towerNbInTcc, int stripNbInTower, int xtalNbInStrip) { + std::vector range; + if (subdet == 0) { + // Barrel + range.push_back(37); // stccNbMin + range.push_back(73); // tccNbMax + range.push_back(1); // towerNbMin + range.push_back(69); // towerNbMax + range.push_back(1); // stripNbMin + range.push_back(6); // stripNbMax + range.push_back(1); // xtalNbMin + range.push_back(6); // xtalNbMax + } + + if (tccNb > 0) { + range[0] = tccNb; + range[1] = tccNb + 1; + } + if (towerNbInTcc > 0) { + range[2] = towerNbInTcc; + range[3] = towerNbInTcc + 1; + } + if (stripNbInTower > 0) { + range[4] = stripNbInTower; + range[5] = stripNbInTower + 1; + } + if (xtalNbInStrip > 0) { + range[6] = xtalNbInStrip; + range[7] = xtalNbInStrip + 1; + } + + return range; +} + +DEFINE_FWK_EVENTSETUP_MODULE(EcalEBTrigPrimPhase2ESProducer); diff --git a/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2Producer.cc b/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2Producer.cc new file mode 100644 index 0000000000000..a5d5576f7b77b --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2Producer.cc @@ -0,0 +1,257 @@ +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/EventSetup.h" +#include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/Utilities/interface/EDGetToken.h" +#include "FWCore/Utilities/interface/ESGetToken.h" +#include "FWCore/Utilities/interface/InputTag.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +// +#include "DataFormats/Common/interface/Handle.h" +#include "DataFormats/Provenance/interface/ProductID.h" +#include "DataFormats/Provenance/interface/ParameterSetID.h" +#include "DataFormats/Provenance/interface/Provenance.h" +#include "DataFormats/EcalDigi/interface/EcalDigiCollections.h" +#include "CondFormats/EcalObjects/interface/EcalLiteDTUPedestals.h" +#include "CondFormats/DataRecord/interface/EcalLiteDTUPedestalsRcd.h" + +#include "CondFormats/DataRecord/interface/EcalTPGCrystalStatusRcd.h" +#include "CondFormats/EcalObjects/interface/EcalTPGCrystalStatus.h" +#include "CondFormats/DataRecord/interface/EcalEBPhase2TPGPedestalsRcd.h" +#include "CondFormats/DataRecord/interface/EcalEBPhase2TPGLinearizationConstRcd.h" +#include "CondFormats/DataRecord/interface/EcalEBPhase2TPGAmplWeightIdMapRcd.h" +#include "CondFormats/DataRecord/interface/EcalEBPhase2TPGTimeWeightIdMapRcd.h" +#include "CondFormats/DataRecord/interface/EcalTPGWeightGroupRcd.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGAmplWeightIdMap.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGTimeWeightIdMap.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGLinearizationConst.h" +#include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGPedestals.h" +#include "CondFormats/EcalObjects/interface/EcalTPGWeightGroup.h" +#include "CondFormats/DataRecord/interface/EcalTPGTowerStatusRcd.h" +#include "CondFormats/DataRecord/interface/EcalTPGSpikeRcd.h" +#include "CondFormats/EcalObjects/interface/EcalTPGSpike.h" +#include "CondFormats/EcalObjects/interface/EcalTPGTowerStatus.h" + +#include "Geometry/CaloGeometry/interface/CaloGeometry.h" +#include "Geometry/CaloTopology/interface/EcalTrigTowerConstituentsMap.h" +#include "Geometry/Records/interface/CaloGeometryRecord.h" + +// We keep these lines for future posssible necessary additions +//#include "CondFormats/EcalObjects/interface/EcalTPGTowerStatus.h" +//#include "CondFormats/DataRecord/interface/EcalTPGStripStatusRcd.h" +//#include "CondFormats/EcalObjects/interface/EcalTPGStripStatus.h" +#include "SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TrigPrimAlgo.h" +#include + +// Class declaration +/** \class EcalEBTrigPrimPhase2Producer \author L. Lutton, N. Marinelli - Univ. of Notre Dame Description: forPhase II It consumes the new Phase2 digis based on the new EB electronics and plugs in the main steering algo for TP emulation It produces the EcalEBPhase2TrigPrimDigiCollection */ + +class EcalEBPhase2TrigPrimAlgo; + +class EcalEBTrigPrimPhase2Producer : public edm::stream::EDProducer<> { +public: + explicit EcalEBTrigPrimPhase2Producer(const edm::ParameterSet& conf); + + ~EcalEBTrigPrimPhase2Producer() override; + + void beginRun(const edm::Run& run, const edm::EventSetup& es) override; + void endRun(const edm::Run&, const edm::EventSetup&) override; + void produce(edm::Event& e, const edm::EventSetup& c) override; + static void fillDescriptions(edm::ConfigurationDescriptions&); + +private: + std::unique_ptr algo_; + bool debug_; + bool famos_; + int nEvent_; + edm::EDGetTokenT tokenEBdigi_; + edm::ESGetToken + theEcalEBPhase2TPGLinearization_Token_; + edm::ESGetToken theEcalEBPhase2TPGPedestals_Token_; + + edm::ESGetToken theEcalTPGPedestals_Token_; + + edm::ESGetToken theEcalTPGCrystalStatus_Token_; + edm::ESGetToken theEcalEBTPGAmplWeightIdMap_Token_; + edm::ESGetToken theEcalEBTPGTimeWeightIdMap_Token_; + + edm::ESGetToken theEcalTPGWeightGroup_Token_; + + edm::ESGetToken theEcalTPGTowerStatus_Token_; + edm::ESGetToken theEcalTPGSpike_Token_; + + edm::ESGetToken eTTmapToken_; + edm::ESGetToken theGeometryToken_; + + int binOfMaximum_; + bool fillBinOfMaximumFromHistory_; + + unsigned long long getRecords(edm::EventSetup const& setup); + unsigned long long cacheID_; +}; + +EcalEBTrigPrimPhase2Producer::EcalEBTrigPrimPhase2Producer(const edm::ParameterSet& iConfig) + : debug_(iConfig.getParameter("Debug")), + famos_(iConfig.getParameter("Famos")), + binOfMaximum_(iConfig.getParameter("binOfMaximum")) { + tokenEBdigi_ = consumes(iConfig.getParameter("barrelEcalDigis")); + + eTTmapToken_ = esConsumes(); + theGeometryToken_ = esConsumes(); + + theEcalTPGPedestals_Token_ = + esConsumes(); + theEcalEBPhase2TPGPedestals_Token_ = + esConsumes(); + + theEcalTPGCrystalStatus_Token_ = + esConsumes(); + theEcalEBPhase2TPGLinearization_Token_ = + esConsumes(); + theEcalEBTPGAmplWeightIdMap_Token_ = + esConsumes(); + theEcalEBTPGTimeWeightIdMap_Token_ = + esConsumes(); + theEcalTPGWeightGroup_Token_ = esConsumes(); + + //register your products + produces(); +} + +void EcalEBTrigPrimPhase2Producer::beginRun(edm::Run const& run, edm::EventSetup const& setup) { + auto const& theGeometry = setup.getData(theGeometryToken_); + auto const& eTTmap = setup.getData(eTTmapToken_); + + algo_ = std::make_unique(&eTTmap, &theGeometry, binOfMaximum_, debug_); + + // get a first version of the records + cacheID_ = this->getRecords(setup); + + nEvent_ = 0; +} + +void EcalEBTrigPrimPhase2Producer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.add("Debug", false); + desc.add("Famos", false); + desc.add("BinOfMaximum", 6); // this needs to be at the same value used for the Phase2 LiteDTU digis ! + desc.add("barrelEcalDigis", edm::InputTag("simEcalUnsuppressedDigis")); +} + +unsigned long long EcalEBTrigPrimPhase2Producer::getRecords(edm::EventSetup const& setup) { + // get parameter records for xtals + auto theEcalEBPhase2TPGLinearization_handle = setup.getHandle(theEcalEBPhase2TPGLinearization_Token_); + const EcalEBPhase2TPGLinearizationConst* ecaltpLin = theEcalEBPhase2TPGLinearization_handle.product(); + // + edm::ESHandle theEcalTPGPedestals_handle = setup.getHandle(theEcalTPGPedestals_Token_); + const EcalLiteDTUPedestalsMap* ecaltpPed = theEcalTPGPedestals_handle.product(); + // + // auto theEcalEBPhase2TPGPedestals_handle = setup.getHandle(theEcalEBPhase2TPGPedestals_Token_); + //const EcalEBPhase2TPGPedestalsMap* ebTPPedestals = theEcalEBPhase2TPGPedestals_handle.product(); + // + edm::ESHandle theEcalTPGCrystalStatus_handle = setup.getHandle(theEcalTPGCrystalStatus_Token_); + const EcalTPGCrystalStatus* ecaltpgBadX = theEcalTPGCrystalStatus_handle.product(); + // + edm::ESHandle theEcalEBTPGAmplWeightIdMap_handle = + setup.getHandle(theEcalEBTPGAmplWeightIdMap_Token_); + const EcalEBPhase2TPGAmplWeightIdMap* ecaltpgAmplWeightMap = theEcalEBTPGAmplWeightIdMap_handle.product(); + // + edm::ESHandle theEcalEBTPGTimeWeightIdMap_handle = + setup.getHandle(theEcalEBTPGTimeWeightIdMap_Token_); + const EcalEBPhase2TPGTimeWeightIdMap* ecaltpgTimeWeightMap = theEcalEBTPGTimeWeightIdMap_handle.product(); + // + edm::ESHandle theEcalTPGWeightGroup_handle = setup.getHandle(theEcalTPGWeightGroup_Token_); + const EcalTPGWeightGroup* ecaltpgWeightGroup = theEcalTPGWeightGroup_handle.product(); + // These commented out lines are for reminder for possible needed implementations + //edm::ESHandle theEcalTPGTowerStatus_handle = setup.getHandle(theEcalTPGTowerStatus_Token_); + //const EcalTPGTowerStatus* ecaltpgBadTT = theEcalTPGTowerStatus_handle.product(); + // + //edm::ESHandle theEcalTPGSpike_handle = setup.getHandle(theEcalTPGSpike_Token_); + //const EcalTPGSpike* ecaltpgSpike = theEcalTPGSpike_handle.product(); + + //////////////// + algo_->setPointers(ecaltpPed, ecaltpLin, ecaltpgBadX, ecaltpgAmplWeightMap, ecaltpgTimeWeightMap, ecaltpgWeightGroup); + + return setup.get().cacheIdentifier(); + // return setup.get().cacheIdentifier(); +} + +void EcalEBTrigPrimPhase2Producer::endRun(edm::Run const& run, edm::EventSetup const& setup) { algo_.reset(); } + +EcalEBTrigPrimPhase2Producer::~EcalEBTrigPrimPhase2Producer() {} + +// ------------ method called to produce the data ------------ +void EcalEBTrigPrimPhase2Producer::produce(edm::Event& e, const edm::EventSetup& iSetup) { + nEvent_++; + + // get input collections + edm::Handle barrelDigiHandle; + + if (!e.getByToken(tokenEBdigi_, barrelDigiHandle)) { + edm::EDConsumerBase::Labels labels; + labelsForToken(tokenEBdigi_, labels); + edm::LogWarning("EcalTPG") << " Couldnt find Barrel digis " << labels.module << " and label " + << labels.productInstance << "!!!"; + } + const auto* ebdigi = barrelDigiHandle.product(); + + if (debug_) + LogDebug("EcalEBTrigPrimPhase2Producer") + << " EcalTPG" + << " =================> Treating event " << nEvent_ << ", Number of EB digis " + << barrelDigiHandle.product()->size() << std::endl; + + auto pOut = std::make_unique(); + + // invoke algorithm + algo_->run(ebdigi, *pOut); + + if (debug_) { + LogDebug("EcalEBTrigPrimPhase2Producer") + << "produce" + << " For Barrel " << pOut->size() << " TP Digis were produced" << std::endl; + } + + // debug prints if TP >0 + int nonZeroTP = 0; + + if (debug_) + LogDebug("EcalEBTrigPrimPhase2Producer") << "EcalTPG Printing only non zero TP " << std::endl; + + int nXstal = 0; + for (unsigned int i = 0; i < pOut->size(); ++i) { + nXstal++; + + if (debug_) { + for (int isam = 0; isam < (*pOut)[i].size(); ++isam) { + if ((*pOut)[i][isam].encodedEt() > 0) { + nonZeroTP++; + LogDebug("EcalEBTrigPrimPhase2Producer") + << " For xStal n " << nXstal << " xTsal Id " << (((*pOut)[i])).id() << ", TP is " << (*pOut)[i] + << " (*pOut)[i][isam].raw() " << (*pOut)[i][isam].raw() << " (*pOut)[i][isam].encodedEt() " + << (*pOut)[i][isam].encodedEt() << " (*pOut)[i][isam].time() " << (*pOut)[i][isam].time() << std::endl; + } + } + } + + } // End loop over crystals + + if (debug_) { + LogDebug("EcalEBTrigPrimPhase2Producer") + << "EcalTPG" + << "\n =================> For Barrel , " << pOut->size() << " TP Digis were produced (including zero ones)" + << " Non zero primitives were " << nonZeroTP << std::endl; + } + + edm::LogInfo("EcalEBTrigPrimPhase2Producer") + << "EcalTPG" + << "\n =================> For Barrel , " << pOut->size() << " TP Digis were produced (including zero ones)" + << " Non zero primitives were " << nonZeroTP << std::endl; + + // put result into the Event + e.put(std::move(pOut)); +} + +DEFINE_FWK_MODULE(EcalEBTrigPrimPhase2Producer); diff --git a/SimCalorimetry/EcalEBTrigPrimProducers/plugins/SealModules.cc b/SimCalorimetry/EcalEBTrigPrimProducers/plugins/SealModules.cc index e959e18ebaa06..f439ac86bd7cc 100644 --- a/SimCalorimetry/EcalEBTrigPrimProducers/plugins/SealModules.cc +++ b/SimCalorimetry/EcalEBTrigPrimProducers/plugins/SealModules.cc @@ -1,7 +1,4 @@ #include "FWCore/Framework/interface/MakerMacros.h" #include "EcalEBTrigPrimProducer.h" -#include "EcalEBTrigPrimAnalyzer.h" - DEFINE_FWK_MODULE(EcalEBTrigPrimProducer); -DEFINE_FWK_MODULE(EcalEBTrigPrimAnalyzer); diff --git a/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cff.py b/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cff.py new file mode 100644 index 0000000000000..271c761472507 --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cff.py @@ -0,0 +1,15 @@ +import FWCore.ParameterSet.Config as cms + +# Trigger Primitive Producer +from SimCalorimetry.EcalEBTrigPrimProducers.ecalEBTriggerPrimitivePhase2Digis_cfi import * + + +# esmodule creating records + corresponding empty essource +# when commented, one takes the configuration from the global tag +# + + + +from Configuration.Eras.Modifier_phase2_ecalTP_devel_cff import phase2_ecalTP_devel +phase2_ecalTP_devel.toModify( simEcalEBTriggerPrimitivePhase2Digis) + diff --git a/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cfi.py b/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cfi.py new file mode 100644 index 0000000000000..17b9da80f77bb --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cfi.py @@ -0,0 +1,15 @@ +import FWCore.ParameterSet.Config as cms + +# +# attention: default is changed to work on unsuppressed digis!! ############## +# + +simEcalEBTriggerPrimitivePhase2Digis = cms.EDProducer("EcalEBTrigPrimPhase2Producer", + barrelEcalDigis = cms.InputTag("simEcalUnsuppressedDigis"), + binOfMaximum = cms.int32(6), + Famos = cms.bool(False), + TcpOutput = cms.bool(False), + Debug = cms.bool(False) +) + + diff --git a/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2ESProducer_cff.py b/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2ESProducer_cff.py new file mode 100644 index 0000000000000..ab45cd4f266eb --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2ESProducer_cff.py @@ -0,0 +1,73 @@ +import os +import FWCore.ParameterSet.Config as cms + +# esmodule creating records + corresponding empty essource +EcalEBTrigPrimPhase2ESProducer = cms.ESProducer("EcalEBTrigPrimPhase2ESProducer", + DatabaseFile = cms.untracked.string('TPG_beamv5_MC_startup.txt.gz'), + WeightTextFile = cms.FileInPath('SimCalorimetry/EcalEBTrigPrimProducers/data/AmpTimeOnPeakXtalWeightsCMSSWPulse_8samples_peakOnSix_WithAndyFixes.txt.gz'), + WriteInFile = cms.bool(False) +) + +tpparams = cms.ESSource("EmptyESSource", + recordName = cms.string('EcalEBPhase2TPGLinearizationConstRcd'), + iovIsRunNotTime = cms.bool(True), + firstValid = cms.vuint32(1) +) + +tpparams2 = cms.ESSource("EmptyESSource", + recordName = cms.string('EcalEBPhase2TPGPedestalsRcd'), + iovIsRunNotTime = cms.bool(True), + firstValid = cms.vuint32(1) +) + + +tpparams4 = cms.ESSource("EmptyESSource", + recordName = cms.string('EcalEBPhase2TPGAmplWeightIdMapRcd'), + iovIsRunNotTime = cms.bool(True), + firstValid = cms.vuint32(1) +) + +tpparams17 = cms.ESSource("EmptyESSource", + recordName = cms.string('EcalEBPhase2TPGTimeWeightIdMapRcd'), + iovIsRunNotTime = cms.bool(True), + firstValid = cms.vuint32(1) +) + + +tpparams5 = cms.ESSource("EmptyESSource", + recordName = cms.string('EcalTPGWeightGroupRcd'), + iovIsRunNotTime = cms.bool(True), + firstValid = cms.vuint32(1) +) + + +tpparams12 = cms.ESSource("EmptyESSource", + recordName = cms.string('EcalTPGPhysicsConstRcd'), + iovIsRunNotTime = cms.bool(True), + firstValid = cms.vuint32(1) +) + +tpparams13 = cms.ESSource("EmptyESSource", + recordName = cms.string('EcalTPGCrystalStatusRcd'), + iovIsRunNotTime = cms.bool(True), + firstValid = cms.vuint32(1) +) + +tpparams14 = cms.ESSource("EmptyESSource", + recordName = cms.string('EcalTPGTowerStatusRcd'), + iovIsRunNotTime = cms.bool(True), + firstValid = cms.vuint32(1) +) + +tpparams15 = cms.ESSource("EmptyESSource", + recordName = cms.string('EcalTPGSpikeRcd'), + iovIsRunNotTime = cms.bool(True), + firstValid = cms.vuint32(1) +) + +tpparams16 = cms.ESSource("EmptyESSource", + recordName = cms.string('EcalTPGStripStatusRcd'), + iovIsRunNotTime = cms.bool(True), + firstValid = cms.vuint32(1) +) + diff --git a/SimCalorimetry/EcalEBTrigPrimProducers/test/testPhase2_13_1_0_pre3.py b/SimCalorimetry/EcalEBTrigPrimProducers/test/testPhase2_13_1_0_pre3.py new file mode 100644 index 0000000000000..5d15178047eb2 --- /dev/null +++ b/SimCalorimetry/EcalEBTrigPrimProducers/test/testPhase2_13_1_0_pre3.py @@ -0,0 +1,164 @@ +# Auto generated configuration file +# using: +# Revision: 1.19 +# Source: /local/reps/CMSSW/CMSSW/Configuration/Applications/python/ConfigBuilder.py,v +# with command line options: TTbar_14TeV_TuneCP5_cfi --conditions auto:phase2_realistic_T15 -n 1 --era Phase2C10 --eventcontent FEVTDEBUG --relval +#9000,100 -s GEN,SIM,DIGI --datatier GEN-SIM-DIGI --beamspot HLLHC14TeV --geometry Extended2026D60 --fileout file:step1_UpToDigi.root + + +import FWCore.ParameterSet.Config as cms +from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9 +from Configuration.Eras.Modifier_phase2_ecal_devel_cff import phase2_ecal_devel +from Configuration.Eras.Modifier_phase2_ecalTP_devel_cff import phase2_ecalTP_devel + +process = cms.Process('DIGI',Phase2C17I13M9,phase2_ecal_devel,phase2_ecalTP_devel) + +# import of standard configurations +process.load('Configuration.StandardSequences.Services_cff') +process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi') +process.load('FWCore.MessageService.MessageLogger_cfi') +process.load('Configuration.EventContent.EventContent_cff') +process.load('SimGeneral.MixingModule.mixNoPU_cfi') +process.load('Configuration.Geometry.GeometryExtended2026D88Reco_cff') +process.load('Configuration.Geometry.GeometryExtended2026D88_cff') +process.load('Configuration.StandardSequences.MagneticField_cff') +process.load('Configuration.StandardSequences.Generator_cff') +process.load('IOMC.EventVertexGenerators.VtxSmearedHLLHC14TeV_cfi') +process.load('GeneratorInterface.Core.genFilterSummary_cff') +process.load('Configuration.StandardSequences.SimIdeal_cff') +process.load('Configuration.StandardSequences.Digi_cff') +process.load('Configuration.StandardSequences.EndOfProcess_cff') +process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') + +process.maxEvents = cms.untracked.PSet( + input = cms.untracked.int32(1), + output = cms.optional.untracked.allowed(cms.int32,cms.PSet) +) + + +process.MessageLogger = cms.Service("MessageLogger", + destinations = cms.untracked.vstring('messages'), + messages = cms.untracked.PSet(threshold = cms.untracked.string('DEBUG')), + debugModules = cms.untracked.vstring('*') + + +) + + + +# Input source +process.source = cms.Source("EmptySource") + +process.options = cms.untracked.PSet( + FailPath = cms.untracked.vstring(), + IgnoreCompletely = cms.untracked.vstring(), + Rethrow = cms.untracked.vstring(), + SkipEvent = cms.untracked.vstring(), + allowUnscheduled = cms.obsolete.untracked.bool, + canDeleteEarly = cms.untracked.vstring(), + emptyRunLumiMode = cms.obsolete.untracked.string, + eventSetup = cms.untracked.PSet( + forceNumberOfConcurrentIOVs = cms.untracked.PSet( + + ), + numberOfConcurrentIOVs = cms.untracked.uint32(1) + ), + fileMode = cms.untracked.string('FULLMERGE'), + forceEventSetupCacheClearOnNewRun = cms.untracked.bool(False), + makeTriggerResults = cms.obsolete.untracked.bool, + numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(1), + numberOfConcurrentRuns = cms.untracked.uint32(1), + numberOfStreams = cms.untracked.uint32(0), + numberOfThreads = cms.untracked.uint32(1), + printDependencies = cms.untracked.bool(False), + sizeOfStackForThreadsInKB = cms.optional.untracked.uint32, + throwIfIllegalParameter = cms.untracked.bool(True), + wantSummary = cms.untracked.bool(False) +) + + + +# Production Info +process.configurationMetadata = cms.untracked.PSet( + annotation = cms.untracked.string('TTbar_14TeV_TuneCP5_cfi nevts:1'), + name = cms.untracked.string('Applications'), + version = cms.untracked.string('$Revision: 1.19 $') +) + +# Output definition + +process.FEVTDEBUGoutput = cms.OutputModule("PoolOutputModule", + SelectEvents = cms.untracked.PSet( + SelectEvents = cms.vstring('generation_step') + ), + dataset = cms.untracked.PSet( + dataTier = cms.untracked.string('GEN-SIM-DIGI'), + filterName = cms.untracked.string('') + ), + fileName = cms.untracked.string('file:/tmp/nancy/testGamma_Nancy.root'), + outputCommands = process.FEVTDEBUGEventContent.outputCommands, + splitLevel = cms.untracked.int32(0) +) + +# Additional output definition + +# Other statements +process.genstepfilter.triggerConditions=cms.vstring("generation_step") +from Configuration.AlCa.GlobalTag import GlobalTag +process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase2_realistic_T21', '') + +process.GlobalTag.toGet = cms.VPSet( + cms.PSet(record = cms.string("EcalSimPulseShapeRcd"), + tag = cms.string("EcalSimPulseShapePhaseII"), + connect = cms.string("frontier://FrontierProd/CMS_CONDITIONS") + ) +) + + + +process.generator = cms.EDFilter("Pythia8PtGun", + PGunParameters = cms.PSet( + AddAntiParticle = cms.bool(True), + MaxEta = cms.double(1.4), + MaxPhi = cms.double(3.14159265359), + MaxPt = cms.double(1000.01), + MinEta = cms.double(-1.4), + MinPhi = cms.double(-3.14159265359), + MinPt = cms.double(0.5), + ParticleID = cms.vint32(11) + ), + PythiaParameters = cms.PSet( + parameterSets = cms.vstring() + ), + Verbosity = cms.untracked.int32(0), + firstRun = cms.untracked.uint32(1), + psethack = cms.string('single electron flat Pt 0.5 to 100 GeV ') +) + +process.ProductionFilterSequence = cms.Sequence(process.generator) + +# Path and EndPath definitions +process.generation_step = cms.Path(process.pgen) +process.simulation_step = cms.Path(process.psim) +process.digitisation_step = cms.Path(process.pdigi) +process.genfiltersummary_step = cms.EndPath(process.genFilterSummary) +process.endjob_step = cms.EndPath(process.endOfProcess) +process.FEVTDEBUGoutput_step = cms.EndPath(process.FEVTDEBUGoutput) + +# Schedule definition +process.schedule = cms.Schedule(process.generation_step,process.genfiltersummary_step,process.simulation_step,process.digitisation_step,process.endjob_step,process.FEVTDEBUGoutput_step) +from PhysicsTools.PatAlgos.tools.helpers import associatePatAlgosToolsTask +associatePatAlgosToolsTask(process) +# filter all path with the production filter sequence +for path in process.paths: + getattr(process,path).insert(0, process.ProductionFilterSequence) + + + +# Customisation from command line + +# Add early deletion of temporary data products to reduce peak memory need +from Configuration.StandardSequences.earlyDeleteSettings_cff import customiseEarlyDelete +process = customiseEarlyDelete(process) +# End adding early deletion + From 1c4c03807bcd0a0ca3cdc4af4b0fc80c9dd2844d Mon Sep 17 00:00:00 2001 From: jtao Date: Fri, 8 Dec 2023 15:01:09 +0100 Subject: [PATCH 067/281] Codes improved according to the comments from vlimant --- .../NanoAOD/plugins/VertexTableProducer.cc | 31 ++++++++++--------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc b/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc index 1249a71baa816..61b149c721e0e 100644 --- a/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc +++ b/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc @@ -140,26 +140,29 @@ void VertexTableProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSe "score", pvsScoreProd.get(pvsIn.id(), 0), "main primary vertex score, i.e. sum pt2 of clustered objects", 8); float pv_sumpt2 = 0.0; - for (size_t i = 0; i < (*pfcIn).size(); i++) { - if ((*pfcIn)[i].charge() == 0) { + for (const auto& obj : *pfcIn) { + if (obj.charge() == 0) { continue; } // skip neutrals - double dz = fabs((*pfcIn)[i].dz((*pvsIn)[0].position())); - int include_pfc = 0; - if (dz < 0.2) - include_pfc = 1; - for (size_t j = 1; j < (*pvsIn).size(); j++) { - double newdz = fabs((*pfcIn)[i].dz((*pvsIn)[j].position())); - if (newdz < dz) - include_pfc = 0; - } // this pf candidate belongs to other PV - if (include_pfc == 1) { - double pfc_pt = (*pfcIn)[i].pt(); + double dz = fabs(obj.dz((*pvsIn)[0].position())); + bool include_pfc = false; + if (dz < 0.2) { + include_pfc = true; + for (size_t j = 1; j < (*pvsIn).size(); j++) { + double newdz = fabs(obj.dz((*pvsIn)[j].position())); + if (newdz < dz) { + include_pfc = false; + break; + } + } // this pf candidate belongs to other PV + } + if (include_pfc) { + float pfc_pt = obj.pt(); pv_sumpt2 += pfc_pt * pfc_pt; } } pvTable->addColumnValue( - "sumpt2", pv_sumpt2, "sum pt2 of tracks for the main primary vertex", 10); //precision from 8 to 10 + "sumpt2", pv_sumpt2, "sum pt2 of pf charged candidates for the main primary vertex", 10); auto otherPVsTable = std::make_unique((*pvsIn).size() > 4 ? 3 : (*pvsIn).size() - 1, "Other" + pvName_, false); From 5c57af9f42ce7e8552ba679dc1707378702a8e1e Mon Sep 17 00:00:00 2001 From: Nicola Amapane Date: Sat, 9 Dec 2023 10:45:18 +0100 Subject: [PATCH 068/281] handle zero-events nanoAOD files --- PhysicsTools/NanoAOD/scripts/haddnano.py | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/PhysicsTools/NanoAOD/scripts/haddnano.py b/PhysicsTools/NanoAOD/scripts/haddnano.py index 1b7ce9831d4e6..ee8c3dec9d166 100755 --- a/PhysicsTools/NanoAOD/scripts/haddnano.py +++ b/PhysicsTools/NanoAOD/scripts/haddnano.py @@ -32,7 +32,7 @@ def zeroFill(tree, brName, brObj, allowNonBool=False): fileHandles = [] goFast = True for fn in files: - print("Adding file" + str(fn)) + print("Adding file", str(fn)) fileHandles.append(ROOT.TFile.Open(fn)) if fileHandles[-1].GetCompressionSettings() != fileHandles[0].GetCompressionSettings(): goFast = False @@ -44,7 +44,7 @@ def zeroFill(tree, brName, brObj, allowNonBool=False): for e in fileHandles[0].GetListOfKeys(): name = e.GetName() - print("Merging" + str(name)) + print("Merging", str(name)) obj = e.ReadObj() cl = ROOT.TClass.GetClass(e.GetClassName()) inputs = ROOT.TList() @@ -53,7 +53,18 @@ def zeroFill(tree, brName, brObj, allowNonBool=False): obj = obj.CloneTree(-1, "fast" if goFast else "") branchNames = set([x.GetName() for x in obj.GetListOfBranches()]) for fh in fileHandles[1:]: + if isTree and obj.GetName() == 'Events' and obj.GetEntries() == 0 : + # Zero-events first file. Skip to avoid messing up branches. + print(" 'Events' tree contsins no events; skipping") + obj = fh.GetListOfKeys().FindObject(name).ReadObj() + obj = obj.CloneTree(-1, "fast" if goFast else "") + branchNames = set([x.GetName() for x in obj.GetListOfBranches()]) + continue otherObj = fh.GetListOfKeys().FindObject(name).ReadObj() + if isTree and obj.GetName() == 'Events' and otherObj.GetEntries() == 0 : + # Zero-events file; skip + print(" 'Events' tree contains no events; skipping") + continue inputs.Add(otherObj) if isTree and obj.GetName() == 'Events': otherObj.SetAutoFlush(0) @@ -61,7 +72,7 @@ def zeroFill(tree, brName, brObj, allowNonBool=False): for x in otherObj.GetListOfBranches()]) missingBranches = list(branchNames - otherBranches) additionalBranches = list(otherBranches - branchNames) - print("missing: " + str(missingBranches) + "\n Additional:" + str(additionalBranches)) + print("missing: " + str(missingBranches) + "\n Additional: " + str(additionalBranches)) for br in missingBranches: # fill "Other" zeroFill(otherObj, br, obj.GetListOfBranches().FindObject(br)) @@ -76,7 +87,7 @@ def zeroFill(tree, brName, brObj, allowNonBool=False): for x in otherObj.GetListOfBranches()]) missingBranches = list(branchNames - otherBranches) additionalBranches = list(otherBranches - branchNames) - print("missing: " + str(missingBranches) + "\n Additional:" + str(additionalBranches)) + print("missing: " + str(missingBranches) + "\n Additional: " + str(additionalBranches)) for br in missingBranches: # fill "Other" zeroFill(otherObj, br, obj.GetListOfBranches( From 0aac02a0de6dd82fe0a1a03edaa33ef921bdc2dd Mon Sep 17 00:00:00 2001 From: swagata87 Date: Sat, 9 Dec 2023 18:58:27 +0100 Subject: [PATCH 069/281] use recHit thresshold for ecal iso --- DQMOffline/Trigger/interface/EgHLTOffHelper.h | 5 ++++ DQMOffline/Trigger/src/EgHLTOffHelper.cc | 4 ++-- .../src/GsfElectronAlgo.cc | 8 +++---- .../interface/EgammaRecHitIsolation.h | 22 ++++++++++++----- .../EgammaEcalRecHitIsolationProducer.cc | 18 +++++++------- .../src/EgammaRecHitIsolation.cc | 24 +++++++++++++++++-- .../src/ConversionTrackCandidateProducer.cc | 13 ++++++---- .../interface/PhotonIsolationCalculator.h | 3 +++ .../src/PhotonIsolationCalculator.cc | 9 +++---- 9 files changed, 76 insertions(+), 30 deletions(-) diff --git a/DQMOffline/Trigger/interface/EgHLTOffHelper.h b/DQMOffline/Trigger/interface/EgHLTOffHelper.h index 8dd397fdcdd62..6c61be5e0aead 100644 --- a/DQMOffline/Trigger/interface/EgHLTOffHelper.h +++ b/DQMOffline/Trigger/interface/EgHLTOffHelper.h @@ -49,6 +49,9 @@ #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/Framework/interface/ConsumesCollector.h" +#include "CondFormats/EcalObjects/interface/EcalPFRecHitThresholds.h" +#include "CondFormats/DataRecord/interface/EcalPFRecHitThresholdsRcd.h" + class EgammaHLTTrackIsolation; class HLTConfigProvider; class EcalSeverityLevelAlgo; @@ -200,6 +203,8 @@ namespace egHLT { template static bool getHandle(const edm::Event& event, const edm::EDGetTokenT& token, edm::Handle& handle); + + const EcalPFRecHitThresholds* thresholds = nullptr; }; template diff --git a/DQMOffline/Trigger/src/EgHLTOffHelper.cc b/DQMOffline/Trigger/src/EgHLTOffHelper.cc index a8a31a7f625b5..2ab709ef01819 100644 --- a/DQMOffline/Trigger/src/EgHLTOffHelper.cc +++ b/DQMOffline/Trigger/src/EgHLTOffHelper.cc @@ -309,7 +309,7 @@ void OffHelper::fillIsolData(const reco::GsfElectron& ele, OffEle::IsolData& iso } else isolData.hltTrksPho = 0.; if (calHLTEmIsol_) - isolData.hltEm = ecalIsolAlgoEB.getEtSum(&ele) + ecalIsolAlgoEE.getEtSum(&ele); + isolData.hltEm = ecalIsolAlgoEB.getEtSum(&ele, *thresholds) + ecalIsolAlgoEE.getEtSum(&ele, *thresholds); else isolData.hltEm = 0.; } @@ -475,7 +475,7 @@ void OffHelper::fillIsolData(const reco::Photon& pho, OffPho::IsolData& isolData } else isolData.hltTrks = 0.; if (calHLTEmIsol_) - isolData.hltEm = ecalIsolAlgoEB.getEtSum(&pho) + ecalIsolAlgoEE.getEtSum(&pho); + isolData.hltEm = ecalIsolAlgoEB.getEtSum(&pho, *thresholds) + ecalIsolAlgoEE.getEtSum(&pho, *thresholds); else isolData.hltEm = 0.; } diff --git a/RecoEgamma/EgammaElectronAlgos/src/GsfElectronAlgo.cc b/RecoEgamma/EgammaElectronAlgos/src/GsfElectronAlgo.cc index 7b58ade6e733c..233119531035d 100644 --- a/RecoEgamma/EgammaElectronAlgos/src/GsfElectronAlgo.cc +++ b/RecoEgamma/EgammaElectronAlgos/src/GsfElectronAlgo.cc @@ -1162,11 +1162,11 @@ void GsfElectronAlgo::createElectron(reco::GsfElectronCollection& electrons, dr04.hcalRecHitSumEtBc[id] = eventData.hadIsolation04Bc.getHcalEtSumBc(&ele, id + 1); } - dr03.ecalRecHitSumEt = eventData.ecalBarrelIsol03.getEtSum(&ele); - dr03.ecalRecHitSumEt += eventData.ecalEndcapIsol03.getEtSum(&ele); + dr03.ecalRecHitSumEt = eventData.ecalBarrelIsol03.getEtSum(&ele, thresholds); + dr03.ecalRecHitSumEt += eventData.ecalEndcapIsol03.getEtSum(&ele, thresholds); - dr04.ecalRecHitSumEt = eventData.ecalBarrelIsol04.getEtSum(&ele); - dr04.ecalRecHitSumEt += eventData.ecalEndcapIsol04.getEtSum(&ele); + dr04.ecalRecHitSumEt = eventData.ecalBarrelIsol04.getEtSum(&ele, thresholds); + dr04.ecalRecHitSumEt += eventData.ecalEndcapIsol04.getEtSum(&ele, thresholds); } dr03.pre7DepthHcal = false; diff --git a/RecoEgamma/EgammaIsolationAlgos/interface/EgammaRecHitIsolation.h b/RecoEgamma/EgammaIsolationAlgos/interface/EgammaRecHitIsolation.h index fc508e58ffdbd..56c79505c41fc 100644 --- a/RecoEgamma/EgammaIsolationAlgos/interface/EgammaRecHitIsolation.h +++ b/RecoEgamma/EgammaIsolationAlgos/interface/EgammaRecHitIsolation.h @@ -22,6 +22,8 @@ #include "RecoLocalCalo/EcalRecAlgos/interface/EcalSeverityLevelAlgo.h" #include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h" +#include "CondFormats/EcalObjects/interface/EcalPFRecHitThresholds.h" +#include "CondFormats/DataRecord/interface/EcalPFRecHitThresholdsRcd.h" class EgammaRecHitIsolation { public: @@ -36,11 +38,19 @@ class EgammaRecHitIsolation { const EcalSeverityLevelAlgo*, DetId::Detector detector); - double getEtSum(const reco::Candidate* emObject) const { return getSum_(emObject, true); } - double getEnergySum(const reco::Candidate* emObject) const { return getSum_(emObject, false); } + double getEtSum(const reco::Candidate* emObject, EcalPFRecHitThresholds const& thresholds) const { + return getSum_(emObject, true, &thresholds); + } + double getEnergySum(const reco::Candidate* emObject, EcalPFRecHitThresholds const& thresholds) const { + return getSum_(emObject, false, &thresholds); + } - double getEtSum(const reco::SuperCluster* emObject) const { return getSum_(emObject, true); } - double getEnergySum(const reco::SuperCluster* emObject) const { return getSum_(emObject, false); } + double getEtSum(const reco::SuperCluster* emObject, EcalPFRecHitThresholds const& thresholds) const { + return getSum_(emObject, true, &thresholds); + } + double getEnergySum(const reco::SuperCluster* emObject, EcalPFRecHitThresholds const& thresholds) const { + return getSum_(emObject, false, &thresholds); + } void setUseNumCrystals(bool b = true) { useNumCrystals_ = b; } void setVetoClustered(bool b = true) { vetoClustered_ = b; } @@ -61,8 +71,8 @@ class EgammaRecHitIsolation { ~EgammaRecHitIsolation(); private: - double getSum_(const reco::Candidate*, bool returnEt) const; - double getSum_(const reco::SuperCluster*, bool returnEt) const; + double getSum_(const reco::Candidate*, bool returnEt, const EcalPFRecHitThresholds* thresholds) const; + double getSum_(const reco::SuperCluster*, bool returnEt, const EcalPFRecHitThresholds* thresholds) const; double extRadius_; double intRadius_; diff --git a/RecoEgamma/EgammaIsolationAlgos/plugins/EgammaEcalRecHitIsolationProducer.cc b/RecoEgamma/EgammaIsolationAlgos/plugins/EgammaEcalRecHitIsolationProducer.cc index 0537893cef3f3..b10131924d649 100644 --- a/RecoEgamma/EgammaIsolationAlgos/plugins/EgammaEcalRecHitIsolationProducer.cc +++ b/RecoEgamma/EgammaIsolationAlgos/plugins/EgammaEcalRecHitIsolationProducer.cc @@ -55,6 +55,8 @@ class EgammaEcalRecHitIsolationProducer : public edm::global::EDProducer<> { edm::ESGetToken sevLvToken_; edm::ESGetToken caloGeometrytoken_; + + const EcalPFRecHitThresholds* thresholds = nullptr; }; #include "FWCore/Framework/interface/MakerMacros.h" @@ -150,21 +152,21 @@ void EgammaEcalRecHitIsolationProducer::produce(edm::StreamID, if (tryBoth_) { //barrel + endcap if (useIsolEt_) - isoValue = - ecalBarrelIsol.getEtSum(&(emObjectHandle->at(i))) + ecalEndcapIsol.getEtSum(&(emObjectHandle->at(i))); + isoValue = ecalBarrelIsol.getEtSum(&(emObjectHandle->at(i)), *thresholds) + + ecalEndcapIsol.getEtSum(&(emObjectHandle->at(i)), *thresholds); else - isoValue = ecalBarrelIsol.getEnergySum(&(emObjectHandle->at(i))) + - ecalEndcapIsol.getEnergySum(&(emObjectHandle->at(i))); + isoValue = ecalBarrelIsol.getEnergySum(&(emObjectHandle->at(i)), *thresholds) + + ecalEndcapIsol.getEnergySum(&(emObjectHandle->at(i)), *thresholds); } else if (fabs(superClus->eta()) < 1.479) { //barrel if (useIsolEt_) - isoValue = ecalBarrelIsol.getEtSum(&(emObjectHandle->at(i))); + isoValue = ecalBarrelIsol.getEtSum(&(emObjectHandle->at(i)), *thresholds); else - isoValue = ecalBarrelIsol.getEnergySum(&(emObjectHandle->at(i))); + isoValue = ecalBarrelIsol.getEnergySum(&(emObjectHandle->at(i)), *thresholds); } else { //endcap if (useIsolEt_) - isoValue = ecalEndcapIsol.getEtSum(&(emObjectHandle->at(i))); + isoValue = ecalEndcapIsol.getEtSum(&(emObjectHandle->at(i)), *thresholds); else - isoValue = ecalEndcapIsol.getEnergySum(&(emObjectHandle->at(i))); + isoValue = ecalEndcapIsol.getEnergySum(&(emObjectHandle->at(i)), *thresholds); } //we subtract off the electron energy here as well diff --git a/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc b/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc index 0e706fd61b8d3..ae738b30ac6ef 100644 --- a/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc +++ b/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc @@ -64,7 +64,9 @@ EgammaRecHitIsolation::EgammaRecHitIsolation(double extRadius, EgammaRecHitIsolation::~EgammaRecHitIsolation() {} -double EgammaRecHitIsolation::getSum_(const reco::Candidate* emObject, bool returnEt) const { +double EgammaRecHitIsolation::getSum_(const reco::Candidate* emObject, + bool returnEt, + const EcalPFRecHitThresholds* thresholds) const { double energySum = 0.; if (!caloHits_.empty()) { //Take the SC position @@ -96,6 +98,13 @@ double EgammaRecHitIsolation::getSum_(const reco::Candidate* emObject, bool retu float phiDiff = reco::deltaPhi(phi, phiclus); float energy = j->energy(); + float rhThres = 0.0; + if (thresholds != nullptr) { + rhThres = (*thresholds)[j->detid()]; // access ECAL PFRechit thresholds for noise cleaning + } + if (energy <= rhThres) + continue; + if (useNumCrystals_) { if (fabs(etaclus) < 1.479) { // Barrel num crystals, crystal width = 0.0174 if (fabs(etaDiff) < 0.0174 * etaSlice_) @@ -174,7 +183,9 @@ double EgammaRecHitIsolation::getSum_(const reco::Candidate* emObject, bool retu return energySum; } -double EgammaRecHitIsolation::getSum_(const reco::SuperCluster* sc, bool returnEt) const { +double EgammaRecHitIsolation::getSum_(const reco::SuperCluster* sc, + bool returnEt, + const EcalPFRecHitThresholds* thresholds) const { double energySum = 0.; if (!caloHits_.empty()) { //Take the SC position @@ -205,6 +216,15 @@ double EgammaRecHitIsolation::getSum_(const reco::SuperCluster* sc, bool returnE double phiDiff = reco::deltaPhi(phi, phiclus); double energy = j->energy(); + float rhThres = 0.0; + if (thresholds != nullptr) { + rhThres = (*thresholds)[j->detid()]; // access ECAL PFRechit thresholds for noise cleaning + } + std::cout << "rhThres = " << rhThres << " energy = " << energy << std::endl; + + if (energy <= rhThres) + continue; + if (useNumCrystals_) { if (fabs(etaclus) < 1.479) { // Barrel num crystals, crystal width = 0.0174 if (fabs(etaDiff) < 0.0174 * etaSlice_) diff --git a/RecoEgamma/EgammaPhotonProducers/src/ConversionTrackCandidateProducer.cc b/RecoEgamma/EgammaPhotonProducers/src/ConversionTrackCandidateProducer.cc index 617e56968f9d6..bb673e0c4bb97 100644 --- a/RecoEgamma/EgammaPhotonProducers/src/ConversionTrackCandidateProducer.cc +++ b/RecoEgamma/EgammaPhotonProducers/src/ConversionTrackCandidateProducer.cc @@ -43,7 +43,8 @@ #include "RecoTracker/Record/interface/NavigationSchoolRecord.h" #include "TrackingTools/DetLayers/interface/NavigationSchool.h" #include "RecoEgamma/EgammaElectronAlgos/interface/ElectronHcalHelper.h" - +#include "CondFormats/EcalObjects/interface/EcalPFRecHitThresholds.h" +#include "CondFormats/DataRecord/interface/EcalPFRecHitThresholdsRcd.h" #include class ConversionTrackCandidateProducer : public edm::stream::EDProducer<> { @@ -77,6 +78,8 @@ class ConversionTrackCandidateProducer : public edm::stream::EDProducer<> { const edm::ESGetToken navToken_; const edm::ESGetToken theCaloGeomToken_; const edm::ESGetToken sevlvToken_; + const edm::ESGetToken ecalPFRechitThresholdsToken_; + const EcalPFRecHitThresholds* thresholds = nullptr; double hOverEConeSize_; double maxHOverE_; @@ -149,7 +152,7 @@ ConversionTrackCandidateProducer::ConversionTrackCandidateProducer(const edm::Pa navToken_(esConsumes(edm::ESInputTag("", "SimpleNavigationSchool"))), theCaloGeomToken_(esConsumes()), sevlvToken_(esConsumes()), - + ecalPFRechitThresholdsToken_{esConsumes()}, theTrajectoryBuilder_(createBaseCkfTrajectoryBuilder( config.getParameter("TrajectoryBuilderPSet"), consumesCollector())), outInSeedFinder_{config, consumesCollector()}, @@ -279,6 +282,8 @@ void ConversionTrackCandidateProducer::produce(edm::Event& theEvent, const edm:: validEndcapSCHandle = false; } + thresholds = &theEventSetup.getData(ecalPFRechitThresholdsToken_); + // get the geometry from the event setup: theCaloGeom_ = theEventSetup.getHandle(theCaloGeomToken_); @@ -327,7 +332,7 @@ void ConversionTrackCandidateProducer::produce(edm::Event& theEvent, const edm:: auto const refprodOutInTrackC = theEvent.put(std::move(outInTrackCandidate_p), OutInTrackCandidateCollection_); //std::cout << "ConversionTrackCandidateProducer refprodOutInTrackC size " << (*(refprodOutInTrackC.product())).size() << "\n"; // - //std::cout << "ConversionTrackCandidateProducer Putting in the event " << (*inOutTrackCandidate_p).size() << " In Out track Candidates " << "\n"; + //std::cout << "ConversionTrackCandidateProducer Putting in the event " << (*inOutTrackCandidate_p).size() << " In Out track Candidates " << "\n"; auto const refprodInOutTrackC = theEvent.put(std::move(inOutTrackCandidate_p), InOutTrackCandidateCollection_); //std::cout << "ConversionTrackCandidateProducer refprodInOutTrackC size " << (*(refprodInOutTrackC.product())).size() << "\n"; @@ -389,7 +394,7 @@ void ConversionTrackCandidateProducer::buildCollections(bool isBarrel, ecalIso.doSeverityChecks(&ecalRecHits, severitiesexclEE_); } - double ecalIsolation = ecalIso.getEtSum(sc); + double ecalIsolation = ecalIso.getEtSum(sc, *thresholds); if (ecalIsolation > ecalIsoCut_offset_ + ecalIsoCut_slope_ * scEt) continue; diff --git a/RecoEgamma/PhotonIdentification/interface/PhotonIsolationCalculator.h b/RecoEgamma/PhotonIdentification/interface/PhotonIsolationCalculator.h index edbebc27626e4..fdfc118b2d613 100644 --- a/RecoEgamma/PhotonIdentification/interface/PhotonIsolationCalculator.h +++ b/RecoEgamma/PhotonIdentification/interface/PhotonIsolationCalculator.h @@ -24,6 +24,8 @@ #include "Geometry/CaloTopology/interface/CaloTowerConstituentsMap.h" #include "RecoEgamma/EgammaIsolationAlgos/interface/EgammaHcalIsolation.h" +#include "CondFormats/EcalObjects/interface/EcalPFRecHitThresholds.h" +#include "CondFormats/DataRecord/interface/EcalPFRecHitThresholdsRcd.h" class EcalSeverityLevelAlgo; class EcalSeverityLevelAlgoRcd; @@ -103,6 +105,7 @@ class PhotonIsolationCalculator { edm::ESGetToken hcalSevLvlComputerToken_; edm::ESGetToken towerMapToken_; edm::ESGetToken ecalSevLvlToken_; + edm::ESGetToken ecalPFRechitThresholdsToken_; edm::EDGetToken trackInputTag_; edm::EDGetToken beamSpotProducerTag_; diff --git a/RecoEgamma/PhotonIdentification/src/PhotonIsolationCalculator.cc b/RecoEgamma/PhotonIdentification/src/PhotonIsolationCalculator.cc index 8a3442f9da7ae..c38ab1467ef5b 100644 --- a/RecoEgamma/PhotonIdentification/src/PhotonIsolationCalculator.cc +++ b/RecoEgamma/PhotonIdentification/src/PhotonIsolationCalculator.cc @@ -49,8 +49,7 @@ void PhotonIsolationCalculator::setup(const edm::ParameterSet& conf, hcalSevLvlComputerToken_ = decltype(hcalSevLvlComputerToken_){iC.esConsumes()}; towerMapToken_ = decltype(towerMapToken_){iC.esConsumes()}; ecalSevLvlToken_ = iC.esConsumes(); - - // gsfRecoInputTag_ = conf.getParameter("GsfRecoCollection"); + ecalPFRechitThresholdsToken_ = iC.esConsumes(); modulePhiBoundary_ = conf.getParameter("modulePhiBoundary"); moduleEtaBoundary_ = conf.getParameter>("moduleEtaBoundary"); // @@ -497,6 +496,8 @@ double PhotonIsolationCalculator::calculateEcalRecHitIso(const reco::Photon* pho iEvent.getByToken(barrelecalCollection_, ecalhitsCollEB); + auto const& thresholds = iSetup.getData(ecalPFRechitThresholdsToken_); + const EcalRecHitCollection* rechitsCollectionEE_ = ecalhitsCollEE.product(); const EcalRecHitCollection* rechitsCollectionEB_ = ecalhitsCollEB.product(); @@ -511,7 +512,7 @@ double PhotonIsolationCalculator::calculateEcalRecHitIso(const reco::Photon* pho phoIsoEB.setUseNumCrystals(useNumXtals); phoIsoEB.doSeverityChecks(ecalhitsCollEB.product(), severityExclEB_); phoIsoEB.doFlagChecks(flagsEB_); - double ecalIsolEB = phoIsoEB.getEtSum(photon); + double ecalIsolEB = phoIsoEB.getEtSum(photon, thresholds); EgammaRecHitIsolation phoIsoEE( RCone, RConeInner, etaSlice, etMin, eMin, geoHandle, *rechitsCollectionEE_, sevLevel, DetId::Ecal); @@ -521,7 +522,7 @@ double PhotonIsolationCalculator::calculateEcalRecHitIso(const reco::Photon* pho phoIsoEE.doSeverityChecks(ecalhitsCollEE.product(), severityExclEE_); phoIsoEE.doFlagChecks(flagsEE_); - double ecalIsolEE = phoIsoEE.getEtSum(photon); + double ecalIsolEE = phoIsoEE.getEtSum(photon, thresholds); // delete phoIso; double ecalIsol = ecalIsolEB + ecalIsolEE; From 1b105c15b93e9e8b1938fc7f3e4aa7d5b65feefe Mon Sep 17 00:00:00 2001 From: swagata87 Date: Mon, 11 Dec 2023 10:57:03 +0100 Subject: [PATCH 070/281] remove cout --- RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc | 1 - 1 file changed, 1 deletion(-) diff --git a/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc b/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc index ae738b30ac6ef..c5dbe0e2ed336 100644 --- a/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc +++ b/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc @@ -220,7 +220,6 @@ double EgammaRecHitIsolation::getSum_(const reco::SuperCluster* sc, if (thresholds != nullptr) { rhThres = (*thresholds)[j->detid()]; // access ECAL PFRechit thresholds for noise cleaning } - std::cout << "rhThres = " << rhThres << " energy = " << energy << std::endl; if (energy <= rhThres) continue; From 42c02d7943ff9e80e466b930331e3881500659a1 Mon Sep 17 00:00:00 2001 From: AdrianoDee Date: Mon, 11 Dec 2023 12:34:47 +0100 Subject: [PATCH 071/281] Updating README, fix matrix --- .../PyReleaseValidation/python/relval_2017.py | 2 + .../PyReleaseValidation/scripts/README.md | 99 ++++++++++++++ .../scripts/runTheMatrix.py | 125 +++++++++++------- 3 files changed, 178 insertions(+), 48 deletions(-) diff --git a/Configuration/PyReleaseValidation/python/relval_2017.py b/Configuration/PyReleaseValidation/python/relval_2017.py index 094f0bccbeabb..3a4b2fe5b6d5f 100644 --- a/Configuration/PyReleaseValidation/python/relval_2017.py +++ b/Configuration/PyReleaseValidation/python/relval_2017.py @@ -46,6 +46,7 @@ # (Patatrack HCAL-only: TTbar - on CPU) # (Patatrack pixel-only: ZMM - on CPU: quadruplets, triplets) # (TTbar FastSim, TTbar FastSim PU, MinBiasFS for mixing)) +# (ZEE) # 2024 (TTbar, TTbar PU, TTbar PU premix) numWFIB = [10001.0,10002.0,10003.0,10004.0,10005.0,10006.0,10007.0,10008.0,10009.0,10059.0,10071.0, 10042.0,10024.0,10025.0,10026.0,10023.0,10224.0,10225.0,10424.0, @@ -83,6 +84,7 @@ 12434.521, 12450.501,12450.505, 14034.0,14234.0,14040.303, + 12425.0, 12834.0,13034.0,13034.99,] for numWF in numWFIB: diff --git a/Configuration/PyReleaseValidation/scripts/README.md b/Configuration/PyReleaseValidation/scripts/README.md index 24bfb66db9670..3403692c85f3d 100644 --- a/Configuration/PyReleaseValidation/scripts/README.md +++ b/Configuration/PyReleaseValidation/scripts/README.md @@ -289,3 +289,102 @@ matrix> All commands come with dynamic TAB-completion. There's also a transient history of the commands issued within a single session. Transient means that, after a session is closed, the history is lost. + +### Limited Matrix for (also) PR Testing + +The "limited" predefined set of workflows is used in PR integration testing. Here the workflows run. + +MC workflows for pp collisions: + +| **WF** | **Fragment/Input** | **Conditions** | **Era** | **Notes** | +|--- |--- |--- |--- |--- | +| | | | | | +| **Run1** | | | | | +| | | | | | +| 5.1 | TTbar_8TeV_TuneCUETP8M1 | run1_mc | | *FastSim* | +| 8 | RelValBeamHalo | run1_mc | | Cosmics | +| 9.0 | RelValHiggs200ChargedTaus | run1_mc | | | +| 25 | RelValTTbar | run1_mc | | | +| 101.0 | SingleElectronE120EHCAL | run1_mc | | + ECALHCAL.customise + fullMixCustomize_cff.setCrossingFrameOn | +| | | | | | +| **Run2** | | | | | +| | | | | | +| 7.3 | UndergroundCosmicSPLooseMu | run2_2018 | | | +| 1306.0 | RelValSingleMuPt1_UP15 | run2_mc | Run2_2016 | with miniAOD | +| 1330 | RelValZMM_13 | run2_mc | Run2_2016 | | +| 135.4 | ZEE_13TeV_TuneCUETP8M1 | run2_mc | Run2_2016 | *FastSim* | +| 25202.0 | RelValTTbar_13 | run2_mc | Run2_2016 | AVE_35_BX_25ns | +| 250202.181 | RelValTTbar_13 (PREMIX) | phase1_2018_realistic | Run2_2018 | | | +| | | | | | +| **Run3** | | | | | +| | | | | | +| 11634.0 | TTbar_14TeV | phase1_2022_realistic | Run3 | | +| 13234.0 | RelValTTbar_14TeV | phase1_2022_realistic | Run3_FastSim | *FastSim* | +| 12434.0 | RelValTTbar_14TeV | phase1_2023_realistic | Run3_2023 | | +| 12425.0 | RelValZEE_13 | phase1_2023_realistic | Run3_2023 | | +| 12634.0 | RelValTTbar_14TeV | phase1_2023_realistic | Run3_2023 | Run3_Flat55To75_PoissonOOTPU | +| 12434.7 | RelValTTbar_14TeV | phase1_2023_realistic | Run3_2023 | mkFit | +| 14034.0 | RelValTTbar_14TeV | phase1_2023_realistic | Run3_2023_FastSim | *FastSim* | +| 14234.0 | RelValTTbar_14TeV | phase1_2023_realistic | Run3_2023_FastSim | *FastSim* Run3_Flat55To75_PoissonOOTPU | +| 2500.4 | RelValTTbar_14TeV | phase1_2022_realistic | Run3 | NanoAOD from existing MINI | +| | | | | | +| **Phase2** | | | | **Geometry** | +| | | | | | +| 24834.0 | RelValTTbar_14TeV | phase2_realistic_T25 | Phase2C17I13M9 | Extended2026D98 | (Phase-2 baseline) +| 24834.911 | TTbar_14TeV_TuneCP5 | phase2_realistic_T25 | Phase2C17I13M9 | DD4hepExtended2026D98 | DD4Hep (HLLHC14TeV BeamSpot) +| 25034.999 | RelValTTbar_14TeV (PREMIX) | phase2_realistic_T25 | Phase2C17I13M9 | Extended2026D98 | AVE_50_BX_25ns_m3p3 +| 24896.0 | RelValCloseByPGun_CE_E_Front_120um | phase2_realistic_T25 | Phase2C17I13M9 | Extended2026D98 | +| 24900.0 | RelValCloseByPGun_CE_H_Coarse_Scint | phase2_realistic_T25 | Phase2C17I13M9 | Extended2026D98 | +| 23234.0 | TTbar_14TeV_TuneCP5 | phase2_realistic_T21 | Phase2C20I13M9 | Extended2026D94 | (exercise with HFNose) + +pp Data reRECO workflows: + +| Data | | | | | +|--- |--- |--- |--- |--- | +| **WF** | **Input** | **Conditions** | **Era** | **Notes** | +| | | | | | +| **Run1** | | | | | +| | | | | | +| 4.22 | Run2011A Cosmics | run1_data | | *Cosmics* | +| 4.53 | Run2012B Photon | run1_hlt_Fake | | + miniAODs | +| 1000 | Run2011A MinimumBias Prompt | run1_data | | + RecoTLR.customisePrompt | +| 1001 | Run2011A MinimumBias | run1_data | | Data+Express | +| | | | | | +| **Run2** | | | | | +| | | | | | +| 136.731 | Run2016B SinglePhoton | | | | +| 136.7611 | Run2016E JetHT (reMINIAOD) | run2_data | Run2_2016_HIPM | + run2_miniAOD_80XLegacy custom | +| 136.8311 | Run2017F JetHT (reMINIAOD) | run2_data | Run2_2017 | + run2_miniAOD_94XFall17 custom | +| 136.88811 | Run2018D JetHT (reMINIAOD) | run2_data | Run2_2018 | + run2_miniAOD_UL_preSummer20 (UL MINI) custom | +| 136.793 | Run2017C DoubleEG | run2_hlt_relval | Run2_2017 | HLT:@relval2017| +| 136.874 | Run2018C EGamma | run2_hlt_relval | Run2_2018 | HLT@relval2018 | +| | | | | | +| **Run3** | | | | | +| | | | | | +| 2021 | | | | | +| 139.001 | Run2021 MinimumBias | run3_hlt_relval | Run3 | HLT@relval2022 (Commissioning2021) | +| 2022 | | | | | +| 140.023 | Run2022B ZeroBias | run3_hlt_relval | Run3 | HLT:@relval2022 | +| 140.043 | Run2022C ZeroBias | run3_hlt_relval | Run3 | HLT:@relval2022 | +| 140.063 | Run2022D ZeroBias | run3_hlt_relval | Run3 | HLT:@relval2022 | +| 2023 | | | | | +| 141.044 | Run2023D JetMET0 | run3_hlt_relval | Run3_2023 | HLT@relval2024 | +| 141.042 | Run2023D ZeroBias | run3_hlt_relval | Run3_2023 | HLT@relval2024 | +| 141.046 | Run2023D EGamma0 | run3_hlt_relval | Run3_2023 | HLT@relval2024 | + + +And Heavy Ion workflows: + +| **HIon** | | | | | +|--- |--- |--- |--- |--- | +| **WF** | **Fragment/Input** | **Conditions** | **Era** | **Notes** | +| | | | | | +| **Data** | | | | | +| | | | | | +| 140.53 | HIRun2011 HIMinBiasUPC | run1_data | | +| 140.56 | HIRun2018A HIHardProbes | run2_data_promptlike_hi | Run2_2018_pp_on_AA | +| | | | | | +| **MC** | | | | | +| | | | | | +| 158.01 | RelValHydjetQ_B12_5020GeV_2018_ppReco (reMINIAOD) | phase1_2018_realistic_hi | Run2_2018_pp_on_AA | (HI MC with pp-like reco) | +| 312.0 | Pyquen_ZeemumuJets_pt10_2760GeV | phase1_2022_realistic_hi | Run3_pp_on_PbPb | PU = HiMixGEN | diff --git a/Configuration/PyReleaseValidation/scripts/runTheMatrix.py b/Configuration/PyReleaseValidation/scripts/runTheMatrix.py index 30b41a2eadb2f..dc7bf9940038a 100755 --- a/Configuration/PyReleaseValidation/scripts/runTheMatrix.py +++ b/Configuration/PyReleaseValidation/scripts/runTheMatrix.py @@ -58,54 +58,83 @@ def runSelected(opt): #this can get out of here predefinedSet={ - 'limited' : [5.1, #FastSim ttbar - 7.3, #CosmicsSPLoose_UP17 - 8, #BH/Cosmic MC - 25, #MC ttbar - 4.22, #cosmic data - 4.53, #run1 data + miniAOD - 9.0, #Higgs200 charged taus - 1000, #data+prompt - 1001, #data+express - 101.0, #SingleElectron120E120EHCAL - 136.731, #2016B Photon data - 136.7611, #2016E JetHT reMINIAOD from 80X legacy - 136.8311, #2017F JetHT reMINIAOD from 94X reprocessing - 136.88811,#2018D JetHT reMINIAOD from UL processing - 136.793, #2017C DoubleEG - 136.874, #2018C EGamma - 139.001, #2021 MinimumBias offline with HLT step - 140.53, #2011 HI data - 140.56, #2018 HI data - 158.01, #reMiniAOD of 2018 HI MC with pp-like reco - 312.0, #2021/Run3 HI MC Pyquen_ZeemumuJets_pt10 with pp-like reco - 1306.0, #SingleMu Pt1 UP15 - 2500.4, #test NanoAOD from existing MINI - 1330, #Run2 2015/2016 MC Zmm - 135.4, #Run 2 2015/2016 Zee ttbar fastsim - 10042.0, #2017 ZMM - 10024.0, #2017 ttbar - 10824.0, #2018 ttbar - 2018.1, #2018 ttbar fastsim - 11634.0, #2021 ttbar (switched to DD4hep by default) - 13234.0, #2021 ttbar fastsim - 12434.0, #2023 ttbar - 12425.0, #2023 ZEE - 12634.0, #2023 ttbar PU - 12434.7, #2023 ttbar mkFit - 14034.0, #2023 ttbar fastsim - 14234.0, #2023 ttbar PU fastsim - 24834.0, #2026D98 ttbar (Phase-2 baseline) - 24834.911, #2026D98 ttbar DD4hep XML - 25034.999, #2026D98 ttbar premixing stage1+stage2, PU50 - 24896.0, #CE_E_Front_120um D98 - 24900.0, #CE_H_Coarse_Scint D98 - 23234.0, #2026D94 ttbar (exercise with HFNose) - 25202.0, #2016 ttbar UP15 PU - 250202.181, #2018 ttbar stage1 + stage2 premix - 141.044, # 2023D JetMET PD - 141.042, # 2023D ZeroBias PD - 141.046 # 2023D EGamma PD + 'limited' : [ + # See README for further details + ###### MC (generated from scratch or from RelVals) + ### FullSim + # Run1 + 5.1, # TTbar_8TeV_TuneCUETP8M1 FastSim + 8, # RelValBeamHalo Cosmics + 9.0, # RelValHiggs200ChargedTaus + 25, # RelValTTbar + 101.0, # SingleElectronE120EHCAL + ECALHCAL.customise + fullMixCustomize_cff.setCrossingFrameOn + + # Run2 + 7.3, # UndergroundCosmicSPLooseMu + 1306.0, # RelValSingleMuPt1_UP15 + 1330, # RelValZMM_13 + 135.4, # ZEE_13TeV_TuneCUETP8M1 + 25202.0, # RelValTTbar_13 PU = AVE_35_BX_25ns + 250202.181, # RelValTTbar_13 PREMIX + + # Run3 + 11634.0, # TTbar_14TeV + 13234.0, # RelValTTbar_14TeV FastsSim + 12434.0, # RelValTTbar_14TeV + 12425.0, # RelValZEE_13 + 12634.0, # RelValTTbar_14TeV PU = Run3_Flat55To75_PoissonOOTPU + 12434.7, # RelValTTbar_14TeV mkFit + 14034.0, # RelValTTbar_14TeV Run3_2023_FastSim + 14234.0, # RelValTTbar_14TeV Run3_2023_FastSim PU = Run3_Flat55To75_PoissonOOTPU + 2500.4, # RelValTTbar_14TeV NanoAOD from existing MINI + + # Phase2 + 24834.0, # RelValTTbar_14TeV phase2_realistic_T25 Extended2026D98 (Phase-2 baseline) + 24834.911, # TTbar_14TeV_TuneCP5 phase2_realistic_T25 DD4hepExtended2026D98 DD4Hep (HLLHC14TeV BeamSpot) + 25034.999, # RelValTTbar_14TeV (PREMIX) phase2_realistic_T25 Extended2026D98 AVE_50_BX_25ns_m3p3 + 24896.0, # RelValCloseByPGun_CE_E_Front_120um phase2_realistic_T25 Extended2026D98 + 24900.0, # RelValCloseByPGun_CE_H_Coarse_Scint phase2_realistic_T25 Extended2026D98 + 23234.0, # TTbar_14TeV_TuneCP5 phase2_realistic_T21 Extended2026D94 (exercise with HFNose) + + + ###### pp Data + ## Run1 + 4.22, # Run2011A Cosmics + 4.53, # Run2012B Photon miniAODs + 1000, # Run2011A MinimumBias Prompt RecoTLR.customisePrompt + 1001, # Run2011A MinimumBias Data+Express + ## Run2 + 136.731, # Run2016B SinglePhoton + 136.7611, # Run2016E JetHT (reMINIAOD) Run2_2016_HIPM + run2_miniAOD_80XLegacy + 136.8311, # Run2017F JetHT (reMINIAOD) run2_miniAOD_94XFall17 + 136.88811, # Run2018D JetHT (reMINIAOD) run2_miniAOD_UL_preSummer20 (UL MINI) + 136.793, # Run2017C DoubleEG + 136.874, # Run2018C EGamma + + ## Run3 + # 2021 + 139.001, # Run2021 MinimumBias Commissioning2021 + + # 2022 + 140.023, # Run2022B ZeroBias + 140.043, # Run2022C ZeroBias + 140.063, # Run2022D ZeroBias + + # 2023 + 141.044, # Run2023D JetMET0 + 141.042, # Run2023D ZeroBias + 141.046, # Run2023D EGamma0 + + ###### Heavy Ions + ## Data + # Run1 + 140.53, # HIRun2011 HIMinBiasUPC + # Run2 + 140.56, # HIRun2018A HIHardProbes Run2_2018_pp_on_AA + ## MC + 158.01, # RelValHydjetQ_B12_5020GeV_2018_ppReco (reMINIAOD) (HI MC with pp-like reco) + 312.0, # Pyquen_ZeemumuJets_pt10_2760GeV PU : HiMixGEN + ], 'jetmc': [5.1, 13, 15, 25, 38, 39], #MC 'metmc' : [5.1, 15, 25, 37, 38, 39], #MC From e9459dc96a96c571936de3db1d94a737cbc3a9d0 Mon Sep 17 00:00:00 2001 From: Javier Date: Mon, 11 Dec 2023 17:07:17 +0100 Subject: [PATCH 072/281] Fix static warnings detected during https://github.com/cms-sw/cmssw/pull/43390 --- L1Trigger/DTTriggerPhase2/src/GlobalCoordsObtainer.cc | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/L1Trigger/DTTriggerPhase2/src/GlobalCoordsObtainer.cc b/L1Trigger/DTTriggerPhase2/src/GlobalCoordsObtainer.cc index 1376d4c6e40c0..2446d50745a07 100644 --- a/L1Trigger/DTTriggerPhase2/src/GlobalCoordsObtainer.cc +++ b/L1Trigger/DTTriggerPhase2/src/GlobalCoordsObtainer.cc @@ -224,12 +224,6 @@ std::vector GlobalCoordsObtainer::get_global_coordinates(uint32_t chid, int tanpsi_msb = tanpsi >> (TANPSI_SIZE - PHIB_LUT_ADDR_WIDTH); tanpsi_msb = from_two_comp(tanpsi_msb, PHIB_LUT_ADDR_WIDTH); - x_msb = x >> (X_SIZE - PHI_LUT_ADDR_WIDTH); - x_msb = from_two_comp(x_msb, PHI_LUT_ADDR_WIDTH); - - tanpsi_msb = tanpsi >> (TANPSI_SIZE - PHIB_LUT_ADDR_WIDTH); - tanpsi_msb = from_two_comp(tanpsi_msb, PHIB_LUT_ADDR_WIDTH); - // The LSB part can be sliced right away because it must yield a positive integer int x_lsb = x & (int)(std::pow(2, (X_SIZE - PHI_LUT_ADDR_WIDTH)) - 1); int tanpsi_lsb = tanpsi & (int)(std::pow(2, (TANPSI_SIZE - PHIB_LUT_ADDR_WIDTH)) - 1); @@ -261,4 +255,4 @@ std::vector GlobalCoordsObtainer::get_global_coordinates(uint32_t chid, double phib_f = (double)phib / pow(2, PHIB_SIZE); return std::vector({phi_f, phib_f}); -} \ No newline at end of file +} From 857d96ad98f7dd9c8a55e532aaf9a4adebce0dd1 Mon Sep 17 00:00:00 2001 From: Javier Date: Mon, 11 Dec 2023 18:11:57 +0100 Subject: [PATCH 073/281] Fix nan warning --- L1Trigger/DTTriggerPhase2/src/MuonPathAnalyzerInChamber.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/L1Trigger/DTTriggerPhase2/src/MuonPathAnalyzerInChamber.cc b/L1Trigger/DTTriggerPhase2/src/MuonPathAnalyzerInChamber.cc index abae4a2af3108..3df9e90d545d8 100644 --- a/L1Trigger/DTTriggerPhase2/src/MuonPathAnalyzerInChamber.cc +++ b/L1Trigger/DTTriggerPhase2/src/MuonPathAnalyzerInChamber.cc @@ -1,4 +1,5 @@ #include "L1Trigger/DTTriggerPhase2/interface/MuonPathAnalyzerInChamber.h" +#include "FWCore/Utilities/interface/isFinite.h" #include #include @@ -242,7 +243,7 @@ void MuonPathAnalyzerInChamber::analyze(MuonPathPtr &inMPath, MuonPathPtrs &outM } // Protection against non-converged fits - if (isnan(jm_x)) + if (edm::isNotFinite(jm_x)) continue; // Updating muon-path horizontal position From 429c0251d41361d698567e6464f792a317748951 Mon Sep 17 00:00:00 2001 From: Dan Riley Date: Tue, 31 Oct 2023 17:55:53 -0400 Subject: [PATCH 074/281] fix some valgrind memcheck warnings when N_proc < NN --- RecoTracker/MkFitCore/src/KalmanUtilsMPlex.cc | 2 +- RecoTracker/MkFitCore/src/PropagationMPlex.cc | 8 +++++--- RecoTracker/MkFitCore/src/PropagationMPlex.h | 10 ++++++---- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/RecoTracker/MkFitCore/src/KalmanUtilsMPlex.cc b/RecoTracker/MkFitCore/src/KalmanUtilsMPlex.cc index 481ad42150fdc..c6371bebe1770 100644 --- a/RecoTracker/MkFitCore/src/KalmanUtilsMPlex.cc +++ b/RecoTracker/MkFitCore/src/KalmanUtilsMPlex.cc @@ -1359,7 +1359,7 @@ namespace mkfit { kalmanOperationEndcap(KFO_Update_Params, psErr, psPar, msErr, msPar, outErr, outPar, dummy_chi2, N_proc); } for (int n = 0; n < NN; ++n) { - if (outPar.At(n, 3, 0) < 0) { + if (n < N_proc && outPar.At(n, 3, 0) < 0) { Chg.At(n, 0, 0) = -Chg.At(n, 0, 0); outPar.At(n, 3, 0) = -outPar.At(n, 3, 0); } diff --git a/RecoTracker/MkFitCore/src/PropagationMPlex.cc b/RecoTracker/MkFitCore/src/PropagationMPlex.cc index 103c9383aabd7..691148ff69b1b 100644 --- a/RecoTracker/MkFitCore/src/PropagationMPlex.cc +++ b/RecoTracker/MkFitCore/src/PropagationMPlex.cc @@ -690,9 +690,11 @@ namespace mkfit { hitsRl(n, 0, 0) = mat.radl; hitsXi(n, 0, 0) = mat.bbxi; } - const float zout = msZ.constAt(n, 0, 0); - const float zin = inPar.constAt(n, 2, 0); - propSign(n, 0, 0) = (std::abs(zout) > std::abs(zin) ? 1.f : -1.f); + if (n < N_proc) { + const float zout = msZ.constAt(n, 0, 0); + const float zin = inPar.constAt(n, 2, 0); + propSign(n, 0, 0) = (std::abs(zout) > std::abs(zin) ? 1.f : -1.f); + } } MPlexHV plNrm; #pragma omp simd diff --git a/RecoTracker/MkFitCore/src/PropagationMPlex.h b/RecoTracker/MkFitCore/src/PropagationMPlex.h index 3522365538b13..6cafc7990f98a 100644 --- a/RecoTracker/MkFitCore/src/PropagationMPlex.h +++ b/RecoTracker/MkFitCore/src/PropagationMPlex.h @@ -10,10 +10,12 @@ namespace mkfit { inline void squashPhiMPlex(MPlexLV& par, const int N_proc) { #pragma omp simd for (int n = 0; n < NN; ++n) { - if (par(n, 4, 0) >= Const::PI) - par(n, 4, 0) -= Const::TwoPI; - if (par(n, 4, 0) < -Const::PI) - par(n, 4, 0) += Const::TwoPI; + if (n < N_proc) { + if (par(n, 4, 0) >= Const::PI) + par(n, 4, 0) -= Const::TwoPI; + if (par(n, 4, 0) < -Const::PI) + par(n, 4, 0) += Const::TwoPI; + } } } From 1b3d3956985e8f0305efec8d16e082f3f69b401d Mon Sep 17 00:00:00 2001 From: "W. David Dagenhart" Date: Sat, 18 Nov 2023 00:17:44 +0100 Subject: [PATCH 075/281] Allow an InputSource to declare a run/lumi entry is the last to be merged --- DQMServices/FwkIO/plugins/DQMRootSource.cc | 20 +-- .../StreamerIO/plugins/DQMProtobufReader.cc | 12 +- .../StreamerIO/plugins/DQMProtobufReader.h | 2 +- FWCore/Framework/interface/EventProcessor.h | 13 +- FWCore/Framework/interface/InputSource.h | 43 ++++- FWCore/Framework/src/EventProcessor.cc | 150 +++++++++++++----- FWCore/Framework/src/InputSource.cc | 65 ++++---- FWCore/Framework/src/TransitionProcessors.icc | 8 +- FWCore/Framework/test/MockEventProcessor.cc | 36 ++--- FWCore/Framework/test/MockEventProcessor.h | 2 +- .../test_deepCall_unscheduled.log | 6 +- .../test_onPath_unscheduled.log | 6 +- .../plugins/PutOrMergeTestSource.cc | 14 +- FWCore/Integration/plugins/SourceWithWaits.cc | 143 ++++++++++++++--- FWCore/Integration/test/inputSourceTest.sh | 17 ++ .../test/testDeclareLastEntryForMerge_cfg.py | 57 +++++++ .../test/testLateLumiClosure_cfg.py | 3 +- .../test/unit_test_outputs/testGetBy1.log | 6 +- .../test/unit_test_outputs/testGetBy2.log | 6 +- .../testSubProcess.grep2.txt | 14 +- FWCore/Modules/src/TestSource.cc | 20 +-- .../Sources/interface/IDGeneratorSourceBase.h | 2 +- FWCore/Sources/interface/RawInputSource.h | 2 +- FWCore/Sources/src/IDGeneratorSourceBase.cc | 20 +-- FWCore/Sources/src/RawInputSource.cc | 24 +-- IOPool/Input/src/OneLumiPoolSource.cc | 8 +- IOPool/Input/src/PoolSource.cc | 8 +- IOPool/Input/src/PoolSource.h | 2 +- IOPool/Input/src/RepeatingCachedRootSource.cc | 18 +-- IOPool/Input/src/RootPrimaryFileSequence.cc | 20 +-- IOPool/Input/src/RootPrimaryFileSequence.h | 2 +- IOPool/Input/src/RunHelper.cc | 12 +- 32 files changed, 519 insertions(+), 242 deletions(-) create mode 100644 FWCore/Integration/test/testDeclareLastEntryForMerge_cfg.py diff --git a/DQMServices/FwkIO/plugins/DQMRootSource.cc b/DQMServices/FwkIO/plugins/DQMRootSource.cc index b2019ddf00cb9..fc99dd7745882 100644 --- a/DQMServices/FwkIO/plugins/DQMRootSource.cc +++ b/DQMServices/FwkIO/plugins/DQMRootSource.cc @@ -330,7 +330,7 @@ class DQMRootSource : public edm::PuttableSourceBase, DQMTTreeIO { static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - edm::InputSource::ItemType getNextItemType() override; + edm::InputSource::ItemTypeInfo getNextItemType() override; std::shared_ptr readFile_() override; std::shared_ptr readRunAuxiliary_() override; @@ -440,7 +440,7 @@ DQMRootSource::DQMRootSource(edm::ParameterSet const& iPSet, const edm::InputSou {"LUMI", MonitorElementData::Scope::LUMI}, {"RUN", MonitorElementData::Scope::RUN}, {"JOB", MonitorElementData::Scope::JOB}}[iPSet.getUntrackedParameter("reScope", "JOB")]), - m_nextItemType(edm::InputSource::IsFile), + m_nextItemType(edm::InputSource::ItemType::IsFile), m_treeReaders(kNIndicies, std::shared_ptr()), m_currentIndex(0), m_openFiles(std::vector()), @@ -448,7 +448,7 @@ DQMRootSource::DQMRootSource(edm::ParameterSet const& iPSet, const edm::InputSou edm::sortAndRemoveOverlaps(m_lumisToProcess); if (m_catalog.fileNames(0).empty()) { - m_nextItemType = edm::InputSource::IsStop; + m_nextItemType = edm::InputSource::ItemType::IsStop; } else { m_treeReaders[kIntIndex].reset(new TreeSimpleReader(MonitorElementData::Kind::INT, m_rescope)); m_treeReaders[kFloatIndex].reset(new TreeSimpleReader(MonitorElementData::Kind::REAL, m_rescope)); @@ -483,7 +483,7 @@ DQMRootSource::~DQMRootSource() { // member functions // -edm::InputSource::ItemType DQMRootSource::getNextItemType() { return m_nextItemType; } +edm::InputSource::ItemTypeInfo DQMRootSource::getNextItemType() { return m_nextItemType; } // We will read the metadata of all files and fill m_fileMetadatas vector std::shared_ptr DQMRootSource::readFile_() { @@ -630,9 +630,9 @@ std::shared_ptr DQMRootSource::readFile_() { // Stop if there's nothing to process. Otherwise start the run. if (m_fileMetadatas.empty()) - m_nextItemType = edm::InputSource::IsStop; + m_nextItemType = edm::InputSource::ItemType::IsStop; else - m_nextItemType = edm::InputSource::IsRun; + m_nextItemType = edm::InputSource::ItemType::IsRun; // We have to return something but not sure why return std::make_shared(); @@ -728,18 +728,18 @@ bool DQMRootSource::isRunOrLumiTransition() const { void DQMRootSource::readNextItemType() { if (m_currentIndex == 0) { - m_nextItemType = edm::InputSource::IsRun; + m_nextItemType = edm::InputSource::ItemType::IsRun; } else if (m_currentIndex > m_fileMetadatas.size() - 1) { // We reached the end - m_nextItemType = edm::InputSource::IsStop; + m_nextItemType = edm::InputSource::ItemType::IsStop; } else { FileMetadata previousMetadata = m_fileMetadatas[m_currentIndex - 1]; FileMetadata metadata = m_fileMetadatas[m_currentIndex]; if (previousMetadata.m_run != metadata.m_run) { - m_nextItemType = edm::InputSource::IsRun; + m_nextItemType = edm::InputSource::ItemType::IsRun; } else if (previousMetadata.m_lumi != metadata.m_lumi) { - m_nextItemType = edm::InputSource::IsLumi; + m_nextItemType = edm::InputSource::ItemType::IsLumi; } } } diff --git a/DQMServices/StreamerIO/plugins/DQMProtobufReader.cc b/DQMServices/StreamerIO/plugins/DQMProtobufReader.cc index e7cfb42014a73..3e761778d60b4 100644 --- a/DQMServices/StreamerIO/plugins/DQMProtobufReader.cc +++ b/DQMServices/StreamerIO/plugins/DQMProtobufReader.cc @@ -38,7 +38,7 @@ DQMProtobufReader::DQMProtobufReader(edm::ParameterSet const& pset, edm::InputSo produces("DQMGenerationRecoLumi"); } -edm::InputSource::ItemType DQMProtobufReader::getNextItemType() { +edm::InputSource::ItemTypeInfo DQMProtobufReader::getNextItemType() { typedef DQMFileIterator::State State; typedef DQMFileIterator::LumiEntry LumiEntry; @@ -49,23 +49,23 @@ edm::InputSource::ItemType DQMProtobufReader::getNextItemType() { if (edm::shutdown_flag.load()) { fiterator_.logFileAction("Shutdown flag was set, shutting down."); - return InputSource::IsStop; + return InputSource::ItemType::IsStop; } // check for end of run file and force quit if (flagEndOfRunKills_ && (fiterator_.state() != State::OPEN)) { - return InputSource::IsStop; + return InputSource::ItemType::IsStop; } // check for end of run and quit if everything has been processed. // this is the clean exit if ((!fiterator_.lumiReady()) && (fiterator_.state() == State::EOR)) { - return InputSource::IsStop; + return InputSource::ItemType::IsStop; } // skip to the next file if we have no files openned yet if (fiterator_.lumiReady()) { - return InputSource::IsLumi; + return InputSource::ItemType::IsLumi; } fiterator_.delay(); @@ -73,7 +73,7 @@ edm::InputSource::ItemType DQMProtobufReader::getNextItemType() { // IsSynchronize state // // comment out in order to block at this level - // return InputSource::IsSynchronize; + // return InputSource::ItemType::IsSynchronize; } // this is unreachable diff --git a/DQMServices/StreamerIO/plugins/DQMProtobufReader.h b/DQMServices/StreamerIO/plugins/DQMProtobufReader.h index acea989ac9fa4..59b459246d84d 100644 --- a/DQMServices/StreamerIO/plugins/DQMProtobufReader.h +++ b/DQMServices/StreamerIO/plugins/DQMProtobufReader.h @@ -21,7 +21,7 @@ namespace dqmservices { private: void load(DQMStore* store, std::string filename); - edm::InputSource::ItemType getNextItemType() override; + edm::InputSource::ItemTypeInfo getNextItemType() override; std::shared_ptr readRunAuxiliary_() override; std::shared_ptr readLuminosityBlockAuxiliary_() override; void readRun_(edm::RunPrincipal& rpCache) override; diff --git a/FWCore/Framework/interface/EventProcessor.h b/FWCore/Framework/interface/EventProcessor.h index 7740f0afbd2b2..a63d6299f7150 100644 --- a/FWCore/Framework/interface/EventProcessor.h +++ b/FWCore/Framework/interface/EventProcessor.h @@ -185,8 +185,9 @@ namespace edm { // The following functions are used by the code implementing // transition handling. - InputSource::ItemType nextTransitionType(); - InputSource::ItemType lastTransitionType() const { return lastSourceTransition_; } + InputSource::ItemTypeInfo nextTransitionType(); + InputSource::ItemTypeInfo lastTransitionType() const { return lastSourceTransition_; } + void nextTransitionTypeAsync(std::shared_ptr iRunStatus, WaitingTaskHolder nextTask); void readFile(); bool fileBlockValid() { return fb_.get() != nullptr; } @@ -294,6 +295,10 @@ namespace edm { void throwAboutModulesRequiringLuminosityBlockSynchronization() const; void warnAboutModulesRequiringRunSynchronization() const; void warnAboutLegacyModules() const; + + bool needToCallNext() const { return needToCallNext_; } + void setNeedToCallNext(bool val) { needToCallNext_ = val; } + //------------------------------------------------------------------ // // Data members below. @@ -311,7 +316,7 @@ namespace edm { edm::propagate_const> thinnedAssociationsHelper_; ServiceToken serviceToken_; edm::propagate_const> input_; - InputSource::ItemType lastSourceTransition_ = InputSource::IsInvalid; + InputSource::ItemTypeInfo lastSourceTransition_; edm::propagate_const> moduleTypeResolverMaker_; edm::propagate_const> espController_; edm::propagate_const> esp_; @@ -369,7 +374,7 @@ namespace edm { bool printDependencies_ = false; bool deleteNonConsumedUnscheduledModules_ = true; - bool firstItemAfterLumiMerge_ = true; + bool needToCallNext_ = true; }; // class EventProcessor //-------------------------------------------------------------------- diff --git a/FWCore/Framework/interface/InputSource.h b/FWCore/Framework/interface/InputSource.h index 82eefaf6612b8..859b2b27088d1 100644 --- a/FWCore/Framework/interface/InputSource.h +++ b/FWCore/Framework/interface/InputSource.h @@ -51,7 +51,36 @@ namespace edm { class InputSource { public: - enum ItemType { IsInvalid, IsStop, IsFile, IsRun, IsLumi, IsEvent, IsRepeat, IsSynchronize }; + enum class ItemType : char { IsInvalid, IsStop, IsFile, IsRun, IsLumi, IsEvent, IsRepeat, IsSynchronize }; + enum class ItemPosition : char { Invalid, LastItemToBeMerged, NotLastItemToBeMerged }; + + class ItemTypeInfo { + public: + constexpr ItemTypeInfo(ItemType type = ItemType::IsInvalid, ItemPosition position = ItemPosition::Invalid) + : type_(type), position_(position) {} + ItemType itemType() const { return type_; } + ItemPosition itemPosition() const { return position_; } + + // Note that conversion to ItemType is defined and often used to + // compare an ItemTypeInfo with an ItemType. + // operator== of two ItemTypeInfo's is intentionally NOT defined. + // The constructor also allows implicit conversion from ItemType and + // often assignment from ItemType to ItemTypeInfo occurs. + operator ItemType() const { return type_; } + + private: + ItemType type_; + + // position_ should always be Invalid if the itemType_ is not IsRun or IsLumi. + // Even for runs and lumis, it is OK to leave it Invalid because the + // Framework can figure this out based on the next item. Offline it is + // simplest to always leave it Invalid. For online sources, there are + // optimizations that the Framework can use when it knows that a run or + // lumi is the last to be merged before the following item is known. This + // is useful in cases where the function named getNextItemType + // might take a long time to return. + ItemPosition position_; + }; enum ProcessingMode { Runs, RunsAndLumis, RunsLumisAndEvents }; @@ -70,7 +99,7 @@ namespace edm { static void prevalidate(ConfigurationDescriptions&); /// Advances the source to the next item - ItemType nextItemType(); + ItemTypeInfo nextItemType(); /// Read next event void readEvent(EventPrincipal& ep, StreamContext&); @@ -329,7 +358,7 @@ namespace edm { ProductRegistry& productRegistryUpdate() { return *productRegistry_; } ProcessHistoryRegistry& processHistoryRegistryForUpdate() { return *processHistoryRegistry_; } - ItemType state() const { return state_; } + ItemTypeInfo state() const { return state_; } void setRunAuxiliary(RunAuxiliary* rp) { runAuxiliary_.reset(rp); newRun_ = newLumi_ = true; @@ -349,7 +378,7 @@ namespace edm { void reset() const { resetLuminosityBlockAuxiliary(); resetRunAuxiliary(); - state_ = IsInvalid; + state_ = ItemTypeInfo(); } bool newRun() const { return newRun_; } void setNewRun() { newRun_ = true; } @@ -386,8 +415,8 @@ namespace edm { return false; } bool limitReached() const { return eventLimitReached() || lumiLimitReached(); } - virtual ItemType getNextItemType() = 0; - ItemType nextItemType_(); + virtual ItemTypeInfo getNextItemType() = 0; + ItemTypeInfo nextItemType_(); virtual std::shared_ptr readRunAuxiliary_() = 0; virtual std::shared_ptr readLuminosityBlockAuxiliary_() = 0; virtual void fillProcessBlockHelper_(); @@ -431,7 +460,7 @@ namespace edm { mutable bool newRun_; mutable bool newLumi_; bool eventCached_; - mutable ItemType state_; + mutable ItemTypeInfo state_; mutable std::shared_ptr runAuxiliary_; mutable std::shared_ptr lumiAuxiliary_; std::string statusFileName_; diff --git a/FWCore/Framework/src/EventProcessor.cc b/FWCore/Framework/src/EventProcessor.cc index 76de43cb7a500..25c48d59e80c1 100644 --- a/FWCore/Framework/src/EventProcessor.cc +++ b/FWCore/Framework/src/EventProcessor.cc @@ -867,29 +867,53 @@ namespace edm { edm::ActivityRegistry& act_; }; } // namespace - InputSource::ItemType EventProcessor::nextTransitionType() { + + InputSource::ItemTypeInfo EventProcessor::nextTransitionType() { SendSourceTerminationSignalIfException sentry(actReg_.get()); - InputSource::ItemType itemType; + InputSource::ItemTypeInfo itemTypeInfo; { SourceNextGuard guard(*actReg_.get()); //For now, do nothing with InputSource::IsSynchronize do { - itemType = input_->nextItemType(); - } while (itemType == InputSource::IsSynchronize); + itemTypeInfo = input_->nextItemType(); + } while (itemTypeInfo == InputSource::ItemType::IsSynchronize); } - lastSourceTransition_ = itemType; + lastSourceTransition_ = itemTypeInfo; sentry.completedSuccessfully(); StatusCode returnCode = epSuccess; if (checkForAsyncStopRequest(returnCode)) { actReg_->preSourceEarlyTerminationSignal_(TerminationOrigin::ExternalSignal); - lastSourceTransition_ = InputSource::IsStop; + lastSourceTransition_ = InputSource::ItemType::IsStop; } return lastSourceTransition_; } + void EventProcessor::nextTransitionTypeAsync(std::shared_ptr iRunStatus, + WaitingTaskHolder nextTask) { + auto group = nextTask.group(); + sourceResourcesAcquirer_.serialQueueChain().push( + *group, [this, runStatus = std::move(iRunStatus), nextHolder = std::move(nextTask)]() mutable { + CMS_SA_ALLOW try { + ServiceRegistry::Operate operate(serviceToken_); + std::lock_guard guard(*(sourceMutex_.get())); + nextTransitionType(); + if (lastTransitionType() == InputSource::ItemType::IsRun && + runStatus->runPrincipal()->run() == input_->run() && + runStatus->runPrincipal()->reducedProcessHistoryID() == input_->reducedProcessHistoryID()) { + throw Exception(errors::LogicError) + << "InputSource claimed previous Run Entry was last to be merged in this file,\n" + << "but the next entry has the same run number and reduced ProcessHistoryID.\n" + << "This is probably a bug in the InputSource. Please report to the Core group.\n"; + } + } catch (...) { + nextHolder.doneWaiting(std::current_exception()); + } + }); + } + EventProcessor::StatusCode EventProcessor::runToCompletion() { beginJob(); //make sure this was called @@ -919,11 +943,11 @@ namespace edm { if (deferredExceptionPtrIsSet_.load()) { std::rethrow_exception(deferredExceptionPtr_); } - if (trans != InputSource::IsStop) { + if (trans != InputSource::ItemType::IsStop) { //problem with the source doErrorStuff(); - throw cms::Exception("BadTransition") << "Unexpected transition change " << trans; + throw cms::Exception("BadTransition") << "Unexpected transition change " << static_cast(trans); } } while (not endOfLoop()); }); // convertException::wrap @@ -1152,7 +1176,7 @@ namespace edm { InputSource::ItemType EventProcessor::processRuns() { FinalWaitingTask waitTask{taskGroup_}; - assert(lastTransitionType() == InputSource::IsRun); + assert(lastTransitionType() == InputSource::ItemType::IsRun); if (streamRunActive_ == 0) { assert(streamLumiActive_ == 0); @@ -1163,12 +1187,15 @@ namespace edm { auto runStatus = streamRunStatus_[0]; - while (lastTransitionType() == InputSource::IsRun and runStatus->runPrincipal()->run() == input_->run() and + while (lastTransitionType() == InputSource::ItemType::IsRun and + runStatus->runPrincipal()->run() == input_->run() and runStatus->runPrincipal()->reducedProcessHistoryID() == input_->reducedProcessHistoryID()) { readAndMergeRun(*runStatus); nextTransitionType(); } + setNeedToCallNext(false); + WaitingTaskHolder holder{taskGroup_, &waitTask}; runStatus->setHolderOfTaskInProcessRuns(holder); if (streamLumiActive_ > 0) { @@ -1261,7 +1288,13 @@ namespace edm { using namespace edm::waiting_task::chain; chain::first([this, status](auto nextTask) mutable { - CMS_SA_ALLOW try { readAndMergeRunEntriesAsync(std::move(status), nextTask); } catch (...) { + CMS_SA_ALLOW try { + if (lastTransitionType().itemPosition() != InputSource::ItemPosition::LastItemToBeMerged) { + readAndMergeRunEntriesAsync(status, nextTask); + } else { + setNeedToCallNext(true); + } + } catch (...) { status->setStopBeforeProcessingRun(true); nextTask.doneWaiting(std::current_exception()); } @@ -1465,7 +1498,7 @@ namespace edm { } }); - if (lastTransitionType() == InputSource::IsRun) { + if (lastTransitionType() == InputSource::ItemType::IsRun) { CMS_SA_ALLOW try { beginRunAsync(IOVSyncValue(EventID(input_->run(), 0, 0), input_->runAuxiliary()->beginTime()), nextTask); } catch (...) { @@ -1625,7 +1658,7 @@ namespace edm { runStatus->setCleaningUpAfterException(cleaningUpAfterException); WaitingTaskHolder holder{taskGroup_, &waitTask}; runStatus->setHolderOfTaskInProcessRuns(holder); - lastSourceTransition_ = InputSource::IsStop; + lastSourceTransition_ = InputSource::ItemType::IsStop; endRunAsync(streamRunStatus_[0], std::move(holder)); waitTask.wait(); } @@ -1698,8 +1731,11 @@ namespace edm { using namespace edm::waiting_task::chain; chain::first([this, status](auto nextTask) mutable { - readAndMergeLumiEntriesAsync(std::move(status), std::move(nextTask)); - firstItemAfterLumiMerge_ = true; + if (lastTransitionType().itemPosition() != InputSource::ItemPosition::LastItemToBeMerged) { + readAndMergeLumiEntriesAsync(std::move(status), std::move(nextTask)); + } else { + setNeedToCallNext(true); + } }) | then([this, status, &es, &lumiPrincipal](auto nextTask) { LumiTransitionInfo transitionInfo(lumiPrincipal, es, &status->eventSetupImpls()); using Traits = OccurrenceTraits; @@ -1799,12 +1835,11 @@ namespace edm { auto status = streamLumiStatus_[0]; //read from streamLumiActive_ happened in calling routine status->setEventProcessingState(LuminosityBlockProcessingStatus::EventProcessingState::kProcessing); - while (lastTransitionType() == InputSource::IsLumi and + while (lastTransitionType() == InputSource::ItemType::IsLumi and status->lumiPrincipal()->luminosityBlock() == input_->luminosityBlock()) { readAndMergeLumi(*status); nextTransitionType(); } - firstItemAfterLumiMerge_ = true; }) | chain::then([this](auto nextTask) mutable { unsigned int streamIndex = 0; oneapi::tbb::task_arena arena{oneapi::tbb::task_arena::attach()}; @@ -2091,13 +2126,20 @@ namespace edm { std::lock_guard guard(*(sourceMutex_.get())); nextTransitionType(); - while (lastTransitionType() == InputSource::IsRun and status->runPrincipal()->run() == input_->run() and + setNeedToCallNext(false); + + while (lastTransitionType() == InputSource::ItemType::IsRun and + status->runPrincipal()->run() == input_->run() and status->runPrincipal()->reducedProcessHistoryID() == input_->reducedProcessHistoryID()) { if (status->holderOfTaskInProcessRuns().taskHasFailed()) { status->setStopBeforeProcessingRun(true); return; } readAndMergeRun(*status); + if (lastTransitionType().itemPosition() == InputSource::ItemPosition::LastItemToBeMerged) { + setNeedToCallNext(true); + return; + } nextTransitionType(); } } catch (...) { @@ -2118,9 +2160,15 @@ namespace edm { std::lock_guard guard(*(sourceMutex_.get())); nextTransitionType(); - while (lastTransitionType() == InputSource::IsLumi and + setNeedToCallNext(false); + + while (lastTransitionType() == InputSource::ItemType::IsLumi and iLumiStatus->lumiPrincipal()->luminosityBlock() == input_->luminosityBlock()) { readAndMergeLumi(*iLumiStatus); + if (lastTransitionType().itemPosition() == InputSource::ItemPosition::LastItemToBeMerged) { + setNeedToCallNext(true); + return; + } nextTransitionType(); } } catch (...) { @@ -2131,25 +2179,36 @@ namespace edm { void EventProcessor::handleNextItemAfterMergingRunEntries(std::shared_ptr iRunStatus, WaitingTaskHolder iHolder) { - if (lastTransitionType() == InputSource::IsFile) { - iRunStatus->holderOfTaskInProcessRuns().doneWaiting(std::exception_ptr{}); - iHolder.doneWaiting(std::exception_ptr{}); - } else if (lastTransitionType() == InputSource::IsLumi && !iHolder.taskHasFailed()) { - CMS_SA_ALLOW try { - beginLumiAsync(IOVSyncValue(EventID(input_->run(), input_->luminosityBlock(), 0), - input_->luminosityBlockAuxiliary()->beginTime()), - iRunStatus, - iHolder); - } catch (...) { - WaitingTaskHolder copyHolder(iHolder); - iHolder.doneWaiting(std::current_exception()); - endRunAsync(std::move(iRunStatus), std::move(iHolder)); + chain::first([this, iRunStatus](auto nextTask) mutable { + if (needToCallNext()) { + nextTransitionTypeAsync(std::move(iRunStatus), std::move(nextTask)); + } + }) | chain::then([this, iRunStatus](std::exception_ptr const* iException, auto nextTask) { + ServiceRegistry::Operate operate(serviceToken_); + if (iException) { + WaitingTaskHolder copyHolder(nextTask); + copyHolder.doneWaiting(*iException); + } + if (lastTransitionType() == InputSource::ItemType::IsFile) { + iRunStatus->holderOfTaskInProcessRuns().doneWaiting(std::exception_ptr{}); + return; + } + if (lastTransitionType() == InputSource::ItemType::IsLumi && !nextTask.taskHasFailed()) { + CMS_SA_ALLOW try { + beginLumiAsync(IOVSyncValue(EventID(input_->run(), input_->luminosityBlock(), 0), + input_->luminosityBlockAuxiliary()->beginTime()), + iRunStatus, + nextTask); + return; + } catch (...) { + WaitingTaskHolder copyHolder(nextTask); + copyHolder.doneWaiting(std::current_exception()); + } } - } else { // Note that endRunAsync will call beginRunAsync for the following run // if appropriate. - endRunAsync(std::move(iRunStatus), std::move(iHolder)); - } + endRunAsync(iRunStatus, std::move(nextTask)); + }) | chain::runLast(std::move(iHolder)); } bool EventProcessor::readNextEventForStream(WaitingTaskHolder const& iTask, @@ -2175,7 +2234,7 @@ namespace edm { // Are output modules or the looper requesting we stop? if (shouldWeStop()) { - lastSourceTransition_ = InputSource::IsStop; + lastSourceTransition_ = InputSource::ItemType::IsStop; iStatus.setEventProcessingState(LuminosityBlockProcessingStatus::EventProcessingState::kStopLumi); return false; } @@ -2190,17 +2249,24 @@ namespace edm { // If we didn't already call nextTransitionType while merging lumis, call it here. // This asks the input source what is next and also checks for signals. - InputSource::ItemType itemType = firstItemAfterLumiMerge_ ? lastTransitionType() : nextTransitionType(); - firstItemAfterLumiMerge_ = false; + InputSource::ItemType itemType = needToCallNext() ? nextTransitionType() : lastTransitionType(); + setNeedToCallNext(true); - if (InputSource::IsEvent != itemType) { + if (InputSource::ItemType::IsEvent != itemType) { // IsFile may continue processing the lumi and // looper_ can cause the input source to declare a new IsRun which is actually // just a continuation of the previous run - if (InputSource::IsStop == itemType or InputSource::IsLumi == itemType or - (InputSource::IsRun == itemType and + if (InputSource::ItemType::IsStop == itemType or InputSource::ItemType::IsLumi == itemType or + (InputSource::ItemType::IsRun == itemType and (iStatus.lumiPrincipal()->run() != input_->run() or iStatus.lumiPrincipal()->runPrincipal().reducedProcessHistoryID() != input_->reducedProcessHistoryID()))) { + if (itemType == InputSource::ItemType::IsLumi && + iStatus.lumiPrincipal()->luminosityBlock() == input_->luminosityBlock()) { + throw Exception(errors::LogicError) + << "InputSource claimed previous Lumi Entry was last to be merged in this file,\n" + << "but the next lumi entry has the same lumi number.\n" + << "This is probably a bug in the InputSource. Please report to the Core group.\n"; + } iStatus.setEventProcessingState(LuminosityBlockProcessingStatus::EventProcessingState::kStopLumi); } else { iStatus.setEventProcessingState(LuminosityBlockProcessingStatus::EventProcessingState::kPauseForFileTransition); @@ -2241,7 +2307,7 @@ namespace edm { if (status->eventProcessingState() == LuminosityBlockProcessingStatus::EventProcessingState::kStopLumi) { if (not status->haveStartedNextLumiOrEndedRun()) { status->startNextLumiOrEndRun(); - if (lastTransitionType() == InputSource::IsLumi && !iTask.taskHasFailed()) { + if (lastTransitionType() == InputSource::ItemType::IsLumi && !iTask.taskHasFailed()) { CMS_SA_ALLOW try { beginLumiAsync(IOVSyncValue(EventID(input_->run(), input_->luminosityBlock(), 0), input_->luminosityBlockAuxiliary()->beginTime()), diff --git a/FWCore/Framework/src/InputSource.cc b/FWCore/Framework/src/InputSource.cc index 8303180b6c1c4..7f676089aa725 100644 --- a/FWCore/Framework/src/InputSource.cc +++ b/FWCore/Framework/src/InputSource.cc @@ -64,7 +64,7 @@ namespace edm { newRun_(true), newLumi_(true), eventCached_(false), - state_(IsInvalid), + state_(), runAuxiliary_(), lumiAuxiliary_(), statusFileName_(), @@ -133,61 +133,62 @@ namespace edm { // implement the skipping internally, so that the performance gain is realized. // If this is done for a source, the 'if' blocks in this function will never be entered // for that source. - InputSource::ItemType InputSource::nextItemType_() { - ItemType itemType = callWithTryCatchAndPrint([this]() { return getNextItemType(); }, - "Calling InputSource::getNextItemType"); + InputSource::ItemTypeInfo InputSource::nextItemType_() { + ItemTypeInfo itemTypeInfo = callWithTryCatchAndPrint([this]() { return getNextItemType(); }, + "Calling InputSource::getNextItemType"); - if (itemType == IsEvent && processingMode() != RunsLumisAndEvents) { + if (itemTypeInfo == ItemType::IsEvent && processingMode() != RunsLumisAndEvents) { skipEvents(1); return nextItemType_(); } - if (itemType == IsLumi && processingMode() == Runs) { + if (itemTypeInfo == ItemType::IsLumi && processingMode() == Runs) { // QQQ skipLuminosityBlock_(); return nextItemType_(); } - return itemType; + return itemTypeInfo; } - InputSource::ItemType InputSource::nextItemType() { - ItemType oldState = state_; + InputSource::ItemTypeInfo InputSource::nextItemType() { + ItemType oldType = state_.itemType(); if (eventLimitReached()) { // If the maximum event limit has been reached, stop. - state_ = IsStop; + state_ = ItemType::IsStop; } else if (lumiLimitReached()) { // If the maximum lumi limit has been reached, stop // when reaching a new file, run, or lumi. - if (oldState == IsInvalid || oldState == IsFile || oldState == IsRun || processingMode() != RunsLumisAndEvents) { - state_ = IsStop; + if (oldType == ItemType::IsInvalid || oldType == ItemType::IsFile || oldType == ItemType::IsRun || + processingMode() != RunsLumisAndEvents) { + state_ = ItemType::IsStop; } else { - ItemType newState = nextItemType_(); - if (newState == IsEvent) { + ItemTypeInfo newState = nextItemType_(); + if (newState == ItemType::IsEvent) { assert(processingMode() == RunsLumisAndEvents); - state_ = IsEvent; + state_ = ItemType::IsEvent; } else { - state_ = IsStop; + state_ = ItemType::IsStop; } } } else { - ItemType newState = nextItemType_(); - if (newState == IsStop) { - state_ = IsStop; - } else if (newState == IsSynchronize) { - state_ = IsSynchronize; - } else if (newState == IsFile || oldState == IsInvalid) { - state_ = IsFile; - } else if (newState == IsRun || oldState == IsFile) { + ItemTypeInfo newState = nextItemType_(); + if (newState == ItemType::IsStop) { + state_ = ItemType::IsStop; + } else if (newState == ItemType::IsSynchronize) { + state_ = ItemType::IsSynchronize; + } else if (newState == ItemType::IsFile || oldType == ItemType::IsInvalid) { + state_ = ItemType::IsFile; + } else if (newState == ItemType::IsRun || oldType == ItemType::IsFile) { runAuxiliary_ = readRunAuxiliary(); - state_ = IsRun; - } else if (newState == IsLumi || oldState == IsRun) { + state_ = (newState == ItemType::IsRun) ? newState : ItemTypeInfo(ItemType::IsRun); + } else if (newState == ItemType::IsLumi || oldType == ItemType::IsRun) { assert(processingMode() != Runs); lumiAuxiliary_ = readLuminosityBlockAuxiliary(); - state_ = IsLumi; + state_ = (newState == ItemType::IsLumi) ? newState : ItemTypeInfo(ItemType::IsLumi); } else { assert(processingMode() == RunsLumisAndEvents); - state_ = IsEvent; + state_ = ItemType::IsEvent; } } - if (state_ == IsStop) { + if (state_ == ItemType::IsStop) { lumiAuxiliary_.reset(); runAuxiliary_.reset(); } @@ -220,7 +221,7 @@ namespace edm { // Return a dummy file block. std::shared_ptr InputSource::readFile() { - assert(state_ == IsFile); + assert(state_ == ItemType::IsFile); assert(!limitReached()); return callWithTryCatchAndPrint >([this]() { return readFile_(); }, "Calling InputSource::readFile_"); @@ -299,7 +300,7 @@ namespace edm { } void InputSource::readEvent(EventPrincipal& ep, StreamContext& streamContext) { - assert(state_ == IsEvent); + assert(state_ == ItemType::IsEvent); assert(!eventLimitReached()); { // block scope, in order to issue the PostSourceEvent signal before calling postRead and issueReports @@ -345,7 +346,7 @@ namespace edm { } void InputSource::rewind() { - state_ = IsInvalid; + state_ = ItemTypeInfo(); remainingEvents_ = maxEvents_; setNewRun(); setNewLumi(); diff --git a/FWCore/Framework/src/TransitionProcessors.icc b/FWCore/Framework/src/TransitionProcessors.icc index 5757def9e30c3..dc819428738ea 100644 --- a/FWCore/Framework/src/TransitionProcessors.icc +++ b/FWCore/Framework/src/TransitionProcessors.icc @@ -101,17 +101,17 @@ public: edm::InputSource::ItemType processFiles(EventProcessor& iEP) { bool finished = false; - auto nextTransition = iEP.nextTransitionType(); - if (nextTransition != edm::InputSource::IsFile) + edm::InputSource::ItemType nextTransition = iEP.nextTransitionType(); + if (nextTransition != edm::InputSource::ItemType::IsFile) return nextTransition; do { switch (nextTransition) { - case edm::InputSource::IsFile: { + case edm::InputSource::ItemType::IsFile: { processFile(iEP); nextTransition = iEP.nextTransitionType(); break; } - case edm::InputSource::IsRun: { + case edm::InputSource::ItemType::IsRun: { nextTransition = runs_.processRuns(iEP); break; } diff --git a/FWCore/Framework/test/MockEventProcessor.cc b/FWCore/Framework/test/MockEventProcessor.cc index 5747c48a15e30..2854873ebabb9 100644 --- a/FWCore/Framework/test/MockEventProcessor.cc +++ b/FWCore/Framework/test/MockEventProcessor.cc @@ -48,7 +48,7 @@ namespace edm { token t; if (not(input_ >> t)) { reachedEndOfInput_ = true; - return lastTransition_ = InputSource::IsStop; + return lastTransition_ = InputSource::ItemType::IsStop; } char ch = t.id; @@ -57,11 +57,11 @@ namespace edm { if (ch == 'r') { output_ << " *** nextItemType: Run " << t.value << " ***\n"; nextRun_ = static_cast(t.value); - return lastTransition_ = InputSource::IsRun; + return lastTransition_ = InputSource::ItemType::IsRun; } else if (ch == 'l') { output_ << " *** nextItemType: Lumi " << t.value << " ***\n"; nextLumi_ = static_cast(t.value); - return lastTransition_ = InputSource::IsLumi; + return lastTransition_ = InputSource::ItemType::IsLumi; } else if (ch == 'e') { output_ << " *** nextItemType: Event ***\n"; // a special value for test purposes only @@ -71,7 +71,7 @@ namespace edm { } else { shouldWeStop_ = false; } - return lastTransition_ = InputSource::IsEvent; + return lastTransition_ = InputSource::ItemType::IsEvent; } else if (ch == 'f') { output_ << " *** nextItemType: File " << t.value << " ***\n"; // a special value for test purposes only @@ -79,7 +79,7 @@ namespace edm { shouldWeCloseOutput_ = false; else shouldWeCloseOutput_ = true; - return lastTransition_ = InputSource::IsFile; + return lastTransition_ = InputSource::ItemType::IsFile; } else if (ch == 's') { output_ << " *** nextItemType: Stop " << t.value << " ***\n"; // a special value for test purposes only @@ -87,17 +87,17 @@ namespace edm { shouldWeEndLoop_ = false; else shouldWeEndLoop_ = true; - return lastTransition_ = InputSource::IsStop; + return lastTransition_ = InputSource::ItemType::IsStop; } else if (ch == 'x') { output_ << " *** nextItemType: Restart " << t.value << " ***\n"; shouldWeEndLoop_ = t.value; - return lastTransition_ = InputSource::IsStop; + return lastTransition_ = InputSource::ItemType::IsStop; } else if (ch == 't') { output_ << " *** nextItemType: Throw " << t.value << " ***\n"; shouldThrow_ = true; return nextTransitionType(); } - return lastTransition_ = InputSource::IsInvalid; + return lastTransition_ = InputSource::ItemType::IsInvalid; } InputSource::ItemType MockEventProcessor::lastTransitionType() const { return lastTransition_; } @@ -112,9 +112,9 @@ namespace edm { } readAndProcessEvent(); if (shouldWeStop()) { - return InputSource::IsEvent; + return InputSource::ItemType::IsEvent; } - } while (nextTransitionType() == InputSource::IsEvent); + } while (nextTransitionType() == InputSource::ItemType::IsEvent); return lastTransitionType(); } @@ -137,7 +137,7 @@ namespace edm { fp.normalEnd(); - if (trans != InputSource::IsStop) { + if (trans != InputSource::ItemType::IsStop) { //problem with the source doErrorStuff(); break; @@ -188,15 +188,15 @@ namespace edm { InputSource::ItemType MockEventProcessor::processRuns() { bool finished = false; - auto nextTransition = edm::InputSource::IsRun; + auto nextTransition = edm::InputSource::ItemType::IsRun; do { switch (nextTransition) { - case edm::InputSource::IsRun: { + case edm::InputSource::ItemType::IsRun: { processRun(); nextTransition = nextTransitionType(); break; } - case edm::InputSource::IsLumi: { + case edm::InputSource::ItemType::IsLumi: { nextTransition = processLumis(); break; } @@ -225,10 +225,10 @@ namespace edm { InputSource::ItemType MockEventProcessor::processLumis() { if (lumiStatus_ and currentLumiNumber_ == nextLumi_) { readAndMergeLumi(); - if (nextTransitionType() == InputSource::IsEvent) { + if (nextTransitionType() == InputSource::ItemType::IsEvent) { readAndProcessEvents(); if (shouldWeStop()) { - return edm::InputSource::IsStop; + return edm::InputSource::ItemType::IsStop; } } } else { @@ -239,10 +239,10 @@ namespace edm { throwIfNeeded(); didGlobalBeginLumiSucceed_ = true; //Need to do event processing here - if (nextTransitionType() == InputSource::IsEvent) { + if (nextTransitionType() == InputSource::ItemType::IsEvent) { readAndProcessEvents(); if (shouldWeStop()) { - return edm::InputSource::IsStop; + return edm::InputSource::ItemType::IsStop; } } } diff --git a/FWCore/Framework/test/MockEventProcessor.h b/FWCore/Framework/test/MockEventProcessor.h index 2768bc821f422..87c41793c0e0a 100644 --- a/FWCore/Framework/test/MockEventProcessor.h +++ b/FWCore/Framework/test/MockEventProcessor.h @@ -118,7 +118,7 @@ namespace edm { bool lumiStatus_ = false; LuminosityBlockNumber_t currentLumiNumber_ = 0; bool didGlobalBeginLumiSucceed_ = false; - InputSource::ItemType lastTransition_ = InputSource::IsInvalid; + InputSource::ItemType lastTransition_ = InputSource::ItemType::IsInvalid; bool currentRun_ = false; RunNumber_t currentRunNumber_ = 0; diff --git a/FWCore/Framework/test/unit_test_outputs/test_deepCall_unscheduled.log b/FWCore/Framework/test/unit_test_outputs/test_deepCall_unscheduled.log index cffed5d4487cd..666665139e80b 100644 --- a/FWCore/Framework/test/unit_test_outputs/test_deepCall_unscheduled.log +++ b/FWCore/Framework/test/unit_test_outputs/test_deepCall_unscheduled.log @@ -80,9 +80,6 @@ ModuleCallingContext state = Running ++++ finished: source run ++++ starting: global begin run 1 : time = 1000000 ++++ finished: global begin run 1 : time = 1000000 -++++ queuing: EventSetup synchronization run: 1 lumi: 1 event: 0 -++++ pre: EventSetup synchronizing run: 1 lumi: 1 event: 0 -++++ post: EventSetup synchronizing run: 1 lumi: 1 event: 0 ++++ starting: begin run: stream = 0 run = 1 time = 1000000 ++++++ starting: begin run for module: stream = 0 label = 'one' id = 4 StreamContext: StreamID = 0 transition = BeginRun @@ -109,6 +106,9 @@ ModuleCallingContext state = Running ProcessContext: TEST cf65ff121f7d0ed0d094247b80407269 ++++ finished: begin run: stream = 0 run = 1 time = 1000000 +++++ queuing: EventSetup synchronization run: 1 lumi: 1 event: 0 +++++ pre: EventSetup synchronizing run: 1 lumi: 1 event: 0 +++++ post: EventSetup synchronizing run: 1 lumi: 1 event: 0 ++++ starting: source lumi ++++ finished: source lumi ++++ starting: global begin lumi: run = 1 lumi = 1 time = 1000000 diff --git a/FWCore/Framework/test/unit_test_outputs/test_onPath_unscheduled.log b/FWCore/Framework/test/unit_test_outputs/test_onPath_unscheduled.log index 5f7598a2fd68c..7313caaa3ae8a 100644 --- a/FWCore/Framework/test/unit_test_outputs/test_onPath_unscheduled.log +++ b/FWCore/Framework/test/unit_test_outputs/test_onPath_unscheduled.log @@ -48,15 +48,15 @@ ++++ finished: source run ++++ starting: global begin run 1 : time = 1000000 ++++ finished: global begin run 1 : time = 1000000 -++++ queuing: EventSetup synchronization run: 1 lumi: 1 event: 0 -++++ pre: EventSetup synchronizing run: 1 lumi: 1 event: 0 -++++ post: EventSetup synchronizing run: 1 lumi: 1 event: 0 ++++ starting: begin run: stream = 0 run = 1 time = 1000000 ++++++ starting: begin run for module: stream = 0 label = 'two' id = 5 ++++++ finished: begin run for module: stream = 0 label = 'two' id = 5 ++++++ starting: begin run for module: stream = 0 label = 'one' id = 3 ++++++ finished: begin run for module: stream = 0 label = 'one' id = 3 ++++ finished: begin run: stream = 0 run = 1 time = 1000000 +++++ queuing: EventSetup synchronization run: 1 lumi: 1 event: 0 +++++ pre: EventSetup synchronizing run: 1 lumi: 1 event: 0 +++++ post: EventSetup synchronizing run: 1 lumi: 1 event: 0 ++++ starting: source lumi ++++ finished: source lumi ++++ starting: global begin lumi: run = 1 lumi = 1 time = 1000000 diff --git a/FWCore/Integration/plugins/PutOrMergeTestSource.cc b/FWCore/Integration/plugins/PutOrMergeTestSource.cc index b7f654e3ab458..2e57b5e81d1a5 100644 --- a/FWCore/Integration/plugins/PutOrMergeTestSource.cc +++ b/FWCore/Integration/plugins/PutOrMergeTestSource.cc @@ -30,7 +30,7 @@ namespace edmtest { void registerProducts() final; private: - ItemType getNextItemType() final; + ItemTypeInfo getNextItemType() final; std::shared_ptr readRunAuxiliary_() final; std::shared_ptr readLuminosityBlockAuxiliary_() final; std::shared_ptr readFile_() final; @@ -109,21 +109,21 @@ void PutOrMergeTestSource::registerProducts() { productRegistryUpdate().copyProduct(thingWithEqualDesc_); } -InputSource::ItemType PutOrMergeTestSource::getNextItemType() { +InputSource::ItemTypeInfo PutOrMergeTestSource::getNextItemType() { switch (stage_) { case 0: { - return IsFile; + return ItemType::IsFile; } case 1: { - return IsRun; + return ItemType::IsRun; } case 2: { - return IsRun; + return ItemType::IsRun; } default: - return IsStop; + return ItemType::IsStop; } - return IsInvalid; + return ItemType::IsInvalid; } std::shared_ptr PutOrMergeTestSource::readRunAuxiliary_() { diff --git a/FWCore/Integration/plugins/SourceWithWaits.cc b/FWCore/Integration/plugins/SourceWithWaits.cc index 3175c84458f04..22b6009f8b394 100644 --- a/FWCore/Integration/plugins/SourceWithWaits.cc +++ b/FWCore/Integration/plugins/SourceWithWaits.cc @@ -63,14 +63,19 @@ namespace edmtest { static void fillDescriptions(edm::ConfigurationDescriptions&); private: - edm::InputSource::ItemType getNextItemType() override; + edm::InputSource::ItemTypeInfo getNextItemType() override; std::shared_ptr readRunAuxiliary_() override; std::shared_ptr readLuminosityBlockAuxiliary_() override; void readEvent_(edm::EventPrincipal&) override; - unsigned int timePerLumi_; // seconds + double timePerLumi_; // seconds + double sleepAfterStartOfRun_; // seconds std::vector eventsPerLumi_; unsigned int lumisPerRun_; + unsigned int multipleEntriesForRun_; + unsigned int multipleEntriesForLumi_; + bool declareLast_; + bool declareAllLast_; edm::EventNumber_t currentEvent_ = 0; edm::LuminosityBlockNumber_t currentLumi_ = 0; @@ -78,66 +83,148 @@ namespace edmtest { unsigned int currentFile_ = 0; unsigned int eventInCurrentLumi_ = 0; unsigned int lumiInCurrentRun_ = 0; + bool startedNewRun_ = false; + bool lastEventOfLumi_ = false; + bool noEventsInLumi_ = false; }; SourceWithWaits::SourceWithWaits(edm::ParameterSet const& pset, edm::InputSourceDescription const& desc) : edm::InputSource(pset, desc), - timePerLumi_(pset.getUntrackedParameter("timePerLumi")), + timePerLumi_(pset.getUntrackedParameter("timePerLumi")), + sleepAfterStartOfRun_(pset.getUntrackedParameter("sleepAfterStartOfRun")), eventsPerLumi_(pset.getUntrackedParameter>("eventsPerLumi")), - lumisPerRun_(pset.getUntrackedParameter("lumisPerRun")) {} + lumisPerRun_(pset.getUntrackedParameter("lumisPerRun")), + multipleEntriesForRun_(pset.getUntrackedParameter("multipleEntriesForRun")), + multipleEntriesForLumi_(pset.getUntrackedParameter("multipleEntriesForLumi")), + declareLast_(pset.getUntrackedParameter("declareLast")), + declareAllLast_(pset.getUntrackedParameter("declareAllLast")) {} SourceWithWaits::~SourceWithWaits() {} void SourceWithWaits::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; - desc.addUntracked("timePerLumi"); + desc.addUntracked("timePerLumi"); + desc.addUntracked("sleepAfterStartOfRun"); desc.addUntracked>("eventsPerLumi"); desc.addUntracked("lumisPerRun"); + desc.addUntracked("multipleEntriesForRun", 0); + desc.addUntracked("multipleEntriesForLumi", 0); + desc.addUntracked("declareLast", false); + desc.addUntracked("declareAllLast", false); descriptions.add("source", desc); } - edm::InputSource::ItemType SourceWithWaits::getNextItemType() { + edm::InputSource::ItemTypeInfo SourceWithWaits::getNextItemType() { constexpr unsigned int secondsToMicroseconds = 1000000; + if (startedNewRun_) { + usleep(secondsToMicroseconds * sleepAfterStartOfRun_); + startedNewRun_ = false; + } + + if (lastEventOfLumi_ || noEventsInLumi_) { + usleep(secondsToMicroseconds * timePerLumi_ / (eventsPerLumi_[currentLumi_ - 1] + 1)); + lastEventOfLumi_ = false; + noEventsInLumi_ = false; + } + // First three cases are for the initial file, run, and lumi transitions // Note that there will always be at exactly one file and at least // one run from this test source. if (currentFile_ == 0u) { ++currentFile_; - return edm::InputSource::IsFile; - } else if (currentRun_ == 0u) { + return ItemType::IsFile; + } + // First Run + else if (currentRun_ == 0u) { ++currentRun_; - return edm::InputSource::IsRun; - } else if (currentLumi_ == 0u) { + if (currentRun_ != multipleEntriesForRun_) { + startedNewRun_ = true; + auto const position = + (declareLast_ || declareAllLast_) ? ItemPosition::LastItemToBeMerged : ItemPosition::NotLastItemToBeMerged; + return ItemTypeInfo(ItemType::IsRun, position); + } else { + // declareAllLast_ with multipleEntriesForRun_ or multipleEntriesForLumi_ is an intentional bug, used to test + // if the Framework detects the potential InputSource bug and throws an exception. + auto const position = declareAllLast_ ? ItemPosition::LastItemToBeMerged : ItemPosition::NotLastItemToBeMerged; + return ItemTypeInfo(ItemType::IsRun, position); + } + } + // If configured, a second Entry for the same run number and reduced ProcessHistoryID + else if (currentRun_ == multipleEntriesForRun_) { + multipleEntriesForRun_ = 0; + startedNewRun_ = true; + auto const position = + (declareLast_ || declareAllLast_) ? ItemPosition::LastItemToBeMerged : ItemPosition::NotLastItemToBeMerged; + return ItemTypeInfo(ItemType::IsRun, position); + } + // First lumi + else if (currentLumi_ == 0u && lumisPerRun_ != 0) { ++currentLumi_; ++lumiInCurrentRun_; // The job will stop when we hit the end of the eventsPerLumi vector // unless maxEvents stopped it earlier. if ((currentLumi_ - 1) >= eventsPerLumi_.size()) { - return edm::InputSource::IsStop; + return ItemType::IsStop; } - return edm::InputSource::IsLumi; + if (currentLumi_ != multipleEntriesForLumi_) { + if (eventsPerLumi_[currentLumi_ - 1] == 0) { + noEventsInLumi_ = true; + } + auto const position = + (declareLast_ || declareAllLast_) ? ItemPosition::LastItemToBeMerged : ItemPosition::NotLastItemToBeMerged; + return ItemTypeInfo(ItemType::IsLumi, position); + } else { + // declareAllLast_ with multipleEntriesForRun_ or multipleEntriesForLumi_ is an intentional bug, used to test + // if the Framework detects the potential InputSource bug and throws an exception. + auto const position = declareAllLast_ ? ItemPosition::LastItemToBeMerged : ItemPosition::NotLastItemToBeMerged; + return ItemTypeInfo(ItemType::IsLumi, position); + } + } + // If configured, a second Entry for the same lumi number in the same run + else if (currentLumi_ == multipleEntriesForLumi_ && lumisPerRun_ != 0) { + multipleEntriesForLumi_ = 0; + if (eventsPerLumi_[currentLumi_ - 1] == 0) { + noEventsInLumi_ = true; + } + auto const position = + (declareLast_ || declareAllLast_) ? ItemPosition::LastItemToBeMerged : ItemPosition::NotLastItemToBeMerged; + return ItemTypeInfo(ItemType::IsLumi, position); } - // Handle more events in the current lumi - else if (eventInCurrentLumi_ < eventsPerLumi_[currentLumi_ - 1]) { + // Handle events in the current lumi + else if (eventInCurrentLumi_ < eventsPerLumi_[currentLumi_ - 1] && lumisPerRun_ != 0) { // note the argument to usleep is microseconds, timePerLumi_ is in seconds usleep(secondsToMicroseconds * timePerLumi_ / (eventsPerLumi_[currentLumi_ - 1] + 1)); ++eventInCurrentLumi_; ++currentEvent_; - return edm::InputSource::IsEvent; + if (eventInCurrentLumi_ == eventsPerLumi_[currentLumi_ - 1]) { + lastEventOfLumi_ = true; + } + return ItemType::IsEvent; } // Next lumi else if (lumiInCurrentRun_ < lumisPerRun_) { - usleep(secondsToMicroseconds * timePerLumi_ / (eventsPerLumi_[currentLumi_ - 1] + 1)); ++currentLumi_; ++lumiInCurrentRun_; // The job will stop when we hit the end of the eventsPerLumi vector // unless maxEvents stopped it earlier. if ((currentLumi_ - 1) >= eventsPerLumi_.size()) { - return edm::InputSource::IsStop; + return ItemType::IsStop; } eventInCurrentLumi_ = 0; - return edm::InputSource::IsLumi; + if (currentLumi_ != multipleEntriesForLumi_) { + if (eventsPerLumi_[currentLumi_ - 1] == 0) { + noEventsInLumi_ = true; + } + auto const position = + (declareLast_ || declareAllLast_) ? ItemPosition::LastItemToBeMerged : ItemPosition::NotLastItemToBeMerged; + return ItemTypeInfo(ItemType::IsLumi, position); + } else { + // declareAllLast_ with multipleEntriesForRun_ or multipleEntriesForLumi_ is an intentional bug, used to test + // if the Framework detects the potential InputSource bug and throws an exception. + auto const position = declareAllLast_ ? ItemPosition::LastItemToBeMerged : ItemPosition::NotLastItemToBeMerged; + return ItemTypeInfo(ItemType::IsLumi, position); + } } // Next run else { @@ -145,16 +232,30 @@ namespace edmtest { // unless maxEvents stopped it earlier. Don't start the run if // it will end with no lumis in it. if (currentLumi_ >= eventsPerLumi_.size()) { - return edm::InputSource::IsStop; + return ItemType::IsStop; } ++currentRun_; + // Avoid infinite job if lumisPerRun_ is 0 + if (currentRun_ > 100) { + return ItemType::IsStop; + } lumiInCurrentRun_ = 0; - return edm::InputSource::IsRun; + if (currentRun_ != multipleEntriesForRun_) { + startedNewRun_ = true; + auto const position = + (declareLast_ || declareAllLast_) ? ItemPosition::LastItemToBeMerged : ItemPosition::NotLastItemToBeMerged; + return ItemTypeInfo(ItemType::IsRun, position); + } else { + // declareAllLast_ with multipleEntriesForRun_ or multipleEntriesForLumi_ is an intentional bug, used to test + // if the Framework detects the potential InputSource bug and throws an exception. + auto const position = declareAllLast_ ? ItemPosition::LastItemToBeMerged : ItemPosition::NotLastItemToBeMerged; + return ItemTypeInfo(ItemType::IsRun, position); + } } // Should be impossible to get here assert(false); // return something so it will compile - return edm::InputSource::IsStop; + return ItemType::IsStop; } std::shared_ptr SourceWithWaits::readRunAuxiliary_() { diff --git a/FWCore/Integration/test/inputSourceTest.sh b/FWCore/Integration/test/inputSourceTest.sh index 5e58120c58178..a2dc21bb77753 100755 --- a/FWCore/Integration/test/inputSourceTest.sh +++ b/FWCore/Integration/test/inputSourceTest.sh @@ -5,3 +5,20 @@ function die { echo $1: status $2 ; exit $2; } cmsRun ${SCRAM_TEST_PATH}/inputSourceTest_cfg.py || die 'Failed in inputSourceTest_cfg.py' $? cmsRun ${SCRAM_TEST_PATH}/testLateLumiClosure_cfg.py || die 'Failed in testLateLumiClosure_cfg.py' $? + +# The following demonstrates declaring the last run or lumi entry to be merged eliminates the delay +# before globalBeginRun and globalBeginLumi while waiting for the next thing to arrive +# to know that the last entry to be merged has already arrived. (Note the previous test is very similar +# and shows the delay, running without enableDeclareLast will also demonstrate it). + +cmsRun ${SCRAM_TEST_PATH}/testDeclareLastEntryForMerge_cfg.py --enableDeclareLast --multipleEntriesForRun 2 --multipleEntriesForLumi 4 || die 'Failed in testDeclareLastEntryForMerge_cfg.py' $? + +# The next two cmsRun processes should throw an exception (intentional) +# These two tests show the Framework will detect a buggy InputSource that +# declares something last that is NOT last. + +cmsRun ${SCRAM_TEST_PATH}/testDeclareLastEntryForMerge_cfg.py --enableDeclareAllLast --multipleEntriesForRun 1 && die 'Failed in testDeclareLastEntryForMerge_cfg.py, last run source bug not detected' 1 + +cmsRun ${SCRAM_TEST_PATH}/testDeclareLastEntryForMerge_cfg.py --enableDeclareAllLast --multipleEntriesForLumi 2 && die 'Failed in testDeclareLastEntryForMerge_cfg.py, last lumi source bug not detected' 1 + +exit 0 diff --git a/FWCore/Integration/test/testDeclareLastEntryForMerge_cfg.py b/FWCore/Integration/test/testDeclareLastEntryForMerge_cfg.py new file mode 100644 index 0000000000000..58bedbbb7dbe0 --- /dev/null +++ b/FWCore/Integration/test/testDeclareLastEntryForMerge_cfg.py @@ -0,0 +1,57 @@ + +import FWCore.ParameterSet.Config as cms +import sys +import argparse + +parser = argparse.ArgumentParser(prog=sys.argv[0], description='Test InputSource Declaring last run or lumi entry for merge') + +parser.add_argument("--enableDeclareLast", action="store_true", help="Declare last entry for merge") +parser.add_argument("--enableDeclareAllLast", action="store_true", help="Declare all entries as last for merge (force intentional source bug)") +parser.add_argument("--multipleEntriesForRun", type=int) +parser.add_argument("--multipleEntriesForLumi", type=int) + +args = parser.parse_args() + +process = cms.Process("PROD") + +process.options = dict( + numberOfThreads = 2, + numberOfStreams = 2, + numberOfConcurrentRuns = 1, + numberOfConcurrentLuminosityBlocks = 2 +) + +process.Tracer = cms.Service("Tracer", + printTimestamps = cms.untracked.bool(True) +) + +process.source = cms.Source("SourceWithWaits", + timePerLumi = cms.untracked.double(1), + sleepAfterStartOfRun = cms.untracked.double(0.25), + eventsPerLumi = cms.untracked.vuint32(4,0,5,4,0,5), + lumisPerRun = cms.untracked.uint32(3), + declareLast = cms.untracked.bool(False), + declareAllLast = cms.untracked.bool(False), + multipleEntriesForLumi = cms.untracked.uint32(0), + multipleEntriesForRun = cms.untracked.uint32(0) +) + +if args.enableDeclareLast: + process.source.declareLast = True + +if args.enableDeclareAllLast: + process.source.declareAllLast = True + +if args.multipleEntriesForLumi is not None: + process.source.multipleEntriesForLumi = args.multipleEntriesForLumi + +if args.multipleEntriesForRun is not None: + process.source.multipleEntriesForRun = args.multipleEntriesForRun + +process.sleepingProducer = cms.EDProducer("timestudy::SleepingProducer", + ivalue = cms.int32(1), + consumes = cms.VInputTag(), + eventTimes = cms.vdouble(0.1, 0.1, 0.6, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1) +) + +process.p = cms.Path(process.sleepingProducer) diff --git a/FWCore/Integration/test/testLateLumiClosure_cfg.py b/FWCore/Integration/test/testLateLumiClosure_cfg.py index 8b01cd99c132e..3589d7ac62277 100644 --- a/FWCore/Integration/test/testLateLumiClosure_cfg.py +++ b/FWCore/Integration/test/testLateLumiClosure_cfg.py @@ -56,7 +56,8 @@ ) process.source = cms.Source("SourceWithWaits", - timePerLumi = cms.untracked.uint32(1), + timePerLumi = cms.untracked.double(1), + sleepAfterStartOfRun = cms.untracked.double(0.25), eventsPerLumi = cms.untracked.vuint32(4,0,5), lumisPerRun = cms.untracked.uint32(100) ) diff --git a/FWCore/Integration/test/unit_test_outputs/testGetBy1.log b/FWCore/Integration/test/unit_test_outputs/testGetBy1.log index 0af9db0bd10ae..44ddb24a353aa 100644 --- a/FWCore/Integration/test/unit_test_outputs/testGetBy1.log +++ b/FWCore/Integration/test/unit_test_outputs/testGetBy1.log @@ -319,9 +319,6 @@ GlobalContext: transition = BeginRun ProcessContext: COPY 6f4335e86de793448be83fe14f12dcb7 parent ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++ queuing: EventSetup synchronization run: 1 lumi: 1 event: 0 -++++ pre: EventSetup synchronizing run: 1 lumi: 1 event: 0 -++++ post: EventSetup synchronizing run: 1 lumi: 1 event: 0 ++++ starting: begin run: stream = 0 run = 1 time = 1 StreamContext: StreamID = 0 transition = BeginRun run: 1 lumi: 0 event: 0 @@ -378,6 +375,9 @@ StreamContext: StreamID = 0 transition = BeginRun ProcessContext: COPY 6f4335e86de793448be83fe14f12dcb7 parent ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 +++++ queuing: EventSetup synchronization run: 1 lumi: 1 event: 0 +++++ pre: EventSetup synchronizing run: 1 lumi: 1 event: 0 +++++ post: EventSetup synchronizing run: 1 lumi: 1 event: 0 ++++ starting: source lumi ++++ finished: source lumi ++++ starting: global begin lumi: run = 1 lumi = 1 time = 1 diff --git a/FWCore/Integration/test/unit_test_outputs/testGetBy2.log b/FWCore/Integration/test/unit_test_outputs/testGetBy2.log index d3109fc8b8098..896d6cddd3831 100644 --- a/FWCore/Integration/test/unit_test_outputs/testGetBy2.log +++ b/FWCore/Integration/test/unit_test_outputs/testGetBy2.log @@ -132,9 +132,6 @@ GlobalContext: transition = BeginRun runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++ queuing: EventSetup synchronization run: 1 lumi: 1 event: 0 -++++ pre: EventSetup synchronizing run: 1 lumi: 1 event: 0 -++++ post: EventSetup synchronizing run: 1 lumi: 1 event: 0 ++++ starting: begin run: stream = 0 run = 1 time = 1 StreamContext: StreamID = 0 transition = BeginRun run: 1 lumi: 0 event: 0 @@ -173,6 +170,9 @@ StreamContext: StreamID = 0 transition = BeginRun runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 +++++ queuing: EventSetup synchronization run: 1 lumi: 1 event: 0 +++++ pre: EventSetup synchronizing run: 1 lumi: 1 event: 0 +++++ post: EventSetup synchronizing run: 1 lumi: 1 event: 0 ++++ starting: source lumi ++++ finished: source lumi ++++ starting: global begin lumi: run = 1 lumi = 1 time = 1 diff --git a/FWCore/Integration/test/unit_test_outputs/testSubProcess.grep2.txt b/FWCore/Integration/test/unit_test_outputs/testSubProcess.grep2.txt index 6c242b5af9b72..7b125205d19da 100644 --- a/FWCore/Integration/test/unit_test_outputs/testSubProcess.grep2.txt +++ b/FWCore/Integration/test/unit_test_outputs/testSubProcess.grep2.txt @@ -343,7 +343,6 @@ ++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 23 ++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 23 ++++ finished: global begin run 1 : time = 1 -++++ queuing: EventSetup synchronization run: 1 lumi: 1 event: 0 ++++ starting: begin run: stream = 0 run = 1 time = 1 ++++ finished: begin run: stream = 0 run = 1 time = 1 ++++ starting: begin run: stream = 0 run = 1 time = 1 @@ -362,6 +361,7 @@ ++++ finished: begin run: stream = 0 run = 1 time = 1 ++++ starting: begin run: stream = 0 run = 1 time = 1 ++++ finished: begin run: stream = 0 run = 1 time = 1 +++++ queuing: EventSetup synchronization run: 1 lumi: 1 event: 0 ++++ pre: EventSetup synchronizing run: 1 lumi: 1 event: 0 ++++ post: EventSetup synchronizing run: 1 lumi: 1 event: 0 ++++ starting: source lumi @@ -2742,9 +2742,6 @@ ++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 23 ++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 23 ++++ finished: global begin run 2 : time = 55000001 -++++ queuing: EventSetup synchronization run: 2 lumi: 1 event: 0 -++++ pre: EventSetup synchronizing run: 2 lumi: 1 event: 0 -++++ post: EventSetup synchronizing run: 2 lumi: 1 event: 0 ++++ starting: begin run: stream = 0 run = 2 time = 55000001 ++++ finished: begin run: stream = 0 run = 2 time = 55000001 ++++ starting: begin run: stream = 0 run = 2 time = 55000001 @@ -2763,6 +2760,9 @@ ++++ finished: begin run: stream = 0 run = 2 time = 55000001 ++++ starting: begin run: stream = 0 run = 2 time = 55000001 ++++ finished: begin run: stream = 0 run = 2 time = 55000001 +++++ queuing: EventSetup synchronization run: 2 lumi: 1 event: 0 +++++ pre: EventSetup synchronizing run: 2 lumi: 1 event: 0 +++++ post: EventSetup synchronizing run: 2 lumi: 1 event: 0 ++++ starting: source lumi ++++ finished: source lumi ++++ starting: global begin lumi: run = 2 lumi = 1 time = 55000001 @@ -5141,9 +5141,6 @@ ++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 23 ++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 23 ++++ finished: global begin run 3 : time = 105000001 -++++ queuing: EventSetup synchronization run: 3 lumi: 1 event: 0 -++++ pre: EventSetup synchronizing run: 3 lumi: 1 event: 0 -++++ post: EventSetup synchronizing run: 3 lumi: 1 event: 0 ++++ starting: begin run: stream = 0 run = 3 time = 105000001 ++++ finished: begin run: stream = 0 run = 3 time = 105000001 ++++ starting: begin run: stream = 0 run = 3 time = 105000001 @@ -5162,6 +5159,9 @@ ++++ finished: begin run: stream = 0 run = 3 time = 105000001 ++++ starting: begin run: stream = 0 run = 3 time = 105000001 ++++ finished: begin run: stream = 0 run = 3 time = 105000001 +++++ queuing: EventSetup synchronization run: 3 lumi: 1 event: 0 +++++ pre: EventSetup synchronizing run: 3 lumi: 1 event: 0 +++++ post: EventSetup synchronizing run: 3 lumi: 1 event: 0 ++++ starting: source lumi ++++ finished: source lumi ++++ starting: global begin lumi: run = 3 lumi = 1 time = 105000001 diff --git a/FWCore/Modules/src/TestSource.cc b/FWCore/Modules/src/TestSource.cc index fa9378a4ff507..f0fe9d1ce9e40 100644 --- a/FWCore/Modules/src/TestSource.cc +++ b/FWCore/Modules/src/TestSource.cc @@ -15,7 +15,7 @@ namespace edm { static void fillDescriptions(ConfigurationDescriptions& descriptions); private: - ItemType getNextItemType() final; + ItemTypeInfo getNextItemType() final; std::shared_ptr readRunAuxiliary_() final; std::shared_ptr readLuminosityBlockAuxiliary_() final; void readEvent_(EventPrincipal& eventPrincipal) final; @@ -36,32 +36,32 @@ namespace edm { TestSource::ItemType TestSource::stringToType(const std::string& iTrans) { if (iTrans == "IsStop") { - return IsStop; + return ItemType::IsStop; } if (iTrans == "IsFile") { - return IsFile; + return ItemType::IsFile; } if (iTrans == "IsRun") { - return IsRun; + return ItemType::IsRun; } if (iTrans == "IsLumi") { - return IsLumi; + return ItemType::IsLumi; } if (iTrans == "IsEvent") { - return IsEvent; + return ItemType::IsEvent; } if (iTrans == "IsSynchronize") { - return IsSynchronize; + return ItemType::IsSynchronize; } throw edm::Exception(errors::Configuration) << "Unknown transition type \'" << iTrans << "\'"; - return IsInvalid; + return ItemType::IsInvalid; } - TestSource::ItemType TestSource::getNextItemType() { + TestSource::ItemTypeInfo TestSource::getNextItemType() { if (m_nextTransition == m_transitions.end()) { - return IsStop; + return ItemType::IsStop; } auto trans = m_nextTransition->first; ++m_nextTransition; diff --git a/FWCore/Sources/interface/IDGeneratorSourceBase.h b/FWCore/Sources/interface/IDGeneratorSourceBase.h index eda1db16a3fa4..947327b8efa1b 100644 --- a/FWCore/Sources/interface/IDGeneratorSourceBase.h +++ b/FWCore/Sources/interface/IDGeneratorSourceBase.h @@ -66,7 +66,7 @@ namespace edm { } private: - typename BASE::ItemType getNextItemType() final; + typename BASE::ItemTypeInfo getNextItemType() final; virtual void initialize(EventID& id, TimeValue_t& time, TimeValue_t& interval); virtual bool setRunAndEventInfo(EventID& id, TimeValue_t& time, EventAuxiliary::ExperimentType& etype) = 0; virtual bool noFiles() const; diff --git a/FWCore/Sources/interface/RawInputSource.h b/FWCore/Sources/interface/RawInputSource.h index 27ef1f5bfce97..7c387a4223b19 100644 --- a/FWCore/Sources/interface/RawInputSource.h +++ b/FWCore/Sources/interface/RawInputSource.h @@ -35,7 +35,7 @@ namespace edm { std::shared_ptr readRunAuxiliary_() override; virtual void reset_(); void rewind_() override; - ItemType getNextItemType() override; + ItemTypeInfo getNextItemType() override; void closeFile_() final; std::shared_ptr readFile_() final; virtual void genuineCloseFile() {} diff --git a/FWCore/Sources/src/IDGeneratorSourceBase.cc b/FWCore/Sources/src/IDGeneratorSourceBase.cc index 10b871509fabc..a5f20ab22320c 100644 --- a/FWCore/Sources/src/IDGeneratorSourceBase.cc +++ b/FWCore/Sources/src/IDGeneratorSourceBase.cc @@ -133,18 +133,18 @@ namespace edm { } template - typename BASE::ItemType IDGeneratorSourceBase::getNextItemType() { - if (BASE::state() == BASE::IsInvalid) { - return noFiles() ? BASE::IsStop : BASE::IsFile; + typename BASE::ItemTypeInfo IDGeneratorSourceBase::getNextItemType() { + if (BASE::state() == BASE::ItemType::IsInvalid) { + return noFiles() ? BASE::ItemType::IsStop : BASE::ItemType::IsFile; } if (BASE::newRun()) { - return BASE::IsRun; + return BASE::ItemType::IsRun; } if (BASE::newLumi()) { - return BASE::IsLumi; + return BASE::ItemType::IsLumi; } if (BASE::eventCached()) { - return BASE::IsEvent; + return BASE::ItemType::IsEvent; } EventID oldEventID = eventID_; advanceToNext(eventID_, presentTime_); @@ -154,7 +154,7 @@ namespace edm { size_t index = fileIndex(); bool another = setRunAndEventInfo(eventID_, presentTime_, eType_); if (!another) { - return BASE::IsStop; + return BASE::ItemType::IsStop; } bool newFile = (fileIndex() > index); BASE::setEventCached(); @@ -162,15 +162,15 @@ namespace edm { // New Run BASE::setNewRun(); BASE::setNewLumi(); - return newFile ? BASE::IsFile : BASE::IsRun; + return newFile ? BASE::ItemType::IsFile : BASE::ItemType::IsRun; } // Same Run if (BASE::newLumi() || eventID_.luminosityBlock() != oldEventID.luminosityBlock()) { // New Lumi BASE::setNewLumi(); - return newFile ? BASE::IsFile : BASE::IsLumi; + return newFile ? BASE::ItemType::IsFile : BASE::ItemType::IsLumi; } - return newFile ? BASE::IsFile : BASE::IsEvent; + return newFile ? BASE::ItemType::IsFile : BASE::ItemType::IsEvent; } template diff --git a/FWCore/Sources/src/RawInputSource.cc b/FWCore/Sources/src/RawInputSource.cc index 8d246863a0b3a..ba900c8127097 100644 --- a/FWCore/Sources/src/RawInputSource.cc +++ b/FWCore/Sources/src/RawInputSource.cc @@ -53,18 +53,18 @@ namespace edm { eventPrincipal.fillEventPrincipal(eventAuxiliary, history); } - InputSource::ItemType RawInputSource::getNextItemType() { - if (state() == IsInvalid) { - return IsFile; + InputSource::ItemTypeInfo RawInputSource::getNextItemType() { + if (state() == ItemType::IsInvalid) { + return ItemType::IsFile; } if (newRun() && runAuxiliary()) { - return IsRun; + return ItemType::IsRun; } if (newLumi() && luminosityBlockAuxiliary()) { - return IsLumi; + return ItemType::IsLumi; } if (eventCached()) { - return IsEvent; + return ItemType::IsEvent; } if (inputFileTransitionsEachEvent_) { // The following two lines are here because after a source @@ -76,22 +76,22 @@ namespace edm { } Next another = checkNext(); if (another == Next::kStop) { - return IsStop; + return ItemType::IsStop; } else if (another == Next::kEvent and inputFileTransitionsEachEvent_) { fakeInputFileTransition_ = true; - return IsFile; + return ItemType::IsFile; } else if (another == Next::kFile) { setNewRun(); setNewLumi(); resetEventCached(); - return IsFile; + return ItemType::IsFile; } if (newRun()) { - return IsRun; + return ItemType::IsRun; } else if (newLumi()) { - return IsLumi; + return ItemType::IsLumi; } - return IsEvent; + return ItemType::IsEvent; } void RawInputSource::reset_() { diff --git a/IOPool/Input/src/OneLumiPoolSource.cc b/IOPool/Input/src/OneLumiPoolSource.cc index 77512503cfbde..8a33b257b9640 100644 --- a/IOPool/Input/src/OneLumiPoolSource.cc +++ b/IOPool/Input/src/OneLumiPoolSource.cc @@ -15,7 +15,7 @@ namespace edm { explicit OneLumiPoolSource(ParameterSet const& pset, InputSourceDescription const& desc); private: - ItemType getNextItemType() override; + ItemTypeInfo getNextItemType() override; std::shared_ptr readLuminosityBlockAuxiliary_() override; void readEvent_(EventPrincipal& eventPrincipal) override { @@ -37,9 +37,9 @@ namespace edm { return ret; } - InputSource::ItemType OneLumiPoolSource::getNextItemType() { + InputSource::ItemTypeInfo OneLumiPoolSource::getNextItemType() { auto type = PoolSource::getNextItemType(); - if (type == IsLumi) { + if (type == ItemType::IsLumi) { if (seenFirstLumi_) { do { edm::HistoryAppender historyAppender; @@ -50,7 +50,7 @@ namespace edm { LuminosityBlockPrincipal temp(prodReg, procConfig, &historyAppender, 0); readLuminosityBlock_(temp); type = PoolSource::getNextItemType(); - } while (type == IsLumi); + } while (type == ItemType::IsLumi); } else { seenFirstLumi_ = true; } diff --git a/IOPool/Input/src/PoolSource.cc b/IOPool/Input/src/PoolSource.cc index 9bd2cb393c848..6996f17d0c637 100644 --- a/IOPool/Input/src/PoolSource.cc +++ b/IOPool/Input/src/PoolSource.cc @@ -260,15 +260,15 @@ namespace edm { return true; } - InputSource::ItemType PoolSource::getNextItemType() { + InputSource::ItemTypeInfo PoolSource::getNextItemType() { RunNumber_t run = IndexIntoFile::invalidRun; LuminosityBlockNumber_t lumi = IndexIntoFile::invalidLumi; EventNumber_t event = IndexIntoFile::invalidEvent; InputSource::ItemType itemType = primaryFileSequence_->getNextItemType(run, lumi, event); - if (secondaryFileSequence_ && (IsSynchronize != state())) { - if (itemType == IsRun || itemType == IsLumi || itemType == IsEvent) { + if (secondaryFileSequence_ && (ItemType::IsSynchronize != state())) { + if (itemType == ItemType::IsRun || itemType == ItemType::IsLumi || itemType == ItemType::IsEvent) { if (!secondaryFileSequence_->containedInCurrentFile(run, lumi, event)) { - return IsSynchronize; + return ItemType::IsSynchronize; } } } diff --git a/IOPool/Input/src/PoolSource.h b/IOPool/Input/src/PoolSource.h index ed7deb115f91f..48560338f867d 100644 --- a/IOPool/Input/src/PoolSource.h +++ b/IOPool/Input/src/PoolSource.h @@ -49,7 +49,7 @@ namespace edm { static void fillDescriptions(ConfigurationDescriptions& descriptions); protected: - ItemType getNextItemType() override; + ItemTypeInfo getNextItemType() override; void readLuminosityBlock_(LuminosityBlockPrincipal& lumiPrincipal) override; std::shared_ptr readLuminosityBlockAuxiliary_() override; void readEvent_(EventPrincipal& eventPrincipal) override; diff --git a/IOPool/Input/src/RepeatingCachedRootSource.cc b/IOPool/Input/src/RepeatingCachedRootSource.cc index f85866180de1b..7b92607e46125 100644 --- a/IOPool/Input/src/RepeatingCachedRootSource.cc +++ b/IOPool/Input/src/RepeatingCachedRootSource.cc @@ -112,7 +112,7 @@ namespace edm { }; protected: - ItemType getNextItemType() override; + ItemTypeInfo getNextItemType() override; void readLuminosityBlock_(LuminosityBlockPrincipal& lumiPrincipal) override; std::shared_ptr readLuminosityBlockAuxiliary_() override; void readEvent_(EventPrincipal& eventPrincipal) override; @@ -153,7 +153,7 @@ namespace edm { std::map productIDToWrapperIndex_; std::vector streamToCacheIndex_; size_t nextEventIndex_ = 0; - ItemType presentState_ = IsFile; + ItemType presentState_ = ItemType::IsFile; unsigned long long eventIndex_ = 0; }; } // namespace edm @@ -344,17 +344,17 @@ std::shared_ptr RepeatingCachedRootSource::getProduct(unsigned int return cachedWrappers_[streamToCacheIndex_[iStreamIndex]][branchIDToWrapperIndex_.find(k)->second]; } -RepeatingCachedRootSource::ItemType RepeatingCachedRootSource::getNextItemType() { +RepeatingCachedRootSource::ItemTypeInfo RepeatingCachedRootSource::getNextItemType() { auto v = presentState_; switch (presentState_) { - case IsFile: - presentState_ = IsRun; + case ItemType::IsFile: + presentState_ = ItemType::IsRun; break; - case IsRun: - presentState_ = IsLumi; + case ItemType::IsRun: + presentState_ = ItemType::IsLumi; break; - case IsLumi: - presentState_ = IsEvent; + case ItemType::IsLumi: + presentState_ = ItemType::IsEvent; break; default: break; diff --git a/IOPool/Input/src/RootPrimaryFileSequence.cc b/IOPool/Input/src/RootPrimaryFileSequence.cc index 2f29dc762538a..07e0255bc0129 100644 --- a/IOPool/Input/src/RootPrimaryFileSequence.cc +++ b/IOPool/Input/src/RootPrimaryFileSequence.cc @@ -226,31 +226,31 @@ namespace edm { return true; } - InputSource::ItemType RootPrimaryFileSequence::getNextItemType(RunNumber_t& run, - LuminosityBlockNumber_t& lumi, - EventNumber_t& event) { + InputSource::ItemTypeInfo RootPrimaryFileSequence::getNextItemType(RunNumber_t& run, + LuminosityBlockNumber_t& lumi, + EventNumber_t& event) { if (noMoreFiles() || skipToStop_) { skipToStop_ = false; - return InputSource::IsStop; + return InputSource::ItemType::IsStop; } if (firstFile_ || goToEventInNewFile_ || skipIntoNewFile_) { - return InputSource::IsFile; + return InputSource::ItemType::IsFile; } if (rootFile()) { IndexIntoFile::EntryType entryType = rootFile()->getNextItemType(run, lumi, event); if (entryType == IndexIntoFile::kEvent) { - return InputSource::IsEvent; + return InputSource::ItemType::IsEvent; } else if (entryType == IndexIntoFile::kLumi) { - return InputSource::IsLumi; + return InputSource::ItemType::IsLumi; } else if (entryType == IndexIntoFile::kRun) { - return InputSource::IsRun; + return InputSource::ItemType::IsRun; } assert(entryType == IndexIntoFile::kEnd); } if (atLastFile()) { - return InputSource::IsStop; + return InputSource::ItemType::IsStop; } - return InputSource::IsFile; + return InputSource::ItemType::IsFile; } // Rewind to before the first event that was read. diff --git a/IOPool/Input/src/RootPrimaryFileSequence.h b/IOPool/Input/src/RootPrimaryFileSequence.h index 75bc262b19c48..aba1fc99cd2fd 100644 --- a/IOPool/Input/src/RootPrimaryFileSequence.h +++ b/IOPool/Input/src/RootPrimaryFileSequence.h @@ -41,7 +41,7 @@ namespace edm { std::shared_ptr readFile_(); void endJob(); - InputSource::ItemType getNextItemType(RunNumber_t& run, LuminosityBlockNumber_t& lumi, EventNumber_t& event); + InputSource::ItemTypeInfo getNextItemType(RunNumber_t& run, LuminosityBlockNumber_t& lumi, EventNumber_t& event); void skipEventsAtBeginning(int offset); void skipEvents(int offset); bool goToEvent(EventID const& eventID); diff --git a/IOPool/Input/src/RunHelper.cc b/IOPool/Input/src/RunHelper.cc index 8537f2165e380..cf1cfbeb76087 100644 --- a/IOPool/Input/src/RunHelper.cc +++ b/IOPool/Input/src/RunHelper.cc @@ -106,8 +106,8 @@ namespace edm { RunNumber_t, LuminosityBlockNumber_t, EventNumber_t) { - if (newItemType == InputSource::IsRun || - (newItemType == InputSource::IsLumi && previousItemType != InputSource::IsRun)) { + if (newItemType == InputSource::ItemType::IsRun || + (newItemType == InputSource::ItemType::IsLumi && previousItemType != InputSource::ItemType::IsRun)) { if (firstTime_) { firstTime_ = false; } else { @@ -125,8 +125,8 @@ namespace edm { } bool sameRunNumber = (indexOfNextRunNumber_ != 0U && run == setRunNumberForEachLumi_[indexOfNextRunNumber_ - 1]); if (!sameRunNumber) { - fakeNewRun_ = (newItemType != InputSource::IsRun); - return InputSource::IsRun; + fakeNewRun_ = (newItemType != InputSource::ItemType::IsRun); + return InputSource::ItemType::IsRun; } } return newItemType; @@ -174,7 +174,7 @@ namespace edm { RunNumber_t, LuminosityBlockNumber_t iLumi, EventNumber_t) { - if (newItemType == InputSource::IsLumi && previousItemType != InputSource::IsRun) { + if (newItemType == InputSource::ItemType::IsLumi && previousItemType != InputSource::ItemType::IsRun) { auto run = findRunFromLumi(iLumi); if (run == 0) { throw Exception(errors::Configuration, "PoolSource") @@ -183,7 +183,7 @@ namespace edm { if (lastUsedRunNumber_ != run) { fakeNewRun_ = true; lastUsedRunNumber_ = run; - return InputSource::IsRun; + return InputSource::ItemType::IsRun; } } return newItemType; From 781b4594ce41bacdcb2f7d1ec142f5e361f35299 Mon Sep 17 00:00:00 2001 From: Pruthvi Suryadevara Date: Tue, 12 Dec 2023 12:55:02 +0100 Subject: [PATCH 076/281] Corrections to HD partial wafer cell pattern --- .../HGCalCommonData/interface/HGCalTypes.h | 5 ++ .../HGCalCommonData/src/HGCalWaferMask.cc | 57 +++++++++++-------- SimG4CMS/Calo/plugins/HGCalMouseBiteTester.cc | 7 ++- .../test/python/testHGCalMouseBite_cfg.py | 2 +- 4 files changed, 44 insertions(+), 27 deletions(-) diff --git a/Geometry/HGCalCommonData/interface/HGCalTypes.h b/Geometry/HGCalCommonData/interface/HGCalTypes.h index 9dedc8e49bd15..d8393326a7602 100644 --- a/Geometry/HGCalCommonData/interface/HGCalTypes.h +++ b/Geometry/HGCalCommonData/interface/HGCalTypes.h @@ -94,17 +94,22 @@ class HGCalTypes { static constexpr double c00 = 0.0; static constexpr double c22O = 0.225; + static constexpr double c221 = 0.2083; static constexpr double c22 = 0.1944; static constexpr double c25 = 0.25; static constexpr double c27O = 0.275; + static constexpr double c271 = 0.2917; static constexpr double c27 = 0.3056; static constexpr double c50 = 0.5; static constexpr double c61O = 0.6125; + static constexpr double c611 = 0.6042; static constexpr double c61 = 0.59722; static constexpr double c75 = 0.75; static constexpr double c77O = 0.775; + static constexpr double c771 = 0.7917; static constexpr double c77 = 0.8055; static constexpr double c88O = 0.8875; + static constexpr double c881 = 0.8958; static constexpr double c88 = 0.90277; static constexpr double c10 = 1.0; diff --git a/Geometry/HGCalCommonData/src/HGCalWaferMask.cc b/Geometry/HGCalCommonData/src/HGCalWaferMask.cc index fe731faa2cf2b..03e8f7f440a55 100644 --- a/Geometry/HGCalCommonData/src/HGCalWaferMask.cc +++ b/Geometry/HGCalCommonData/src/HGCalWaferMask.cc @@ -1457,12 +1457,19 @@ std::vector > HGCalWaferMask::waferXY(const int& part, #endif double c22(HGCalTypes::c22), c27(HGCalTypes::c27), c61(HGCalTypes::c61); double c77(HGCalTypes::c77), c88(HGCalTypes::c88); + double c221(HGCalTypes::c221), c271(HGCalTypes::c271), c611(HGCalTypes::c611); + double c771(HGCalTypes::c771), c881(HGCalTypes::c881); if (v17OrLess) { c22 = HGCalTypes::c22O; c27 = HGCalTypes::c27O; c61 = HGCalTypes::c61O; c77 = HGCalTypes::c77O; c88 = HGCalTypes::c88O; + c221 = c22; + c271 = c27; + c611 = c61; + c771 = c77; + c881 = c88; } /* The exact contour of partial wafers are obtained by joining points on @@ -1501,17 +1508,17 @@ std::vector > HGCalWaferMask::waferXY(const int& part, -HGCalTypes::c50 * delX, -HGCalTypes::c10 * delX, -HGCalTypes::c50 * delX, - c22 * delX, + c221 * delX, HGCalTypes::c10 * delX, - c77 * delX, - -c22 * delX, + c771 * delX, + -c221 * delX, -HGCalTypes::c10 * delX, - -c77 * delX, - c22 * delX, - -c77 * delX, + -c771 * delX, + c221 * delX, + -c771 * delX, -HGCalTypes::c10 * delX, - -c22 * delX, - c77 * delX, + -c221 * delX, + c771 * delX, HGCalTypes::c10 * delX, c22 * delX, HGCalTypes::c10 * delX, @@ -1563,18 +1570,18 @@ std::vector > HGCalWaferMask::waferXY(const int& part, HGCalTypes::c75 * delY, HGCalTypes::c00 * delY, -HGCalTypes::c75 * delY, - -c88 * delY, - -c27 * delY, - c61 * delY, - c88 * delY, - c27 * delY, - -c61 * delY, - c88 * delY, - c61 * delY, - -c27 * delY, - -c88 * delY, - -c61 * delY, - c27 * delY, + -c881 * delY, + -c271 * delY, + c611 * delY, + c881 * delY, + c271 * delY, + -c611 * delY, + c881 * delY, + c611 * delY, + -c271 * delY, + -c881 * delY, + -c611 * delY, + c271 * delY, -c88 * delY, -c27 * delY, c61 * delY, @@ -1999,10 +2006,10 @@ std::vector > HGCalWaferMask::waferXY(const int& part, std::array HGCalWaferMask::maskCut( const int& part, const int& placement, const double& waferSize, const double& offset, const bool& v17OrLess) { - double c22(HGCalTypes::c22), c27(HGCalTypes::c27); + double c22(HGCalTypes::c22), c271(HGCalTypes::c271); if (v17OrLess) { c22 = HGCalTypes::c22O; - c27 = HGCalTypes::c27O; + c271 = HGCalTypes::c27O; } double delX = 0.5 * waferSize; double delY = 2 * delX / sqrt3_; @@ -2068,21 +2075,21 @@ std::array HGCalWaferMask::maskCut( case (HGCalTypes::WaferHDLeft): { criterion[0] = 1.0; criterion[1] = -tan_1[placement]; - criterion[2] = ((c27 * delY) / cos_1[placement]); + criterion[2] = ((c271 * delY) / cos_1[placement]); criterion[3] = tresh; break; } case (HGCalTypes::WaferHDRight): { criterion[0] = -1.0; criterion[1] = tan_1[placement]; - criterion[2] = -((c27 * delY) / cos_1[placement]); + criterion[2] = -((c271 * delY) / cos_1[placement]); criterion[3] = tresh; break; } case (HGCalTypes::WaferHDFive): { criterion[0] = -1.0; criterion[1] = tan_1[placement]; - criterion[2] = ((c27 * delY) / cos_1[placement]); + criterion[2] = ((c271 * delY) / cos_1[placement]); criterion[3] = tresh; break; } diff --git a/SimG4CMS/Calo/plugins/HGCalMouseBiteTester.cc b/SimG4CMS/Calo/plugins/HGCalMouseBiteTester.cc index 0f0342283fae3..8f5ebbb880090 100644 --- a/SimG4CMS/Calo/plugins/HGCalMouseBiteTester.cc +++ b/SimG4CMS/Calo/plugins/HGCalMouseBiteTester.cc @@ -168,7 +168,12 @@ void HGCalMouseBiteTester::analyze(const edm::Event& iEvent, const edm::EventSet if (goodPoint) { //Only allowing (x, y) inside a partial wafer 11, placement index 2 partialType_ = HGCalWaferType::getPartial(index, hgcons_.getParameter()->waferInfoMap_); G4ThreeVector point(xi, yi, 0.0); - std::pair uv5 = wafer.cellUVFromXY1(xi, yi, placeIndex_, waferType_, partialType_, true, false); + std::pair uv5; + if (hgcons_.v17OrLess()) { + uv5 = wafer.cellUVFromXY1(xi, yi, placeIndex_, waferType_, partialType_, true, false); + } else { + uv5 = wafer.cellUVFromXY2(xi, yi, placeIndex_, waferType_, partialType_, true, false); + } if (guardRingPartial_.exclude(point, zside, frontBack, layer_, waferU_, waferV_)) { guard_ring_partial << xi << "," << yi << std::endl; } else if (mouseBite_.exclude(point, zside, layer_, waferU_, waferV_)) { diff --git a/SimG4CMS/Calo/test/python/testHGCalMouseBite_cfg.py b/SimG4CMS/Calo/test/python/testHGCalMouseBite_cfg.py index 646f3c537874f..1f7cda275d83a 100644 --- a/SimG4CMS/Calo/test/python/testHGCalMouseBite_cfg.py +++ b/SimG4CMS/Calo/test/python/testHGCalMouseBite_cfg.py @@ -63,7 +63,7 @@ ) -process.load("Geometry.HGCalCommonData.hgcalMouseBiteTester_cfi") +process.load("SimG4CMS.Calo.hgcalMouseBiteTester_cfi") process.p1 = cms.Path(process.generator*process.hgcalMouseBiteTester) From 5016abef77e40acd43df4c07f15d5a733a53938b Mon Sep 17 00:00:00 2001 From: Matevz Tadel Date: Thu, 23 Feb 2023 15:38:47 -0800 Subject: [PATCH 077/281] [MkFit] Recheck overlap hit chi2 after update with primary hit on a given layer. --- RecoTracker/MkFitCore/src/CandCloner.cc | 12 +++--- RecoTracker/MkFitCore/src/CandCloner.h | 3 +- RecoTracker/MkFitCore/src/FindingFoos.h | 4 ++ RecoTracker/MkFitCore/src/MkBuilder.cc | 56 ++++++++++++++++++++++++- RecoTracker/MkFitCore/src/MkFinder.cc | 33 +++++++++++++++ RecoTracker/MkFitCore/src/MkFinder.h | 9 +++- 6 files changed, 108 insertions(+), 9 deletions(-) diff --git a/RecoTracker/MkFitCore/src/CandCloner.cc b/RecoTracker/MkFitCore/src/CandCloner.cc index 253e639a20b2e..9237fce2c4db4 100644 --- a/RecoTracker/MkFitCore/src/CandCloner.cc +++ b/RecoTracker/MkFitCore/src/CandCloner.cc @@ -24,11 +24,13 @@ namespace mkfit { void CandCloner::begin_eta_bin(EventOfCombCandidates *e_o_ccs, std::vector *update_list, + std::vector *overlap_list, std::vector> *extra_cands, int start_seed, int n_seeds) { mp_event_of_comb_candidates = e_o_ccs; mp_kalman_update_list = update_list; + mp_kalman_overlap_list = overlap_list; mp_extra_cands = extra_cands; m_start_seed = start_seed; m_n_seeds = n_seeds; @@ -50,6 +52,7 @@ namespace mkfit { m_idx_max_prev = 0; mp_kalman_update_list->clear(); + mp_kalman_overlap_list->clear(); #ifdef CC_TIME_LAYER t_lay = dtime(); @@ -193,14 +196,13 @@ namespace mkfit { break; if (h2a.hitIdx >= 0) { - mp_kalman_update_list->emplace_back(UpdateIndices(m_start_seed + is, n_pushed, h2a.hitIdx)); - - // set the overlap if we have it and and pT > pTCutOverlap + // set the overlap if we have it and pT > pTCutOverlap HitMatch *hm; if (tc.pT() > mp_iteration_params->pTCutOverlap && (hm = ccand[h2a.trkIdx].findOverlap(h2a.hitIdx, h2a.module))) { - tc.addHitIdx(hm->m_hit_idx, m_layer, 0); - tc.incOverlapCount(); + mp_kalman_overlap_list->emplace_back(UpdateIndices(m_start_seed + is, n_pushed, h2a.hitIdx, hm->m_hit_idx)); + } else { + mp_kalman_update_list->emplace_back(UpdateIndices(m_start_seed + is, n_pushed, h2a.hitIdx, -1)); } } diff --git a/RecoTracker/MkFitCore/src/CandCloner.h b/RecoTracker/MkFitCore/src/CandCloner.h index 0466811aa0520..fbb4a29bf69fd 100644 --- a/RecoTracker/MkFitCore/src/CandCloner.h +++ b/RecoTracker/MkFitCore/src/CandCloner.h @@ -25,6 +25,7 @@ namespace mkfit { void begin_eta_bin(EventOfCombCandidates *e_o_ccs, std::vector *update_list, + std::vector *overlap_list, std::vector> *extra_cands, int start_seed, int n_seeds); @@ -56,7 +57,7 @@ namespace mkfit { const IterationParams *mp_iteration_params = nullptr; EventOfCombCandidates *mp_event_of_comb_candidates; - std::vector *mp_kalman_update_list; + std::vector *mp_kalman_update_list, *mp_kalman_overlap_list; std::vector> *mp_extra_cands; #if defined(CC_TIME_ETA) or defined(CC_TIME_LAYER) diff --git a/RecoTracker/MkFitCore/src/FindingFoos.h b/RecoTracker/MkFitCore/src/FindingFoos.h index 939d141947b12..9a47c1aa2328a 100644 --- a/RecoTracker/MkFitCore/src/FindingFoos.h +++ b/RecoTracker/MkFitCore/src/FindingFoos.h @@ -16,6 +16,10 @@ namespace mkfit { const MPlexLS &, const MPlexLV &, MPlexQI &, const MPlexHS &, const MPlexHV &, MPlexLS &, MPlexLV &, MPlexQI &, \ const int, const PropagationFlags &, const bool +#define COMPUTE_CHI2_AND_UPDATE_ARGS \ + const MPlexLS &, const MPlexLV &, MPlexQI &, const MPlexHS &, const MPlexHV &, MPlexQF &, MPlexLS &, MPlexLV &, \ + MPlexQI &, const int, const PropagationFlags, const bool + class FindingFoos { public: void (*m_compute_chi2_foo)(COMPUTE_CHI2_ARGS); diff --git a/RecoTracker/MkFitCore/src/MkBuilder.cc b/RecoTracker/MkFitCore/src/MkBuilder.cc index 2c984991519b8..2931e25ae65ed 100644 --- a/RecoTracker/MkFitCore/src/MkBuilder.cc +++ b/RecoTracker/MkFitCore/src/MkBuilder.cc @@ -979,15 +979,16 @@ namespace mkfit { const int n_seeds = end_seed - start_seed; std::vector> seed_cand_idx; - std::vector seed_cand_update_idx; + std::vector seed_cand_update_idx, seed_cand_overlap_idx; seed_cand_idx.reserve(n_seeds * params.maxCandsPerSeed); seed_cand_update_idx.reserve(n_seeds * params.maxCandsPerSeed); + seed_cand_overlap_idx.reserve(n_seeds * params.maxCandsPerSeed); std::vector> extra_cands(n_seeds); for (int ii = 0; ii < n_seeds; ++ii) extra_cands[ii].reserve(params.maxCandsPerSeed); - cloner.begin_eta_bin(&eoccs, &seed_cand_update_idx, &extra_cands, start_seed, n_seeds); + cloner.begin_eta_bin(&eoccs, &seed_cand_update_idx, &seed_cand_overlap_idx, &extra_cands, start_seed, n_seeds); // Loop over layers, starting from after the seed. @@ -1115,6 +1116,8 @@ namespace mkfit { // Update loop of best candidates. CandCloner prepares the list of those // that need update (excluding all those with negative last hit index). + // This is split into two sections - candidates without overlaps and with overlaps. + // On CMS PU-50 the ratio of those is ~ 65 : 35 over all iterations. const int theEndUpdater = seed_cand_update_idx.size(); @@ -1129,6 +1132,55 @@ namespace mkfit { mkfndr->copyOutParErr(eoccs.refCandidates_nc(), end - itrack, false); } + const int theEndOverlapper = seed_cand_overlap_idx.size(); + + for (int itrack = 0; itrack < theEndOverlapper; itrack += NN) { + const int end = std::min(itrack + NN, theEndOverlapper); + + mkfndr->inputTracksAndHits(eoccs.refCandidates(), layer_of_hits, seed_cand_overlap_idx, itrack, end, true); + + mkfndr->updateWithLoadedHit(end - itrack, fnd_foos); + + mkfndr->copyOutParErr(eoccs.refCandidates_nc(), end - itrack, false); + + mkfndr->inputOverlapHits(layer_of_hits, seed_cand_overlap_idx, itrack, end); + + // XXXX Could also be calcChi2AndUpdate(), then copy-out would have to be done + // below, choosing appropriate slot (with or without the overlap hit). + // Probably in a dedicated MkFinder copyOutXyzz function. + mkfndr->chi2OfLoadedHit(end - itrack, fnd_foos); + + for (int ii = itrack; ii < end; ++ii) { + const int fi = ii - itrack; + TrackCand &tc = eoccs[seed_cand_overlap_idx[ii].seed_idx][seed_cand_overlap_idx[ii].cand_idx]; + + // XXXX For now we DO NOT use chi2 as this was how things were done before the post-update + // chi2 check. To use it we should retune scoring function (might be even simpler). + if (mkfndr->m_FailFlag[fi] == 0 && mkfndr->m_Chi2[fi] >= 0.0f && mkfndr->m_Chi2[fi] <= 60.0f) { + tc.addHitIdx(seed_cand_overlap_idx[ii].ovlp_idx, curr_layer, 0.0f); + tc.incOverlapCount(); + } + } + + /* + perl -ne 'if (/^RT_OVLP/) { s/^RT_OVLP //og; print; }' | grep -v nan > ovlp.rtt + TTree t; + t.ReadFile("ovlp.rtt", "algo/I:region:layer:fail:chi2_est/F:chi2_real:pt:theta:phi:phi_pos"); + // momEta() sometimes makes nans ... hmmh. + */ + /* + for (int ii = itrack; ii < end; ++ii) { + const int fi = ii - itrack; + const TrackCand &trk = eoccs[seed_cand_overlap_idx[ii].seed_idx][seed_cand_overlap_idx[ii].cand_idx]; + printf("RT_OVLP %d %d %d %d %f %f %f %f %f %f\n", + m_job->m_iter_config.m_track_algorithm, region, curr_layer, + mkfndr->m_FailFlag[fi], + seed_cand_overlap_idx[ii].chi2_overlap, mkfndr->m_Chi2[fi], trk.pT(), trk.theta(), trk.momPhi(), + trk.posPhi()); + } + */ + } + // Check if cands are sorted, as expected. #ifdef DEBUG for (int iseed = start_seed; iseed < end_seed; ++iseed) { diff --git a/RecoTracker/MkFitCore/src/MkFinder.cc b/RecoTracker/MkFitCore/src/MkFinder.cc index ee9726a8eb485..85d6f39ac1841 100644 --- a/RecoTracker/MkFitCore/src/MkFinder.cc +++ b/RecoTracker/MkFitCore/src/MkFinder.cc @@ -178,6 +178,19 @@ namespace mkfit { } } + void MkFinder::inputOverlapHits(const LayerOfHits &layer_of_hits, + const std::vector &idxs, + int beg, + int end) { + // Copy overlap hit values in. + + for (int i = beg, imp = 0; i < end; ++i, ++imp) { + const Hit &hit = layer_of_hits.refHit(idxs[i].ovlp_idx); + m_msErr.copyIn(imp, hit.errArray()); + m_msPar.copyIn(imp, hit.posArray()); + } + } + void MkFinder::inputTracksAndHitIdx(const std::vector &tracks, const std::vector> &idxs, int beg, @@ -1752,6 +1765,26 @@ namespace mkfit { // } } + void MkFinder::chi2OfLoadedHit(int N_proc, const FindingFoos &fnd_foos) { + // We expect input in iC slots from above function. + // See comment in MkBuilder::find_tracks_in_layer() about intra / inter flags used here + // for propagation to the hit. + clearFailFlag(); + (*fnd_foos.m_compute_chi2_foo)(m_Err[iC], + m_Par[iC], + m_Chg, + m_msErr, + m_msPar, + m_Chi2, + m_Par[iP], + m_FailFlag, + N_proc, + m_prop_config->finding_inter_layer_pflags, + m_prop_config->finding_requires_propagation_to_hit_pos); + + // PROP-FAIL-ENABLE .... removed here + } + //============================================================================== // CopyOutParErr //============================================================================== diff --git a/RecoTracker/MkFitCore/src/MkFinder.h b/RecoTracker/MkFitCore/src/MkFinder.h index 7a9e0f3c96500..1c683e4261e00 100644 --- a/RecoTracker/MkFitCore/src/MkFinder.h +++ b/RecoTracker/MkFitCore/src/MkFinder.h @@ -30,8 +30,9 @@ namespace mkfit { int seed_idx; int cand_idx; int hit_idx; + int ovlp_idx; - UpdateIndices(int si, int ci, int hi) : seed_idx(si), cand_idx(ci), hit_idx(hi) {} + UpdateIndices(int si, int ci, int hi, int oi) : seed_idx(si), cand_idx(ci), hit_idx(hi), ovlp_idx(oi) {} }; class MkFinder : public MkBase { @@ -85,6 +86,10 @@ namespace mkfit { int beg, int end, bool inputProp); + void inputOverlapHits(const LayerOfHits &layer_of_hits, + const std::vector &idxs, + int beg, + int end); void inputTracksAndHitIdx(const std::vector &tracks, const std::vector> &idxs, @@ -145,6 +150,8 @@ namespace mkfit { void updateWithLoadedHit(int N_proc, const LayerOfHits &layer_of_hits, const FindingFoos &fnd_foos); + void chi2OfLoadedHit(int N_proc, const FindingFoos &fnd_foos); + void copyOutParErr(std::vector &seed_cand_vec, int N_proc, bool outputProp) const; //---------------------------------------------------------------------------- From 46fac216f048f51c55302198833a5850d5272d46 Mon Sep 17 00:00:00 2001 From: Matevz Tadel Date: Tue, 16 May 2023 13:50:32 -0700 Subject: [PATCH 078/281] Add note to mkfit label meaning description. --- RecoTracker/MkFitCMS/standalone/Shell.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/RecoTracker/MkFitCMS/standalone/Shell.cc b/RecoTracker/MkFitCMS/standalone/Shell.cc index ad4fa12c00827..4f378ec0adf82 100644 --- a/RecoTracker/MkFitCMS/standalone/Shell.cc +++ b/RecoTracker/MkFitCMS/standalone/Shell.cc @@ -325,7 +325,9 @@ namespace mkfit { reco tracks labels are seed indices. seed labels are sim track indices -- - mkfit labels are seed indices in given iteration after cleaning (at seed load-time) + mkfit labels are seed indices in given iteration after cleaning (at seed load-time). + This is no longer true -- was done like that in branch where this code originated from. + It seems the label is the same as seed label. */ int Shell::LabelFromHits(Track &t, bool replace, float good_frac) { From 9bb5765acfdba4d4064d7a60ef372966204cf488 Mon Sep 17 00:00:00 2001 From: Slava Krutelyov Date: Fri, 9 Jun 2023 02:06:25 -0700 Subject: [PATCH 079/281] enable post-update chi2 cut at 60 From 73556457ba2b2e0305b2320f4571e5e3f2409688 Mon Sep 17 00:00:00 2001 From: Slava Krutelyov Date: Mon, 12 Jun 2023 07:02:03 -0700 Subject: [PATCH 080/281] add overlap hit chi2 to the score --- RecoTracker/MkFitCore/src/MkBuilder.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RecoTracker/MkFitCore/src/MkBuilder.cc b/RecoTracker/MkFitCore/src/MkBuilder.cc index 2931e25ae65ed..8958004573136 100644 --- a/RecoTracker/MkFitCore/src/MkBuilder.cc +++ b/RecoTracker/MkFitCore/src/MkBuilder.cc @@ -1157,7 +1157,7 @@ namespace mkfit { // XXXX For now we DO NOT use chi2 as this was how things were done before the post-update // chi2 check. To use it we should retune scoring function (might be even simpler). if (mkfndr->m_FailFlag[fi] == 0 && mkfndr->m_Chi2[fi] >= 0.0f && mkfndr->m_Chi2[fi] <= 60.0f) { - tc.addHitIdx(seed_cand_overlap_idx[ii].ovlp_idx, curr_layer, 0.0f); + tc.addHitIdx(seed_cand_overlap_idx[ii].ovlp_idx, curr_layer, mkfndr->m_Chi2[fi]); tc.incOverlapCount(); } } From 63b5bd4c58dc07926812060ec5bf9dc950e68f96 Mon Sep 17 00:00:00 2001 From: Slava Krutelyov Date: Tue, 13 Jun 2023 08:06:17 -0700 Subject: [PATCH 081/281] sidestep the overlap hit if it decreases the score --- .../MkFitCore/interface/TrackStructures.h | 20 +++++++++++++++++++ RecoTracker/MkFitCore/src/MkBuilder.cc | 9 +++++++-- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/RecoTracker/MkFitCore/interface/TrackStructures.h b/RecoTracker/MkFitCore/interface/TrackStructures.h index 736fbe8847e55..5c7912b8ea7c1 100644 --- a/RecoTracker/MkFitCore/interface/TrackStructures.h +++ b/RecoTracker/MkFitCore/interface/TrackStructures.h @@ -224,6 +224,7 @@ namespace mkfit { } void addHitIdx(int hitIdx, int hitLyr, float chi2); + bool popOverlap(); HoTNode& refLastHoTNode(); // for filling up overlap info const HoTNode& refLastHoTNode() const; // for dump traversal @@ -564,6 +565,25 @@ namespace mkfit { } } + inline bool TrackCand::popOverlap() { + auto popHitIdx = getLastHitIdx(); + auto popHitLyr = getLastHitLyr(); + auto popPrev = refLastHoTNode().m_prev_idx; + auto popChi2 = refLastHoTNode().m_chi2; + // sanity checks first, then just shift lastHitIdx_ to popPrev + if (lastHitIdx_ == 0 || popHitIdx < 0) + return false; + auto prevHitLyr = m_comb_candidate->hot(popPrev).layer; + auto prevHitIdx = m_comb_candidate->hot(popPrev).index; + if (popHitLyr != prevHitLyr || prevHitIdx < 0) + return false; + lastHitIdx_ = popPrev; + + --nFoundHits_; + chi2_ -= popChi2; + --nOverlapHits_; + return true; + } //============================================================================== class EventOfCombCandidates { diff --git a/RecoTracker/MkFitCore/src/MkBuilder.cc b/RecoTracker/MkFitCore/src/MkBuilder.cc index 8958004573136..c9594429fd667 100644 --- a/RecoTracker/MkFitCore/src/MkBuilder.cc +++ b/RecoTracker/MkFitCore/src/MkBuilder.cc @@ -1156,9 +1156,14 @@ namespace mkfit { // XXXX For now we DO NOT use chi2 as this was how things were done before the post-update // chi2 check. To use it we should retune scoring function (might be even simpler). - if (mkfndr->m_FailFlag[fi] == 0 && mkfndr->m_Chi2[fi] >= 0.0f && mkfndr->m_Chi2[fi] <= 60.0f) { - tc.addHitIdx(seed_cand_overlap_idx[ii].ovlp_idx, curr_layer, mkfndr->m_Chi2[fi]); + auto chi2Ovlp = mkfndr->m_Chi2[fi]; + if (mkfndr->m_FailFlag[fi] == 0 && chi2Ovlp >= 0.0f && chi2Ovlp <= 60.0f) { + auto scoreCand = getScoreCand(tc, true /*penalizeTailMissHits*/, true /*inFindCandidates*/); + tc.addHitIdx(seed_cand_overlap_idx[ii].ovlp_idx, curr_layer, chi2Ovlp); tc.incOverlapCount(); + auto scoreCandOvlp = getScoreCand(tc, true, true); + if (scoreCand > scoreCandOvlp) + tc.popOverlap(); } } From 8e964ec257418ce8b7217da53c46c65e3478d891 Mon Sep 17 00:00:00 2001 From: Matevz Tadel Date: Mon, 11 Dec 2023 19:26:32 -0800 Subject: [PATCH 082/281] Add bool IterationParams::recheckOverlap, use it in CandCloner to decide into which update-list to put a hit with an overlap. --- .../MkFitCore/interface/IterationConfig.h | 1 + RecoTracker/MkFitCore/src/CandCloner.cc | 9 ++++++++- RecoTracker/MkFitCore/src/IterationConfig.cc | 1 + RecoTracker/MkFitCore/src/MkBuilder.cc | 19 +------------------ 4 files changed, 11 insertions(+), 19 deletions(-) diff --git a/RecoTracker/MkFitCore/interface/IterationConfig.h b/RecoTracker/MkFitCore/interface/IterationConfig.h index 33bc8dabf658d..bab0e56b958ab 100644 --- a/RecoTracker/MkFitCore/interface/IterationConfig.h +++ b/RecoTracker/MkFitCore/interface/IterationConfig.h @@ -90,6 +90,7 @@ namespace mkfit { float chi2Cut_min = 15.0; float chi2CutOverlap = 3.5; float pTCutOverlap = 0.0; + bool recheckOverlap = false; //quality filter params int minHitsQF = 4; diff --git a/RecoTracker/MkFitCore/src/CandCloner.cc b/RecoTracker/MkFitCore/src/CandCloner.cc index 9237fce2c4db4..8e8c6d10d4c57 100644 --- a/RecoTracker/MkFitCore/src/CandCloner.cc +++ b/RecoTracker/MkFitCore/src/CandCloner.cc @@ -200,7 +200,14 @@ namespace mkfit { HitMatch *hm; if (tc.pT() > mp_iteration_params->pTCutOverlap && (hm = ccand[h2a.trkIdx].findOverlap(h2a.hitIdx, h2a.module))) { - mp_kalman_overlap_list->emplace_back(UpdateIndices(m_start_seed + is, n_pushed, h2a.hitIdx, hm->m_hit_idx)); + if (mp_iteration_params->recheckOverlap) { + // Special overlap_list if the overlap hit needs to be re-checked after primary update. + mp_kalman_overlap_list->emplace_back(UpdateIndices(m_start_seed + is, n_pushed, h2a.hitIdx, hm->m_hit_idx)); + } else { + tc.addHitIdx(hm->m_hit_idx, m_layer, 0); + tc.incOverlapCount(); + mp_kalman_update_list->emplace_back(UpdateIndices(m_start_seed + is, n_pushed, h2a.hitIdx, -1)); + } } else { mp_kalman_update_list->emplace_back(UpdateIndices(m_start_seed + is, n_pushed, h2a.hitIdx, -1)); } diff --git a/RecoTracker/MkFitCore/src/IterationConfig.cc b/RecoTracker/MkFitCore/src/IterationConfig.cc index 60e9066d89da0..b1ddb549f8952 100644 --- a/RecoTracker/MkFitCore/src/IterationConfig.cc +++ b/RecoTracker/MkFitCore/src/IterationConfig.cc @@ -61,6 +61,7 @@ namespace mkfit { /* float */ chi2Cut_min, /* float */ chi2CutOverlap, /* float */ pTCutOverlap, + /* bool */ recheckOverlap, /* int */ minHitsQF, /* float */ minPtCut, /* unsigned int */ maxClusterSize) diff --git a/RecoTracker/MkFitCore/src/MkBuilder.cc b/RecoTracker/MkFitCore/src/MkBuilder.cc index c9594429fd667..eda68bbee3b69 100644 --- a/RecoTracker/MkFitCore/src/MkBuilder.cc +++ b/RecoTracker/MkFitCore/src/MkBuilder.cc @@ -1118,6 +1118,7 @@ namespace mkfit { // that need update (excluding all those with negative last hit index). // This is split into two sections - candidates without overlaps and with overlaps. // On CMS PU-50 the ratio of those is ~ 65 : 35 over all iterations. + // Note, overlap recheck is only enabled for some iterations, e.g. pixelLess. const int theEndUpdater = seed_cand_update_idx.size(); @@ -1166,24 +1167,6 @@ namespace mkfit { tc.popOverlap(); } } - - /* - perl -ne 'if (/^RT_OVLP/) { s/^RT_OVLP //og; print; }' | grep -v nan > ovlp.rtt - TTree t; - t.ReadFile("ovlp.rtt", "algo/I:region:layer:fail:chi2_est/F:chi2_real:pt:theta:phi:phi_pos"); - // momEta() sometimes makes nans ... hmmh. - */ - /* - for (int ii = itrack; ii < end; ++ii) { - const int fi = ii - itrack; - const TrackCand &trk = eoccs[seed_cand_overlap_idx[ii].seed_idx][seed_cand_overlap_idx[ii].cand_idx]; - printf("RT_OVLP %d %d %d %d %f %f %f %f %f %f\n", - m_job->m_iter_config.m_track_algorithm, region, curr_layer, - mkfndr->m_FailFlag[fi], - seed_cand_overlap_idx[ii].chi2_overlap, mkfndr->m_Chi2[fi], trk.pT(), trk.theta(), trk.momPhi(), - trk.posPhi()); - } - */ } // Check if cands are sorted, as expected. From 0e07d8179a007ac9d492e8ae324d20c1da2e0e75 Mon Sep 17 00:00:00 2001 From: Matevz Tadel Date: Tue, 12 Dec 2023 10:38:14 -0800 Subject: [PATCH 083/281] Update to track_scorer func, code-checks, code-format. --- RecoTracker/MkFitCore/src/CandCloner.cc | 3 ++- RecoTracker/MkFitCore/src/FindingFoos.h | 2 +- RecoTracker/MkFitCore/src/MkBuilder.cc | 7 ++++--- RecoTracker/MkFitCore/src/MkFinder.h | 5 +---- 4 files changed, 8 insertions(+), 9 deletions(-) diff --git a/RecoTracker/MkFitCore/src/CandCloner.cc b/RecoTracker/MkFitCore/src/CandCloner.cc index 8e8c6d10d4c57..78d2ead9495d3 100644 --- a/RecoTracker/MkFitCore/src/CandCloner.cc +++ b/RecoTracker/MkFitCore/src/CandCloner.cc @@ -202,7 +202,8 @@ namespace mkfit { (hm = ccand[h2a.trkIdx].findOverlap(h2a.hitIdx, h2a.module))) { if (mp_iteration_params->recheckOverlap) { // Special overlap_list if the overlap hit needs to be re-checked after primary update. - mp_kalman_overlap_list->emplace_back(UpdateIndices(m_start_seed + is, n_pushed, h2a.hitIdx, hm->m_hit_idx)); + mp_kalman_overlap_list->emplace_back( + UpdateIndices(m_start_seed + is, n_pushed, h2a.hitIdx, hm->m_hit_idx)); } else { tc.addHitIdx(hm->m_hit_idx, m_layer, 0); tc.incOverlapCount(); diff --git a/RecoTracker/MkFitCore/src/FindingFoos.h b/RecoTracker/MkFitCore/src/FindingFoos.h index 9a47c1aa2328a..a02bff4e2c541 100644 --- a/RecoTracker/MkFitCore/src/FindingFoos.h +++ b/RecoTracker/MkFitCore/src/FindingFoos.h @@ -16,7 +16,7 @@ namespace mkfit { const MPlexLS &, const MPlexLV &, MPlexQI &, const MPlexHS &, const MPlexHV &, MPlexLS &, MPlexLV &, MPlexQI &, \ const int, const PropagationFlags &, const bool -#define COMPUTE_CHI2_AND_UPDATE_ARGS \ +#define COMPUTE_CHI2_AND_UPDATE_ARGS \ const MPlexLS &, const MPlexLV &, MPlexQI &, const MPlexHS &, const MPlexHV &, MPlexQF &, MPlexLS &, MPlexLV &, \ MPlexQI &, const int, const PropagationFlags, const bool diff --git a/RecoTracker/MkFitCore/src/MkBuilder.cc b/RecoTracker/MkFitCore/src/MkBuilder.cc index eda68bbee3b69..0a6db9d05f1c7 100644 --- a/RecoTracker/MkFitCore/src/MkBuilder.cc +++ b/RecoTracker/MkFitCore/src/MkBuilder.cc @@ -1140,7 +1140,7 @@ namespace mkfit { mkfndr->inputTracksAndHits(eoccs.refCandidates(), layer_of_hits, seed_cand_overlap_idx, itrack, end, true); - mkfndr->updateWithLoadedHit(end - itrack, fnd_foos); + mkfndr->updateWithLoadedHit(end - itrack, layer_of_hits, fnd_foos); mkfndr->copyOutParErr(eoccs.refCandidates_nc(), end - itrack, false); @@ -1159,10 +1159,11 @@ namespace mkfit { // chi2 check. To use it we should retune scoring function (might be even simpler). auto chi2Ovlp = mkfndr->m_Chi2[fi]; if (mkfndr->m_FailFlag[fi] == 0 && chi2Ovlp >= 0.0f && chi2Ovlp <= 60.0f) { - auto scoreCand = getScoreCand(tc, true /*penalizeTailMissHits*/, true /*inFindCandidates*/); + auto scoreCand = + getScoreCand(st_par.m_track_scorer, tc, true /*penalizeTailMissHits*/, true /*inFindCandidates*/); tc.addHitIdx(seed_cand_overlap_idx[ii].ovlp_idx, curr_layer, chi2Ovlp); tc.incOverlapCount(); - auto scoreCandOvlp = getScoreCand(tc, true, true); + auto scoreCandOvlp = getScoreCand(st_par.m_track_scorer, tc, true, true); if (scoreCand > scoreCandOvlp) tc.popOverlap(); } diff --git a/RecoTracker/MkFitCore/src/MkFinder.h b/RecoTracker/MkFitCore/src/MkFinder.h index 1c683e4261e00..13a6df7a2e1f6 100644 --- a/RecoTracker/MkFitCore/src/MkFinder.h +++ b/RecoTracker/MkFitCore/src/MkFinder.h @@ -86,10 +86,7 @@ namespace mkfit { int beg, int end, bool inputProp); - void inputOverlapHits(const LayerOfHits &layer_of_hits, - const std::vector &idxs, - int beg, - int end); + void inputOverlapHits(const LayerOfHits &layer_of_hits, const std::vector &idxs, int beg, int end); void inputTracksAndHitIdx(const std::vector &tracks, const std::vector> &idxs, From 69b22d3e7e7422223457a864757a18e5557bfb5d Mon Sep 17 00:00:00 2001 From: swagata87 Date: Wed, 13 Dec 2023 10:22:01 +0100 Subject: [PATCH 084/281] review comments --- .../EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc b/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc index c5dbe0e2ed336..c38b24f5acb09 100644 --- a/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc +++ b/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc @@ -98,10 +98,7 @@ double EgammaRecHitIsolation::getSum_(const reco::Candidate* emObject, float phiDiff = reco::deltaPhi(phi, phiclus); float energy = j->energy(); - float rhThres = 0.0; - if (thresholds != nullptr) { - rhThres = (*thresholds)[j->detid()]; // access ECAL PFRechit thresholds for noise cleaning - } + float rhThres = (thresholds != nullptr) ? (*thresholds)[j->detid()] : 0.f; if (energy <= rhThres) continue; @@ -216,11 +213,7 @@ double EgammaRecHitIsolation::getSum_(const reco::SuperCluster* sc, double phiDiff = reco::deltaPhi(phi, phiclus); double energy = j->energy(); - float rhThres = 0.0; - if (thresholds != nullptr) { - rhThres = (*thresholds)[j->detid()]; // access ECAL PFRechit thresholds for noise cleaning - } - + float rhThres = (thresholds != nullptr) ? (*thresholds)[j->detid()] : 0.f; if (energy <= rhThres) continue; From c93af8d735e00049501cdeb0944863340af5623b Mon Sep 17 00:00:00 2001 From: swagata87 Date: Wed, 13 Dec 2023 10:59:04 +0100 Subject: [PATCH 085/281] code-check --- RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc b/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc index c38b24f5acb09..0eebf9ee20fbd 100644 --- a/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc +++ b/RecoEgamma/EgammaIsolationAlgos/src/EgammaRecHitIsolation.cc @@ -98,7 +98,7 @@ double EgammaRecHitIsolation::getSum_(const reco::Candidate* emObject, float phiDiff = reco::deltaPhi(phi, phiclus); float energy = j->energy(); - float rhThres = (thresholds != nullptr) ? (*thresholds)[j->detid()] : 0.f; + float rhThres = (thresholds != nullptr) ? (*thresholds)[j->detid()] : 0.f; if (energy <= rhThres) continue; From 8772cacfac9f0118c3656c41bf3e4231bfe28e95 Mon Sep 17 00:00:00 2001 From: nancy Date: Wed, 13 Dec 2023 19:00:34 +0100 Subject: [PATCH 086/281] Implement all comments in bold from A. Perrotta on Dec 7 --- .../plugins/EcalEBPhase2TPParamProducer.cc | 11 +++-- .../python/ecalEBPhase2TPParamProducer_cfi.py | 2 +- .../python/ecalDigiSequence_cff.py | 4 +- .../EcalEBPhase2AmplitudeReconstructor.h | 7 ++-- .../interface/EcalEBPhase2TimeReconstructor.h | 8 ++-- .../src/EcalEBPhase2AmplitudeReconstructor.cc | 1 - .../src/EcalEBPhase2TimeReconstructor.cc | 1 - .../plugins/EcalEBTrigPrimPhase2Producer.cc | 42 +++++++------------ .../ecalEBTriggerPrimitivePhase2Digis_cff.py | 15 ------- .../ecalEBTriggerPrimitivePhase2Digis_cfi.py | 2 + ...EBTriggerPrimitivePhase2ESProducer_cfi.py} | 0 11 files changed, 35 insertions(+), 58 deletions(-) delete mode 100644 SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cff.py rename SimCalorimetry/EcalEBTrigPrimProducers/python/{ecalEBTriggerPrimitivePhase2ESProducer_cff.py => ecalEBTriggerPrimitivePhase2ESProducer_cfi.py} (100%) diff --git a/CalibCalorimetry/EBPhase2TPGTools/plugins/EcalEBPhase2TPParamProducer.cc b/CalibCalorimetry/EBPhase2TPGTools/plugins/EcalEBPhase2TPParamProducer.cc index 441f081403e4a..9e07cc27a87ca 100644 --- a/CalibCalorimetry/EBPhase2TPGTools/plugins/EcalEBPhase2TPParamProducer.cc +++ b/CalibCalorimetry/EBPhase2TPGTools/plugins/EcalEBPhase2TPParamProducer.cc @@ -2,6 +2,7 @@ #include "FWCore/Framework/interface/one/EDAnalyzer.h" #include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/ParameterSet/interface/FileInPath.h" // #include "Geometry/CaloGeometry/interface/CaloGeometry.h" #include "Geometry/CaloGeometry/interface/CaloSubdetectorGeometry.h" @@ -57,7 +58,7 @@ class EcalEBPhase2TPParamProducer : public edm::one::EDAnalyzer<> { bool computeLinearizerParam(double theta, double gainRatio, double calibCoeff, int& shift, int& mult); const edm::ESGetToken theBarrelGeometryToken_; - const std::string inFile_; + const edm::FileInPath inFile_; const std::string outFile_; const int nSamplesToUse_; const bool useBXPlusOne_; @@ -85,7 +86,7 @@ class EcalEBPhase2TPParamProducer : public edm::one::EDAnalyzer<> { EcalEBPhase2TPParamProducer::EcalEBPhase2TPParamProducer(edm::ParameterSet const& pSet) : theBarrelGeometryToken_(esConsumes(edm::ESInputTag("", "EcalBarrel"))), - inFile_(pSet.getUntrackedParameter("inputFile")), + inFile_(pSet.getParameter("inputFile")), outFile_(pSet.getUntrackedParameter("outputFile")), nSamplesToUse_(pSet.getParameter("nSamplesToUse")), useBXPlusOne_(pSet.getParameter("useBXPlusOne")), @@ -99,7 +100,8 @@ EcalEBPhase2TPParamProducer::EcalEBPhase2TPParamProducer(edm::ParameterSet const { out_file_ = gzopen(outFile_.c_str(), "wb"); - TFile* inFile = new TFile(inFile_.c_str(), "READ"); + std::string filename = inFile_.fullPath(); + TFile* inFile = new TFile(filename.c_str(), "READ"); inFile->GetObject("average-pulse", thePulse_); delete inFile; @@ -119,7 +121,7 @@ void EcalEBPhase2TPParamProducer::beginJob() {} void EcalEBPhase2TPParamProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; - desc.addUntracked("inputFile"); + desc.add("inputFile"); desc.addUntracked("outputFile"); desc.add("nSamplesToUse", 8); desc.add("useBXPlusOne", false); @@ -128,6 +130,7 @@ void EcalEBPhase2TPParamProducer::fillDescriptions(edm::ConfigurationDescription desc.add("Et_sat", 1998.36); desc.add("xtal_LSB", 0.0488); desc.add("binOfMaximum", 6); + descriptions.add("ecalEBPhase2TPParamProducerDefault",desc); } void EcalEBPhase2TPParamProducer::analyze(const edm::Event& evt, const edm::EventSetup& evtSetup) { diff --git a/CalibCalorimetry/EBPhase2TPGTools/python/ecalEBPhase2TPParamProducer_cfi.py b/CalibCalorimetry/EBPhase2TPGTools/python/ecalEBPhase2TPParamProducer_cfi.py index d9eb9e44eadb8..1faa813593464 100644 --- a/CalibCalorimetry/EBPhase2TPGTools/python/ecalEBPhase2TPParamProducer_cfi.py +++ b/CalibCalorimetry/EBPhase2TPGTools/python/ecalEBPhase2TPParamProducer_cfi.py @@ -1,7 +1,7 @@ import FWCore.ParameterSet.Config as cms EBPhase2TPGParamProducer = cms.EDAnalyzer("EcalEBPhase2TPParamProducer", -inputFile = cms.untracked.string('../../../SimCalorimetry/EcalEBTrigPrimProducers/data/CMSSWPhaseIIPulseGraphAlt.root'), +inputFile = cms.FileInPath('SimCalorimetry/EcalEBTrigPrimProducers/data/CMSSWPhaseIIPulseGraphAlt.root'), outputFile = cms.untracked.string('../../../SimCalorimetry/EcalEBTrigPrimProducers/data/AmpTimeOnPeakXtalWeightsCMSSWPulse_8samples_peakOnSix_WithAndyFixes.txt.gz'), nSamplesToUse = cms.uint32(8), useBXPlusOne = cms.bool(False), diff --git a/SimCalorimetry/Configuration/python/ecalDigiSequence_cff.py b/SimCalorimetry/Configuration/python/ecalDigiSequence_cff.py index f1fcf1f69598e..947fe094fbf11 100644 --- a/SimCalorimetry/Configuration/python/ecalDigiSequence_cff.py +++ b/SimCalorimetry/Configuration/python/ecalDigiSequence_cff.py @@ -32,7 +32,7 @@ from Configuration.Eras.Modifier_phase2_ecalTP_devel_cff import phase2_ecalTP_devel -from SimCalorimetry.EcalEBTrigPrimProducers.ecalEBTriggerPrimitivePhase2Digis_cff import * +from SimCalorimetry.EcalEBTrigPrimProducers.ecalEBTriggerPrimitivePhase2Digis_cfi import * _phase2_ecalDigiTask_devel2 = cms.Task(simEcalEBTriggerPrimitivePhase2Digis) phase2_ecalTP_devel.toReplaceWith(ecalDigiTask,_phase2_ecalDigiTask_devel2) @@ -44,5 +44,5 @@ def _modifyEcalForPh2( process ): def _modifyEcalTPForPh2( process ): - process.load("SimCalorimetry.EcalEBTrigPrimProducers.ecalEBTriggerPrimitivePhase2ESProducer_cff") + process.load("SimCalorimetry.EcalEBTrigPrimProducers.ecalEBTriggerPrimitivePhase2ESProducer_cfi") modifyDigi_Phase2EcalTP = phase2_ecalTP_devel.makeProcessModifier(_modifyEcalTPForPh2) diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h index 358b2b6f4d38a..d8c3e16b11441 100644 --- a/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h @@ -16,15 +16,16 @@ class EcalTPGWeightGroup; class EcalEBPhase2AmplitudeReconstructor { private: + static const int maxSamplesUsed_=12; bool debug_; int inputsAlreadyIn_; - int buffer_[12]; - int weights_[12]; + int buffer_[maxSamplesUsed_]; + int weights_[maxSamplesUsed_]; int shift_; int setInput(int input); void process(); int processedOutput_; - static const int maxSamplesUsed_; + public: EcalEBPhase2AmplitudeReconstructor(bool debug); diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TimeReconstructor.h b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TimeReconstructor.h index ba19ef0bf1080..0daa2a9676103 100644 --- a/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TimeReconstructor.h +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2TimeReconstructor.h @@ -15,16 +15,16 @@ class EcalTPGWeightGroup; class EcalEBPhase2TimeReconstructor { private: + static const int maxSamplesUsed_ = 12; bool debug_; int inputsAlreadyIn_; - int buffer_[12]; - int weights_[12]; - uint64_t ampIn_[12]; + int buffer_[maxSamplesUsed_]; + int weights_[maxSamplesUsed_]; + uint64_t ampIn_[maxSamplesUsed_]; int shift_; bool extraShift_[2] = {false, false}; int setInput(int input); void process(); - static const int maxSamplesUsed_; int processedOutput_; // The array invAmpPar is pre-calulated, at least for now since it has shown to be stable. We might decide at a later stage diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2AmplitudeReconstructor.cc b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2AmplitudeReconstructor.cc index 83cf357c5910b..22a31bceba274 100644 --- a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2AmplitudeReconstructor.cc +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2AmplitudeReconstructor.cc @@ -7,7 +7,6 @@ #include -const int EcalEBPhase2AmplitudeReconstructor::maxSamplesUsed_ = 12; EcalEBPhase2AmplitudeReconstructor::EcalEBPhase2AmplitudeReconstructor(bool debug) : debug_(debug), inputsAlreadyIn_(0), shift_(13) {} diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TimeReconstructor.cc b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TimeReconstructor.cc index 42be7e3308502..22683dc75729b 100644 --- a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TimeReconstructor.cc +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TimeReconstructor.cc @@ -6,7 +6,6 @@ #include "FWCore/MessageLogger/interface/MessageLogger.h" #include -const int EcalEBPhase2TimeReconstructor::maxSamplesUsed_ = 12; EcalEBPhase2TimeReconstructor::EcalEBPhase2TimeReconstructor(bool debug) : debug_(debug), inputsAlreadyIn_(0), shift_(maxSamplesUsed_) {} diff --git a/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2Producer.cc b/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2Producer.cc index a5d5576f7b77b..41d0d5c84cfc2 100644 --- a/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2Producer.cc +++ b/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2Producer.cc @@ -214,42 +214,30 @@ void EcalEBTrigPrimPhase2Producer::produce(edm::Event& e, const edm::EventSetup& << " For Barrel " << pOut->size() << " TP Digis were produced" << std::endl; } - // debug prints if TP >0 + // debug prints if TP > 0. The number of TP with Et>0 is also used later for a LogInfo int nonZeroTP = 0; - - if (debug_) - LogDebug("EcalEBTrigPrimPhase2Producer") << "EcalTPG Printing only non zero TP " << std::endl; - int nXstal = 0; for (unsigned int i = 0; i < pOut->size(); ++i) { nXstal++; - - if (debug_) { - for (int isam = 0; isam < (*pOut)[i].size(); ++isam) { - if ((*pOut)[i][isam].encodedEt() > 0) { - nonZeroTP++; - LogDebug("EcalEBTrigPrimPhase2Producer") - << " For xStal n " << nXstal << " xTsal Id " << (((*pOut)[i])).id() << ", TP is " << (*pOut)[i] - << " (*pOut)[i][isam].raw() " << (*pOut)[i][isam].raw() << " (*pOut)[i][isam].encodedEt() " - << (*pOut)[i][isam].encodedEt() << " (*pOut)[i][isam].time() " << (*pOut)[i][isam].time() << std::endl; - } + for (int isam = 0; isam < (*pOut)[i].size(); ++isam) { + if ((*pOut)[i][isam].encodedEt() > 0) { + nonZeroTP++; + if (debug_) { + LogDebug("EcalEBTrigPrimPhase2Producer") + << " For xStal n " << nXstal << " xTsal Id " << (((*pOut)[i])).id() << ", TP is " << (*pOut)[i] + << " (*pOut)[i][isam].raw() " << (*pOut)[i][isam].raw() << " (*pOut)[i][isam].encodedEt() " + << (*pOut)[i][isam].encodedEt() << " (*pOut)[i][isam].time() " << (*pOut)[i][isam].time() << std::endl; + } } } - - } // End loop over crystals - - if (debug_) { - LogDebug("EcalEBTrigPrimPhase2Producer") - << "EcalTPG" - << "\n =================> For Barrel , " << pOut->size() << " TP Digis were produced (including zero ones)" - << " Non zero primitives were " << nonZeroTP << std::endl; } + edm::LogInfo("EcalEBTrigPrimPhase2Producer") - << "EcalTPG" - << "\n =================> For Barrel , " << pOut->size() << " TP Digis were produced (including zero ones)" - << " Non zero primitives were " << nonZeroTP << std::endl; - + << "EcalTPG" + << "\n =================> For Barrel , " << pOut->size() << " TP Digis were produced (including zero ones)" + << " Non zero primitives were " << nonZeroTP << std::endl; + // put result into the Event e.put(std::move(pOut)); } diff --git a/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cff.py b/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cff.py deleted file mode 100644 index 271c761472507..0000000000000 --- a/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cff.py +++ /dev/null @@ -1,15 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -# Trigger Primitive Producer -from SimCalorimetry.EcalEBTrigPrimProducers.ecalEBTriggerPrimitivePhase2Digis_cfi import * - - -# esmodule creating records + corresponding empty essource -# when commented, one takes the configuration from the global tag -# - - - -from Configuration.Eras.Modifier_phase2_ecalTP_devel_cff import phase2_ecalTP_devel -phase2_ecalTP_devel.toModify( simEcalEBTriggerPrimitivePhase2Digis) - diff --git a/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cfi.py b/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cfi.py index 17b9da80f77bb..fd567eac36e9c 100644 --- a/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cfi.py +++ b/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2Digis_cfi.py @@ -13,3 +13,5 @@ ) +from Configuration.Eras.Modifier_phase2_ecalTP_devel_cff import phase2_ecalTP_devel +phase2_ecalTP_devel.toModify( simEcalEBTriggerPrimitivePhase2Digis) diff --git a/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2ESProducer_cff.py b/SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2ESProducer_cfi.py similarity index 100% rename from SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2ESProducer_cff.py rename to SimCalorimetry/EcalEBTrigPrimProducers/python/ecalEBTriggerPrimitivePhase2ESProducer_cfi.py From de54d52fc67b351b9653131273cea8933662ff89 Mon Sep 17 00:00:00 2001 From: Matteo Migliorini Date: Wed, 13 Dec 2023 19:09:54 +0100 Subject: [PATCH 087/281] Added data format class version, created unit tests for L1Scouting and L1Scouting raw data --- .../L1Scouting/interface/L1ScoutingCalo.h | 61 +--- .../L1Scouting/interface/L1ScoutingMuon.h | 9 +- .../L1Scouting/interface/OrbitCollection.h | 116 ++---- DataFormats/L1Scouting/src/classes.h | 12 +- DataFormats/L1Scouting/src/classes_def.xml | 25 +- DataFormats/L1Scouting/test/BuildFile.xml | 10 + .../L1Scouting/test/TestL1ScoutingFormat.sh | 11 + .../L1Scouting/test/TestReadL1Scouting.cc | 337 ++++++++++++++++++ .../L1Scouting/test/TestWriteL1Scouting.cc | 244 +++++++++++++ .../test/create_L1Scouting_test_file_cfg.py | 24 ++ .../L1Scouting/test/read_L1Scouting_cfg.py | 30 ++ DataFormats/L1ScoutingRawData/BuildFile.xml | 1 - .../interface/SDSNumbering.h | 16 +- .../interface/SDSRawDataCollection.h | 13 +- .../src/SDSRawDataCollection.cc | 14 +- DataFormats/L1ScoutingRawData/src/classes.h | 6 +- .../L1ScoutingRawData/src/classes_def.xml | 7 +- .../L1ScoutingRawData/test/BuildFile.xml | 11 + .../test/TestReadSDSRawDataCollection.cc | 73 ++++ .../test/TestSDSRawDataCollectionFormat.sh | 11 + .../test/TestWriteSDSRawDataCollection.cc | 63 ++++ ...eate_SDSRawDataCollection_test_file_cfg.py | 22 ++ .../test/read_SDSRawDataCollection_cfg.py | 21 ++ .../L1ScoutingRawToDigi/interface/masks.h | 6 +- .../plugins/ScCALORawToDigi.cc | 4 +- .../plugins/ScGMTRawToDigi.cc | 4 +- .../interface/DAQSourceModelsScoutingRun3.h | 2 +- .../src/DAQSourceModelsScoutingRun3.cc | 10 +- .../Utilities/interface/printScObjects.h | 2 + .../Utilities/plugins/DumpScObjects.cc | 25 +- 30 files changed, 970 insertions(+), 220 deletions(-) create mode 100644 DataFormats/L1Scouting/test/BuildFile.xml create mode 100755 DataFormats/L1Scouting/test/TestL1ScoutingFormat.sh create mode 100644 DataFormats/L1Scouting/test/TestReadL1Scouting.cc create mode 100644 DataFormats/L1Scouting/test/TestWriteL1Scouting.cc create mode 100644 DataFormats/L1Scouting/test/create_L1Scouting_test_file_cfg.py create mode 100644 DataFormats/L1Scouting/test/read_L1Scouting_cfg.py create mode 100644 DataFormats/L1ScoutingRawData/test/BuildFile.xml create mode 100644 DataFormats/L1ScoutingRawData/test/TestReadSDSRawDataCollection.cc create mode 100755 DataFormats/L1ScoutingRawData/test/TestSDSRawDataCollectionFormat.sh create mode 100644 DataFormats/L1ScoutingRawData/test/TestWriteSDSRawDataCollection.cc create mode 100644 DataFormats/L1ScoutingRawData/test/create_SDSRawDataCollection_test_file_cfg.py create mode 100644 DataFormats/L1ScoutingRawData/test/read_SDSRawDataCollection_cfg.py diff --git a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h index a1ed4ea27ea5f..947d35a12a83d 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h @@ -2,32 +2,15 @@ #define DataFormats_L1Scouting_L1ScoutingCalo_h #include "DataFormats/L1Scouting/interface/OrbitCollection.h" -#include "DataFormats/L1Trigger/interface/EtSum.h" namespace l1ScoutingRun3 { - class ScJet; - typedef OrbitCollection ScJetOrbitCollection; - class ScEGamma; - typedef OrbitCollection ScEGammaOrbitCollection; - class ScTau; - typedef OrbitCollection ScTauOrbitCollection; - class ScEtSum; - typedef OrbitCollection ScEtSumOrbitCollection; - class ScBxSums; - typedef OrbitCollection ScBxSumsOrbitCollection; - class ScCaloObject { public: ScCaloObject() : hwEt_(0), hwEta_(0), hwPhi_(0), hwIso_(0) {} ScCaloObject(int hwEt, int hwEta, int hwPhi, int iso) : hwEt_(hwEt), hwEta_(hwEta), hwPhi_(hwPhi), hwIso_(iso) {} - ScCaloObject(const ScCaloObject& other) = default; - ScCaloObject(ScCaloObject&& other) = default; - ScCaloObject& operator=(const ScCaloObject& other) = default; - ScCaloObject& operator=(ScCaloObject&& other) = default; - void swap(ScCaloObject& other) { using std::swap; swap(hwEt_, other.hwEt_); @@ -78,38 +61,6 @@ namespace l1ScoutingRun3 { ScTau(int hwEt, int hwEta, int hwPhi, int iso) : ScCaloObject(hwEt, hwEta, hwPhi, iso) {} }; - class ScEtSum { - public: - ScEtSum() : hwEt_(0), hwPhi_(0), type_(l1t::EtSum::kUninitialized) {} - - ScEtSum(int hwEt, int hwPhi, l1t::EtSum::EtSumType type) : hwEt_(hwEt), hwPhi_(hwPhi), type_(type) {} - - ScEtSum(const ScEtSum& other) = default; - ScEtSum(ScEtSum&& other) = default; - ScEtSum& operator=(const ScEtSum& other) = default; - ScEtSum& operator=(ScEtSum&& other) = default; - - void swap(ScEtSum& other) { - using std::swap; - swap(hwEt_, other.hwEt_); - swap(hwPhi_, other.hwPhi_); - swap(type_, other.type_); - } - - void setHwEt(int hwEt) { hwEt_ = hwEt; } - void setHwPhi(int hwPhi) { hwPhi_ = hwPhi; } - void setType(l1t::EtSum::EtSumType type) { type_ = type; } - - int hwEt() const { return hwEt_; } - int hwPhi() const { return hwPhi_; } - l1t::EtSum::EtSumType type() const { return type_; } - - private: - int hwEt_; - int hwPhi_; - l1t::EtSum::EtSumType type_; - }; - class ScBxSums { public: ScBxSums() @@ -138,7 +89,7 @@ namespace l1ScoutingRun3 { ScBxSums(int hwTotalEt, int hwTotalEtEm, int hwTotalHt, - int hwMissEt, + int hwMissEt, int hwMissEtPhi, int hwMissHt, int hwMissHtPhi, @@ -178,11 +129,6 @@ namespace l1ScoutingRun3 { towerCount_(towerCount), centrality_(centrality) {} - ScBxSums(const ScBxSums& other) = default; - ScBxSums(ScBxSums&& other) = default; - ScBxSums& operator=(const ScBxSums& other) = default; - ScBxSums& operator=(ScBxSums&& other) = default; - void swap(ScBxSums& other) { using std::swap; swap(hwTotalEt_, other.hwTotalEt_); @@ -276,5 +222,10 @@ namespace l1ScoutingRun3 { int centrality_; }; + typedef OrbitCollection ScJetOrbitCollection; + typedef OrbitCollection ScEGammaOrbitCollection; + typedef OrbitCollection ScTauOrbitCollection; + typedef OrbitCollection ScBxSumsOrbitCollection; + } // namespace l1ScoutingRun3 #endif // DataFormats_L1Scouting_L1ScoutingCalo_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h index 7f460750ed477..3373396c3221c 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h @@ -5,8 +5,6 @@ namespace l1ScoutingRun3 { - class ScMuon; - typedef OrbitCollection ScMuonOrbitCollection; class ScMuon { public: ScMuon() @@ -48,11 +46,6 @@ namespace l1ScoutingRun3 { hwPtUnconstrained_(hwPtUnconstrained), hwDXY_(hwDXY) {} - ScMuon(const ScMuon& other) = default; - ScMuon(ScMuon&& other) = default; - ScMuon& operator=(const ScMuon& other) = default; - ScMuon& operator=(ScMuon&& other) = default; - void swap(ScMuon& other) { using std::swap; swap(hwPt_, other.hwPt_); @@ -111,6 +104,8 @@ namespace l1ScoutingRun3 { int hwDXY_; }; + typedef OrbitCollection ScMuonOrbitCollection; + } // namespace l1ScoutingRun3 #endif // DataFormats_L1Scouting_L1ScoutingMuon_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/OrbitCollection.h b/DataFormats/L1Scouting/interface/OrbitCollection.h index d4a7986d9be6f..5e7be3080e181 100644 --- a/DataFormats/L1Scouting/interface/OrbitCollection.h +++ b/DataFormats/L1Scouting/interface/OrbitCollection.h @@ -1,15 +1,13 @@ #ifndef DataFormats_L1Scouting_OrbitCollection_h #define DataFormats_L1Scouting_OrbitCollection_h -#include "DataFormats/Common/interface/FillView.h" -#include "DataFormats/Common/interface/fillPtrVector.h" -#include "DataFormats/Common/interface/setPtr.h" -#include "DataFormats/Common/interface/traits.h" -#include "FWCore/Utilities/interface/GCCPrerequisite.h" +#include "DataFormats/Common/interface/CMS_CLASS_VERSION.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/Utilities/interface/Span.h" #include #include + template class OrbitCollection { public: @@ -18,11 +16,14 @@ class OrbitCollection { typedef T value_type; typedef typename std::vector::size_type size_type; - // initialize the offset vector with 0s from 0 to 3565. + // Initialize the offset vector with 0s from 0 to 3565. // BX range is [1,3564], an extra entry is needed for the offserts of the last BX - OrbitCollection() : bxOffsets_(3566, 0), data_(0) {} + OrbitCollection() : bxOffsets_(orbitBufferSize_+1, 0), data_(0) {} + // Construct the flat orbit collection starting from an OrbitBuffer. + // The method fillAndClear will be used, meaning that, after copying the objects, + // orbitBuffer's vectors will be cleared. OrbitCollection(std::vector>& orbitBuffer, unsigned nObjects = 0) - : bxOffsets_(3566, 0), data_(nObjects) { + : bxOffsets_(orbitBufferSize_+1, 0), data_(nObjects) { fillAndClear(orbitBuffer, nObjects); } @@ -38,14 +39,15 @@ class OrbitCollection { } // Fill the orbit collection starting from a vector of vectors, one per BX. - // Objects are moved into a flat data vector and a vector is used to keep track - // of the starting offset of every BX. + // Objects are copied into a flat data vector, and a second vector is used to keep track + // of the starting index in the data vector for every BX. + // After the copy, the original input buffer is cleared. // Input vector must be sorted with increasing BX and contain 3565 elements (BX in [1,3564]) void fillAndClear(std::vector>& orbitBuffer, unsigned nObjects = 0) { - if (orbitBuffer.size() != 3565) + if (orbitBuffer.size() != orbitBufferSize_) throw cms::Exception("OrbitCollection::fillAndClear") << "Trying to fill the collection by passing an orbit buffer with incorrect size. " - << "Passed " << orbitBuffer.size() << ", expected 3565" << std::endl; + << "Passed " << orbitBuffer.size() << ", expected 3565"; data_.reserve(nObjects); bxOffsets_[0] = 0; unsigned bxIdx = 1; @@ -53,10 +55,10 @@ class OrbitCollection { // increase offset by the currect vec size bxOffsets_[bxIdx] = bxOffsets_[bxIdx - 1] + bxVec.size(); - // if bxVec contains something, move it into the data_ vector - // and clear bxVec objects + // if bxVec contains something, copy it into the data_ vector + // and clear original bxVec objects if (bxVec.size() > 0) { - data_.insert(data_.end(), std::make_move_iterator(bxVec.begin()), std::make_move_iterator(bxVec.end())); + data_.insert(data_.end(), bxVec.begin(), bxVec.end()); bxVec.clear(); } @@ -70,44 +72,37 @@ class OrbitCollection { const_iterator end() const { return data_.end(); } // iterate over elements of a bx - const_iterator begin(unsigned bx) const { return bxRange(bx).first; } - const_iterator end(unsigned bx) const { return bxRange(bx).second; } - - std::pair bxRange(unsigned bx) const { - if (bx > 3564) - throw cms::Exception("OrbitCollection::getBxVectorView") + edm::Span bxIterator(unsigned bx) const { + if (bx >= orbitBufferSize_) + throw cms::Exception("OrbitCollection::bxIterator") << "Trying to access and object outside the orbit range. " - << " BX = " << bx << std::endl; - + << " BX = " << bx; if (getBxSize(bx) > 0) { - return std::make_pair(data_.begin() + bxOffsets_[bx], data_.begin() + bxOffsets_[bx + 1]); + return edm::Span(data_.begin() + bxOffsets_[bx], data_.begin() + bxOffsets_[bx + 1]); } else { - return std::make_pair(end(), end()); + return edm::Span(end(), end()); } } // get number of objects stored in a BX int getBxSize(unsigned bx) const { - if (bx > 3564) { + if (bx >= orbitBufferSize_) { edm::LogWarning("OrbitCollection") << "Called getBxSize() of a bx out of the orbit range." - << " BX = " << bx << std::endl; + << " BX = " << bx; return 0; } - if (data_.empty()) { - edm::LogWarning("OrbitCollection") << "Called getBxSize() but collection is empty." << std::endl; - } return bxOffsets_[bx + 1] - bxOffsets_[bx]; } // get i-th object from BX const T& getBxObject(unsigned bx, unsigned i) const { - if (bx > 3564) + if (bx >= orbitBufferSize_) throw cms::Exception("OrbitCollection::getBxObject") << "Trying to access and object outside the orbit range. " - << " BX = " << bx << std::endl; + << " BX = " << bx ; if (i >= getBxSize(bx)) throw cms::Exception("OrbitCollection::getBxObject") << "Trying to get element " << i << " but for" - << " BX = " << bx << " there are " << getBxSize(bx) << " elements." << std::endl; + << " BX = " << bx << " there are " << getBxSize(bx) << " elements."; return data_[bxOffsets_[bx] + i]; } @@ -116,8 +111,8 @@ class OrbitCollection { std::vector getFilledBxs() const { std::vector filledBxVec; if (!data_.empty()) { - for (unsigned bx = 0; bx < 3565; bx++) { - if (getBxSize(bx) > 0) + for (unsigned bx = 0; bx < orbitBufferSize_; bx++) { + if ((bxOffsets_[bx + 1] - bxOffsets_[bx]) > 0) filledBxVec.push_back(bx); } } @@ -129,20 +124,8 @@ class OrbitCollection { T& operator[](std::size_t i) { return data_[i]; } const T& operator[](std::size_t i) const { return data_[i]; } - void fillView(edm::ProductID const& id, - std::vector& pointers, - edm::FillViewHelperVector& helpers) const { - edm::detail::reallyFillView(*this, id, pointers, helpers); - } - - void setPtr(std::type_info const& toType, unsigned long index, void const*& ptr) const { - edm::detail::reallySetPtr>(*this, toType, index, ptr); - } - void fillPtrVector(std::type_info const& toType, - std::vector const& indices, - std::vector& ptrs) const { - edm::detail::reallyfillPtrVector(*this, toType, indices, ptrs); - } + // used by ROOT storage + CMS_CLASS_VERSION(3) private: // store data vector and BX offsets as flat vectors. @@ -150,37 +133,10 @@ class OrbitCollection { // of the objects for that BX. std::vector bxOffsets_; std::vector data_; -}; -namespace edm { - template - inline void fillView(OrbitCollection const& obj, - edm::ProductID const& id, - std::vector& pointers, - edm::FillViewHelperVector& helpers) { - obj.fillView(id, pointers, helpers); - } - template - struct has_fillView> { - static bool const value = true; - }; -} // namespace edm -template -inline void setPtr(OrbitCollection const& obj, std::type_info const& toType, unsigned long index, void const*& ptr) { - obj.setPtr(toType, index, ptr); -} -template -inline void fillPtrVector(OrbitCollection const& obj, - std::type_info const& toType, - std::vector const& indices, - std::vector& ptrs) { - obj.fillPtrVector(toType, indices, ptrs); -} -namespace edm { - template - struct has_setPtr> { - static bool const value = true; - }; -} // namespace edm + // there are 3564 BX in one orbtit [1,3564], one extra + // count added to keep first entry of the vector + static constexpr int orbitBufferSize_ = 3565; +}; #endif // DataFormats_L1Scouting_OrbitCollection_h diff --git a/DataFormats/L1Scouting/src/classes.h b/DataFormats/L1Scouting/src/classes.h index fb0878428ed4c..e9c045dd13f21 100644 --- a/DataFormats/L1Scouting/src/classes.h +++ b/DataFormats/L1Scouting/src/classes.h @@ -3,14 +3,4 @@ #include "DataFormats/L1Scouting/interface/OrbitCollection.h" #include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" -#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" - -namespace l1ScoutingRun3 { - - edm::Wrapper ScMuonOrbitCollectionWrapper; - edm::Wrapper ScJetOrbitCollectionWrapper; - edm::Wrapper ScEGammaOrbitCollectionWrapper; - edm::Wrapper ScTauOrbitCollectionWrapper; - edm::Wrapper ScEtSumOrbitCollectionWrapper; - edm::Wrapper ScBxSumsOrbitCollectionWrapper; -} // namespace l1ScoutingRun3 \ No newline at end of file +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" \ No newline at end of file diff --git a/DataFormats/L1Scouting/src/classes_def.xml b/DataFormats/L1Scouting/src/classes_def.xml index 9296247961b8b..9a18e0720da58 100644 --- a/DataFormats/L1Scouting/src/classes_def.xml +++ b/DataFormats/L1Scouting/src/classes_def.xml @@ -1,5 +1,7 @@ - + + + @@ -7,27 +9,30 @@ - + + + - + + + - + + + - - - - - - + + + diff --git a/DataFormats/L1Scouting/test/BuildFile.xml b/DataFormats/L1Scouting/test/BuildFile.xml new file mode 100644 index 0000000000000..2448764be48d5 --- /dev/null +++ b/DataFormats/L1Scouting/test/BuildFile.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/DataFormats/L1Scouting/test/TestL1ScoutingFormat.sh b/DataFormats/L1Scouting/test/TestL1ScoutingFormat.sh new file mode 100755 index 0000000000000..3ef6057274e9a --- /dev/null +++ b/DataFormats/L1Scouting/test/TestL1ScoutingFormat.sh @@ -0,0 +1,11 @@ +#!/bin/sh -ex + +function die { echo $1: status $2 ; exit $2; } + +LOCAL_TEST_DIR=${SCRAM_TEST_PATH} + +cmsRun ${LOCAL_TEST_DIR}/create_L1Scouting_test_file_cfg.py || die 'Failure using create_L1Scouting_test_file_cfg.py' $? + +file=testL1Scouting.root + +cmsRun ${LOCAL_TEST_DIR}/read_L1Scouting_cfg.py "$file" || die "Failure using read_L1Scouting_cfg.py $file" $? \ No newline at end of file diff --git a/DataFormats/L1Scouting/test/TestReadL1Scouting.cc b/DataFormats/L1Scouting/test/TestReadL1Scouting.cc new file mode 100644 index 0000000000000..6a1949e7eee51 --- /dev/null +++ b/DataFormats/L1Scouting/test/TestReadL1Scouting.cc @@ -0,0 +1,337 @@ +#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/global/EDAnalyzer.h" +#include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" +#include "FWCore/Utilities/interface/EDGetToken.h" +#include "FWCore/Utilities/interface/Exception.h" +#include "FWCore/Utilities/interface/InputTag.h" +#include "FWCore/Utilities/interface/StreamID.h" + +#include +#include +#include + +namespace edmtest { + using namespace l1ScoutingRun3; + class TestReadL1Scouting : public edm::global::EDAnalyzer<> { + public: + TestReadL1Scouting(edm::ParameterSet const&); + void analyze(edm::StreamID, edm::Event const&, edm::EventSetup const&) const override; + static void fillDescriptions(edm::ConfigurationDescriptions&); + + private: + + void analyzeMuons(edm::Event const& iEvent) const; + void analyzeJets(edm::Event const& iEvent) const; + void analyzeEGammas(edm::Event const& iEvent) const; + void analyzeTaus(edm::Event const& iEvent) const; + void analyzeBxSums(edm::Event const& iEvent) const; + + void throwWithMessageFromConstructor(const char*) const; + void throwWithMessage(const char*) const; + + const std::vector bxValues_; + + const std::vector expectedMuonValues_; + const edm::EDGetTokenT> muonsToken_; + + const std::vector expectedJetValues_; + const edm::EDGetTokenT> jetsToken_; + + const std::vector expectedEGammaValues_; + const edm::EDGetTokenT> eGammasToken_; + + const std::vector expectedTauValues_; + const edm::EDGetTokenT> tausToken_; + + const std::vector expectedBxSumsValues_; + const edm::EDGetTokenT> bxSumsToken_; + }; + + TestReadL1Scouting::TestReadL1Scouting(edm::ParameterSet const& iPSet) + : bxValues_(iPSet.getParameter>("bxValues")), + expectedMuonValues_(iPSet.getParameter>("expectedMuonValues")), + muonsToken_(consumes(iPSet.getParameter("muonsTag"))), + expectedJetValues_(iPSet.getParameter>("expectedJetValues")), + jetsToken_(consumes(iPSet.getParameter("jetsTag"))), + expectedEGammaValues_(iPSet.getParameter>("expectedEGammaValues")), + eGammasToken_(consumes(iPSet.getParameter("eGammasTag"))), + expectedTauValues_(iPSet.getParameter>("expectedTauValues")), + tausToken_(consumes(iPSet.getParameter("tausTag"))), + expectedBxSumsValues_(iPSet.getParameter>("expectedBxSumsValues")), + bxSumsToken_(consumes(iPSet.getParameter("bxSumsTag"))) { + + if (bxValues_.size()!=2) { + throwWithMessageFromConstructor("bxValues must have 2 elements and it does not"); + } + if (expectedMuonValues_.size()!=3) { + throwWithMessageFromConstructor("muonValues must have 3 elements and it does not"); + } + if (expectedJetValues_.size()!=4) { + throwWithMessageFromConstructor("jetValues must have 4 elements and it does not"); + } + if (expectedEGammaValues_.size()!=3) { + throwWithMessageFromConstructor("eGammaValues must have 3 elements and it does not"); + } + if (expectedTauValues_.size()!=2) { + throwWithMessageFromConstructor("tauValues must have 2 elements and it does not"); + } + if (expectedBxSumsValues_.size()!=1) { + throwWithMessageFromConstructor("bxSumsValues_ must have 1 elements and it does not"); + } + } + + void TestReadL1Scouting::analyze(edm::StreamID, edm::Event const& iEvent, edm::EventSetup const&) const { + analyzeMuons(iEvent); + analyzeJets(iEvent); + analyzeEGammas(iEvent); + analyzeTaus(iEvent); + analyzeBxSums(iEvent); + } + + void TestReadL1Scouting::analyzeMuons(edm::Event const& iEvent) const { + + auto const& muonsCollection = iEvent.get(muonsToken_); + + for (const unsigned& bx: bxValues_){ + unsigned nMuons = muonsCollection.getBxSize(bx); + if (nMuons!=expectedMuonValues_.size()){ + throwWithMessage("analyzeMuons, muons do not have the expected bx size"); + } + + const auto &muons = muonsCollection.bxIterator(bx); + for (unsigned i=0; i>("bxValues"); + desc.add>("expectedMuonValues"); + desc.add("muonsTag"); + desc.add>("expectedJetValues"); + desc.add("jetsTag"); + desc.add>("expectedEGammaValues"); + desc.add("eGammasTag"); + desc.add>("expectedTauValues"); + desc.add("tausTag"); + desc.add>("expectedBxSumsValues"); + desc.add("bxSumsTag"); + descriptions.addDefault(desc); + } + + void TestReadL1Scouting::throwWithMessageFromConstructor(const char* msg) const { + throw cms::Exception("TestFailure") << "TestReadL1Scouting constructor, test configuration error, " << msg; + } + + void TestReadL1Scouting::throwWithMessage(const char* msg) const { + throw cms::Exception("TestFailure") << "TestReadL1Scouting analyzer, " << msg; + } + +} // namespace edmtest + +using edmtest::TestReadL1Scouting; +DEFINE_FWK_MODULE(TestReadL1Scouting); \ No newline at end of file diff --git a/DataFormats/L1Scouting/test/TestWriteL1Scouting.cc b/DataFormats/L1Scouting/test/TestWriteL1Scouting.cc new file mode 100644 index 0000000000000..dc1812cd30522 --- /dev/null +++ b/DataFormats/L1Scouting/test/TestWriteL1Scouting.cc @@ -0,0 +1,244 @@ +#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" +#include "DataFormats/L1Scouting/interface/OrbitCollection.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/global/EDProducer.h" +#include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" +#include "FWCore/Utilities/interface/EDPutToken.h" +#include "FWCore/Utilities/interface/StreamID.h" + +#include +#include +#include + +namespace edmtest { + using namespace l1ScoutingRun3; + class TestWriteL1Scouting : public edm::global::EDProducer<> { + public: + TestWriteL1Scouting(edm::ParameterSet const&); + void produce(edm::StreamID, edm::Event&, edm::EventSetup const&) const override; + static void fillDescriptions(edm::ConfigurationDescriptions&); + + private: + + void produceMuons(edm::Event& iEvent) const; + void produceJets(edm::Event& iEvent) const; + void produceEGammas(edm::Event& iEvent) const; + void produceTaus(edm::Event& iEvent) const; + void produceBxSums(edm::Event& iEvent) const; + + void throwWithMessage(const char*) const; + + const std::vector bxValues_; + + const std::vector muonValues_; + const edm::EDPutTokenT> muonsPutToken_; + + const std::vector jetValues_; + const edm::EDPutTokenT> jetsPutToken_; + + const std::vector eGammaValues_; + const edm::EDPutTokenT> eGammasPutToken_; + + const std::vector tauValues_; + const edm::EDPutTokenT> tausPutToken_; + + const std::vector bxSumsValues_; + const edm::EDPutTokenT> bxSumsPutToken_; + }; + + TestWriteL1Scouting::TestWriteL1Scouting(edm::ParameterSet const& iPSet) + : bxValues_(iPSet.getParameter>("bxValues")), + muonValues_(iPSet.getParameter>("muonValues")), + muonsPutToken_(produces()), + jetValues_(iPSet.getParameter>("jetValues")), + jetsPutToken_(produces()), + eGammaValues_(iPSet.getParameter>("eGammaValues")), + eGammasPutToken_(produces()), + tauValues_(iPSet.getParameter>("tauValues")), + tausPutToken_(produces()), + bxSumsValues_(iPSet.getParameter>("bxSumsValues")), + bxSumsPutToken_(produces()) { + + if (bxValues_.size()!=2) { + throwWithMessage("bxValues must have 2 elements and it does not"); + } + if (muonValues_.size()!=3) { + throwWithMessage("muonValues must have 3 elements and it does not"); + } + if (jetValues_.size()!=4) { + throwWithMessage("jetValues must have 4 elements and it does not"); + } + if (eGammaValues_.size()!=3) { + throwWithMessage("eGammaValues must have 3 elements and it does not"); + } + if (tauValues_.size()!=2) { + throwWithMessage("tauValues must have 2 elements and it does not"); + } + if (bxSumsValues_.size()!=1) { + throwWithMessage("bxSumsValues_ must have 1 elements and it does not"); + } + } + + void TestWriteL1Scouting::produce(edm::StreamID, edm::Event& iEvent, edm::EventSetup const&) const { + produceMuons(iEvent); + produceJets(iEvent); + produceEGammas(iEvent); + produceTaus(iEvent); + produceBxSums(iEvent); + } + + void TestWriteL1Scouting::produceMuons(edm::Event& iEvent) const { + std::unique_ptr muons(new l1ScoutingRun3::ScMuonOrbitCollection); + + std::vector> orbitBufferMuons(3565); + int nMuons=0; + for (const unsigned& bx: bxValues_){ + for(const int& val: muonValues_){ + orbitBufferMuons[bx].emplace_back( + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val + ); + nMuons ++; + } + } + + muons->fillAndClear(orbitBufferMuons, nMuons); + iEvent.put(muonsPutToken_, std::move(muons)); + } + + void TestWriteL1Scouting::produceJets(edm::Event& iEvent) const { + std::unique_ptr jets(new l1ScoutingRun3::ScJetOrbitCollection); + + std::vector> orbitBufferJets(3565); + int nJets=0; + for (const unsigned& bx: bxValues_){ + for(const int& val: jetValues_){ + orbitBufferJets[bx].emplace_back( + val, + val, + val, + val + ); + nJets ++; + } + } + + jets->fillAndClear(orbitBufferJets, nJets); + iEvent.put(jetsPutToken_, std::move(jets)); + } + + void TestWriteL1Scouting::produceEGammas(edm::Event& iEvent) const { + std::unique_ptr eGammas(new l1ScoutingRun3::ScEGammaOrbitCollection); + + std::vector> orbitBufferEGammas(3565); + int nEGammas=0; + for (const unsigned& bx: bxValues_){ + for(const int& val: eGammaValues_){ + orbitBufferEGammas[bx].emplace_back( + val, + val, + val, + val + ); + nEGammas ++; + } + } + + eGammas->fillAndClear(orbitBufferEGammas, nEGammas); + iEvent.put(eGammasPutToken_, std::move(eGammas)); + } + + void TestWriteL1Scouting::produceTaus(edm::Event& iEvent) const { + std::unique_ptr taus(new l1ScoutingRun3::ScTauOrbitCollection); + + std::vector> orbitBufferTaus(3565); + int nTaus=0; + for (const unsigned& bx: bxValues_){ + for(const int& val: tauValues_){ + orbitBufferTaus[bx].emplace_back( + val, + val, + val, + val + ); + nTaus ++; + } + } + + taus->fillAndClear(orbitBufferTaus, nTaus); + iEvent.put(tausPutToken_, std::move(taus)); + + } + + void TestWriteL1Scouting::produceBxSums(edm::Event& iEvent) const { + std::unique_ptr bxSums(new l1ScoutingRun3::ScBxSumsOrbitCollection); + + std::vector> orbitBufferBxSums(3565); + int nBxSums=0; + for (const unsigned& bx: bxValues_){ + for(const int& val: bxSumsValues_){ + orbitBufferBxSums[bx].emplace_back( + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val, + val + ); + nBxSums ++; + } + } + + bxSums->fillAndClear(orbitBufferBxSums, nBxSums); + iEvent.put(bxSumsPutToken_, std::move(bxSums)); + } + + void TestWriteL1Scouting::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.add>("bxValues"); + desc.add>("muonValues"); + desc.add>("jetValues"); + desc.add>("eGammaValues"); + desc.add>("tauValues"); + desc.add>("bxSumsValues"); + descriptions.addDefault(desc); + } + + void TestWriteL1Scouting::throwWithMessage(const char* msg) const { + throw cms::Exception("TestFailure") << "TestWriteL1Scouting constructor, test configuration error, " << msg; + } + +} // namespace edmtest + +using edmtest::TestWriteL1Scouting; +DEFINE_FWK_MODULE(TestWriteL1Scouting); \ No newline at end of file diff --git a/DataFormats/L1Scouting/test/create_L1Scouting_test_file_cfg.py b/DataFormats/L1Scouting/test/create_L1Scouting_test_file_cfg.py new file mode 100644 index 0000000000000..1f03c455497ff --- /dev/null +++ b/DataFormats/L1Scouting/test/create_L1Scouting_test_file_cfg.py @@ -0,0 +1,24 @@ +import FWCore.ParameterSet.Config as cms + +process = cms.Process("PROD") + +process.load("FWCore.MessageService.MessageLogger_cfi") + +process.source = cms.Source("EmptySource") +process.maxEvents.input = 1 + +process.l1ScoutingTestProducer = cms.EDProducer("TestWriteL1Scouting", + bxValues = cms.vuint32(42, 512), + muonValues = cms.vint32(1, 2, 3), + jetValues = cms.vint32(4, 5, 6, 7), + eGammaValues = cms.vint32(8, 9, 10), + tauValues = cms.vint32(11, 12), + bxSumsValues = cms.vint32(13) +) + +process.out = cms.OutputModule("PoolOutputModule", + fileName = cms.untracked.string('testL1Scouting.root') +) + +process.path = cms.Path(process.l1ScoutingTestProducer) +process.endPath = cms.EndPath(process.out) \ No newline at end of file diff --git a/DataFormats/L1Scouting/test/read_L1Scouting_cfg.py b/DataFormats/L1Scouting/test/read_L1Scouting_cfg.py new file mode 100644 index 0000000000000..3153934b8106a --- /dev/null +++ b/DataFormats/L1Scouting/test/read_L1Scouting_cfg.py @@ -0,0 +1,30 @@ +import FWCore.ParameterSet.Config as cms +import sys + +process = cms.Process("READ") + +process.load("FWCore.MessageService.MessageLogger_cfi") + +process.source = cms.Source("PoolSource", fileNames = cms.untracked.vstring("file:"+sys.argv[1])) +process.maxEvents.input = 1 + +process.l1ScoutingTestAnalyzer = cms.EDAnalyzer("TestReadL1Scouting", + bxValues = cms.vuint32(42, 512), + muonsTag = cms.InputTag("l1ScoutingTestProducer", "", "PROD"), + expectedMuonValues = cms.vint32(1, 2, 3), + jetsTag = cms.InputTag("l1ScoutingTestProducer", "", "PROD"), + expectedJetValues = cms.vint32(4, 5, 6, 7), + eGammasTag = cms.InputTag("l1ScoutingTestProducer", "", "PROD"), + expectedEGammaValues = cms.vint32(8, 9, 10), + tausTag = cms.InputTag("l1ScoutingTestProducer", "", "PROD"), + expectedTauValues = cms.vint32(11, 12), + bxSumsTag = cms.InputTag("l1ScoutingTestProducer", "", "PROD"), + expectedBxSumsValues = cms.vint32(13) +) + +process.out = cms.OutputModule("PoolOutputModule", + fileName = cms.untracked.string('testL1Scouting2.root') +) + +process.path = cms.Path(process.l1ScoutingTestAnalyzer) +process.endPath = cms.EndPath(process.out) \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/BuildFile.xml b/DataFormats/L1ScoutingRawData/BuildFile.xml index 832b36382f2f1..736e6ca08a199 100644 --- a/DataFormats/L1ScoutingRawData/BuildFile.xml +++ b/DataFormats/L1ScoutingRawData/BuildFile.xml @@ -1,4 +1,3 @@ - diff --git a/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h b/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h index 9ec2b3b992f00..354131e56e4ed 100644 --- a/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h +++ b/DataFormats/L1ScoutingRawData/interface/SDSNumbering.h @@ -12,15 +12,13 @@ class SDSNumbering { public: static constexpr int lastSDSId() { return MAXSDSID; } - enum { - NOT_A_SDSID = -1, - MAXSDSID = 32, - GmtSDSID = 1, - CaloSDSID = 2, - GtSDSID = 4, - BmtfMinSDSID = 10, - BmtfMaxSDSID = 21 - }; + static constexpr int NOT_A_SDSID = -1; + static constexpr int MAXSDSID = 32; + static constexpr int GmtSDSID = 1; + static constexpr int CaloSDSID = 2; + static constexpr int GtSDSID = 4; + static constexpr int BmtfMinSDSID = 10; + static constexpr int BmtfMaxSDSID = 21; }; #endif // L1ScoutingRawData_SDSNumbering_h \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h b/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h index efff7a5013362..fe301ac437644 100644 --- a/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h +++ b/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h @@ -3,7 +3,6 @@ #include "DataFormats/FEDRawData/interface/FEDRawData.h" #include "DataFormats/Common/interface/traits.h" -#include "FWCore/Utilities/interface/GCCPrerequisite.h" /** * @@ -12,11 +11,9 @@ * */ -class SRDCollection : public edm::DoNotRecordParents { +class SDSRawDataCollection : public edm::DoNotRecordParents { public: - SRDCollection(); - - virtual ~SRDCollection(); + SDSRawDataCollection(); // retrive data for the scouting source at sourceId const FEDRawData& FEDData(int sourceId) const; @@ -24,14 +21,14 @@ class SRDCollection : public edm::DoNotRecordParents { // retrive data for the scouting source at sourceId FEDRawData& FEDData(int sourceId); - SRDCollection(const SRDCollection&); + SDSRawDataCollection(const SDSRawDataCollection&); - void swap(SRDCollection& other) { data_.swap(other.data_); } + void swap(SDSRawDataCollection& other) { data_.swap(other.data_); } private: std::vector data_; // vector of raw data }; -inline void swap(SRDCollection& a, SRDCollection& b) { a.swap(b); } +inline void swap(SDSRawDataCollection& a, SDSRawDataCollection& b) { a.swap(b); } #endif // L1ScoutingRawData_SDSRawDataCollection_h \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc b/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc index f08e423693f4f..e663d30c86626 100644 --- a/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc +++ b/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc @@ -1,12 +1,10 @@ -#include -#include +#include "DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSNumbering.h" -SRDCollection::SRDCollection() : data_(SDSNumbering::lastSDSId() + 1) {} +SDSRawDataCollection::SDSRawDataCollection() : data_(SDSNumbering::lastSDSId() + 1) {} -SRDCollection::SRDCollection(const SRDCollection& in) : data_(in.data_) {} +SDSRawDataCollection::SDSRawDataCollection(const SDSRawDataCollection& in) : data_(in.data_) {} -SRDCollection::~SRDCollection() {} +const FEDRawData& SDSRawDataCollection::FEDData(int sourceId) const { return data_[sourceId]; } -const FEDRawData& SRDCollection::FEDData(int sourceId) const { return data_[sourceId]; } - -FEDRawData& SRDCollection::FEDData(int sourceId) { return data_[sourceId]; } \ No newline at end of file +FEDRawData& SDSRawDataCollection::FEDData(int sourceId) { return data_[sourceId]; } \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/src/classes.h b/DataFormats/L1ScoutingRawData/src/classes.h index 9801506e6e233..98c4a6b676b25 100644 --- a/DataFormats/L1ScoutingRawData/src/classes.h +++ b/DataFormats/L1ScoutingRawData/src/classes.h @@ -1,4 +1,4 @@ -#include -#include +#include "DataFormats/Common/interface/Wrapper.h" +// #include "DataFormats/Common/interface/RefProd.h" -#include \ No newline at end of file +#include "DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h" \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/src/classes_def.xml b/DataFormats/L1ScoutingRawData/src/classes_def.xml index b86b822479c46..f62cced686169 100644 --- a/DataFormats/L1ScoutingRawData/src/classes_def.xml +++ b/DataFormats/L1ScoutingRawData/src/classes_def.xml @@ -1,5 +1,6 @@ - - - + + + + \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/test/BuildFile.xml b/DataFormats/L1ScoutingRawData/test/BuildFile.xml new file mode 100644 index 0000000000000..6529e327073ec --- /dev/null +++ b/DataFormats/L1ScoutingRawData/test/BuildFile.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/test/TestReadSDSRawDataCollection.cc b/DataFormats/L1ScoutingRawData/test/TestReadSDSRawDataCollection.cc new file mode 100644 index 0000000000000..275488fe1842e --- /dev/null +++ b/DataFormats/L1ScoutingRawData/test/TestReadSDSRawDataCollection.cc @@ -0,0 +1,73 @@ +#include "DataFormats/FEDRawData/interface/FEDRawData.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/global/EDAnalyzer.h" +#include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" +#include "FWCore/Utilities/interface/EDGetToken.h" +#include "FWCore/Utilities/interface/Exception.h" +#include "FWCore/Utilities/interface/InputTag.h" +#include "FWCore/Utilities/interface/StreamID.h" + +#include + +namespace edmtest { + + class TestReadSDSRawDataCollection : public edm::global::EDAnalyzer<> { + public: + TestReadSDSRawDataCollection(edm::ParameterSet const&); + void analyze(edm::StreamID, edm::Event const&, edm::EventSetup const&) const override; + void throwWithMessage(const char*) const; + static void fillDescriptions(edm::ConfigurationDescriptions&); + + private: + std::vector expectedSDSData1_; + std::vector expectedSDSData2_; + edm::EDGetTokenT sdsRawDataCollectionToken_; + }; + + TestReadSDSRawDataCollection::TestReadSDSRawDataCollection(edm::ParameterSet const& iPSet) + : expectedSDSData1_(iPSet.getParameter>("expectedSDSData1")), + expectedSDSData2_(iPSet.getParameter>("expectedSDSData2")), + sdsRawDataCollectionToken_(consumes(iPSet.getParameter("sdsRawDataCollectionTag"))) {} + + void TestReadSDSRawDataCollection::analyze(edm::StreamID, edm::Event const& iEvent, edm::EventSetup const&) const { + auto const& sdsRawDataCollection = iEvent.get(sdsRawDataCollectionToken_); + auto const& sdsData1 = sdsRawDataCollection.FEDData(1); + if (sdsData1.size() != expectedSDSData1_.size()) { + throwWithMessage("sdsData1 does not have expected size"); + } + for (unsigned int i = 0; i < sdsData1.size(); ++i) { + if (sdsData1.data()[i] != expectedSDSData1_[i]) { + throwWithMessage("sdsData1 does not have expected contents"); + } + } + auto const& sdsData2 = sdsRawDataCollection.FEDData(2); + if (sdsData2.size() != expectedSDSData2_.size()) { + throwWithMessage("sdsData2 does not have expected size"); + } + for (unsigned int i = 0; i < sdsData2.size(); ++i) { + if (sdsData2.data()[i] != expectedSDSData2_[i]) { + throwWithMessage("sdsData2 does not have expected contents"); + } + } + } + + void TestReadSDSRawDataCollection::throwWithMessage(const char* msg) const { + throw cms::Exception("TestFailure") << "TestReadSDSRawDataCollection::analyze, " << msg; + } + + void TestReadSDSRawDataCollection::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.add>("expectedSDSData1"); + desc.add>("expectedSDSData2"); + desc.add("sdsRawDataCollectionTag"); + descriptions.addDefault(desc); + } +} // namespace edmtest + +using edmtest::TestReadSDSRawDataCollection; +DEFINE_FWK_MODULE(TestReadSDSRawDataCollection); \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/test/TestSDSRawDataCollectionFormat.sh b/DataFormats/L1ScoutingRawData/test/TestSDSRawDataCollectionFormat.sh new file mode 100755 index 0000000000000..2b8cf681d377f --- /dev/null +++ b/DataFormats/L1ScoutingRawData/test/TestSDSRawDataCollectionFormat.sh @@ -0,0 +1,11 @@ +#!/bin/sh -ex + +function die { echo $1: status $2 ; exit $2; } + +LOCAL_TEST_DIR=${SCRAM_TEST_PATH} + +cmsRun ${LOCAL_TEST_DIR}/create_SDSRawDataCollection_test_file_cfg.py || die 'Failure using create_SDSRawDataCollection_test_file_cfg.py' $? + +file=testSDSRawDataCollection.root + +cmsRun ${LOCAL_TEST_DIR}/read_SDSRawDataCollection_cfg.py "$file" || die "Failure using read_SDSRawDataCollection_cfg.py $file" $? \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/test/TestWriteSDSRawDataCollection.cc b/DataFormats/L1ScoutingRawData/test/TestWriteSDSRawDataCollection.cc new file mode 100644 index 0000000000000..355958331c254 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/test/TestWriteSDSRawDataCollection.cc @@ -0,0 +1,63 @@ +#include "DataFormats/FEDRawData/interface/FEDRawData.h" +#include "DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/global/EDProducer.h" +#include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" +#include "FWCore/Utilities/interface/EDPutToken.h" +#include "FWCore/Utilities/interface/StreamID.h" + +#include +#include +#include + +namespace edmtest { + + class TestWriteSDSRawDataCollection : public edm::global::EDProducer<> { + public: + TestWriteSDSRawDataCollection(edm::ParameterSet const&); + void produce(edm::StreamID, edm::Event&, edm::EventSetup const&) const override; + static void fillDescriptions(edm::ConfigurationDescriptions&); + + private: + std::vector sdsData1_; + std::vector sdsData2_; + edm::EDPutTokenT sdsRawDataCollectionPutToken_; + }; + + TestWriteSDSRawDataCollection::TestWriteSDSRawDataCollection(edm::ParameterSet const& iPSet) + : sdsData1_(iPSet.getParameter>("SDSData1")), + sdsData2_(iPSet.getParameter>("SDSData2")), + sdsRawDataCollectionPutToken_(produces()) {} + + void TestWriteSDSRawDataCollection::produce(edm::StreamID, edm::Event& iEvent, edm::EventSetup const&) const { + auto sdsRawDataCollection = std::make_unique(); + FEDRawData& fedData1 = sdsRawDataCollection->FEDData(1); + FEDRawData& fedData2 = sdsRawDataCollection->FEDData(2); + + fedData1.resize(sdsData1_.size(), 4); + unsigned char* dataPtr1 = fedData1.data(); + for (unsigned int i = 0; i < sdsData1_.size(); ++i) { + dataPtr1[i] = sdsData1_[i]; + } + fedData2.resize(sdsData2_.size(), 4); + unsigned char* dataPtr2 = fedData2.data(); + for (unsigned int i = 0; i < sdsData2_.size(); ++i) { + dataPtr2[i] = sdsData2_[i]; + } + iEvent.put(sdsRawDataCollectionPutToken_, std::move(sdsRawDataCollection)); + } + + void TestWriteSDSRawDataCollection::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.add>("SDSData1"); + desc.add>("SDSData2"); + descriptions.addDefault(desc); + } +} // namespace edmtest + +using edmtest::TestWriteSDSRawDataCollection; +DEFINE_FWK_MODULE(TestWriteSDSRawDataCollection); \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/test/create_SDSRawDataCollection_test_file_cfg.py b/DataFormats/L1ScoutingRawData/test/create_SDSRawDataCollection_test_file_cfg.py new file mode 100644 index 0000000000000..f8dd0d6204f03 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/test/create_SDSRawDataCollection_test_file_cfg.py @@ -0,0 +1,22 @@ +import FWCore.ParameterSet.Config as cms + +process = cms.Process("PROD") + +process.load("FWCore.MessageService.MessageLogger_cfi") + +process.source = cms.Source("EmptySource") +process.maxEvents.input = 1 + +process.sdsRawDataCollectionProducer = cms.EDProducer("TestWriteSDSRawDataCollection", + # Test values below are meaningless. We just make sure when we read + # we get the same values. + SDSData1 = cms.vuint32(0, 1, 2, 3), + SDSData2 = cms.vuint32(42, 43, 44, 45) +) + +process.out = cms.OutputModule("PoolOutputModule", + fileName = cms.untracked.string('testSDSRawDataCollection.root') +) + +process.path = cms.Path(process.sdsRawDataCollectionProducer) +process.endPath = cms.EndPath(process.out) \ No newline at end of file diff --git a/DataFormats/L1ScoutingRawData/test/read_SDSRawDataCollection_cfg.py b/DataFormats/L1ScoutingRawData/test/read_SDSRawDataCollection_cfg.py new file mode 100644 index 0000000000000..95e3e23d18142 --- /dev/null +++ b/DataFormats/L1ScoutingRawData/test/read_SDSRawDataCollection_cfg.py @@ -0,0 +1,21 @@ +import FWCore.ParameterSet.Config as cms +import sys + +process = cms.Process("READ") + +process.source = cms.Source("PoolSource", fileNames = cms.untracked.vstring("file:"+sys.argv[1])) +process.maxEvents.input = 1 + +process.testReadSDSDRawDataCollection = cms.EDAnalyzer("TestReadSDSRawDataCollection", + sdsRawDataCollectionTag = cms.InputTag("sdsRawDataCollectionProducer", "", "PROD"), + expectedSDSData1 = cms.vuint32(0, 1, 2, 3), + expectedSDSData2 = cms.vuint32(42, 43, 44, 45) +) + +process.out = cms.OutputModule("PoolOutputModule", + fileName = cms.untracked.string('testSDSRawDataCollection2.root') +) + +process.path = cms.Path(process.testReadSDSDRawDataCollection) + +process.endPath = cms.EndPath(process.out) \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/interface/masks.h b/EventFilter/L1ScoutingRawToDigi/interface/masks.h index 2752d98bedfca..349c8a8bb4ddd 100644 --- a/EventFilter/L1ScoutingRawToDigi/interface/masks.h +++ b/EventFilter/L1ScoutingRawToDigi/interface/masks.h @@ -7,7 +7,6 @@ namespace l1ScoutingRun3 { namespace ugmt { - // struct masks{ struct masksMuon { // bx word: 16 bits used for actual bx, MS 4 bits are muon type // 0xf intermediate, @@ -36,7 +35,7 @@ namespace l1ScoutingRun3 { } // namespace ugmt namespace demux { - // struct masksCaloJet{ + struct masksJet { static constexpr uint32_t ET = 0x07ff; static constexpr uint32_t eta = 0x00ff; @@ -45,7 +44,6 @@ namespace l1ScoutingRun3 { static constexpr uint32_t qual = 0x0003; }; - // struct masksCaloEGamma{ struct masksEGamma { static constexpr uint32_t ET = 0x01ff; static constexpr uint32_t eta = 0x00ff; @@ -53,7 +51,6 @@ namespace l1ScoutingRun3 { static constexpr uint32_t iso = 0x0003; }; - // struct masksCaloTau{ struct masksTau { static constexpr uint32_t ET = 0x01ff; static constexpr uint32_t eta = 0x00ff; @@ -61,7 +58,6 @@ namespace l1ScoutingRun3 { static constexpr uint32_t iso = 0x0003; }; - // struct masksCaloESums{ struct masksESums { static constexpr uint32_t ETEt = 0x0fff; // Et of ET object static constexpr uint32_t ETEttem = 0x0fff; diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc index f93fc70b91ddf..5ec94ac356a9d 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc @@ -22,7 +22,7 @@ ScCaloRawToDigi::ScCaloRawToDigi(const edm::ParameterSet& iConfig) { produces().setBranchAlias("ScEGammaOrbitCollection"); produces().setBranchAlias("ScBxSumsOrbitCollection"); - rawToken = consumes(srcInputTag); + rawToken = consumes(srcInputTag); } ScCaloRawToDigi::~ScCaloRawToDigi(){}; @@ -31,7 +31,7 @@ void ScCaloRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) using namespace edm; using namespace l1ScoutingRun3; - Handle ScoutingRawDataCollection; + Handle ScoutingRawDataCollection; iEvent.getByToken(rawToken, ScoutingRawDataCollection); const FEDRawData& sourceRawData = ScoutingRawDataCollection->FEDData(SDSNumbering::CaloSDSID); diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc index e3dac064edd12..2759ec17ce0aa 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc @@ -13,7 +13,7 @@ ScGMTRawToDigi::ScGMTRawToDigi(const edm::ParameterSet& iConfig) { nMuonsOrbit_ = 0; produces().setBranchAlias("ScMuonOrbitCollection"); - rawToken = consumes(srcInputTag); + rawToken = consumes(srcInputTag); } ScGMTRawToDigi::~ScGMTRawToDigi(){}; @@ -21,7 +21,7 @@ ScGMTRawToDigi::~ScGMTRawToDigi(){}; void ScGMTRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { using namespace edm; - Handle ScoutingRawDataCollection; + Handle ScoutingRawDataCollection; iEvent.getByToken(rawToken, ScoutingRawDataCollection); const FEDRawData& sourceRawData = ScoutingRawDataCollection->FEDData(SDSNumbering::GmtSDSID); diff --git a/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h b/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h index 7c6e6d28ffe11..8692df494c738 100644 --- a/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h +++ b/EventFilter/Utilities/interface/DAQSourceModelsScoutingRun3.h @@ -24,7 +24,7 @@ class DataModeScoutingRun3 : public DataMode { std::vector>& makeDaqProvenanceHelpers() override; void readEvent(edm::EventPrincipal& eventPrincipal) override; - void fillSRDCollection(SRDCollection& rawData, char* buff, size_t len); + void fillSDSRawDataCollection(SDSRawDataCollection& rawData, char* buff, size_t len); //reuse FRD file and event headers int dataVersion() const override { return detectedFRDversion_; } diff --git a/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc b/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc index 8923bd06adb78..f856fdbed66ef 100644 --- a/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc +++ b/EventFilter/Utilities/src/DAQSourceModelsScoutingRun3.cc @@ -64,21 +64,21 @@ void DataModeScoutingRun3::readEvent(edm::EventPrincipal& eventPrincipal) { daqSource_->makeEventWrapper(eventPrincipal, aux); // create scouting raw data collection - std::unique_ptr rawData(new SRDCollection); + std::unique_ptr rawData(new SDSRawDataCollection); // Fill the ScoutingRawDataCollection with valid orbit data from the multiple sources for (const auto& pair : sourceValidOrbitPair_) { - fillSRDCollection(*rawData, (char*)events_[pair.second]->payload(), events_[pair.second]->eventSize()); + fillSDSRawDataCollection(*rawData, (char*)events_[pair.second]->payload(), events_[pair.second]->eventSize()); } - std::unique_ptr edp(new edm::Wrapper(std::move(rawData))); + std::unique_ptr edp(new edm::Wrapper(std::move(rawData))); eventPrincipal.put( daqProvenanceHelpers_[0]->branchDescription(), std::move(edp), daqProvenanceHelpers_[0]->dummyProvenance()); eventCached_ = false; } -void DataModeScoutingRun3::fillSRDCollection(SRDCollection& rawData, char* buff, size_t len) { +void DataModeScoutingRun3::fillSDSRawDataCollection(SDSRawDataCollection& rawData, char* buff, size_t len) { size_t pos = 0; // get the source ID @@ -103,7 +103,7 @@ std::vector>& DataModeScoutingRu //set SRD data collection daqProvenanceHelpers_.clear(); daqProvenanceHelpers_.emplace_back(std::make_shared( - edm::TypeID(typeid(SRDCollection)), "SRDCollection", "SRDCollection", "DAQSource")); + edm::TypeID(typeid(SDSRawDataCollection)), "SDSRawDataCollection", "SDSRawDataCollection", "DAQSource")); return daqProvenanceHelpers_; } diff --git a/L1TriggerScouting/Utilities/interface/printScObjects.h b/L1TriggerScouting/Utilities/interface/printScObjects.h index 4cc1471a47410..7e607ac9e09f1 100644 --- a/L1TriggerScouting/Utilities/interface/printScObjects.h +++ b/L1TriggerScouting/Utilities/interface/printScObjects.h @@ -5,6 +5,8 @@ #include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" #include "L1TriggerScouting/Utilities/interface/conversion.h" +#include "iostream" + namespace l1ScoutingRun3 { void printScMuon(const ScMuon& muon, std::ostream& outs = std::cout); diff --git a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc index 00061de47cac7..312a4d11518da 100644 --- a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc +++ b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc @@ -184,44 +184,49 @@ void DumpScObjects::printBx(unsigned bx) { if (checkMuons_ && muonHandle_.isValid()) { int i = 0; - for (auto muon = muonHandle_->begin(bx); muon != muonHandle_->end(bx); muon++) { + const auto &muons = muonHandle_->bxIterator(bx); + for (const auto& muon: muons){ std::cout << "--- Muon " << i << " ---\n"; - printScMuon(*muon); + printScMuon(muon); i++; } } if (checkJets_ && jetHandle_.isValid()) { int i = 0; - for (auto jet = jetHandle_->begin(bx); jet != jetHandle_->end(bx); jet++) { + const auto &jets = jetHandle_->bxIterator(bx); + for (const auto& jet: jets){ std::cout << "--- Jet " << i << " ---\n"; - printScJet(*jet); + printScJet(jet); i++; } } if (checkEGammas_ && jetHandle_.isValid()) { int i = 0; - for (auto egamma = eGammaHandle_->begin(bx); egamma != eGammaHandle_->end(bx); egamma++) { + const auto &eGammas = eGammaHandle_->bxIterator(bx); + for (const auto& egamma: eGammas){ std::cout << "--- E/Gamma " << i << " ---\n"; - printScEGamma(*egamma); + printScEGamma(egamma); i++; } } if (checkTaus_ && tauHandle_.isValid()) { int i = 0; - for (auto tau = tauHandle_->begin(bx); tau != tauHandle_->end(bx); tau++) { + const auto &taus = tauHandle_->bxIterator(bx); + for (const auto& tau: taus){ std::cout << "--- Tau " << i << " ---\n"; - printScTau(*tau); + printScTau(tau); i++; } } if (checkEtSums_ && etSumHandle_.isValid()) { - for (auto sum = etSumHandle_->begin(bx); sum != etSumHandle_->end(bx); sum++) { + const auto &sums = etSumHandle_->bxIterator(bx); + for (const auto& sum: sums){ std::cout << "--- Calo Sums ---\n"; - printScBxSums(*sum); + printScBxSums(sum); } } } From e41887cf55ca532dd01db962034f949b4b6c38f2 Mon Sep 17 00:00:00 2001 From: nancy Date: Wed, 13 Dec 2023 19:12:06 +0100 Subject: [PATCH 088/281] After running scram b code-format --- .../plugins/EcalEBPhase2TPParamProducer.cc | 2 +- .../EcalEBPhase2AmplitudeReconstructor.h | 3 +-- .../src/EcalEBPhase2AmplitudeReconstructor.cc | 1 - .../src/EcalEBPhase2TimeReconstructor.cc | 1 - .../plugins/EcalEBTrigPrimPhase2Producer.cc | 25 +++++++++---------- 5 files changed, 14 insertions(+), 18 deletions(-) diff --git a/CalibCalorimetry/EBPhase2TPGTools/plugins/EcalEBPhase2TPParamProducer.cc b/CalibCalorimetry/EBPhase2TPGTools/plugins/EcalEBPhase2TPParamProducer.cc index 9e07cc27a87ca..fee2d6b50f29e 100644 --- a/CalibCalorimetry/EBPhase2TPGTools/plugins/EcalEBPhase2TPParamProducer.cc +++ b/CalibCalorimetry/EBPhase2TPGTools/plugins/EcalEBPhase2TPParamProducer.cc @@ -130,7 +130,7 @@ void EcalEBPhase2TPParamProducer::fillDescriptions(edm::ConfigurationDescription desc.add("Et_sat", 1998.36); desc.add("xtal_LSB", 0.0488); desc.add("binOfMaximum", 6); - descriptions.add("ecalEBPhase2TPParamProducerDefault",desc); + descriptions.add("ecalEBPhase2TPParamProducerDefault", desc); } void EcalEBPhase2TPParamProducer::analyze(const edm::Event& evt, const edm::EventSetup& evtSetup) { diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h index d8c3e16b11441..a7098e6c62c76 100644 --- a/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/interface/EcalEBPhase2AmplitudeReconstructor.h @@ -16,7 +16,7 @@ class EcalTPGWeightGroup; class EcalEBPhase2AmplitudeReconstructor { private: - static const int maxSamplesUsed_=12; + static const int maxSamplesUsed_ = 12; bool debug_; int inputsAlreadyIn_; int buffer_[maxSamplesUsed_]; @@ -25,7 +25,6 @@ class EcalEBPhase2AmplitudeReconstructor { int setInput(int input); void process(); int processedOutput_; - public: EcalEBPhase2AmplitudeReconstructor(bool debug); diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2AmplitudeReconstructor.cc b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2AmplitudeReconstructor.cc index 22a31bceba274..2ac137f06f712 100644 --- a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2AmplitudeReconstructor.cc +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2AmplitudeReconstructor.cc @@ -7,7 +7,6 @@ #include - EcalEBPhase2AmplitudeReconstructor::EcalEBPhase2AmplitudeReconstructor(bool debug) : debug_(debug), inputsAlreadyIn_(0), shift_(13) {} diff --git a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TimeReconstructor.cc b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TimeReconstructor.cc index 22683dc75729b..6349a2ec60950 100644 --- a/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TimeReconstructor.cc +++ b/SimCalorimetry/EcalEBTrigPrimAlgos/src/EcalEBPhase2TimeReconstructor.cc @@ -6,7 +6,6 @@ #include "FWCore/MessageLogger/interface/MessageLogger.h" #include - EcalEBPhase2TimeReconstructor::EcalEBPhase2TimeReconstructor(bool debug) : debug_(debug), inputsAlreadyIn_(0), shift_(maxSamplesUsed_) {} diff --git a/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2Producer.cc b/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2Producer.cc index 41d0d5c84cfc2..3db2b7efd790a 100644 --- a/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2Producer.cc +++ b/SimCalorimetry/EcalEBTrigPrimProducers/plugins/EcalEBTrigPrimPhase2Producer.cc @@ -214,30 +214,29 @@ void EcalEBTrigPrimPhase2Producer::produce(edm::Event& e, const edm::EventSetup& << " For Barrel " << pOut->size() << " TP Digis were produced" << std::endl; } - // debug prints if TP > 0. The number of TP with Et>0 is also used later for a LogInfo + // debug prints if TP > 0. The number of TP with Et>0 is also used later for a LogInfo int nonZeroTP = 0; int nXstal = 0; for (unsigned int i = 0; i < pOut->size(); ++i) { nXstal++; for (int isam = 0; isam < (*pOut)[i].size(); ++isam) { if ((*pOut)[i][isam].encodedEt() > 0) { - nonZeroTP++; - if (debug_) { - LogDebug("EcalEBTrigPrimPhase2Producer") - << " For xStal n " << nXstal << " xTsal Id " << (((*pOut)[i])).id() << ", TP is " << (*pOut)[i] - << " (*pOut)[i][isam].raw() " << (*pOut)[i][isam].raw() << " (*pOut)[i][isam].encodedEt() " - << (*pOut)[i][isam].encodedEt() << " (*pOut)[i][isam].time() " << (*pOut)[i][isam].time() << std::endl; - } + nonZeroTP++; + if (debug_) { + LogDebug("EcalEBTrigPrimPhase2Producer") + << " For xStal n " << nXstal << " xTsal Id " << (((*pOut)[i])).id() << ", TP is " << (*pOut)[i] + << " (*pOut)[i][isam].raw() " << (*pOut)[i][isam].raw() << " (*pOut)[i][isam].encodedEt() " + << (*pOut)[i][isam].encodedEt() << " (*pOut)[i][isam].time() " << (*pOut)[i][isam].time() << std::endl; + } } } } - edm::LogInfo("EcalEBTrigPrimPhase2Producer") - << "EcalTPG" - << "\n =================> For Barrel , " << pOut->size() << " TP Digis were produced (including zero ones)" - << " Non zero primitives were " << nonZeroTP << std::endl; - + << "EcalTPG" + << "\n =================> For Barrel , " << pOut->size() << " TP Digis were produced (including zero ones)" + << " Non zero primitives were " << nonZeroTP << std::endl; + // put result into the Event e.put(std::move(pOut)); } From 8e6947589a15a5154f5dc02929cf92c3e5ec5d83 Mon Sep 17 00:00:00 2001 From: jsamudio Date: Wed, 13 Dec 2023 13:22:49 -0600 Subject: [PATCH 089/281] First implementation to use DB thresholds for PFRecHitProducer --- .../test/test_PFRecHitAndClusterSoA.py | 4 +-- .../interface/PFRecHitTopologyRecord.h | 4 ++- .../interface/PFRecHitTopologySoA.h | 3 ++ .../PFRecHitProducer/plugins/BuildFile.xml | 2 ++ .../alpaka/PFRecHitProducerKernel.dev.cc | 30 ++++++++++++------ .../plugins/alpaka/PFRecHitProducerKernel.h | 1 + .../plugins/alpaka/PFRecHitSoAProducer.cc | 2 +- .../alpaka/PFRecHitTopologyESProducer.cc | 31 +++++++++++++++++-- 8 files changed, 60 insertions(+), 17 deletions(-) diff --git a/RecoParticleFlow/PFClusterProducer/test/test_PFRecHitAndClusterSoA.py b/RecoParticleFlow/PFClusterProducer/test/test_PFRecHitAndClusterSoA.py index 4b7e7753cad4e..b2f78d09f73a8 100644 --- a/RecoParticleFlow/PFClusterProducer/test/test_PFRecHitAndClusterSoA.py +++ b/RecoParticleFlow/PFClusterProducer/test/test_PFRecHitAndClusterSoA.py @@ -184,7 +184,7 @@ name = cms.string('PFHBHERecHitCreator'), qualityTests = cms.VPSet( cms.PSet( - usePFThresholdsFromDB = cms.bool(False), + usePFThresholdsFromDB = cms.bool(True), cuts = cms.VPSet( cms.PSet( depth = cms.vint32(1, 2, 3, 4), @@ -224,7 +224,7 @@ name = cms.string('PFHBHERecHitCreator'), qualityTests = cms.VPSet( cms.PSet( - usePFThresholdsFromDB = cms.bool(False), + usePFThresholdsFromDB = cms.bool(True), cuts = cms.VPSet( cms.PSet( depth = cms.vint32(1, 2, 3, 4), diff --git a/RecoParticleFlow/PFRecHitProducer/interface/PFRecHitTopologyRecord.h b/RecoParticleFlow/PFRecHitProducer/interface/PFRecHitTopologyRecord.h index 78e731ac9eaa6..75af714ff5956 100644 --- a/RecoParticleFlow/PFRecHitProducer/interface/PFRecHitTopologyRecord.h +++ b/RecoParticleFlow/PFRecHitProducer/interface/PFRecHitTopologyRecord.h @@ -5,10 +5,12 @@ #include "FWCore/Framework/interface/EventSetupRecordImplementation.h" #include "Geometry/Records/interface/CaloGeometryRecord.h" #include "Geometry/Records/interface/HcalRecNumberingRecord.h" +#include "CondFormats/DataRecord/interface/HcalPFCutsRcd.h" class PFRecHitHCALTopologyRecord : public edm::eventsetup::DependentRecordImplementation< PFRecHitHCALTopologyRecord, - edm::mpl::Vector> {}; + edm::mpl::Vector> {}; class PFRecHitECALTopologyRecord : public edm::eventsetup::DependentRecordImplementation + + diff --git a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitProducerKernel.dev.cc b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitProducerKernel.dev.cc index b9287a1f45787..b691aa1bb59b0 100644 --- a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitProducerKernel.dev.cc +++ b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitProducerKernel.dev.cc @@ -16,6 +16,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { template >> ALPAKA_FN_ACC void operator()(const TAcc& acc, const typename CAL::ParameterType::ConstView params, + const typename CAL::TopologyTypeDevice::ConstView topology, const typename CAL::CaloRecHitSoATypeDevice::ConstView recHits, reco::PFRecHitDeviceCollection::View pfRecHits, uint32_t* __restrict__ denseId2pfRecHit, @@ -23,7 +24,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { // Strided loop over CaloRecHits for (int32_t i : cms::alpakatools::elements_with_stride(acc, recHits.metadata().size())) { // Check energy thresholds/quality cuts (specialised for HCAL/ECAL) - if (!applyCuts(recHits[i], params)) + if (!applyCuts(recHits[i], params, topology)) continue; // Use atomic operation to determine index of the PFRecHit to be constructed @@ -40,7 +41,8 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { } ALPAKA_FN_ACC static bool applyCuts(const typename CAL::CaloRecHitSoATypeDevice::ConstView::const_element rh, - const typename CAL::ParameterType::ConstView params); + const typename CAL::ParameterType::ConstView params, + const typename CAL::TopologyTypeDevice::ConstView topology); ALPAKA_FN_ACC static void constructPFRecHit( reco::PFRecHitDeviceCollection::View::element pfrh, @@ -50,26 +52,32 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { template <> ALPAKA_FN_ACC bool PFRecHitProducerKernelConstruct::applyCuts( const typename HCAL::CaloRecHitSoATypeDevice::ConstView::const_element rh, - const HCAL::ParameterType::ConstView params) { + const HCAL::ParameterType::ConstView params, + const HCAL::TopologyTypeDevice::ConstView topology) { // Reject HCAL recHits below enery threshold float threshold = 9999.; const uint32_t detId = rh.detId(); const uint32_t depth = HCAL::getDepth(detId); const uint32_t subdet = getSubdet(detId); - if (subdet == HcalBarrel) { - threshold = params.energyThresholds()[depth - 1]; - } else if (subdet == HcalEndcap) { - threshold = params.energyThresholds()[depth - 1 + HCAL::kMaxDepthHB]; + if (topology.cutsFromDB()) { + threshold = topology.noiseThreshold()[HCAL::detId2denseId(detId)]; } else { - printf("Rechit with detId %u has invalid subdetector %u!\n", detId, subdet); - return false; + if (subdet == HcalBarrel) { + threshold = params.energyThresholds()[depth - 1]; + } else if (subdet == HcalEndcap) { + threshold = params.energyThresholds()[depth - 1 + HCAL::kMaxDepthHB]; + } else { + printf("Rechit with detId %u has invalid subdetector %u!\n", detId, subdet); + return false; + } } return rh.energy() >= threshold; } template <> ALPAKA_FN_ACC bool PFRecHitProducerKernelConstruct::applyCuts( - const ECAL::CaloRecHitSoATypeDevice::ConstView::const_element rh, const ECAL::ParameterType::ConstView params) { + const ECAL::CaloRecHitSoATypeDevice::ConstView::const_element rh, const ECAL::ParameterType::ConstView params, + const ECAL::TopologyTypeDevice::ConstView topology) { // Reject ECAL recHits below energy threshold if (rh.energy() < params.energyThresholds()[ECAL::detId2denseId(rh.detId())]) return false; @@ -168,11 +176,13 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { void PFRecHitProducerKernel::processRecHits(Queue& queue, const typename CAL::CaloRecHitSoATypeDevice& recHits, const typename CAL::ParameterType& params, + const typename CAL::TopologyTypeDevice& topology, reco::PFRecHitDeviceCollection& pfRecHits) { alpaka::exec(queue, work_div_, PFRecHitProducerKernelConstruct{}, params.view(), + topology.view(), recHits.view(), pfRecHits.view(), denseId2pfRecHit_.data(), diff --git a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitProducerKernel.h b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitProducerKernel.h index 37638a2370060..ffaef6b0ad748 100644 --- a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitProducerKernel.h +++ b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitProducerKernel.h @@ -17,6 +17,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { void processRecHits(Queue& queue, const typename CAL::CaloRecHitSoATypeDevice& recHits, const typename CAL::ParameterType& params, + const typename CAL::TopologyTypeDevice& topology, reco::PFRecHitDeviceCollection& pfRecHits); // Run kernel: Associate topology information (position, neighbours) diff --git a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitSoAProducer.cc b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitSoAProducer.cc index a53ce4f23eed4..92e6918067dc1 100644 --- a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitSoAProducer.cc +++ b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitSoAProducer.cc @@ -41,7 +41,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { PFRecHitProducerKernel kernel{event.queue(), num_recHits}; for (const auto& token : recHitsToken_) - kernel.processRecHits(event.queue(), event.get(token.first), setup.getData(token.second), pfRecHits); + kernel.processRecHits(event.queue(), event.get(token.first), setup.getData(token.second),topology, pfRecHits); kernel.associateTopologyInfo(event.queue(), topology, pfRecHits); if (synchronise_) diff --git a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitTopologyESProducer.cc b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitTopologyESProducer.cc index c751202f45347..2b35136fd525c 100644 --- a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitTopologyESProducer.cc +++ b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitTopologyESProducer.cc @@ -5,6 +5,8 @@ #include #include "DataFormats/EcalDetId/interface/EcalSubdetector.h" +#include "CondFormats/DataRecord/interface/HcalPFCutsRcd.h" +#include "CondTools/Hcal/interface/HcalPFCutsHandler.h" #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/ParameterSet/interface/ParameterSetDescription.h" @@ -24,15 +26,22 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { template class PFRecHitTopologyESProducer : public ESProducer { public: - PFRecHitTopologyESProducer(edm::ParameterSet const& iConfig) : ESProducer(iConfig) { + PFRecHitTopologyESProducer(edm::ParameterSet const& iConfig) : ESProducer(iConfig), + cutsFromDB_(iConfig.getParameter("usePFThresholdsFromDB")) { auto cc = setWhatProduced(this); geomToken_ = cc.consumes(); - if constexpr (std::is_same_v) + if constexpr (std::is_same_v) { hcalToken_ = cc.consumes(); + hcalCutsToken_ = cc.consumes(); + } } static void fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; + if constexpr (std::is_same_v) + desc.add("usePFThresholdsFromDB", "True"); + else // only needs to be true for HBHE + desc.add("usePFThresholdsFromDB", "False"); descriptions.addWithDefaultLabel(desc); } @@ -40,7 +49,6 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { const auto& geom = iRecord.get(geomToken_); auto product = std::make_unique(CAL::kSize, cms::alpakatools::host()); auto view = product->view(); - const int calEnums[2] = {CAL::kSubdetectorBarrelId, CAL::kSubdetectorEndcapId}; for (const auto subdet : calEnums) { // Construct topology @@ -61,6 +69,20 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { const uint32_t denseId = CAL::detId2denseId(detId); assert(denseId < CAL::kSize); + // Fill SoA members with HCAL PF Thresholds from GT + if constexpr (std::is_same_v) { + view.cutsFromDB() = false; + if (cutsFromDB_) { + view.cutsFromDB() = true; + const HcalPFCuts& pfCuts = iRecord.get(hcalCutsToken_); + const HcalTopology& htopo = iRecord.get(hcalToken_); + std::unique_ptr prod = std::make_unique(pfCuts); + prod->setTopo(&htopo); + view.noiseThreshold(denseId) = prod->getValues(detId.rawId())->noiseThreshold(); + view.seedThreshold(denseId) = prod->getValues(detId.rawId())->seedThreshold(); + } + } + const GlobalPoint pos = geo->getGeometry(detId)->getPosition(); view.positionX(denseId) = pos.x(); view.positionY(denseId) = pos.y(); @@ -119,6 +141,9 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { private: edm::ESGetToken geomToken_; edm::ESGetToken hcalToken_; + edm::ESGetToken hcalCutsToken_; + const bool cutsFromDB_; + // specialised for HCAL/ECAL, because non-nearest neighbours are defined differently uint32_t getNeighbourDetId(const uint32_t detId, const uint32_t direction, const CaloSubdetectorTopology& topo); From 477556da0a880709de87dff1077d36f891948c55 Mon Sep 17 00:00:00 2001 From: Dan Riley Date: Wed, 13 Dec 2023 19:48:58 -0500 Subject: [PATCH 090/281] more valgrind, set loop indices to vector width, cleanup builder pools in producer destructor --- RecoTracker/MkFit/plugins/MkFitProducer.cc | 4 +- RecoTracker/MkFitCore/interface/MkBuilder.h | 1 + .../MkFitCore/interface/MkBuilderWrapper.h | 1 + RecoTracker/MkFitCore/src/KalmanUtilsMPlex.cc | 19 ++- RecoTracker/MkFitCore/src/MatriplexPackers.h | 2 + RecoTracker/MkFitCore/src/MkBuilder.cc | 7 + RecoTracker/MkFitCore/src/MkBuilderWrapper.cc | 7 +- RecoTracker/MkFitCore/src/MkFinder.cc | 133 ++++++++++-------- RecoTracker/MkFitCore/src/MkFinder.h | 4 +- RecoTracker/MkFitCore/src/MkFitter.h | 4 +- RecoTracker/MkFitCore/src/Pool.h | 4 +- RecoTracker/MkFitCore/src/PropagationMPlex.cc | 24 ++-- 12 files changed, 130 insertions(+), 80 deletions(-) diff --git a/RecoTracker/MkFit/plugins/MkFitProducer.cc b/RecoTracker/MkFit/plugins/MkFitProducer.cc index b66a2294db6e0..0c0ec3634f84e 100644 --- a/RecoTracker/MkFit/plugins/MkFitProducer.cc +++ b/RecoTracker/MkFit/plugins/MkFitProducer.cc @@ -32,7 +32,7 @@ class MkFitProducer : public edm::global::EDProducer> { public: explicit MkFitProducer(edm::ParameterSet const& iConfig); - ~MkFitProducer() override = default; + ~MkFitProducer() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); @@ -101,6 +101,8 @@ MkFitProducer::MkFitProducer(edm::ParameterSet const& iConfig) mkfit::MkBuilderWrapper::populate(); } +MkFitProducer::~MkFitProducer() { mkfit::MkBuilderWrapper::clear(); } + void MkFitProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; diff --git a/RecoTracker/MkFitCore/interface/MkBuilder.h b/RecoTracker/MkFitCore/interface/MkBuilder.h index c68b3e7bf80e6..bf0335d31bc7a 100644 --- a/RecoTracker/MkFitCore/interface/MkBuilder.h +++ b/RecoTracker/MkFitCore/interface/MkBuilder.h @@ -38,6 +38,7 @@ namespace mkfit { static std::unique_ptr make_builder(bool silent = true); static void populate(); + static void clear(); int total_cands() const; std::pair max_hits_layer(const EventOfHits &eoh) const; diff --git a/RecoTracker/MkFitCore/interface/MkBuilderWrapper.h b/RecoTracker/MkFitCore/interface/MkBuilderWrapper.h index 63e16b3c0e759..fcc5c83e70ee5 100644 --- a/RecoTracker/MkFitCore/interface/MkBuilderWrapper.h +++ b/RecoTracker/MkFitCore/interface/MkBuilderWrapper.h @@ -20,6 +20,7 @@ namespace mkfit { MkBuilder& get() { return *builder_; } static void populate(); + static void clear(); private: std::unique_ptr builder_; diff --git a/RecoTracker/MkFitCore/src/KalmanUtilsMPlex.cc b/RecoTracker/MkFitCore/src/KalmanUtilsMPlex.cc index c6371bebe1770..01729ebed4610 100644 --- a/RecoTracker/MkFitCore/src/KalmanUtilsMPlex.cc +++ b/RecoTracker/MkFitCore/src/KalmanUtilsMPlex.cc @@ -741,7 +741,7 @@ namespace mkfit { KFO_Update_Params | KFO_Local_Cov, psErr, psPar, msErr, msPar, outErr, outPar, dummy_chi2, N_proc); } for (int n = 0; n < NN; ++n) { - if (outPar.At(n, 3, 0) < 0) { + if (n < N_proc && outPar.At(n, 3, 0) < 0) { Chg.At(n, 0, 0) = -Chg.At(n, 0, 0); outPar.At(n, 3, 0) = -outPar.At(n, 3, 0); } @@ -777,7 +777,11 @@ namespace mkfit { MPlexQF msRad; #pragma omp simd for (int n = 0; n < NN; ++n) { - msRad.At(n, 0, 0) = std::hypot(msPar.constAt(n, 0, 0), msPar.constAt(n, 1, 0)); + if (n < N_proc) { + msRad.At(n, 0, 0) = std::hypot(msPar.constAt(n, 0, 0), msPar.constAt(n, 1, 0)); + } else { + msRad.At(n, 0, 0) = 0.0f; + } } propagateHelixToRMPlex(psErr, psPar, inChg, msRad, propErr, propPar, outFailFlag, N_proc, propFlags); @@ -843,9 +847,14 @@ namespace mkfit { MPlexQF rotT00; MPlexQF rotT01; for (int n = 0; n < NN; ++n) { - const float r = std::hypot(msPar.constAt(n, 0, 0), msPar.constAt(n, 1, 0)); - rotT00.At(n, 0, 0) = -(msPar.constAt(n, 1, 0) + psPar.constAt(n, 1, 0)) / (2 * r); - rotT01.At(n, 0, 0) = (msPar.constAt(n, 0, 0) + psPar.constAt(n, 0, 0)) / (2 * r); + if (n < N_proc) { + const float r = std::hypot(msPar.constAt(n, 0, 0), msPar.constAt(n, 1, 0)); + rotT00.At(n, 0, 0) = -(msPar.constAt(n, 1, 0) + psPar.constAt(n, 1, 0)) / (2 * r); + rotT01.At(n, 0, 0) = (msPar.constAt(n, 0, 0) + psPar.constAt(n, 0, 0)) / (2 * r); + } else { + rotT00.At(n, 0, 0) = 0.0f; + rotT01.At(n, 0, 0) = 0.0f; + } } MPlexHV res_glo; //position residual in global coordinates diff --git a/RecoTracker/MkFitCore/src/MatriplexPackers.h b/RecoTracker/MkFitCore/src/MatriplexPackers.h index feef081682763..714de9eb23364 100644 --- a/RecoTracker/MkFitCore/src/MatriplexPackers.h +++ b/RecoTracker/MkFitCore/src/MatriplexPackers.h @@ -25,6 +25,8 @@ namespace mkfit { void reset() { m_pos = 0; } + int size() const { return m_pos; } + void addNullInput() { m_idx[m_pos++] = 0; } void addInput(const D& item) { diff --git a/RecoTracker/MkFitCore/src/MkBuilder.cc b/RecoTracker/MkFitCore/src/MkBuilder.cc index 2c984991519b8..02f938bf11d92 100644 --- a/RecoTracker/MkFitCore/src/MkBuilder.cc +++ b/RecoTracker/MkFitCore/src/MkBuilder.cc @@ -44,6 +44,12 @@ namespace mkfit { m_fitters.populate(n_thr - m_fitters.size()); m_finders.populate(n_thr - m_finders.size()); } + + void clear() { + m_cloners.clear(); + m_fitters.clear(); + m_finders.clear(); + } }; CMS_SA_ALLOW ExecutionContext g_exe_ctx; @@ -166,6 +172,7 @@ namespace mkfit { std::unique_ptr MkBuilder::make_builder(bool silent) { return std::make_unique(silent); } void MkBuilder::populate() { g_exe_ctx.populate(Config::numThreadsFinder); } + void MkBuilder::clear() { g_exe_ctx.clear(); } std::pair MkBuilder::max_hits_layer(const EventOfHits &eoh) const { int maxN = 0; diff --git a/RecoTracker/MkFitCore/src/MkBuilderWrapper.cc b/RecoTracker/MkFitCore/src/MkBuilderWrapper.cc index 08bd3793bf459..d9036aa77ebb1 100644 --- a/RecoTracker/MkFitCore/src/MkBuilderWrapper.cc +++ b/RecoTracker/MkFitCore/src/MkBuilderWrapper.cc @@ -2,9 +2,10 @@ #include "RecoTracker/MkFitCore/interface/MkBuilder.h" namespace mkfit { - MkBuilderWrapper::MkBuilderWrapper(bool silent) : builder_(MkBuilder::make_builder(silent)) {} - - MkBuilderWrapper::~MkBuilderWrapper() {} + MkBuilderWrapper::MkBuilderWrapper(bool silent) : builder_(MkBuilder::make_builder(silent)) = default; + MkBuilderWrapper::~MkBuilderWrapper() = default; void MkBuilderWrapper::populate() { MkBuilder::populate(); } + void MkBuilderWrapper::clear() { MkBuilder::clear(); } + } // namespace mkfit diff --git a/RecoTracker/MkFitCore/src/MkFinder.cc b/RecoTracker/MkFitCore/src/MkFinder.cc index ee9726a8eb485..b202f9bd4750e 100644 --- a/RecoTracker/MkFitCore/src/MkFinder.cc +++ b/RecoTracker/MkFitCore/src/MkFinder.cc @@ -226,8 +226,8 @@ namespace mkfit { void MkFinder::packModuleNormDir( const LayerOfHits &layer_of_hits, int hit_cnt, MPlexHV &norm, MPlexHV &dir, int N_proc) const { - for (int itrack = 0; itrack < N_proc; ++itrack) { - if (hit_cnt < m_XHitSize[itrack]) { + for (int itrack = 0; itrack < NN; ++itrack) { + if (itrack < N_proc && hit_cnt < m_XHitSize[itrack]) { const auto &hit = layer_of_hits.refHit(m_XHitArr.constAt(itrack, hit_cnt, 0)); unsigned int mid = hit.detIDinLayer(); const ModuleInfo &mi = layer_of_hits.layer_info()->module_info(mid); @@ -255,7 +255,7 @@ namespace mkfit { if (!v.empty()) { // dq hit selection window - float this_dq = v[dq_sf] * (v[dq_0] * max_invpt + v[dq_1] * theta + v[dq_2]); + const float this_dq = v[dq_sf] * (v[dq_0] * max_invpt + v[dq_1] * theta + v[dq_2]); // In case value is below 0 (bad window derivation or other reasons), leave original limits if (this_dq > 0.f) { min_dq = this_dq; @@ -263,7 +263,7 @@ namespace mkfit { } // dphi hit selection window - float this_dphi = v[dp_sf] * (v[dp_0] * max_invpt + v[dp_1] * theta + v[dp_2]); + const float this_dphi = v[dp_sf] * (v[dp_0] * max_invpt + v[dp_1] * theta + v[dp_2]); // In case value is too low (bad window derivation or other reasons), leave original limits if (this_dphi > min_dphi) { min_dphi = this_dphi; @@ -363,6 +363,8 @@ namespace mkfit { #pragma omp simd #endif for (int itrack = 0; itrack < NN; ++itrack) { + if (itrack >= N_proc) + continue; m_XHitSize[itrack] = 0; float min_dq = ILC.min_dq(); @@ -474,7 +476,10 @@ namespace mkfit { // Vectorizing this makes it run slower! //#pragma omp simd - for (int itrack = 0; itrack < N_proc; ++itrack) { + for (int itrack = 0; itrack < NN; ++itrack) { + if (itrack >= N_proc) { + continue; + } // PROP-FAIL-ENABLE The following to be enabled when propagation failure // detection is properly implemented in propagate-to-R/Z. if (m_FailFlag[itrack]) { @@ -809,15 +814,17 @@ namespace mkfit { // Matriplex::min_max(mp::fast_atan2(sp1.y, sp1.x), smp::fast_atan2(sp2.y, sp2.x), pmin, pmax); MPlexQF dp = pmax - pmin; phi_c = 0.5f * (pmax + pmin); - for (int ii = 0; ii < n_proc; ++ii) { - if (dp[ii] > Const::PI) { - std::swap(pmax[ii], pmin[ii]); - dp[ii] = Const::TwoPI - dp[ii]; - phi_c[ii] = Const::PI - phi_c[ii]; + for (int ii = 0; ii < NN; ++ii) { + if (ii < n_proc) { + if (dp[ii] > Const::PI) { + std::swap(pmax[ii], pmin[ii]); + dp[ii] = Const::TwoPI - dp[ii]; + phi_c[ii] = Const::PI - phi_c[ii]; + } + dphi[ii] = 0.5f * dp[ii]; + // printf("phic: %f p1: %f p2: %f pmin: %f pmax: %f dphi: %f\n", + // phi_c[ii], xp1[ii], xp2[ii], pmin[ii], pmax[ii], dphi[ii]); } - dphi[ii] = 0.5f * dp[ii]; - // printf("phic: %f p1: %f p2: %f pmin: %f pmax: %f dphi: %f\n", - // phi_c[ii], xp1[ii], xp2[ii], pmin[ii], pmax[ii], dphi[ii]); } // MPlexQF qmin, qmax; @@ -848,16 +855,18 @@ namespace mkfit { B.prop_to_limits(LI); B.find_bin_ranges(LI, L); - for (int i = 0; i < N_proc; ++i) { - m_XHitSize[i] = 0; - // Notify failure. Ideally should be detected before selectHitIndices(). - if (m_FailFlag[i]) { - m_XWsrResult[i].m_wsr = WSR_Failed; - } else { - if (LI.is_barrel()) { - m_XWsrResult[i] = L.is_within_z_sensitive_region(B.q_c[i], 0.5f * (B.q2[i] - B.q1[i])); + for (int i = 0; i < NN; ++i) { + if (i < N_proc) { + m_XHitSize[i] = 0; + // Notify failure. Ideally should be detected before selectHitIndices(). + if (m_FailFlag[i]) { + m_XWsrResult[i].m_wsr = WSR_Failed; } else { - m_XWsrResult[i] = L.is_within_r_sensitive_region(B.q_c[i], 0.5f * (B.q2[i] - B.q1[i])); + if (LI.is_barrel()) { + m_XWsrResult[i] = L.is_within_z_sensitive_region(B.q_c[i], 0.5f * (B.q2[i] - B.q1[i])); + } else { + m_XWsrResult[i] = L.is_within_r_sensitive_region(B.q_c[i], 0.5f * (B.q2[i] - B.q1[i])); + } } } } @@ -897,7 +906,11 @@ namespace mkfit { // Vectorizing this makes it run slower! //#pragma omp simd - for (int itrack = 0; itrack < N_proc; ++itrack) { + for (int itrack = 0; itrack < NN; ++itrack) { + if (itrack >= N_proc) { + continue; + } + if (m_FailFlag[itrack]) { m_XWsrResult[itrack].m_wsr = WSR_Failed; continue; @@ -1036,8 +1049,8 @@ namespace mkfit { mhp.reset(); //#pragma omp simd doesn't vectorize with current compilers - for (int itrack = 0; itrack < N_proc; ++itrack) { - if (hit_cnt < m_XHitSize[itrack]) { + for (int itrack = 0; itrack < NN; ++itrack) { + if (itrack < N_proc && hit_cnt < m_XHitSize[itrack]) { mhp.addInputAt(itrack, layer_of_hits.refHit(m_XHitArr.At(itrack, hit_cnt, 0))); } } @@ -1062,8 +1075,8 @@ namespace mkfit { //update best hit in case chi2 { InputPFRecHitSoA_Token_{consumes(config.getParameter("PFRecHitsLabelIn"))}, pfClusParamsToken_(esConsumes(config.getParameter("pfClusterParams"))), legacyPfClustersToken_(produces()), - recHitsLabel_(consumes(config.getParameter("recHitsSource"))) { + recHitsLabel_(consumes(config.getParameter("recHitsSource"))), + hcalCutsToken_(esConsumes(edm::ESInputTag("", "withTopo"))) { + cutsFromDB = config.getParameter("usePFThresholdsFromDB"); edm::ConsumesCollector cc = consumesCollector(); //setup pf cluster builder if requested @@ -65,6 +70,7 @@ class LegacyPFClusterProducer : public edm::stream::EDProducer<> { desc.add("PFRecHitsLabelIn"); desc.add("pfClusterParams"); desc.add("recHitsSource"); + desc.add("usePFThresholdsFromDB", "True"); { edm::ParameterSetDescription pfClusterBuilder; pfClusterBuilder.add("maxIterations", 5); @@ -180,12 +186,18 @@ class LegacyPFClusterProducer : public edm::stream::EDProducer<> { const edm::ESGetToken pfClusParamsToken_; const edm::EDPutTokenT legacyPfClustersToken_; const edm::EDGetTokenT recHitsLabel_; + const edm::ESGetToken hcalCutsToken_; + bool cutsFromDB; + HcalPFCuts const* paramPF = nullptr; // the actual algorithm std::unique_ptr positionCalc_; std::unique_ptr allCellsPositionCalc_; }; void LegacyPFClusterProducer::produce(edm::Event& event, const edm::EventSetup& setup) { + if (cutsFromDB) { + paramPF = &setup.getData(hcalCutsToken_); + } const reco::PFRecHitHostCollection& pfRecHits = event.get(InputPFRecHitSoA_Token_); auto const& pfClusterSoA = event.get(pfClusterSoAToken_).const_view(); @@ -221,11 +233,9 @@ void LegacyPFClusterProducer::produce(edm::Event& event, const edm::EventSetup& // Now PFRecHitFraction of this PFCluster is set. Now compute calculateAndSetPosition (energy, position etc) if (nTopoSeeds[pfClusterSoA[i].topoId()] == 1 && allCellsPositionCalc_) { - allCellsPositionCalc_->calculateAndSetPosition( - temp, nullptr); // temporarily use nullptr until we can properly set GT thresholds + allCellsPositionCalc_->calculateAndSetPosition(temp, paramPF); } else { - positionCalc_->calculateAndSetPosition( - temp, nullptr); // temporarily use nullptr until we can properly set GT thresholds + positionCalc_->calculateAndSetPosition(temp, paramPF); } out.emplace_back(std::move(temp)); } diff --git a/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterParamsESProducer.cc b/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterParamsESProducer.cc index 8a5da486752ce..36d4b025c3a48 100644 --- a/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterParamsESProducer.cc +++ b/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterParamsESProducer.cc @@ -35,17 +35,17 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { if (thresholds.size() != kMaxDepth_barrel) throw cms::Exception("Configuration") << "Invalid size (" << thresholds.size() << " != " << kMaxDepth_barrel << ") for \"\" vector of det = \"" << det << "\""; - view.seedPt2ThresholdEB() = seedPt2Threshold; + view.seedPt2ThresholdHB() = seedPt2Threshold; for (size_t idx = 0; idx < thresholds.size(); ++idx) { - view.seedEThresholdEB_vec()[idx] = thresholds[idx]; + view.seedEThresholdHB_vec()[idx] = thresholds[idx]; } } else if (det == "HCAL_ENDCAP") { if (thresholds.size() != kMaxDepth_endcap) throw cms::Exception("Configuration") << "Invalid size (" << thresholds.size() << " != " << kMaxDepth_endcap << ") for \"\" vector of det = \"" << det << "\""; - view.seedPt2ThresholdEE() = seedPt2Threshold; + view.seedPt2ThresholdHE() = seedPt2Threshold; for (size_t idx = 0; idx < thresholds.size(); ++idx) { - view.seedEThresholdEE_vec()[idx] = thresholds[idx]; + view.seedEThresholdHE_vec()[idx] = thresholds[idx]; } } else { throw cms::Exception("Configuration") << "Unknown detector when parsing seedFinder: " << det; @@ -63,14 +63,14 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { throw cms::Exception("Configuration") << "Invalid size (" << thresholds.size() << " != " << kMaxDepth_barrel << ") for \"\" vector of det = \"" << det << "\""; for (size_t idx = 0; idx < thresholds.size(); ++idx) { - view.topoEThresholdEB_vec()[idx] = thresholds[idx]; + view.topoEThresholdHB_vec()[idx] = thresholds[idx]; } } else if (det == "HCAL_ENDCAP") { if (thresholds.size() != kMaxDepth_endcap) throw cms::Exception("Configuration") << "Invalid size (" << thresholds.size() << " != " << kMaxDepth_endcap << ") for \"\" vector of det = \"" << det << "\""; for (size_t idx = 0; idx < thresholds.size(); ++idx) { - view.topoEThresholdEE_vec()[idx] = thresholds[idx]; + view.topoEThresholdHE_vec()[idx] = thresholds[idx]; } } else { throw cms::Exception("Configuration") << "Unknown detector when parsing initClusteringStep: " << det; @@ -99,7 +99,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { << "Invalid size (" << recHitNorms.size() << " != " << kMaxDepth_barrel << ") for \"\" vector of det = \"" << det << "\""; for (size_t idx = 0; idx < recHitNorms.size(); ++idx) { - view.recHitEnergyNormInvEB_vec()[idx] = 1. / recHitNorms[idx]; + view.recHitEnergyNormInvHB_vec()[idx] = 1. / recHitNorms[idx]; } } else if (det == "HCAL_ENDCAP") { if (recHitNorms.size() != kMaxDepth_endcap) @@ -107,7 +107,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { << "Invalid size (" << recHitNorms.size() << " != " << kMaxDepth_endcap << ") for \"\" vector of det = \"" << det << "\""; for (size_t idx = 0; idx < recHitNorms.size(); ++idx) { - view.recHitEnergyNormInvEE_vec()[idx] = 1. / recHitNorms[idx]; + view.recHitEnergyNormInvHE_vec()[idx] = 1. / recHitNorms[idx]; } } else { throw cms::Exception("Configuration") << "Unknown detector when parsing recHitEnergyNorms: " << det; diff --git a/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducer.cc b/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducer.cc index e4291f8e705c8..bde6db46b08d9 100644 --- a/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducer.cc +++ b/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducer.cc @@ -18,6 +18,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { public: PFClusterSoAProducer(edm::ParameterSet const& config) : pfClusParamsToken(esConsumes(config.getParameter("pfClusterParams"))), + topologyToken_(esConsumes(config.getParameter("topology"))), inputPFRecHitSoA_Token_{consumes(config.getParameter("pfRecHits"))}, outputPFClusterSoA_Token_{produces()}, outputPFRHFractionSoA_Token_{produces()}, @@ -26,6 +27,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { void produce(device::Event& event, device::EventSetup const& setup) override { const reco::PFClusterParamsDeviceCollection& params = setup.getData(pfClusParamsToken); + const reco::PFRecHitHCALTopologyDeviceCollection& topology = setup.getData(topologyToken_); const reco::PFRecHitHostCollection& pfRecHits = event.get(inputPFRecHitSoA_Token_); const int nRH = pfRecHits->size(); @@ -36,7 +38,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { PFClusterProducerKernel kernel(event.queue(), pfRecHits); kernel.execute( - event.queue(), params, pfClusteringVars, pfClusteringEdgeVars, pfRecHits, pfClusters, pfrhFractions); + event.queue(), params, topology, pfClusteringVars, pfClusteringEdgeVars, pfRecHits, pfClusters, pfrhFractions); if (synchronise_) alpaka::wait(event.queue()); @@ -49,6 +51,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { edm::ParameterSetDescription desc; desc.add("pfRecHits"); desc.add("pfClusterParams"); + desc.add("topology"); desc.add("synchronise"); desc.add("pfRecHitFractionAllocation", 120); descriptions.addWithDefaultLabel(desc); @@ -56,6 +59,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { private: const device::ESGetToken pfClusParamsToken; + const device::ESGetToken topologyToken_; const edm::EDGetTokenT inputPFRecHitSoA_Token_; const device::EDPutToken outputPFClusterSoA_Token_; const device::EDPutToken outputPFRHFractionSoA_Token_; diff --git a/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducerKernel.dev.cc b/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducerKernel.dev.cc index 6b0f4dc27d88b..05194b83afa6b 100644 --- a/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducerKernel.dev.cc +++ b/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducerKernel.dev.cc @@ -88,14 +88,16 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { // Processing single seed clusters // Device function designed to be called by all threads of a given block template >> - ALPAKA_FN_ACC static void hcalFastCluster_singleSeed(const TAcc& acc, - reco::PFClusterParamsDeviceCollection::ConstView pfClusParams, - int topoId, // from selection - int nRHTopo, // from selection - reco::PFRecHitDeviceCollection::ConstView pfRecHits, - reco::PFClusteringVarsDeviceCollection::View pfClusteringVars, - reco::PFClusterDeviceCollection::View clusterView, - reco::PFRecHitFractionDeviceCollection::View fracView) { + ALPAKA_FN_ACC static void hcalFastCluster_singleSeed( + const TAcc& acc, + reco::PFClusterParamsDeviceCollection::ConstView pfClusParams, + const reco::PFRecHitHCALTopologyDeviceCollection::ConstView topology, + int topoId, // from selection + int nRHTopo, // from selection + reco::PFRecHitDeviceCollection::ConstView pfRecHits, + reco::PFClusteringVarsDeviceCollection::View pfClusteringVars, + reco::PFClusterDeviceCollection::View clusterView, + reco::PFRecHitFractionDeviceCollection::View fracView) { int tid = alpaka::getIdx(acc)[0u]; // thread index is rechit number // Declaration of shared variables int& i = alpaka::declareSharedVar(acc); @@ -119,13 +121,17 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { clusterEnergy = seedEnergy; tol = pfClusParams.stoppingTolerance(); // stopping tolerance * tolerance scaling - if (pfRecHits[i].layer() == PFLayer::HCAL_BARREL1) - rhENormInv = pfClusParams.recHitEnergyNormInvEB_vec()[pfRecHits[i].depth() - 1]; - else if (pfRecHits[i].layer() == PFLayer::HCAL_ENDCAP) - rhENormInv = pfClusParams.recHitEnergyNormInvEE_vec()[pfRecHits[i].depth() - 1]; - else { - rhENormInv = 0.; - printf("Rechit %d has invalid layer %d!\n", i, pfRecHits[i].layer()); + if (topology.cutsFromDB()) { + rhENormInv = (1. / topology[pfRecHits[i].denseId()].noiseThreshold()); + } else { + if (pfRecHits[i].layer() == PFLayer::HCAL_BARREL1) + rhENormInv = pfClusParams.recHitEnergyNormInvHB_vec()[pfRecHits[i].depth() - 1]; + else if (pfRecHits[i].layer() == PFLayer::HCAL_ENDCAP) + rhENormInv = pfClusParams.recHitEnergyNormInvHE_vec()[pfRecHits[i].depth() - 1]; + else { + rhENormInv = 0.; + printf("Rechit %d has invalid layer %d!\n", i, pfRecHits[i].layer()); + } } iter = 0; @@ -253,6 +259,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { ALPAKA_FN_ACC static void hcalFastCluster_multiSeedParallel( const TAcc& acc, reco::PFClusterParamsDeviceCollection::ConstView pfClusParams, + const reco::PFRecHitHCALTopologyDeviceCollection::ConstView topology, int topoId, // from selection int nSeeds, // from selection int nRHTopo, // from selection @@ -289,12 +296,19 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { notDone = true; int i = pfClusteringVars[topoSeedBegin].topoSeedList(); - if (pfRecHits[i].layer() == PFLayer::HCAL_BARREL1) - rhENormInv = pfClusParams.recHitEnergyNormInvEB_vec()[pfRecHits[i].depth() - 1]; - else if (pfRecHits[i].layer() == PFLayer::HCAL_ENDCAP) - rhENormInv = pfClusParams.recHitEnergyNormInvEE_vec()[pfRecHits[i].depth() - 1]; - else - printf("Rechit %d has invalid layer %d!\n", i, pfRecHits[i].layer()); + + if (topology.cutsFromDB()) { + rhENormInv = (1. / topology[pfRecHits[i].denseId()].noiseThreshold()); + } else { + if (pfRecHits[i].layer() == PFLayer::HCAL_BARREL1) + rhENormInv = pfClusParams.recHitEnergyNormInvHB_vec()[pfRecHits[i].depth() - 1]; + else if (pfRecHits[i].layer() == PFLayer::HCAL_ENDCAP) + rhENormInv = pfClusParams.recHitEnergyNormInvHE_vec()[pfRecHits[i].depth() - 1]; + else { + rhENormInv = 0.; + printf("Rechit %d has invalid layer %d!\n", i, pfRecHits[i].layer()); + } + } } alpaka::syncBlockThreads(acc); // all threads call sync @@ -531,6 +545,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { template >> ALPAKA_FN_ACC static void hcalFastCluster_exotic(const TAcc& acc, reco::PFClusterParamsDeviceCollection::ConstView pfClusParams, + const reco::PFRecHitHCALTopologyDeviceCollection::ConstView topology, int topoId, int nSeeds, int nRHTopo, @@ -572,12 +587,19 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { notDone = true; int i = pfClusteringVars[topoSeedBegin].topoSeedList(); - if (pfRecHits[i].layer() == PFLayer::HCAL_BARREL1) - rhENormInv = pfClusParams.recHitEnergyNormInvEB_vec()[pfRecHits[i].depth() - 1]; - else if (pfRecHits[i].layer() == PFLayer::HCAL_ENDCAP) - rhENormInv = pfClusParams.recHitEnergyNormInvEE_vec()[pfRecHits[i].depth() - 1]; - else - printf("Rechit %d has invalid layer %d!\n", i, pfRecHits[i].layer()); + + if (topology.cutsFromDB()) { + rhENormInv = (1. / topology[pfRecHits[i].denseId()].noiseThreshold()); + } else { + if (pfRecHits[i].layer() == PFLayer::HCAL_BARREL1) + rhENormInv = pfClusParams.recHitEnergyNormInvHB_vec()[pfRecHits[i].depth() - 1]; + else if (pfRecHits[i].layer() == PFLayer::HCAL_ENDCAP) + rhENormInv = pfClusParams.recHitEnergyNormInvHE_vec()[pfRecHits[i].depth() - 1]; + else { + rhENormInv = 0.; + printf("Rechit %d has invalid layer %d!\n", i, pfRecHits[i].layer()); + } + } } alpaka::syncBlockThreads(acc); // all threads call sync @@ -798,6 +820,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { ALPAKA_FN_ACC static void hcalFastCluster_multiSeedIterative( const TAcc& acc, reco::PFClusterParamsDeviceCollection::ConstView pfClusParams, + const reco::PFRecHitHCALTopologyDeviceCollection::ConstView topology, int topoId, int nSeeds, int nRHTopo, @@ -831,12 +854,19 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { notDone = true; int i = pfClusteringVars[topoSeedBegin].topoSeedList(); - if (pfRecHits[i].layer() == PFLayer::HCAL_BARREL1) - rhENormInv = pfClusParams.recHitEnergyNormInvEB_vec()[pfRecHits[i].depth() - 1]; - else if (pfRecHits[i].layer() == PFLayer::HCAL_ENDCAP) - rhENormInv = pfClusParams.recHitEnergyNormInvEE_vec()[pfRecHits[i].depth() - 1]; - else - printf("Rechit %d has invalid layer %d!\n", i, pfRecHits[i].layer()); + + if (topology.cutsFromDB()) { + rhENormInv = (1. / topology[pfRecHits[i].denseId()].noiseThreshold()); + } else { + if (pfRecHits[i].layer() == PFLayer::HCAL_BARREL1) + rhENormInv = pfClusParams.recHitEnergyNormInvHB_vec()[pfRecHits[i].depth() - 1]; + else if (pfRecHits[i].layer() == PFLayer::HCAL_ENDCAP) + rhENormInv = pfClusParams.recHitEnergyNormInvHE_vec()[pfRecHits[i].depth() - 1]; + else { + rhENormInv = 0.; + printf("Rechit %d has invalid layer %d!\n", i, pfRecHits[i].layer()); + } + } } alpaka::syncBlockThreads(acc); // all threads call sync @@ -1057,6 +1087,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { ALPAKA_FN_ACC void operator()(const TAcc& acc, reco::PFClusteringVarsDeviceCollection::View pfClusteringVars, const reco::PFClusterParamsDeviceCollection::ConstView pfClusParams, + const reco::PFRecHitHCALTopologyDeviceCollection::ConstView topology, const reco::PFRecHitHostCollection::ConstView pfRecHits, reco::PFClusterDeviceCollection::View clusterView, reco::PFRecHitFractionDeviceCollection::View fracView, @@ -1082,15 +1113,28 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { int depthOffset = pfRecHits[i].depth() - 1; float energy = pfRecHits[i].energy(); Position3 pos = Position3{pfRecHits[i].x(), pfRecHits[i].y(), pfRecHits[i].z()}; + float seedThreshold = 9999.; + float topoThreshold = 9999.; + + if (topology.cutsFromDB()) { + seedThreshold = topology[pfRecHits[i].denseId()].seedThreshold(); + topoThreshold = topology[pfRecHits[i].denseId()].noiseThreshold(); + } else { + if (layer == PFLayer::HCAL_BARREL1) { + seedThreshold = pfClusParams.seedEThresholdHB_vec()[depthOffset]; + topoThreshold = pfClusParams.topoEThresholdHB_vec()[depthOffset]; + } else if (layer == PFLayer::HCAL_ENDCAP) { + seedThreshold = pfClusParams.seedEThresholdHE_vec()[depthOffset]; + topoThreshold = pfClusParams.topoEThresholdHE_vec()[depthOffset]; + } + } // cmssdt.cern.ch/lxr/source/DataFormats/ParticleFlowReco/interface/PFRecHit.h#0108 float pt2 = energy * energy * (pos.x * pos.x + pos.y * pos.y) / (pos.x * pos.x + pos.y * pos.y + pos.z * pos.z); // Seeding threshold test - if ((layer == PFLayer::HCAL_BARREL1 && energy > pfClusParams.seedEThresholdEB_vec()[depthOffset] && - pt2 > pfClusParams.seedPt2ThresholdEB()) || - (layer == PFLayer::HCAL_ENDCAP && energy > pfClusParams.seedEThresholdEE_vec()[depthOffset] && - pt2 > pfClusParams.seedPt2ThresholdEE())) { + if ((layer == PFLayer::HCAL_BARREL1 && energy > seedThreshold && pt2 > pfClusParams.seedPt2ThresholdHB()) || + (layer == PFLayer::HCAL_ENDCAP && energy > seedThreshold && pt2 > pfClusParams.seedPt2ThresholdHE())) { pfClusteringVars[i].pfrh_isSeed() = 1; for (int k = 0; k < 4; k++) { // Does this seed candidate have a higher energy than four neighbours if (pfRecHits[i].neighbours()(k) < 0) @@ -1104,8 +1148,9 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { alpaka::atomicAdd(acc, nSeeds, 1u); } // Topo clustering threshold test - if ((layer == PFLayer::HCAL_ENDCAP && energy > pfClusParams.topoEThresholdEE_vec()[depthOffset]) || - (layer == PFLayer::HCAL_BARREL1 && energy > pfClusParams.topoEThresholdEB_vec()[depthOffset])) { + + if ((layer == PFLayer::HCAL_ENDCAP && energy > topoThreshold) || + (layer == PFLayer::HCAL_BARREL1 && energy > topoThreshold)) { pfClusteringVars[i].pfrh_passTopoThresh() = true; pfClusteringVars[i].pfrh_topoId() = i; } else { @@ -1306,6 +1351,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { ALPAKA_FN_ACC void operator()(const TAcc& acc, const reco::PFRecHitHostCollection::ConstView pfRecHits, const reco::PFClusterParamsDeviceCollection::ConstView pfClusParams, + const reco::PFRecHitHCALTopologyDeviceCollection::ConstView topology, reco::PFClusteringVarsDeviceCollection::View pfClusteringVars, reco::PFClusterDeviceCollection::View clusterView, reco::PFRecHitFractionDeviceCollection::View fracView) const { @@ -1339,14 +1385,14 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { if (nSeeds == 1) { // Single seed cluster hcalFastCluster_singleSeed( - acc, pfClusParams, topoId, nRHTopo, pfRecHits, pfClusteringVars, clusterView, fracView); + acc, pfClusParams, topology, topoId, nRHTopo, pfRecHits, pfClusteringVars, clusterView, fracView); } else if (nSeeds <= 100 && nRHTopo - nSeeds < threadsPerBlockForClustering) { hcalFastCluster_multiSeedParallel( - acc, pfClusParams, topoId, nSeeds, nRHTopo, pfRecHits, pfClusteringVars, clusterView, fracView); + acc, pfClusParams, topology, topoId, nSeeds, nRHTopo, pfRecHits, pfClusteringVars, clusterView, fracView); } } else if (nSeeds <= 400 && nRHTopo - nSeeds <= 1500) { hcalFastCluster_multiSeedIterative( - acc, pfClusParams, topoId, nSeeds, nRHTopo, pfRecHits, pfClusteringVars, clusterView, fracView); + acc, pfClusParams, topology, topoId, nSeeds, nRHTopo, pfRecHits, pfClusteringVars, clusterView, fracView); } else { if constexpr (debug) { if (once_per_block(acc)) @@ -1367,6 +1413,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { ALPAKA_FN_ACC void operator()(const TAcc& acc, const reco::PFRecHitHostCollection::ConstView pfRecHits, const reco::PFClusterParamsDeviceCollection::ConstView pfClusParams, + const reco::PFRecHitHCALTopologyDeviceCollection::ConstView topology, reco::PFClusteringVarsDeviceCollection::View pfClusteringVars, reco::PFClusterDeviceCollection::View clusterView, reco::PFRecHitFractionDeviceCollection::View fracView, @@ -1385,6 +1432,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { if (nRHTopo > 0 && nSeeds > 400 && nRHTopo - nSeeds > 1500) { hcalFastCluster_exotic(acc, pfClusParams, + topology, topoId, nSeeds, nRHTopo, @@ -1420,6 +1468,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { void PFClusterProducerKernel::execute(Queue& queue, const reco::PFClusterParamsDeviceCollection& params, + const reco::PFRecHitHCALTopologyDeviceCollection& topology, reco::PFClusteringVarsDeviceCollection& pfClusteringVars, reco::PFClusteringEdgeVarsDeviceCollection& pfClusteringEdgeVars, const reco::PFRecHitHostCollection& pfRecHits, @@ -1435,6 +1484,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { SeedingTopoThresh{}, pfClusteringVars.view(), params.view(), + topology.view(), pfRecHits.view(), pfClusters.view(), pfrhFractions.view(), @@ -1489,6 +1539,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { FastCluster{}, pfRecHits.view(), params.view(), + topology.view(), pfClusteringVars.view(), pfClusters.view(), pfrhFractions.view()); @@ -1499,6 +1550,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { FastClusterExotic{}, pfRecHits.view(), params.view(), + topology.view(), pfClusteringVars.view(), pfClusters.view(), pfrhFractions.view(), diff --git a/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducerKernel.h b/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducerKernel.h index 8ebafbd366efe..715d484f3120e 100644 --- a/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducerKernel.h +++ b/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducerKernel.h @@ -8,6 +8,8 @@ #include "RecoParticleFlow/PFClusterProducer/interface/alpaka/PFClusterParamsDeviceCollection.h" #include "RecoParticleFlow/PFClusterProducer/interface/alpaka/PFClusteringVarsDeviceCollection.h" #include "RecoParticleFlow/PFClusterProducer/interface/alpaka/PFClusteringEdgeVarsDeviceCollection.h" +#include "RecoParticleFlow/PFRecHitProducer/interface/PFRecHitTopologyRecord.h" +#include "RecoParticleFlow/PFRecHitProducer/interface/alpaka/PFRecHitTopologyDeviceCollection.h" #include "HeterogeneousCore/AlpakaInterface/interface/config.h" namespace ALPAKA_ACCELERATOR_NAMESPACE { @@ -40,6 +42,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { void execute(Queue& queue, const reco::PFClusterParamsDeviceCollection& params, + const reco::PFRecHitHCALTopologyDeviceCollection& topology, reco::PFClusteringVarsDeviceCollection& pfClusteringVars, reco::PFClusteringEdgeVarsDeviceCollection& pfClusteringEdgeVars, const reco::PFRecHitHostCollection& pfRecHits, diff --git a/RecoParticleFlow/PFClusterProducer/test/test_PFRecHitAndClusterSoA.py b/RecoParticleFlow/PFClusterProducer/test/test_PFRecHitAndClusterSoA.py index b2f78d09f73a8..982d506e6b484 100644 --- a/RecoParticleFlow/PFClusterProducer/test/test_PFRecHitAndClusterSoA.py +++ b/RecoParticleFlow/PFClusterProducer/test/test_PFRecHitAndClusterSoA.py @@ -48,6 +48,7 @@ # Need to use a file that contains HCAL/ECAL hits. Verify using: # root root://eoscms.cern.ch//eos/cms/store/relval/CMSSW_13_0_0/RelValTTbar_14TeV/GEN-SIM-DIGI-RAW/PU_130X_mcRun3_2022_realistic_v2_HS-v4/2590000/0088b51b-0cda-40f2-95fc-590f446624ee.root -e 'Events->Print()' -q | grep -E "hltHbhereco|hltEcalRecHit" process.source = cms.Source("PoolSource", + #fileNames = cms.untracked.vstring('/store/relval/CMSSW_13_0_0_pre4/RelValTTbar_14TeV/GEN-SIM-DIGI-RAW/PU_130X_mcRun3_2022_realistic_v2_HS-v4/2590000/05ad6501-815f-4df6-b115-03ad028f9b76.root'), #fileNames = cms.untracked.vstring('/store/relval/CMSSW_13_0_0/RelValTTbar_14TeV/GEN-SIM-DIGI-RAW/PU_130X_mcRun3_2022_realistic_v2_HS-v4/2590000/0088b51b-0cda-40f2-95fc-590f446624ee.root'), fileNames = cms.untracked.vstring('/store/relval/CMSSW_13_0_8/RelValQCD_FlatPt_15_3000HS_14/GEN-SIM-DIGI-RAW/130X_mcRun3_2022_realistic_v3_2022-v1/2580000/0e63ba30-251b-4034-93ca-4d400aaa399e.root'), secondaryFileNames = cms.untracked.vstring(), @@ -316,7 +317,8 @@ iovIsRunNotTime = cms.bool(True), firstValid = cms.vuint32(1) ) -process.hltParticleFlowRecHitTopologyESProducer = cms.ESProducer(alpaka_backend_str % f"PFRecHit{CAL}TopologyESProducer") +process.hltParticleFlowRecHitTopologyESProducer = cms.ESProducer(alpaka_backend_str % f"PFRecHit{CAL}TopologyESProducer", + usePFThresholdsFromDB = cms.bool(True)) if hcal: process.hltParticleFlowRecHitParamsESProducer = cms.ESProducer(alpaka_backend_str % "PFRecHitHCALParamsESProducer", energyThresholdsHB = cms.vdouble( 0.4, 0.3, 0.3, 0.3 ), @@ -430,6 +432,7 @@ process.hltParticleFlowPFClusterAlpaka = cms.EDProducer(alpaka_backend_str % "PFClusterSoAProducer", pfClusterParams = cms.ESInputTag("hltParticleFlowClusterParamsESProducer:"), + topology = cms.ESInputTag("hltParticleFlowRecHitTopologyESProducer:"), synchronise = cms.bool(args.synchronise)) process.hltParticleFlowPFClusterAlpaka.pfRecHits = cms.InputTag("hltParticleFlowPFRecHitAlpaka") @@ -439,11 +442,12 @@ src = cms.InputTag("hltParticleFlowPFClusterAlpaka"), pfClusterParams = cms.ESInputTag("hltParticleFlowClusterParamsESProducer:"), pfClusterBuilder = process.hltParticleFlowClusterHBHE.pfClusterBuilder, + usePFThresholdsFromDB = cms.bool(True), recHitsSource = cms.InputTag("hltParticleFlowAlpakaToLegacyPFRecHits")) process.hltParticleFlowAlpakaToLegacyPFClusters.PFRecHitsLabelIn = cms.InputTag("hltParticleFlowPFRecHitAlpaka") process.hltParticleFlowClusterHBHE.pfClusterBuilder.maxIterations = 5 -process.hltParticleFlowClusterHBHE.usePFThresholdsFromDB = cms.bool(False) +process.hltParticleFlowClusterHBHE.usePFThresholdsFromDB = cms.bool(True) # Additional customization process.FEVTDEBUGHLToutput.outputCommands = cms.untracked.vstring('drop *_*_*_*') diff --git a/RecoParticleFlow/PFRecHitProducer/interface/PFRecHitTopologyRecord.h b/RecoParticleFlow/PFRecHitProducer/interface/PFRecHitTopologyRecord.h index 75af714ff5956..d539b47ca9ce3 100644 --- a/RecoParticleFlow/PFRecHitProducer/interface/PFRecHitTopologyRecord.h +++ b/RecoParticleFlow/PFRecHitProducer/interface/PFRecHitTopologyRecord.h @@ -9,8 +9,7 @@ class PFRecHitHCALTopologyRecord : public edm::eventsetup::DependentRecordImplementation< PFRecHitHCALTopologyRecord, - edm::mpl::Vector> {}; + edm::mpl::Vector> {}; class PFRecHitECALTopologyRecord : public edm::eventsetup::DependentRecordImplementation= threshold; } template <> ALPAKA_FN_ACC bool PFRecHitProducerKernelConstruct::applyCuts( - const ECAL::CaloRecHitSoATypeDevice::ConstView::const_element rh, const ECAL::ParameterType::ConstView params, + const ECAL::CaloRecHitSoATypeDevice::ConstView::const_element rh, + const ECAL::ParameterType::ConstView params, const ECAL::TopologyTypeDevice::ConstView topology) { // Reject ECAL recHits below energy threshold if (rh.energy() < params.energyThresholds()[ECAL::detId2denseId(rh.detId())]) @@ -96,6 +97,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { reco::PFRecHitDeviceCollection::View::element pfrh, const HCAL::CaloRecHitSoATypeDevice::ConstView::const_element rh) { pfrh.detId() = rh.detId(); + pfrh.denseId() = HCAL::detId2denseId(rh.detId()); pfrh.energy() = rh.energy(); pfrh.time() = rh.time(); pfrh.depth() = HCAL::getDepth(pfrh.detId()); @@ -113,6 +115,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { reco::PFRecHitDeviceCollection::View::element pfrh, const ECAL::CaloRecHitSoATypeDevice::ConstView::const_element rh) { pfrh.detId() = rh.detId(); + pfrh.denseId() = ECAL::detId2denseId(rh.detId()); pfrh.energy() = rh.energy(); pfrh.time() = rh.time(); pfrh.depth() = 1; diff --git a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitSoAProducer.cc b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitSoAProducer.cc index 92e6918067dc1..8297b6359eaf5 100644 --- a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitSoAProducer.cc +++ b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitSoAProducer.cc @@ -41,7 +41,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { PFRecHitProducerKernel kernel{event.queue(), num_recHits}; for (const auto& token : recHitsToken_) - kernel.processRecHits(event.queue(), event.get(token.first), setup.getData(token.second),topology, pfRecHits); + kernel.processRecHits(event.queue(), event.get(token.first), setup.getData(token.second), topology, pfRecHits); kernel.associateTopologyInfo(event.queue(), topology, pfRecHits); if (synchronise_) diff --git a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitTopologyESProducer.cc b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitTopologyESProducer.cc index 2b35136fd525c..8aa0934bb1285 100644 --- a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitTopologyESProducer.cc +++ b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitTopologyESProducer.cc @@ -26,8 +26,8 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { template class PFRecHitTopologyESProducer : public ESProducer { public: - PFRecHitTopologyESProducer(edm::ParameterSet const& iConfig) : ESProducer(iConfig), - cutsFromDB_(iConfig.getParameter("usePFThresholdsFromDB")) { + PFRecHitTopologyESProducer(edm::ParameterSet const& iConfig) + : ESProducer(iConfig), cutsFromDB_(iConfig.getParameter("usePFThresholdsFromDB")) { auto cc = setWhatProduced(this); geomToken_ = cc.consumes(); if constexpr (std::is_same_v) { @@ -40,7 +40,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { edm::ParameterSetDescription desc; if constexpr (std::is_same_v) desc.add("usePFThresholdsFromDB", "True"); - else // only needs to be true for HBHE + else // only needs to be true for HBHE desc.add("usePFThresholdsFromDB", "False"); descriptions.addWithDefaultLabel(desc); } @@ -71,16 +71,16 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { // Fill SoA members with HCAL PF Thresholds from GT if constexpr (std::is_same_v) { - view.cutsFromDB() = false; - if (cutsFromDB_) { - view.cutsFromDB() = true; - const HcalPFCuts& pfCuts = iRecord.get(hcalCutsToken_); - const HcalTopology& htopo = iRecord.get(hcalToken_); - std::unique_ptr prod = std::make_unique(pfCuts); - prod->setTopo(&htopo); - view.noiseThreshold(denseId) = prod->getValues(detId.rawId())->noiseThreshold(); - view.seedThreshold(denseId) = prod->getValues(detId.rawId())->seedThreshold(); - } + view.cutsFromDB() = false; + if (cutsFromDB_) { + view.cutsFromDB() = true; + const HcalPFCuts& pfCuts = iRecord.get(hcalCutsToken_); + const HcalTopology& htopo = iRecord.get(hcalToken_); + std::unique_ptr prod = std::make_unique(pfCuts); + prod->setTopo(&htopo); + view.noiseThreshold(denseId) = prod->getValues(detId.rawId())->noiseThreshold(); + view.seedThreshold(denseId) = prod->getValues(detId.rawId())->seedThreshold(); + } } const GlobalPoint pos = geo->getGeometry(detId)->getPosition(); @@ -144,7 +144,6 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { edm::ESGetToken hcalCutsToken_; const bool cutsFromDB_; - // specialised for HCAL/ECAL, because non-nearest neighbours are defined differently uint32_t getNeighbourDetId(const uint32_t detId, const uint32_t direction, const CaloSubdetectorTopology& topo); }; From e224e1e537ff51217e918a729639d2bc6120bbe4 Mon Sep 17 00:00:00 2001 From: Adam Date: Tue, 12 Dec 2023 17:54:11 +0100 Subject: [PATCH 094/281] make DirectSimulation use old LHCInfo in Run3 --- .../CTPPSBeamParametersFromLHCInfoESSource.cc | 31 +++++++++---- ...PPSInterpolatedOpticalFunctionsESSource.cc | 2 +- ...psBeamParametersFromLHCInfoESSource_cfi.py | 8 ++++ ...nterpolatedOpticalFunctionsESSource_cff.py | 3 -- ...nterpolatedOpticalFunctionsESSource_cfi.py | 8 ++++ .../python/ctppsOpticalFunctions_cff.py | 2 +- .../ctppsOpticalFunctions_non_DB_cff.py | 2 +- .../test/test_express_PPSAlCaReco_output.py | 2 +- .../test/test_prompt_PPSAlCaReco_output.py | 2 +- .../interface/CTPPSBeamParametersRcd.h | 7 ++- CondTools/RunInfo/interface/LHCInfoCombined.h | 2 +- CondTools/RunInfo/src/LHCInfoCombined.cc | 2 +- .../python/Modifier_ctpps_directSim_cff.py | 3 ++ .../python/Era_Run3_CTPPS_directSim_cff.py | 6 +++ .../test/2023_lhcinfo_test_recoCTPPS_cfg.py | 2 +- .../plugins/CTPPSProtonProducer.cc | 2 +- .../python/ctppsProtons_cff.py | 13 +----- .../python/ctppsProtons_cfi.py | 12 +++++ .../python/PPSTransportESSources_cfi.py | 2 +- .../plugins/CTPPSHepMCDistributionPlotter.cc | 40 ++++++++++++---- .../CTPPS/plugins/CTPPSLHCInfoPlotter.cc | 2 +- ...onReconstructionEfficiencyEstimatorData.cc | 30 ++++++++---- ...otonReconstructionEfficiencyEstimatorMC.cc | 46 ++++++++++++++++--- ...ProtonReconstructionSimulationValidator.cc | 43 +++++++++++++---- .../ctppsHepMCDistributionPlotter_cfi.py | 8 ++++ .../CTPPS/python/ctppsLHCInfoPlotter_cff.py | 3 -- .../CTPPS/python/ctppsLHCInfoPlotter_cfi.py | 8 ++++ ...constructionEfficiencyEstimatorData_cfi.py | 8 ++++ ...ReconstructionEfficiencyEstimatorMC_cfi.py | 8 ++++ ...onReconstructionSimulationValidator_cfi.py | 8 ++++ Validation/CTPPS/test/simu/run_multiple | 12 +++-- Validation/CTPPS/test/simu/template_cfg.py | 15 ++---- 32 files changed, 254 insertions(+), 88 deletions(-) create mode 100644 CalibPPS/ESProducers/python/ctppsBeamParametersFromLHCInfoESSource_cfi.py delete mode 100644 CalibPPS/ESProducers/python/ctppsInterpolatedOpticalFunctionsESSource_cff.py create mode 100644 CalibPPS/ESProducers/python/ctppsInterpolatedOpticalFunctionsESSource_cfi.py create mode 100644 Configuration/Eras/python/Modifier_ctpps_directSim_cff.py create mode 100644 Configuration/ProcessModifiers/python/Era_Run3_CTPPS_directSim_cff.py create mode 100644 RecoPPS/ProtonReconstruction/python/ctppsProtons_cfi.py create mode 100644 Validation/CTPPS/python/ctppsHepMCDistributionPlotter_cfi.py delete mode 100644 Validation/CTPPS/python/ctppsLHCInfoPlotter_cff.py create mode 100644 Validation/CTPPS/python/ctppsLHCInfoPlotter_cfi.py create mode 100644 Validation/CTPPS/python/ctppsProtonReconstructionEfficiencyEstimatorData_cfi.py create mode 100644 Validation/CTPPS/python/ctppsProtonReconstructionEfficiencyEstimatorMC_cfi.py create mode 100644 Validation/CTPPS/python/ctppsProtonReconstructionSimulationValidator_cfi.py diff --git a/CalibPPS/ESProducers/plugins/CTPPSBeamParametersFromLHCInfoESSource.cc b/CalibPPS/ESProducers/plugins/CTPPSBeamParametersFromLHCInfoESSource.cc index 27b33c4eeada6..1b921e643c666 100644 --- a/CalibPPS/ESProducers/plugins/CTPPSBeamParametersFromLHCInfoESSource.cc +++ b/CalibPPS/ESProducers/plugins/CTPPSBeamParametersFromLHCInfoESSource.cc @@ -13,7 +13,7 @@ #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" -#include "CondFormats/DataRecord/interface/LHCInfoRcd.h" +#include "CondTools/RunInfo/interface/LHCInfoCombined.h" #include "CondFormats/DataRecord/interface/CTPPSBeamParametersRcd.h" #include "CondFormats/RunInfo/interface/LHCInfo.h" @@ -31,7 +31,10 @@ class CTPPSBeamParametersFromLHCInfoESSource : public edm::ESProducer { static void fillDescriptions(edm::ConfigurationDescriptions&); private: - const edm::ESGetToken lhcInfoToken_; + edm::ESGetToken lhcInfoToken_; + edm::ESGetToken lhcInfoPerLSToken_; + edm::ESGetToken lhcInfoPerFillToken_; + const bool useNewLHCInfo_; CTPPSBeamParameters defaultParameters_; }; @@ -39,8 +42,12 @@ class CTPPSBeamParametersFromLHCInfoESSource : public edm::ESProducer { //---------------------------------------------------------------------------------------------------- CTPPSBeamParametersFromLHCInfoESSource::CTPPSBeamParametersFromLHCInfoESSource(const edm::ParameterSet& iConfig) - : lhcInfoToken_( - setWhatProduced(this).consumes(edm::ESInputTag("", iConfig.getParameter("lhcInfoLabel")))) { + : useNewLHCInfo_(iConfig.getParameter("useNewLHCInfo")) { + auto cc = setWhatProduced(this); + lhcInfoToken_ = cc.consumes(edm::ESInputTag("", iConfig.getParameter("lhcInfoLabel"))); + lhcInfoPerLSToken_ = cc.consumes(edm::ESInputTag("", iConfig.getParameter("lhcInfoPerLSLabel"))); + lhcInfoPerFillToken_ = cc.consumes(edm::ESInputTag("", iConfig.getParameter("lhcInfoPerFillLabel"))); + defaultParameters_.setBeamDivergenceX45(iConfig.getParameter("beamDivX45")); defaultParameters_.setBeamDivergenceY45(iConfig.getParameter("beamDivX56")); defaultParameters_.setBeamDivergenceX56(iConfig.getParameter("beamDivY45")); @@ -62,13 +69,16 @@ CTPPSBeamParametersFromLHCInfoESSource::CTPPSBeamParametersFromLHCInfoESSource(c std::unique_ptr CTPPSBeamParametersFromLHCInfoESSource::produce( const CTPPSBeamParametersRcd& iRecord) { - LHCInfo const& lhcInfo = iRecord.get(lhcInfoToken_); + auto lhcInfoCombined = + LHCInfoCombined::createLHCInfoCombined>( + iRecord, lhcInfoPerLSToken_, lhcInfoPerFillToken_, lhcInfoToken_, useNewLHCInfo_); auto bp = std::make_unique(defaultParameters_); - const auto beamMom = lhcInfo.energy(); - const auto betaStar = lhcInfo.betaStar() * 1E2; // conversion m --> cm - const auto xangle = lhcInfo.crossingAngle() * 1E-6; // conversion mu rad --> rad + const auto beamMom = lhcInfoCombined.energy; + const auto betaStar = lhcInfoCombined.betaStarX * 1E2; // conversion m --> cm + const auto xangle = lhcInfoCombined.crossingAngle() * 1E-6; // conversion mu rad --> rad bp->setBeamMom45(beamMom); bp->setBeamMom56(beamMom); @@ -92,6 +102,9 @@ void CTPPSBeamParametersFromLHCInfoESSource::fillDescriptions(edm::Configuration edm::ParameterSetDescription desc; desc.add("lhcInfoLabel", ""); + desc.add("lhcInfoPerLSLabel", ""); + desc.add("lhcInfoPerFillLabel", ""); + desc.add("useNewLHCInfo", false); // beam divergence (rad) desc.add("beamDivX45", 0.1); @@ -112,7 +125,7 @@ void CTPPSBeamParametersFromLHCInfoESSource::fillDescriptions(edm::Configuration desc.add("vtxStddevY", 2.e-2); desc.add("vtxStddevZ", 2.e-2); - descriptions.add("ctppsBeamParametersFromLHCInfoESSource", desc); + descriptions.add("ctppsBeamParametersFromLHCInfoESSourceDefault", desc); } //---------------------------------------------------------------------------------------------------- diff --git a/CalibPPS/ESProducers/plugins/CTPPSInterpolatedOpticalFunctionsESSource.cc b/CalibPPS/ESProducers/plugins/CTPPSInterpolatedOpticalFunctionsESSource.cc index e4d0f26bb3c5d..fb25ff49ebee1 100644 --- a/CalibPPS/ESProducers/plugins/CTPPSInterpolatedOpticalFunctionsESSource.cc +++ b/CalibPPS/ESProducers/plugins/CTPPSInterpolatedOpticalFunctionsESSource.cc @@ -62,7 +62,7 @@ void CTPPSInterpolatedOpticalFunctionsESSource::fillDescriptions(edm::Configurat desc.add("opticsLabel", "")->setComment("label of the optics records"); desc.add("useNewLHCInfo", false)->setComment("flag whether to use new LHCInfoPer* records or old LHCInfo"); - descriptions.add("ctppsInterpolatedOpticalFunctionsESSource", desc); + descriptions.add("ctppsInterpolatedOpticalFunctionsESSourceDefault", desc); } //---------------------------------------------------------------------------------------------------- diff --git a/CalibPPS/ESProducers/python/ctppsBeamParametersFromLHCInfoESSource_cfi.py b/CalibPPS/ESProducers/python/ctppsBeamParametersFromLHCInfoESSource_cfi.py new file mode 100644 index 0000000000000..b03973c02cc2a --- /dev/null +++ b/CalibPPS/ESProducers/python/ctppsBeamParametersFromLHCInfoESSource_cfi.py @@ -0,0 +1,8 @@ +from CalibPPS.ESProducers.ctppsBeamParametersFromLHCInfoESSourceDefault_cfi import ctppsBeamParametersFromLHCInfoESSourceDefault as _ctppsBeamParametersFromLHCInfoESSourceDefault +ctppsBeamParametersFromLHCInfoESSource = _ctppsBeamParametersFromLHCInfoESSourceDefault.clone() + +from Configuration.Eras.Modifier_run3_common_cff import run3_common +run3_common.toModify(ctppsBeamParametersFromLHCInfoESSource, useNewLHCInfo = True) + +from Configuration.Eras.Modifier_ctpps_directSim_cff import ctpps_directSim +ctpps_directSim.toModify(ctppsBeamParametersFromLHCInfoESSource, useNewLHCInfo = False) diff --git a/CalibPPS/ESProducers/python/ctppsInterpolatedOpticalFunctionsESSource_cff.py b/CalibPPS/ESProducers/python/ctppsInterpolatedOpticalFunctionsESSource_cff.py deleted file mode 100644 index e6cc78ccdd3f9..0000000000000 --- a/CalibPPS/ESProducers/python/ctppsInterpolatedOpticalFunctionsESSource_cff.py +++ /dev/null @@ -1,3 +0,0 @@ -from CalibPPS.ESProducers.ctppsInterpolatedOpticalFunctionsESSource_cfi import * -from Configuration.Eras.Modifier_run3_common_cff import run3_common -run3_common.toModify(ctppsInterpolatedOpticalFunctionsESSource, useNewLHCInfo = True) \ No newline at end of file diff --git a/CalibPPS/ESProducers/python/ctppsInterpolatedOpticalFunctionsESSource_cfi.py b/CalibPPS/ESProducers/python/ctppsInterpolatedOpticalFunctionsESSource_cfi.py new file mode 100644 index 0000000000000..25426226c1be7 --- /dev/null +++ b/CalibPPS/ESProducers/python/ctppsInterpolatedOpticalFunctionsESSource_cfi.py @@ -0,0 +1,8 @@ +from CalibPPS.ESProducers.ctppsInterpolatedOpticalFunctionsESSourceDefault_cfi import ctppsInterpolatedOpticalFunctionsESSourceDefault as _ctppsInterpolatedOpticalFunctionsESSourceDefault +ctppsInterpolatedOpticalFunctionsESSource = _ctppsInterpolatedOpticalFunctionsESSourceDefault.clone() + +from Configuration.Eras.Modifier_run3_common_cff import run3_common +run3_common.toModify(ctppsInterpolatedOpticalFunctionsESSource, useNewLHCInfo = True) + +from Configuration.Eras.Modifier_ctpps_directSim_cff import ctpps_directSim +ctpps_directSim.toModify(ctppsInterpolatedOpticalFunctionsESSource, useNewLHCInfo = False) diff --git a/CalibPPS/ESProducers/python/ctppsOpticalFunctions_cff.py b/CalibPPS/ESProducers/python/ctppsOpticalFunctions_cff.py index 00017a8690f84..7a123f6792d0d 100644 --- a/CalibPPS/ESProducers/python/ctppsOpticalFunctions_cff.py +++ b/CalibPPS/ESProducers/python/ctppsOpticalFunctions_cff.py @@ -25,4 +25,4 @@ #ctppsOpticalFunctionsESSource.configuration.append(config_2016_preTS2) # optics interpolation between crossing angles -from CalibPPS.ESProducers.ctppsInterpolatedOpticalFunctionsESSource_cff import * +from CalibPPS.ESProducers.ctppsInterpolatedOpticalFunctionsESSource_cfi import * diff --git a/CalibPPS/ESProducers/python/ctppsOpticalFunctions_non_DB_cff.py b/CalibPPS/ESProducers/python/ctppsOpticalFunctions_non_DB_cff.py index 72f1a07f4bbdd..946d7b3b68e1a 100644 --- a/CalibPPS/ESProducers/python/ctppsOpticalFunctions_non_DB_cff.py +++ b/CalibPPS/ESProducers/python/ctppsOpticalFunctions_non_DB_cff.py @@ -136,4 +136,4 @@ ctppsOpticalFunctionsESSource.configuration.append(optics_2022) # optics interpolation between crossing angles -from CalibPPS.ESProducers.ctppsInterpolatedOpticalFunctionsESSource_cff import * +from CalibPPS.ESProducers.ctppsInterpolatedOpticalFunctionsESSource_cfi import * diff --git a/Calibration/PPSAlCaRecoProducer/test/test_express_PPSAlCaReco_output.py b/Calibration/PPSAlCaRecoProducer/test/test_express_PPSAlCaReco_output.py index 5b4aedc191531..df89229ede911 100644 --- a/Calibration/PPSAlCaRecoProducer/test/test_express_PPSAlCaReco_output.py +++ b/Calibration/PPSAlCaRecoProducer/test/test_express_PPSAlCaReco_output.py @@ -6,7 +6,7 @@ process = cms.Process( 'TEST',ctpps_2018) # LHCInfo plotter -process.load('Validation.CTPPS.ctppsLHCInfoPlotter_cff') +process.load('Validation.CTPPS.ctppsLHCInfoPlotter_cfi') process.ctppsLHCInfoPlotter.outputFile = "alcareco_lhc_info_express.root" # Load geometry from DB diff --git a/Calibration/PPSAlCaRecoProducer/test/test_prompt_PPSAlCaReco_output.py b/Calibration/PPSAlCaRecoProducer/test/test_prompt_PPSAlCaReco_output.py index 2b6a2db3240a6..27cb8bb23aeb1 100644 --- a/Calibration/PPSAlCaRecoProducer/test/test_prompt_PPSAlCaReco_output.py +++ b/Calibration/PPSAlCaRecoProducer/test/test_prompt_PPSAlCaReco_output.py @@ -6,7 +6,7 @@ process = cms.Process( 'TEST',ctpps_2018) # LHCInfo plotter -process.load('Validation.CTPPS.ctppsLHCInfoPlotter_cff') +process.load('Validation.CTPPS.ctppsLHCInfoPlotter_cfi') process.ctppsLHCInfoPlotter.outputFile = "alcareco_lhc_info_prompt.root" # Load geometry from DB diff --git a/CondFormats/DataRecord/interface/CTPPSBeamParametersRcd.h b/CondFormats/DataRecord/interface/CTPPSBeamParametersRcd.h index a77796620c968..cd3b52a223e4d 100644 --- a/CondFormats/DataRecord/interface/CTPPSBeamParametersRcd.h +++ b/CondFormats/DataRecord/interface/CTPPSBeamParametersRcd.h @@ -8,10 +8,13 @@ #include "FWCore/Framework/interface/DependentRecordImplementation.h" #include "CondFormats/DataRecord/interface/LHCInfoRcd.h" +#include "CondFormats/DataRecord/interface/LHCInfoPerFillRcd.h" +#include "CondFormats/DataRecord/interface/LHCInfoPerLSRcd.h" #include "FWCore/Utilities/interface/mplVector.h" -class CTPPSBeamParametersRcd - : public edm::eventsetup::DependentRecordImplementation> {}; +class CTPPSBeamParametersRcd : public edm::eventsetup::DependentRecordImplementation< + CTPPSBeamParametersRcd, + edm::mpl::Vector> {}; #endif diff --git a/CondTools/RunInfo/interface/LHCInfoCombined.h b/CondTools/RunInfo/interface/LHCInfoCombined.h index 2f6aab4289642..aef3dbe4cfb01 100644 --- a/CondTools/RunInfo/interface/LHCInfoCombined.h +++ b/CondTools/RunInfo/interface/LHCInfoCombined.h @@ -43,7 +43,7 @@ class LHCInfoCombined { void setFromPerLS(const LHCInfoPerLS& infoPerLS); void setFromPerFill(const LHCInfoPerFill& infoPerFill); - float crossingAngle(); + float crossingAngle() const; static constexpr float crossingAngleInvalid = -1.; bool isCrossingAngleInvalid(); diff --git a/CondTools/RunInfo/src/LHCInfoCombined.cc b/CondTools/RunInfo/src/LHCInfoCombined.cc index f489adfbbe3d6..c2376f970b606 100644 --- a/CondTools/RunInfo/src/LHCInfoCombined.cc +++ b/CondTools/RunInfo/src/LHCInfoCombined.cc @@ -43,7 +43,7 @@ void LHCInfoCombined::setFromPerFill(const LHCInfoPerFill& infoPerFill) { fillNumber = infoPerFill.fillNumber(); } -float LHCInfoCombined::crossingAngle() { +float LHCInfoCombined::crossingAngle() const { if (crossingAngleX == 0. && crossingAngleY == 0.) { return crossingAngleInvalid; } diff --git a/Configuration/Eras/python/Modifier_ctpps_directSim_cff.py b/Configuration/Eras/python/Modifier_ctpps_directSim_cff.py new file mode 100644 index 0000000000000..6d010cdcb308e --- /dev/null +++ b/Configuration/Eras/python/Modifier_ctpps_directSim_cff.py @@ -0,0 +1,3 @@ +import FWCore.ParameterSet.Config as cms + +ctpps_directSim = cms.Modifier() diff --git a/Configuration/ProcessModifiers/python/Era_Run3_CTPPS_directSim_cff.py b/Configuration/ProcessModifiers/python/Era_Run3_CTPPS_directSim_cff.py new file mode 100644 index 0000000000000..67c085ea3cc9b --- /dev/null +++ b/Configuration/ProcessModifiers/python/Era_Run3_CTPPS_directSim_cff.py @@ -0,0 +1,6 @@ +import FWCore.ParameterSet.Config as cms + +from Configuration.Eras.Era_Run3_cff import Run3 +from Configuration.Eras.Modifier_ctpps_directSim_cff import ctpps_directSim + +Run3_CTPPS_directSim = cms.ModifierChain(Run3,ctpps_directSim) diff --git a/RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS_cfg.py b/RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS_cfg.py index 790d9e66b512d..831d91d0ecb4d 100644 --- a/RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS_cfg.py +++ b/RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS_cfg.py @@ -31,7 +31,7 @@ from Configuration.AlCa.GlobalTag import GlobalTag -process.GlobalTag.globaltag = "130X_dataRun3_Prompt_forLHCInfo_Candidate_2023_08_08_10_52_01" +process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:run3_data') # local RP reconstruction chain with standard settings process.load("RecoPPS.Configuration.recoCTPPS_cff") diff --git a/RecoPPS/ProtonReconstruction/plugins/CTPPSProtonProducer.cc b/RecoPPS/ProtonReconstruction/plugins/CTPPSProtonProducer.cc index 73809feb4aae5..43c3a0a5b2663 100644 --- a/RecoPPS/ProtonReconstruction/plugins/CTPPSProtonProducer.cc +++ b/RecoPPS/ProtonReconstruction/plugins/CTPPSProtonProducer.cc @@ -189,7 +189,7 @@ void CTPPSProtonProducer::fillDescriptions(edm::ConfigurationDescriptions &descr desc.add("multiRPAlgorithm", "chi2") ->setComment("algorithm for multi-RP reco, options include chi2, newton, anal-iter"); - descriptions.add("ctppsProtons", desc); + descriptions.add("ctppsProtonsDefault", desc); } //---------------------------------------------------------------------------------------------------- diff --git a/RecoPPS/ProtonReconstruction/python/ctppsProtons_cff.py b/RecoPPS/ProtonReconstruction/python/ctppsProtons_cff.py index 2a564e400b589..25f6dba850683 100644 --- a/RecoPPS/ProtonReconstruction/python/ctppsProtons_cff.py +++ b/RecoPPS/ProtonReconstruction/python/ctppsProtons_cff.py @@ -1,17 +1,6 @@ import FWCore.ParameterSet.Config as cms -# import default alignment settings -from CalibPPS.ESProducers.ctppsAlignment_cff import * +from RecoPPS.ProtonReconstruction.ctppsProtons_cfi import * # import default optics settings from CalibPPS.ESProducers.ctppsOpticalFunctions_cff import * - -# import and adjust proton-reconstructions settings -from RecoPPS.ProtonReconstruction.ctppsProtons_cfi import * - - -ctppsProtons.pixelDiscardBXShiftedTracks = True -ctppsProtons.default_time = -999. - -from Configuration.Eras.Modifier_run3_common_cff import run3_common -run3_common.toModify(ctppsProtons, useNewLHCInfo = True) \ No newline at end of file diff --git a/RecoPPS/ProtonReconstruction/python/ctppsProtons_cfi.py b/RecoPPS/ProtonReconstruction/python/ctppsProtons_cfi.py new file mode 100644 index 0000000000000..9421ed546ddd2 --- /dev/null +++ b/RecoPPS/ProtonReconstruction/python/ctppsProtons_cfi.py @@ -0,0 +1,12 @@ +# import and adjust proton-reconstructions settings +from RecoPPS.ProtonReconstruction.ctppsProtonsDefault_cfi import ctppsProtonsDefault as _ctppsProtonsDefault +ctppsProtons = _ctppsProtonsDefault.clone( + pixelDiscardBXShiftedTracks = True, + default_time = -999. +) + +from Configuration.Eras.Modifier_run3_common_cff import run3_common +run3_common.toModify(ctppsProtons, useNewLHCInfo = True) + +from Configuration.Eras.Modifier_ctpps_directSim_cff import ctpps_directSim +ctpps_directSim.toModify(ctppsProtons, useNewLHCInfo = False) diff --git a/SimTransport/PPSProtonTransport/python/PPSTransportESSources_cfi.py b/SimTransport/PPSProtonTransport/python/PPSTransportESSources_cfi.py index 409420fac930c..7e6afe9b0b041 100644 --- a/SimTransport/PPSProtonTransport/python/PPSTransportESSources_cfi.py +++ b/SimTransport/PPSProtonTransport/python/PPSTransportESSources_cfi.py @@ -3,7 +3,7 @@ # beam optics from CondCore.CondDB.CondDB_cfi import * from CalibPPS.ESProducers.ctppsBeamParametersFromLHCInfoESSource_cfi import * -from CalibPPS.ESProducers.ctppsInterpolatedOpticalFunctionsESSource_cff import * +from CalibPPS.ESProducers.ctppsInterpolatedOpticalFunctionsESSource_cfi import * ctppsInterpolatedOpticalFunctionsESSource.lhcInfoLabel = "" """ diff --git a/Validation/CTPPS/plugins/CTPPSHepMCDistributionPlotter.cc b/Validation/CTPPS/plugins/CTPPSHepMCDistributionPlotter.cc index 358c31f8f54e6..b93032e19164d 100644 --- a/Validation/CTPPS/plugins/CTPPSHepMCDistributionPlotter.cc +++ b/Validation/CTPPS/plugins/CTPPSHepMCDistributionPlotter.cc @@ -15,8 +15,7 @@ #include "SimDataFormats/GeneratorProducts/interface/HepMCProduct.h" -#include "CondFormats/RunInfo/interface/LHCInfo.h" -#include "CondFormats/DataRecord/interface/LHCInfoRcd.h" +#include "CondTools/RunInfo/interface/LHCInfoCombined.h" #include "TFile.h" #include "TH1D.h" @@ -29,13 +28,20 @@ class CTPPSHepMCDistributionPlotter : public edm::one::EDAnalyzer<> { public: explicit CTPPSHepMCDistributionPlotter(const edm::ParameterSet &); + static void fillDescriptions(edm::ConfigurationDescriptions &descriptions); + private: void analyze(const edm::Event &, const edm::EventSetup &) override; void endJob() override; - edm::EDGetTokenT tokenHepMC_; - edm::ESGetToken lhcInfoESToken_; - std::string outputFile_; + const edm::EDGetTokenT tokenHepMC_; + + const edm::ESGetToken lhcInfoToken_; + const edm::ESGetToken lhcInfoPerLSToken_; + const edm::ESGetToken lhcInfoPerFillToken_; + const bool useNewLHCInfo_; + + const std::string outputFile_; std::unique_ptr h_vtx_x_, h_vtx_y_, h_vtx_z_, h_vtx_t_; std::unique_ptr h_xi_, h_th_x_, h_th_y_; @@ -51,7 +57,12 @@ using namespace HepMC; CTPPSHepMCDistributionPlotter::CTPPSHepMCDistributionPlotter(const edm::ParameterSet &iConfig) : tokenHepMC_(consumes(iConfig.getParameter("tagHepMC"))), - lhcInfoESToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoLabel")))), + + lhcInfoToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoLabel")))), + lhcInfoPerLSToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoPerLSLabel")))), + lhcInfoPerFillToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoPerFillLabel")))), + useNewLHCInfo_(iConfig.getParameter("useNewLHCInfo")), + outputFile_(iConfig.getParameter("outputFile")), h_vtx_x_(new TH1D("h_vtx_x", ";vtx_x (mm)", 100, 0., 0.)), @@ -65,9 +76,22 @@ CTPPSHepMCDistributionPlotter::CTPPSHepMCDistributionPlotter(const edm::Paramete //---------------------------------------------------------------------------------------------------- +void CTPPSHepMCDistributionPlotter::fillDescriptions(edm::ConfigurationDescriptions &descriptions) { + edm::ParameterSetDescription desc; + + desc.add("lhcInfoLabel", "")->setComment("label of the LHCInfo record"); + desc.add("lhcInfoPerLSLabel", "")->setComment("label of the LHCInfoPerLS record"); + desc.add("lhcInfoPerFillLabel", "")->setComment("label of the LHCInfoPerFill record"); + desc.add("useNewLHCInfo", false)->setComment("flag whether to use new LHCInfoPer* records or old LHCInfo"); + + desc.add("outputFile", "")->setComment("output file"); + + descriptions.add("ctppsHepMCDistributionPlotterDefault", desc); +} + void CTPPSHepMCDistributionPlotter::analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup) { // get conditions - const auto &lhcInfo = iSetup.getData(lhcInfoESToken_); + LHCInfoCombined lhcInfoCombined(iSetup, lhcInfoPerLSToken_, lhcInfoPerFillToken_, lhcInfoToken_, useNewLHCInfo_); // get input edm::Handle hHepMC; @@ -98,7 +122,7 @@ void CTPPSHepMCDistributionPlotter::analyze(const edm::Event &iEvent, const edm: continue; const auto &mom = part->momentum(); - const double p_nom = lhcInfo.energy(); + const double p_nom = lhcInfoCombined.energy; if (mom.rho() / p_nom < 0.7) continue; diff --git a/Validation/CTPPS/plugins/CTPPSLHCInfoPlotter.cc b/Validation/CTPPS/plugins/CTPPSLHCInfoPlotter.cc index 8d80b0246ad0a..b90706c094726 100644 --- a/Validation/CTPPS/plugins/CTPPSLHCInfoPlotter.cc +++ b/Validation/CTPPS/plugins/CTPPSLHCInfoPlotter.cc @@ -86,7 +86,7 @@ void CTPPSLHCInfoPlotter::fillDescriptions(edm::ConfigurationDescriptions &descr desc.add("outputFile", "")->setComment("output file"); - descriptions.add("ctppsLHCInfoPlotter", desc); + descriptions.add("ctppsLHCInfoPlotterDefault", desc); } //---------------------------------------------------------------------------------------------------- diff --git a/Validation/CTPPS/plugins/CTPPSProtonReconstructionEfficiencyEstimatorData.cc b/Validation/CTPPS/plugins/CTPPSProtonReconstructionEfficiencyEstimatorData.cc index cdef4aacf5f2a..ee88320d42151 100644 --- a/Validation/CTPPS/plugins/CTPPSProtonReconstructionEfficiencyEstimatorData.cc +++ b/Validation/CTPPS/plugins/CTPPSProtonReconstructionEfficiencyEstimatorData.cc @@ -12,8 +12,7 @@ #include "FWCore/Framework/interface/ESHandle.h" #include "FWCore/Framework/interface/ESWatcher.h" -#include "CondFormats/RunInfo/interface/LHCInfo.h" -#include "CondFormats/DataRecord/interface/LHCInfoRcd.h" +#include "CondTools/RunInfo/interface/LHCInfoCombined.h" #include "CondFormats/DataRecord/interface/CTPPSInterpolatedOpticsRcd.h" #include "CondFormats/PPSObjects/interface/LHCInterpolatedOpticalFunctionsSetCollection.h" #include "CondFormats/DataRecord/interface/PPSAssociationCutsRcd.h" @@ -53,7 +52,10 @@ class CTPPSProtonReconstructionEfficiencyEstimatorData : public edm::one::EDAnal edm::EDGetTokenT tokenTracks_; edm::EDGetTokenT tokenRecoProtonsMultiRP_; - edm::ESGetToken lhcInfoESToken_; + const edm::ESGetToken lhcInfoToken_; + const edm::ESGetToken lhcInfoPerLSToken_; + const edm::ESGetToken lhcInfoPerFillToken_; + const bool useNewLHCInfo_; edm::ESGetToken opticsESToken_; edm::ESGetToken ppsAssociationCutsToken_; @@ -243,7 +245,11 @@ CTPPSProtonReconstructionEfficiencyEstimatorData::CTPPSProtonReconstructionEffic tokenRecoProtonsMultiRP_( consumes(iConfig.getParameter("tagRecoProtonsMultiRP"))), - lhcInfoESToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoLabel")))), + lhcInfoToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoLabel")))), + lhcInfoPerLSToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoPerLSLabel")))), + lhcInfoPerFillToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoPerFillLabel")))), + useNewLHCInfo_(iConfig.getParameter("useNewLHCInfo")), + opticsESToken_(esConsumes(ESInputTag("", iConfig.getParameter("opticsLabel")))), ppsAssociationCutsToken_( esConsumes(ESInputTag("", iConfig.getParameter("ppsAssociationCutsLabel")))), @@ -283,7 +289,10 @@ void CTPPSProtonReconstructionEfficiencyEstimatorData::fillDescriptions(edm::Con desc.add("tagTracks", edm::InputTag())->setComment("input tag for local lite tracks"); desc.add("tagRecoProtonsMultiRP", edm::InputTag())->setComment("input tag for multi-RP reco protons"); - desc.add("lhcInfoLabel", "")->setComment("label of LHCInfo data"); + desc.add("lhcInfoLabel", "")->setComment("label of the LHCInfo record"); + desc.add("lhcInfoPerLSLabel", "")->setComment("label of the LHCInfoPerLS record"); + desc.add("lhcInfoPerFillLabel", "")->setComment("label of the LHCInfoPerFill record"); + desc.add("useNewLHCInfo", false)->setComment("flag whether to use new LHCInfoPer* records or old LHCInfo"); desc.add("opticsLabel", "")->setComment("label of optics data"); desc.add("ppsAssociationCutsLabel", "")->setComment("label of PPSAssociationCuts data"); @@ -311,7 +320,7 @@ void CTPPSProtonReconstructionEfficiencyEstimatorData::fillDescriptions(edm::Con desc.addUntracked("verbosity", 0)->setComment("verbosity level"); - descriptions.add("ctppsProtonReconstructionEfficiencyEstimatorData", desc); + descriptions.add("ctppsProtonReconstructionEfficiencyEstimatorDataDefault", desc); } //---------------------------------------------------------------------------------------------------- @@ -321,7 +330,8 @@ void CTPPSProtonReconstructionEfficiencyEstimatorData::analyze(const edm::Event std::ostringstream os; // get conditions - const auto &lhcInfo = iSetup.getData(lhcInfoESToken_); + const LHCInfoCombined lhcInfoCombined( + iSetup, lhcInfoPerLSToken_, lhcInfoPerFillToken_, lhcInfoToken_, useNewLHCInfo_); const auto &opticalFunctions = iSetup.getData(opticsESToken_); const auto &ppsAssociationCuts = iSetup.getData(ppsAssociationCutsToken_); @@ -660,8 +670,10 @@ void CTPPSProtonReconstructionEfficiencyEstimatorData::analyze(const edm::Event evp.idx_N = i; evp.idx_F = j; - evp.x_cut = ass_cut.isSatisfied(ass_cut.qX, tr_i.x(), tr_i.y(), lhcInfo.crossingAngle(), tr_i.x() - tr_j.x()); - evp.y_cut = ass_cut.isSatisfied(ass_cut.qY, tr_i.x(), tr_i.y(), lhcInfo.crossingAngle(), tr_i.y() - tr_j.y()); + evp.x_cut = + ass_cut.isSatisfied(ass_cut.qX, tr_i.x(), tr_i.y(), lhcInfoCombined.crossingAngle(), tr_i.x() - tr_j.x()); + evp.y_cut = + ass_cut.isSatisfied(ass_cut.qY, tr_i.x(), tr_i.y(), lhcInfoCombined.crossingAngle(), tr_i.y() - tr_j.y()); evp.match = evp.x_cut && evp.y_cut; diff --git a/Validation/CTPPS/plugins/CTPPSProtonReconstructionEfficiencyEstimatorMC.cc b/Validation/CTPPS/plugins/CTPPSProtonReconstructionEfficiencyEstimatorMC.cc index e415b13ac01bf..07772a66c42df 100644 --- a/Validation/CTPPS/plugins/CTPPSProtonReconstructionEfficiencyEstimatorMC.cc +++ b/Validation/CTPPS/plugins/CTPPSProtonReconstructionEfficiencyEstimatorMC.cc @@ -12,8 +12,7 @@ #include "DataFormats/CTPPSDetId/interface/CTPPSDetId.h" -#include "CondFormats/RunInfo/interface/LHCInfo.h" -#include "CondFormats/DataRecord/interface/LHCInfoRcd.h" +#include "CondTools/RunInfo/interface/LHCInfoCombined.h" #include "SimDataFormats/GeneratorProducts/interface/HepMCProduct.h" @@ -40,6 +39,8 @@ class CTPPSProtonReconstructionEfficiencyEstimatorMC : public edm::one::EDAnalyz public: explicit CTPPSProtonReconstructionEfficiencyEstimatorMC(const edm::ParameterSet &); + static void fillDescriptions(edm::ConfigurationDescriptions &descriptions); + private: void analyze(const edm::Event &, const edm::EventSetup &) override; void endJob() override; @@ -53,7 +54,10 @@ class CTPPSProtonReconstructionEfficiencyEstimatorMC : public edm::one::EDAnalyz edm::EDGetTokenT tokenRecoProtonsMultiRP_; - edm::ESGetToken lhcInfoESToken_; + const edm::ESGetToken lhcInfoToken_; + const edm::ESGetToken lhcInfoPerLSToken_; + const edm::ESGetToken lhcInfoPerFillToken_; + const bool useNewLHCInfo_; unsigned int rpId_45_N_, rpId_45_F_; unsigned int rpId_56_N_, rpId_56_F_; @@ -103,7 +107,11 @@ CTPPSProtonReconstructionEfficiencyEstimatorMC::CTPPSProtonReconstructionEfficie tracksToken_(consumes(iConfig.getParameter("tagTracks"))), tokenRecoProtonsMultiRP_( consumes(iConfig.getParameter("tagRecoProtonsMultiRP"))), - lhcInfoESToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoLabel")))), + + lhcInfoToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoLabel")))), + lhcInfoPerLSToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoPerLSLabel")))), + lhcInfoPerFillToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoPerFillLabel")))), + useNewLHCInfo_(iConfig.getParameter("useNewLHCInfo")), rpId_45_N_(iConfig.getParameter("rpId_45_N")), rpId_45_F_(iConfig.getParameter("rpId_45_F")), @@ -128,11 +136,37 @@ CTPPSProtonReconstructionEfficiencyEstimatorMC::CTPPSProtonReconstructionEfficie //---------------------------------------------------------------------------------------------------- +void CTPPSProtonReconstructionEfficiencyEstimatorMC::fillDescriptions(edm::ConfigurationDescriptions &descriptions) { + edm::ParameterSetDescription desc; + + desc.add("tagTracks", edm::InputTag())->setComment("input tag for local lite tracks"); + desc.add("tagRecoProtonsMultiRP", edm::InputTag())->setComment("input tag for multi-RP reco protons"); + + desc.add("lhcInfoLabel", "")->setComment("label of the LHCInfo record"); + desc.add("lhcInfoPerLSLabel", "")->setComment("label of the LHCInfoPerLS record"); + desc.add("lhcInfoPerFillLabel", "")->setComment("label of the LHCInfoPerFill record"); + desc.add("useNewLHCInfo", false)->setComment("flag whether to use new LHCInfoPer* records or old LHCInfo"); + + desc.add("rpId_45_N", 0)->setComment("decimal RP id for 45 near"); + desc.add("rpId_45_F", 0)->setComment("decimal RP id for 45 far"); + desc.add("rpId_56_N", 0)->setComment("decimal RP id for 56 near"); + desc.add("rpId_56_F", 0)->setComment("decimal RP id for 56 far"); + + desc.add("outputFile", "output.root")->setComment("output file name"); + + desc.addUntracked("verbosity", 0)->setComment("verbosity level"); + + descriptions.add("ctppsProtonReconstructionEfficiencyEstimatorMCDefault", desc); +} + +//---------------------------------------------------------------------------------------------------- + void CTPPSProtonReconstructionEfficiencyEstimatorMC::analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup) { std::ostringstream os; // get conditions - const auto &lhcInfo = iSetup.getData(lhcInfoESToken_); + const LHCInfoCombined lhcInfoCombined( + iSetup, lhcInfoPerLSToken_, lhcInfoPerFillToken_, lhcInfoToken_, useNewLHCInfo_); // get input edm::Handle hHepMCAfterSmearing; @@ -184,7 +218,7 @@ void CTPPSProtonReconstructionEfficiencyEstimatorMC::analyze(const edm::Event &i info.arm = (mom.z() > 0.) ? 0 : 1; - const double p_nom = lhcInfo.energy(); + const double p_nom = lhcInfoCombined.energy; info.xi = (p_nom - mom.rho()) / p_nom; particleInfo[part->barcode()] = std::move(info); diff --git a/Validation/CTPPS/plugins/CTPPSProtonReconstructionSimulationValidator.cc b/Validation/CTPPS/plugins/CTPPSProtonReconstructionSimulationValidator.cc index 686d0e2ade00c..647cc426083eb 100644 --- a/Validation/CTPPS/plugins/CTPPSProtonReconstructionSimulationValidator.cc +++ b/Validation/CTPPS/plugins/CTPPSProtonReconstructionSimulationValidator.cc @@ -12,8 +12,7 @@ #include "DataFormats/CTPPSDetId/interface/CTPPSDetId.h" -#include "CondFormats/RunInfo/interface/LHCInfo.h" -#include "CondFormats/DataRecord/interface/LHCInfoRcd.h" +#include "CondTools/RunInfo/interface/LHCInfoCombined.h" #include "SimDataFormats/GeneratorProducts/interface/HepMCProduct.h" @@ -38,6 +37,8 @@ class CTPPSProtonReconstructionSimulationValidator : public edm::one::EDAnalyzer public: explicit CTPPSProtonReconstructionSimulationValidator(const edm::ParameterSet &); + static void fillDescriptions(edm::ConfigurationDescriptions &descriptions); + private: void analyze(const edm::Event &, const edm::EventSetup &) override; void endJob() override; @@ -47,7 +48,7 @@ class CTPPSProtonReconstructionSimulationValidator : public edm::one::EDAnalyzer const reco::ForwardProton &rec_pr, const HepMC::FourVector &vtx, const HepMC::FourVector &mom, - const LHCInfo &lhcInfo); + const double energy); edm::EDGetTokenT tokenHepMCBeforeSmearing_; edm::EDGetTokenT tokenHepMCAfterSmearing_; @@ -55,7 +56,10 @@ class CTPPSProtonReconstructionSimulationValidator : public edm::one::EDAnalyzer edm::EDGetTokenT tokenRecoProtonsSingleRP_; edm::EDGetTokenT tokenRecoProtonsMultiRP_; - edm::ESGetToken lhcInfoESToken_; + const edm::ESGetToken lhcInfoToken_; + const edm::ESGetToken lhcInfoPerLSToken_; + const edm::ESGetToken lhcInfoPerFillToken_; + const bool useNewLHCInfo_; std::string outputFile_; @@ -201,14 +205,35 @@ CTPPSProtonReconstructionSimulationValidator::CTPPSProtonReconstructionSimulatio consumes(iConfig.getParameter("tagRecoProtonsSingleRP"))), tokenRecoProtonsMultiRP_( consumes(iConfig.getParameter("tagRecoProtonsMultiRP"))), - lhcInfoESToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoLabel")))), + lhcInfoToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoLabel")))), + lhcInfoPerLSToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoPerLSLabel")))), + lhcInfoPerFillToken_(esConsumes(ESInputTag("", iConfig.getParameter("lhcInfoPerFillLabel")))), + useNewLHCInfo_(iConfig.getParameter("useNewLHCInfo")), outputFile_(iConfig.getParameter("outputFile")) {} //---------------------------------------------------------------------------------------------------- +void CTPPSProtonReconstructionSimulationValidator::fillDescriptions(edm::ConfigurationDescriptions &descriptions) { + edm::ParameterSetDescription desc; + + desc.add("lhcInfoLabel", "")->setComment("label of the LHCInfo record"); + desc.add("lhcInfoPerLSLabel", "")->setComment("label of the LHCInfoPerLS record"); + desc.add("lhcInfoPerFillLabel", "")->setComment("label of the LHCInfoPerFill record"); + desc.add("useNewLHCInfo", false)->setComment("flag whether to use new LHCInfoPer* records or old LHCInfo"); + + desc.add("outputFile", "output.root")->setComment("output file name"); + + desc.addUntracked("verbosity", 0)->setComment("verbosity level"); + + descriptions.add("ctppsProtonReconstructionSimulationValidatorDefault", desc); +} + +//---------------------------------------------------------------------------------------------------- + void CTPPSProtonReconstructionSimulationValidator::analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup) { // get conditions - const auto &lhcInfo = iSetup.getData(lhcInfoESToken_); + const LHCInfoCombined lhcInfoCombined( + iSetup, lhcInfoPerLSToken_, lhcInfoPerFillToken_, lhcInfoToken_, useNewLHCInfo_); // get input edm::Handle hHepMCBeforeSmearing; @@ -319,7 +344,7 @@ void CTPPSProtonReconstructionSimulationValidator::analyze(const edm::Event &iEv if (rec_pr.method() == reco::ForwardProton::ReconstructionMethod::multiRP) meth_idx = 1; - fillPlots(meth_idx, idx, rec_pr, vtx, mom, lhcInfo); + fillPlots(meth_idx, idx, rec_pr, vtx, mom, lhcInfoCombined.energy); } } @@ -355,8 +380,8 @@ void CTPPSProtonReconstructionSimulationValidator::fillPlots(unsigned int meth_i const reco::ForwardProton &rec_pr, const HepMC::FourVector &vtx, const HepMC::FourVector &mom, - const LHCInfo &lhcInfo) { - const double p_nom = lhcInfo.energy(); + const double energy) { + const double p_nom = energy; const double xi_simu = (p_nom - mom.rho()) / p_nom; const double th_x_simu = mom.x() / mom.rho(); const double th_y_simu = mom.y() / mom.rho(); diff --git a/Validation/CTPPS/python/ctppsHepMCDistributionPlotter_cfi.py b/Validation/CTPPS/python/ctppsHepMCDistributionPlotter_cfi.py new file mode 100644 index 0000000000000..28baf6954a35b --- /dev/null +++ b/Validation/CTPPS/python/ctppsHepMCDistributionPlotter_cfi.py @@ -0,0 +1,8 @@ +from Validation.CTPPS.CTPPSHepMCDistributionPlotterDefault_cfi import CTPPSHepMCDistributionPlotterDefault as _CTPPSHepMCDistributionPlotterDefault +CTPPSHepMCDistributionPlotter = _CTPPSHepMCDistributionPlotterDefault.clone() + +from Configuration.Eras.Modifier_run3_common_cff import run3_common +run3_common.toModify(CTPPSHepMCDistributionPlotter, useNewLHCInfo = True) + +from Configuration.Eras.Modifier_ctpps_directSim_cff import ctpps_directSim +ctpps_directSim.toModify(CTPPSHepMCDistributionPlotter, useNewLHCInfo = False) diff --git a/Validation/CTPPS/python/ctppsLHCInfoPlotter_cff.py b/Validation/CTPPS/python/ctppsLHCInfoPlotter_cff.py deleted file mode 100644 index 66f0c853de77c..0000000000000 --- a/Validation/CTPPS/python/ctppsLHCInfoPlotter_cff.py +++ /dev/null @@ -1,3 +0,0 @@ -from Validation.CTPPS.ctppsLHCInfoPlotter_cfi import * -from Configuration.Eras.Modifier_run3_common_cff import run3_common -run3_common.toModify(ctppsLHCInfoPlotter, useNewLHCInfo = True) \ No newline at end of file diff --git a/Validation/CTPPS/python/ctppsLHCInfoPlotter_cfi.py b/Validation/CTPPS/python/ctppsLHCInfoPlotter_cfi.py new file mode 100644 index 0000000000000..4b8f96416747d --- /dev/null +++ b/Validation/CTPPS/python/ctppsLHCInfoPlotter_cfi.py @@ -0,0 +1,8 @@ +from Validation.CTPPS.ctppsLHCInfoPlotterDefault_cfi import ctppsLHCInfoPlotterDefault as _ctppsLHCInfoPlotterDefault +ctppsLHCInfoPlotter = _ctppsLHCInfoPlotterDefault.clone() + +from Configuration.Eras.Modifier_run3_common_cff import run3_common +run3_common.toModify(ctppsLHCInfoPlotter, useNewLHCInfo = True) + +from Configuration.Eras.Modifier_ctpps_directSim_cff import ctpps_directSim +ctpps_directSim.toModify(ctppsLHCInfoPlotter, useNewLHCInfo = False) diff --git a/Validation/CTPPS/python/ctppsProtonReconstructionEfficiencyEstimatorData_cfi.py b/Validation/CTPPS/python/ctppsProtonReconstructionEfficiencyEstimatorData_cfi.py new file mode 100644 index 0000000000000..47d2360e623c3 --- /dev/null +++ b/Validation/CTPPS/python/ctppsProtonReconstructionEfficiencyEstimatorData_cfi.py @@ -0,0 +1,8 @@ +from Validation.CTPPS.ctppsProtonReconstructionEfficiencyEstimatorDataDefault_cfi import ctppsProtonReconstructionEfficiencyEstimatorDataDefault as _ctppsProtonReconstructionEfficiencyEstimatorDataDefault +ctppsProtonReconstructionEfficiencyEstimatorData = _ctppsProtonReconstructionEfficiencyEstimatorDataDefault.clone() + +from Configuration.Eras.Modifier_run3_common_cff import run3_common +run3_common.toModify(ctppsProtonReconstructionEfficiencyEstimatorData, useNewLHCInfo = True) + +from Configuration.Eras.Modifier_ctpps_directSim_cff import ctpps_directSim +ctpps_directSim.toModify(ctppsProtonReconstructionEfficiencyEstimatorData, useNewLHCInfo = False) diff --git a/Validation/CTPPS/python/ctppsProtonReconstructionEfficiencyEstimatorMC_cfi.py b/Validation/CTPPS/python/ctppsProtonReconstructionEfficiencyEstimatorMC_cfi.py new file mode 100644 index 0000000000000..4aa239bd04c70 --- /dev/null +++ b/Validation/CTPPS/python/ctppsProtonReconstructionEfficiencyEstimatorMC_cfi.py @@ -0,0 +1,8 @@ +from Validation.CTPPS.ctppsProtonReconstructionEfficiencyEstimatorMCDefault_cfi import ctppsProtonReconstructionEfficiencyEstimatorMCDefault as _ctppsProtonReconstructionEfficiencyEstimatorMCDefault +ctppsProtonReconstructionEfficiencyEstimatorMC = ctppsProtonReconstructionEfficiencyEstimatorMCDefault.clone() + +from Configuration.Eras.Modifier_run3_common_cff import run3_common +run3_common.toModify(ctppsProtonReconstructionEfficiencyEstimatorMC, useNewLHCInfo = True) + +from Configuration.Eras.Modifier_ctpps_directSim_cff import ctpps_directSim +ctpps_directSim.toModify(ctppsProtonReconstructionEfficiencyEstimatorMC, useNewLHCInfo = False) diff --git a/Validation/CTPPS/python/ctppsProtonReconstructionSimulationValidator_cfi.py b/Validation/CTPPS/python/ctppsProtonReconstructionSimulationValidator_cfi.py new file mode 100644 index 0000000000000..e1c1b4ddee8d9 --- /dev/null +++ b/Validation/CTPPS/python/ctppsProtonReconstructionSimulationValidator_cfi.py @@ -0,0 +1,8 @@ +from Validation.CTPPS.ctppsProtonReconstructionSimulationValidatorDefault_cfi import ctppsProtonReconstructionSimulationValidatorDefault as _ctppsProtonReconstructionSimulationValidatorDefault +ctppsProtonReconstructionSimulationValidator = ctppsProtonReconstructionSimulationValidatorDefault.clone() + +from Configuration.Eras.Modifier_run3_common_cff import run3_common +run3_common.toModify(ctppsProtonReconstructionSimulationValidator, useNewLHCInfo = True) + +from Configuration.Eras.Modifier_ctpps_directSim_cff import ctpps_directSim +ctpps_directSim.toModify(ctppsProtonReconstructionSimulationValidator, useNewLHCInfo = False) diff --git a/Validation/CTPPS/test/simu/run_multiple b/Validation/CTPPS/test/simu/run_multiple index fa9e6a2a8fff2..34cc9042cb851 100755 --- a/Validation/CTPPS/test/simu/run_multiple +++ b/Validation/CTPPS/test/simu/run_multiple @@ -20,7 +20,8 @@ pids="" function RunOne() { local config="$1" - local era="$2" + local era_mod_path="$2" + local era="$3" local cfg="simu_${config}_cfg.py" local log="simu_${config}.log" @@ -29,6 +30,7 @@ function RunOne() local out_protons="simu_${config}_protons.root" cat "$inputDir/template_cfg.py" | sed "\ + s|\$ERA_MOD_PATH|$era_mod_path|;\ s|\$ERA|$era|;\ s|\$CONFIG|$config|;\ s|\$N_EVENTS|$n_events|;\ @@ -43,13 +45,13 @@ function RunOne() #---------------------------------------------------------------------------------------------------- -RunOne "2016" "Run2_2016" +RunOne "2016" "Configuration.Eras" "Run2_2016" -RunOne "2017" "Run2_2017" +RunOne "2017" "Configuration.Eras" "Run2_2017" -RunOne "2018" "Run2_2018" +RunOne "2018" "Configuration.Eras" "Run2_2018" -RunOne "2022" "Run3" +RunOne "2022" "Configuration.ProcessModifiers" "Run3_CTPPS_directSim" rc=0 for pid in $pids diff --git a/Validation/CTPPS/test/simu/template_cfg.py b/Validation/CTPPS/test/simu/template_cfg.py index 5587411a833b9..030f071056534 100644 --- a/Validation/CTPPS/test/simu/template_cfg.py +++ b/Validation/CTPPS/test/simu/template_cfg.py @@ -1,10 +1,10 @@ import FWCore.ParameterSet.Config as cms -from Configuration.Eras.Era_$ERA_cff import * +from $ERA_MOD_PATH.Era_$ERA_cff import * process = cms.Process('CTPPSTest', $ERA) process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi') -process.load('Validation.CTPPS.ctppsLHCInfoPlotter_cff') +process.load('Validation.CTPPS.ctppsLHCInfoPlotter_cfi') process.load('Configuration.Generator.randomXiThetaGunProducer_cfi') process.load("CondCore.CondDB.CondDB_cfi") @@ -32,15 +32,8 @@ process.CondDB, toGet = cms.VPSet(cms.PSet( record = cms.string('CTPPSPixelAnalysisMaskRcd'), - tag = cms.string("CTPPSPixelAnalysisMask_Run3_v1_hlt")), - cms.PSet( - record = cms.string('LHCInfoPerLSRcd'), - tag = cms.string("LHCInfoPerLS_endFill_Run3_mc_v1")), - cms.PSet( - record = cms.string('LHCInfoPerFillRcd'), - tag = cms.string("LHCInfoPerFill_endFill_Run3_mc_v1")), - ) -) + tag = cms.string("CTPPSPixelAnalysisMask_Run3_v1_hlt")) + )) # random seeds process.RandomNumberGeneratorService = cms.Service("RandomNumberGeneratorService", From e56975230da2fddd3780bd5fa39168e16f7645e0 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Thu, 14 Dec 2023 16:28:00 +0100 Subject: [PATCH 095/281] Investigation of the failure in finding the correct UV from a position in space for V18 geometry of HGCal --- Geometry/HGCalCommonData/data/partialD104.txt | 45 +++++++ .../HGCalCommonData/src/HGCalDDDConstants.cc | 127 +++++++++++------- .../test/HGCalPartialIDTester.cc | 58 ++++++-- .../python/testHGCalPartialIDTester2_cfg.py | 102 ++++++++++++++ .../Calo/interface/HGCalNumberingScheme.h | 2 +- SimG4CMS/Calo/src/HGCalNumberingScheme.cc | 27 ++-- 6 files changed, 296 insertions(+), 65 deletions(-) create mode 100644 Geometry/HGCalCommonData/data/partialD104.txt create mode 100644 Geometry/HGCalCommonData/test/python/testHGCalPartialIDTester2_cfg.py diff --git a/Geometry/HGCalCommonData/data/partialD104.txt b/Geometry/HGCalCommonData/data/partialD104.txt new file mode 100644 index 0000000000000..1bdf6862b198b --- /dev/null +++ b/Geometry/HGCalCommonData/data/partialD104.txt @@ -0,0 +1,45 @@ + 9 1 6 -1 -1 308.049 209.086 -3994.98 + 9 1 4 -1 -1 335.074 154.066 -3868.88 + 9 1 6 -1 1 -335.105 -158.102 3994.98 + 9 1 4 -1 -1 -285.988 221.769 -3868.88 + 9 1 6 -1 1 335.064 140.107 3994.98 + 9 1 6 -1 -1 -288.685 220.255 -3995.16 + 9 1 4 -1 -1 297.656 215.100 -3868.88 + 9 1 6 -1 -1 307.150 -209.576 -3994.98 + 9 1 4 -1 -1 -354.842 204.871 -3868.88 + 9 1 2 -1 1 -335.089 -175.345 3742.81 + 9 1 4 -1 1 37.9192 364.992 3869.06 + 9 1 2 -1 1 46.9765 -359.761 3742.91 + 9 1 6 -1 1 290.144 219.352 3994.98 + 9 1 2 -1 -1 -10.5313 -380.793 -3742.78 + 9 1 6 -1 1 -17.9776 -376.520 3994.98 + 9 1 4 -1 1 -54.3393 -355.577 3868.88 + 9 1 4 -1 1 -53.9806 -355.805 3868.88 + 9 1 2 -1 1 8.28108 -382.182 3742.78 + 9 1 4 -1 -1 -335.120 156.472 -3868.88 + 9 1 4 -1 -1 -335.124 157.550 -3868.88 + 9 1 4 -1 -1 -335.078 154.492 -3868.88 + 9 1 4 -1 -1 -335.092 147.285 -3868.88 + 9 1 4 -1 1 34.5140 -366.963 3869.04 + 9 1 2 -1 1 289.634 -219.677 3742.78 + 9 1 2 -1 1 289.763 -219.624 3742.80 + 9 1 2 -1 1 -59.0897 352.848 3742.78 + 9 1 2 -1 -1 300.848 213.254 -3742.78 + 9 1 6 -1 -1 320.348 202.006 -3994.98 + 9 1 2 -1 1 335.061 153.806 3742.78 + 9 1 2 -1 -1 356.526 -205.842 -3742.96 + 9 1 2 -1 1 352.943 203.829 3742.78 + 9 1 2 -1 -1 -335.113 -171.174 -3742.78 + 9 1 4 -1 -1 -352.450 203.513 -3869.00 + 9 1 4 -1 -1 37.4524 -365.266 -3868.88 + 9 1 4 -1 -1 40.0469 -363.770 -3868.88 + 9 1 4 -1 -1 43.3976 -361.828 -3868.88 + 9 1 2 -1 -1 31.7329 -368.647 -3742.83 + 9 1 6 -1 -1 335.093 171.659 -3994.98 + 9 1 2 -1 -1 -46.5103 360.121 -3742.78 + 9 1 2 -1 -1 -47.1247 359.706 -3742.96 + 9 1 4 -1 1 335.093 154.486 3868.88 + 9 1 4 -1 -1 324.283 199.686 -3868.89 + 9 1 4 -1 1 43.8836 361.599 3869.06 + 9 1 4 -1 -1 35.8307 -366.244 -3869.06 + 9 1 2 -1 1 7.92060 -382.398 3742.78 diff --git a/Geometry/HGCalCommonData/src/HGCalDDDConstants.cc b/Geometry/HGCalCommonData/src/HGCalDDDConstants.cc index 800f92a0a90ad..5b527534164d3 100644 --- a/Geometry/HGCalCommonData/src/HGCalDDDConstants.cc +++ b/Geometry/HGCalCommonData/src/HGCalDDDConstants.cc @@ -1457,7 +1457,9 @@ void HGCalDDDConstants::waferFromPosition(const double x, bool extend, bool debug) const { // Expect x, y as in SIM step - waferU = waferV = 1 + hgpar_->waferUVMax_; + bool waferin = ((waferU == 0) && (waferV == 0)); + if (waferin) + waferU = waferV = 1 + hgpar_->waferUVMax_; cellU = cellV = celltype = 0; if ((hgpar_->xLayerHex_.empty()) || (hgpar_->yLayerHex_.empty())) return; @@ -1476,54 +1478,89 @@ void HGCalDDDConstants::waferFromPosition(const double x, } if (debug) edm::LogVerbatim("HGCalGeom") << "waferFromPosition:: Layer " << layer << ":" << ll << " Rot " << rotx << " X " << x - << ":" << xx << " Y " << y << ":" << yy << " side " << zside << " extend " << extend; + << ":" << xx << " Y " << y << ":" << yy << " side " << zside << " extend " << extend << " initial wafer index " << waferU << ":" << waferV;; double rmax = extend ? rmaxT_ : rmax_; double hexside = extend ? hexsideT_ : hexside_; - for (unsigned int k = 0; k < hgpar_->waferPosX_.size(); ++k) { - double dx0(0), dy0(0); - waferU = HGCalWaferIndex::waferU(hgpar_->waferCopy_[k]); - waferV = HGCalWaferIndex::waferV(hgpar_->waferCopy_[k]); - if (cassetteMode()) { - int indx = HGCalWaferIndex::waferIndex(layer, waferU, waferV); - auto ktr = hgpar_->waferInfoMap_.find(indx); - if (ktr != hgpar_->waferInfoMap_.end()) { - auto cshift = hgcassette_.getShift(layer, -1, (ktr->second).cassette); - if (debug) - edm::LogVerbatim("HGCalGeom") << "Cassette " << (ktr->second).cassette << " Shift " << cshift.first << ":" - << cshift.second; - dx0 = -cshift.first; - dy0 = cshift.second; + if (waferin) { + double tolmin(100.0); + for (unsigned int k = 0; k < hgpar_->waferPosX_.size(); ++k) { + double dx0(0), dy0(0); + waferU = HGCalWaferIndex::waferU(hgpar_->waferCopy_[k]); + waferV = HGCalWaferIndex::waferV(hgpar_->waferCopy_[k]); + if (cassetteMode()) { + int indx = HGCalWaferIndex::waferIndex(layer, waferU, waferV); + auto ktr = hgpar_->waferInfoMap_.find(indx); + if (ktr != hgpar_->waferInfoMap_.end()) { + auto cshift = hgcassette_.getShift(layer, -1, (ktr->second).cassette); + if (debug) + edm::LogVerbatim("HGCalGeom") << "Cassette " << (ktr->second).cassette << " Shift " << cshift.first << ":" << cshift.second; + dx0 = -cshift.first; + dy0 = cshift.second; + } + } + double dx = std::abs(xx - dx0 - hgpar_->waferPosX_[k]); + double dy = std::abs(yy - dy0 - hgpar_->waferPosY_[k]); + constexpr double tolc = 0.01; + if (debug) { + edm::LogVerbatim("HGCalGeom") << "Wafer " << waferU << ":" << waferV << " position " << xx << ":" << yy << " Distance " << dx << ":" << dy << " diff0 " << (dx - rmax) << ":" << (dy - hexside) << " diff1 " << (dy - 0.5 * hexside) << ":" << (dx * tan30deg_ - (hexside - dy)); + if ((dx - rmax) <= tolc && (dy - hexside) <= tolc) { + tolmin = std::min(tolmin, (dy - 0.5 * hexside)); + tolmin = std::min(tolmin, (dx * tan30deg_ - (hexside - dy))); + } + } + if ((dx - rmax) <= tolc && (dy - hexside) <= tolc) { + if (((dy - 0.5 * hexside) <= tolc) || ((dx * tan30deg_ - (hexside - dy)) <= tolc)) { + if (waferHexagon8File()) { + int index = HGCalWaferIndex::waferIndex(layer, waferU, waferV); + celltype = HGCalWaferType::getType(index, hgpar_->waferInfoMap_); + if (debug) + edm::LogVerbatim("HGCalGeom") << "Position (" << x << ", " << y << ") Wafer type:partial:orient:cassette " + << celltype << ":" << HGCalWaferType::getPartial(index, hgpar_->waferInfoMap_) + << ":" << HGCalWaferType::getOrient(index, hgpar_->waferInfoMap_) << ":" + << HGCalWaferType::getCassette(index, hgpar_->waferInfoMap_); + } else { + auto itr = hgpar_->typesInLayers_.find(HGCalWaferIndex::waferIndex(layer, waferU, waferV)); + celltype = ((itr == hgpar_->typesInLayers_.end()) ? HGCSiliconDetId::HGCalCoarseThick + : hgpar_->waferTypeL_[itr->second]); + } + if (debug) + edm::LogVerbatim("HGCalGeom") << "WaferFromPosition:: Input " << layer << ":" << ll << ":" << hgpar_->firstLayer_ << ":" << rotx << ":" << x << ":" << y << ":" << hgpar_->xLayerHex_[ll] << ":" << hgpar_->yLayerHex_[ll] << ":" << xx << ":" << yy << " compared with " << hgpar_->waferPosX_[k] << ":" << hgpar_->waferPosY_[k] << " difference " << dx << ":" << dy << ":" << dx * tan30deg_ << ":" << (hexside_ - dy) << " comparator " << rmax_ << ":" << rmaxT_ << ":" << hexside_ << ":" << hexsideT_ << " wafer " << waferU << ":" << waferV << ":" << celltype; + xx -= (dx0 + hgpar_->waferPosX_[k]); + yy -= (dy0 + hgpar_->waferPosY_[k]); + break; + } } } - double dx = std::abs(xx - dx0 - hgpar_->waferPosX_[k]); - double dy = std::abs(yy - dy0 - hgpar_->waferPosY_[k]); - if (dx <= rmax && dy <= hexside) { - if ((dy <= 0.5 * hexside) || (dx * tan30deg_ <= (hexside - dy))) { - if (waferHexagon8File()) { - int index = HGCalWaferIndex::waferIndex(layer, waferU, waferV); - celltype = HGCalWaferType::getType(index, hgpar_->waferInfoMap_); - if (debug) - edm::LogVerbatim("HGCalGeom") << "Position (" << x << ", " << y << ") Wafer type:partial:orient:cassette " - << celltype << ":" << HGCalWaferType::getPartial(index, hgpar_->waferInfoMap_) - << ":" << HGCalWaferType::getOrient(index, hgpar_->waferInfoMap_) << ":" - << HGCalWaferType::getCassette(index, hgpar_->waferInfoMap_); - } else { - auto itr = hgpar_->typesInLayers_.find(HGCalWaferIndex::waferIndex(layer, waferU, waferV)); - celltype = ((itr == hgpar_->typesInLayers_.end()) ? HGCSiliconDetId::HGCalCoarseThick - : hgpar_->waferTypeL_[itr->second]); - } - if (debug) - edm::LogVerbatim("HGCalGeom") << "WaferFromPosition:: Input " << layer << ":" << ll << ":" - << hgpar_->firstLayer_ << ":" << rotx << ":" << x << ":" << y << ":" - << hgpar_->xLayerHex_[ll] << ":" << hgpar_->yLayerHex_[ll] << ":" << xx << ":" - << yy << " compared with " << hgpar_->waferPosX_[k] << ":" - << hgpar_->waferPosY_[k] << " difference " << dx << ":" << dy << ":" - << dx * tan30deg_ << ":" << (hexside_ - dy) << " comparator " << rmax_ << ":" - << rmaxT_ << ":" << hexside_ << ":" << hexsideT_ << " wafer " << waferU << ":" - << waferV << ":" << celltype; - xx -= (dx0 + hgpar_->waferPosX_[k]); - yy -= (dy0 + hgpar_->waferPosY_[k]); - break; + if (debug) + edm::LogVerbatim("HGCalGeom") << "Tolmin " << tolmin; + } else { + for (unsigned int k = 0; k < hgpar_->waferPosX_.size(); ++k) { + double dx0(0), dy0(0); + if ((waferU == HGCalWaferIndex::waferU(hgpar_->waferCopy_[k])) && + (waferV == HGCalWaferIndex::waferV(hgpar_->waferCopy_[k]))) { + if (cassetteMode()) { + int indx = HGCalWaferIndex::waferIndex(layer, waferU, waferV); + auto ktr = hgpar_->waferInfoMap_.find(indx); + if (ktr != hgpar_->waferInfoMap_.end()) { + auto cshift = hgcassette_.getShift(layer, -1, (ktr->second).cassette); + if (debug) + edm::LogVerbatim("HGCalGeom") << "Cassette " << (ktr->second).cassette << " Shift " << cshift.first << ":" << cshift.second; + dx0 = -cshift.first; + dy0 = cshift.second; + } + } + if (waferHexagon8File()) { + int index = HGCalWaferIndex::waferIndex(layer, waferU, waferV); + celltype = HGCalWaferType::getType(index, hgpar_->waferInfoMap_); + if (debug) + edm::LogVerbatim("HGCalGeom") << "Position (" << x << ", " << y << ") Wafer type:partial:orient:cassette " << celltype << ":" << HGCalWaferType::getPartial(index, hgpar_->waferInfoMap_) << ":" << HGCalWaferType::getOrient(index, hgpar_->waferInfoMap_) << ":" << HGCalWaferType::getCassette(index, hgpar_->waferInfoMap_); + } else { + auto itr = hgpar_->typesInLayers_.find(HGCalWaferIndex::waferIndex(layer, waferU, waferV)); + celltype = ((itr == hgpar_->typesInLayers_.end()) ? HGCSiliconDetId::HGCalCoarseThick : hgpar_->waferTypeL_[itr->second]); + } + xx -= (dx0 + hgpar_->waferPosX_[k]); + yy -= (dy0 + hgpar_->waferPosY_[k]); + break; } } } diff --git a/Geometry/HGCalCommonData/test/HGCalPartialIDTester.cc b/Geometry/HGCalCommonData/test/HGCalPartialIDTester.cc index 78b47add956ff..5d93d0b244d7f 100644 --- a/Geometry/HGCalCommonData/test/HGCalPartialIDTester.cc +++ b/Geometry/HGCalCommonData/test/HGCalPartialIDTester.cc @@ -59,8 +59,8 @@ class HGCalPartialIDTester : public edm::one::EDAnalyzer { const bool invert_, debug_; const edm::ESGetToken tok_hgcal_; const HGCalDDDConstants *hgcCons_; - std::vector zside_, layer_; - std::vector xpos_, ypos_; + std::vector zside_, layer_, waferU_, waferV_; + std::vector xpos_, ypos_, zpos_; }; HGCalPartialIDTester::HGCalPartialIDTester(const edm::ParameterSet &iC) @@ -89,19 +89,36 @@ HGCalPartialIDTester::HGCalPartialIDTester(const edm::ParameterSet &iC) if ((det == DetId::HGCalEE) || (det == DetId::HGCalHSi)) { zside_.emplace_back(std::atoi(items[1].c_str())); layer_.emplace_back(std::atoi(items[2].c_str())); + waferU_.emplace_back(0); + waferV_.emplace_back(0); xpos_.emplace_back(std::atof(items[3].c_str())); ypos_.emplace_back(std::atof(items[4].c_str())); + zpos_.emplace_back(0); } } - } + } else if (items.size() == 8) { + DetId::Detector det = static_cast(std::atoi(items[0].c_str())); + if (det == dets) { + if ((det == DetId::HGCalEE) || (det == DetId::HGCalHSi)) { + layer_.emplace_back(std::atoi(items[1].c_str())); + int module = std::atoi(items[2].c_str()); + waferU_.emplace_back(HGCalTypes::getUnpackedU(module)); + waferV_.emplace_back(HGCalTypes::getUnpackedV(module)); + int zside = std::atoi(items[4].c_str()); + zside_.emplace_back(zside); + xpos_.emplace_back(zside * std::atof(items[5].c_str())); + ypos_.emplace_back(std::atof(items[6].c_str())); + zpos_.emplace_back(std::atof(items[7].c_str())); + } + } + } } fInput.close(); } } edm::LogVerbatim("HGCalGeom") << "Reads " << layer_.size() << " posiitons for det " << dets << " from " << fileName_; for (unsigned int k = 0; k < layer_.size(); ++k) { - edm::LogVerbatim("HGCalGeom") << "[" << k << "] zside " << zside_[k] << " Layer " << layer_[k] << " position " - << xpos_[k] << ":" << ypos_[k]; + edm::LogVerbatim("HGCalGeom") << "[" << k << "] Layer " << layer_[k] << " Wafer " << waferU_[k] << ":" << waferV_[k] << " zside " << zside_[k] << " position " << xpos_[k] << ":" << ypos_[k] << ":" << zpos_[k]; } } @@ -116,6 +133,7 @@ void HGCalPartialIDTester::fillDescriptions(edm::ConfigurationDescriptions &desc // ------------ method called to produce the data ------------ void HGCalPartialIDTester::beginRun(edm::Run const &iRun, edm::EventSetup const &iSetup) { + constexpr double tolR = 14.0; //initiating hgc Geometry const edm::ESHandle &hgcCons = iSetup.getHandle(tok_hgcal_); if (!hgcCons.isValid()) { @@ -124,25 +142,43 @@ void HGCalPartialIDTester::beginRun(edm::Run const &iRun, edm::EventSetup const hgcCons_ = hgcCons.product(); const DetId::Detector dets = (nameDetector_ == "HGCalEESensitive") ? DetId::HGCalEE : DetId::HGCalHSi; for (uint32_t i = 0; i < layer_.size(); i++) { - int waferU, waferV, cellU, cellV, waferType; - double wt; + int waferU(waferU_[i]), waferV(waferV_[i]), cellU(0), cellV(0), waferType(0); + double wt(0); + edm::LogVerbatim("HGCalGeom") << "Input " << xpos_[i] << ":" << ypos_[i] << ":" << zside_[i] << ":" << layer_[i] << ":" << waferU << ":" << waferV; hgcCons_->waferFromPosition( xpos_[i], ypos_[i], zside_[i], layer_[i], waferU, waferV, cellU, cellV, waferType, wt, false, debug_); HGCalParameters::waferInfo info = hgcCons_->waferInfo(layer_[i], waferU, waferV); + double dR(0); + if ((waferU_[i] != 0) || (waferV_[i] != 0)) { + std::pair xy = hgcCons_->locateCell(zside_[i], layer_[i], waferU, waferV, cellU, cellV, false, true, false, false); + double dx = (xpos_[i] - xy.first); + double dy = (ypos_[i] - xy.second); + dR = std::sqrt(dx*dx + dy*dy); + } + std::string ck = (dR > tolR) ? " ***** ERROR *****" : ""; edm::LogVerbatim("HGCalGeom") << "Input " << dets << ":" << zside_[i] << ":" << layer_[i] << ":" << std::setprecision(4) << xpos_[i] << ":" << std::setprecision(4) << ypos_[i] - << " WaferType " << waferType << " Wafer " << waferU << ":" << waferV << " Cell " + << " WaferType " << waferType << " Wafer " << waferU << ":" << waferU_[i] << ":" << waferV << ":" << waferV_[i] << " Cell " << cellU << ":" << cellV << " wt " << wt << " part:orien:cass " << info.part << ":" - << info.orient << ":" << info.cassette; + << info.orient << ":" << info.cassette << " deltaR " << dR << ck; if (invert_ && (zside_[i] == -1)) { + waferU = waferV = cellU = cellV = waferType = wt = dR = 0; + double xx = ((waferU_[i] != 0) || (waferV_[i] != 0)) ? xpos_[i] : -xpos_[i]; hgcCons_->waferFromPosition( - -xpos_[i], ypos_[i], zside_[i], layer_[i], waferU, waferV, cellU, cellV, waferType, wt, false, debug_); + xx, ypos_[i], zside_[i], layer_[i], waferU, waferV, cellU, cellV, waferType, wt, false, debug_); info = hgcCons_->waferInfo(layer_[i], waferU, waferV); + if ((waferU_[i] != 0) || (waferV_[i] != 0)) { + std::pair xy = hgcCons_->locateCell(zside_[i], layer_[i], waferU, waferV, cellU, cellV, false, true, false, false); + double dx = (xpos_[i] - xy.first); + double dy = (ypos_[i] - xy.second); + dR = std::sqrt(dx*dx + dy*dy); + } + ck = (dR > tolR) ? " ***** ERROR *****" : ""; edm::LogVerbatim("HGCalGeom") << "Input " << dets << ":" << zside_[i] << ":" << layer_[i] << ":" << std::setprecision(4) << -xpos_[i] << ":" << std::setprecision(4) << ypos_[i] << " WaferType " << waferType << " Wafer " << waferU << ":" << waferV << " Cell " << cellU << ":" << cellV << " wt " << wt << " part:orien:cass " << info.part - << ":" << info.orient << ":" << info.cassette; + << ":" << info.orient << ":" << info.cassette << " deltaR " << dR << ck; } } } diff --git a/Geometry/HGCalCommonData/test/python/testHGCalPartialIDTester2_cfg.py b/Geometry/HGCalCommonData/test/python/testHGCalPartialIDTester2_cfg.py new file mode 100644 index 0000000000000..e66db43c2ebee --- /dev/null +++ b/Geometry/HGCalCommonData/test/python/testHGCalPartialIDTester2_cfg.py @@ -0,0 +1,102 @@ +############################################################################### +# Way to use this: +# cmsRun testHGCalPartialIDTester_cfg.py geometry=D98 type=DDD +# +# Options for geometry: D104 +# type: DDD, DD4hep +# +############################################################################### +import FWCore.ParameterSet.Config as cms +import os, sys, importlib, re, random +import FWCore.ParameterSet.VarParsing as VarParsing + +#################################################################### +### SETUP OPTIONS +options = VarParsing.VarParsing('standard') +options.register('geometry', + "D104", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "geometry of operations: D104") +options.register('type', + "DDD", + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "type of operations: DDD, DD4hep") + +### get and parse the command line arguments +options.parseArguments() + +print(options) + +#################################################################### +# Use the options + +from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9 +if (options.type == "DD4hep"): + from Configuration.ProcessModifiers.dd4hep_cff import dd4hep + process = cms.Process('Sim2026',Phase2C17I13M9,dd4hep) + geomFile = "Configuration.Geometry.Geometry" + options.type +"Extended2026" + options.geometry + "Reco_cff" +else: + process = cms.Process('Sim2026',Phase2C17I13M9) + geomFile = "Configuration.Geometry.GeometryExtended2026" + options.geometry + "Reco_cff" + +globalTag = "auto:phase2_realistic_T25" +inFile = "partial" + options.geometry + ".txt" + +print("Geometry file: ", geomFile) +print("Global Tag: ", globalTag) +print("Input file: ", inFile) + +process.load(geomFile) +process.load("SimGeneral.HepPDTESSource.pythiapdt_cfi") +process.load("FWCore.MessageService.MessageLogger_cfi") +process.load("IOMC.EventVertexGenerators.VtxSmearedGauss_cfi") +process.load("Configuration.StandardSequences.MagneticField_cff") +process.load("Configuration.EventContent.EventContent_cff") +process.load("Configuration.StandardSequences.SimIdeal_cff") +process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff") +from Configuration.AlCa.GlobalTag import GlobalTag +process.GlobalTag = GlobalTag(process.GlobalTag, globalTag, '') + +process.source = cms.Source("EmptySource") + +process.maxEvents = cms.untracked.PSet( + input = cms.untracked.int32(1), + output = cms.optional.untracked.allowed(cms.int32,cms.PSet) +) + +if 'MessageLogger' in process.__dict__: + process.MessageLogger.G4cerr=dict() + process.MessageLogger.HGCalGeom=dict() + +process.load("IOMC.RandomEngine.IOMC_cff") +process.RandomNumberGeneratorService.generator.initialSeed = 456789 +process.RandomNumberGeneratorService.g4SimHits.initialSeed = 9876 +process.RandomNumberGeneratorService.VtxSmeared.initialSeed = 123456789 +process.rndmStore = cms.EDProducer("RandomEngineStateProducer") + +process.generator = cms.EDProducer("FlatRandomEGunProducer", + PGunParameters = cms.PSet( + PartID = cms.vint32(14), + MinEta = cms.double(-3.5), + MaxEta = cms.double(3.5), + MinPhi = cms.double(-3.14159265359), + MaxPhi = cms.double(3.14159265359), + MinE = cms.double(9.99), + MaxE = cms.double(10.01) + ), + AddAntiParticle = cms.bool(False), + Verbosity = cms.untracked.int32(0), + firstRun = cms.untracked.uint32(1) + ) + +process.load("Geometry.HGCalCommonData.hgcalPartialIDTester_cff") +process.hgcalPartialIDTesterEE.fileName = inFile +process.hgcalPartialIDTesterHEF.fileName = inFile +process.hgcalPartialIDTesterEE.invert = True +process.hgcalPartialIDTesterHEF.invert = True +process.hgcalPartialIDTesterEE.debug = False +process.hgcalPartialIDTesterHEF.debug = False + +process.p1 = cms.Path(process.generator*process.hgcalPartialIDTesterEE*process.hgcalPartialIDTesterHEF) diff --git a/SimG4CMS/Calo/interface/HGCalNumberingScheme.h b/SimG4CMS/Calo/interface/HGCalNumberingScheme.h index e730f0c2ab5c3..10209a54c2cf0 100644 --- a/SimG4CMS/Calo/interface/HGCalNumberingScheme.h +++ b/SimG4CMS/Calo/interface/HGCalNumberingScheme.h @@ -31,7 +31,7 @@ class HGCalNumberingScheme { uint32_t getUnitID(int layer, int module, int cell, int iz, const G4ThreeVector& pos, double& wt); private: - void checkPosition(uint32_t index, const G4ThreeVector& pos, bool matchOnly, bool debug) const; + bool checkPosition(uint32_t index, const G4ThreeVector& pos, bool matchOnly, bool debug) const; const HGCalDDDConstants& hgcons_; const HGCalGeometryMode::GeometryMode mode_; diff --git a/SimG4CMS/Calo/src/HGCalNumberingScheme.cc b/SimG4CMS/Calo/src/HGCalNumberingScheme.cc index 787a82133e997..3b7e8e14f08a2 100644 --- a/SimG4CMS/Calo/src/HGCalNumberingScheme.cc +++ b/SimG4CMS/Calo/src/HGCalNumberingScheme.cc @@ -16,7 +16,7 @@ #include #include -//#define EDM_ML_DEBUG +#define EDM_ML_DEBUG HGCalNumberingScheme::HGCalNumberingScheme(const HGCalDDDConstants& hgc, const DetId::Detector& det, @@ -178,26 +178,29 @@ uint32_t HGCalNumberingScheme::getUnitID(int layer, int module, int cell, int iz << " R " << pos.perp(); #ifdef EDM_ML_DEBUG } else { - edm::LogVerbatim("HGCSim") << "Radius/Phi " << id[0] << ":" << id[1] << " Type " << id[2] << " Layer|iz " << layer - << ":" << iz << " ERROR"; + edm::LogVerbatim("HGCSim") << "Radius/Phi " << id[0] << ":" << id[1] << " Type " << id[2] << " Layer|iz " << layer << ":" << iz << " for i/p Layer " << layer << " module " << module << " cell " << cell << " iz " << iz << " pos " << pos << " wt " << wt << " ERROR"; #endif } } #ifdef EDM_ML_DEBUG - bool matchOnly = ((mode_ == HGCalGeometryMode::Hexagon8Module) || (mode_ == HGCalGeometryMode::Hexagon8Cassette)); + bool matchOnly = hgcons_.waferHexagon8Module(); bool debug = hgcons_.waferHexagon8File(); if (debug) edm::LogVerbatim("HGCSim") << "HGCalNumberingScheme::i/p " << det_ << ":" << layer << ":" << module << ":" << cell << ":" << iz << ":" << pos.x() << ":" << pos.y() << ":" << pos.z() << " ID " << std::hex << index << std::dec << " wt " << wt; - checkPosition(index, pos, matchOnly, debug); + bool ok = checkPosition(index, pos, matchOnly, debug); + if (matchOnly && (!ok)) + edm::LogVerbatim("HGCSim") << "HGCalNumberingScheme::i/p " << det_ << ":" << layer << ":" << module << ":" << cell + << ":" << iz << ":" << pos.x() << ":" << pos.y() << ":" << pos.z() << " ID " << std::hex + << index << std::dec << " wt " << wt << " flag " << ok << " ERROR"; #endif return index; } -void HGCalNumberingScheme::checkPosition(uint32_t index, const G4ThreeVector& pos, bool matchOnly, bool debug) const { +bool HGCalNumberingScheme::checkPosition(uint32_t index, const G4ThreeVector& pos, bool matchOnly, bool debug) const { std::pair xy; - bool ok(false); + bool ok(false), iok(true); double z1(0), tolR(14.0), tolZ(1.0); int lay(-1); if (index == 0) { @@ -234,6 +237,8 @@ void HGCalNumberingScheme::checkPosition(uint32_t index, const G4ThreeVector& po : ""); if (matchOnly && match) ck = ""; + if (ck != "") + iok = false; if (!(match && inok && outok) || debug) { edm::LogVerbatim("HGCSim") << "HGCalNumberingScheme::Detector " << det_ << " Layer " << lay << " R " << r2 << ":" << r1 << ":" << rrange.first << ":" << rrange.second << " Z " << z2 << ":" << z1 << ":" @@ -250,11 +255,17 @@ void HGCalNumberingScheme::checkPosition(uint32_t index, const G4ThreeVector& po double dx = (xx - xy.first); double dy = (pos.y() - xy.second); double dR = std::sqrt(dx * dx + dy * dy); - ck = (dR > tolR) ? " ***** ERROR *****" : ""; + if (dR > tolR) { + ck = " ***** ERROR *****"; + iok = false; + } else { + ck = ""; + } edm::LogVerbatim("HGCSim") << "HGCalNumberingScheme " << HGCSiliconDetId(index) << " original position " << xx << ":" << pos.y() << " derived " << xy.first << ":" << xy.second << " Difference " << dR << ck; } } } + return iok; } From 55973e67e3b0185f540740ac52012abe6eee201b Mon Sep 17 00:00:00 2001 From: Sunanda Date: Thu, 14 Dec 2023 16:42:34 +0100 Subject: [PATCH 096/281] Code check --- .../HGCalCommonData/src/HGCalDDDConstants.cc | 136 ++++++++++-------- .../test/HGCalPartialIDTester.cc | 66 +++++---- SimG4CMS/Calo/src/HGCalNumberingScheme.cc | 10 +- 3 files changed, 119 insertions(+), 93 deletions(-) diff --git a/Geometry/HGCalCommonData/src/HGCalDDDConstants.cc b/Geometry/HGCalCommonData/src/HGCalDDDConstants.cc index 5b527534164d3..463d951c25cd7 100644 --- a/Geometry/HGCalCommonData/src/HGCalDDDConstants.cc +++ b/Geometry/HGCalCommonData/src/HGCalDDDConstants.cc @@ -1478,7 +1478,9 @@ void HGCalDDDConstants::waferFromPosition(const double x, } if (debug) edm::LogVerbatim("HGCalGeom") << "waferFromPosition:: Layer " << layer << ":" << ll << " Rot " << rotx << " X " << x - << ":" << xx << " Y " << y << ":" << yy << " side " << zside << " extend " << extend << " initial wafer index " << waferU << ":" << waferV;; + << ":" << xx << " Y " << y << ":" << yy << " side " << zside << " extend " << extend + << " initial wafer index " << waferU << ":" << waferV; + ; double rmax = extend ? rmaxT_ : rmax_; double hexside = extend ? hexsideT_ : hexside_; if (waferin) { @@ -1488,47 +1490,58 @@ void HGCalDDDConstants::waferFromPosition(const double x, waferU = HGCalWaferIndex::waferU(hgpar_->waferCopy_[k]); waferV = HGCalWaferIndex::waferV(hgpar_->waferCopy_[k]); if (cassetteMode()) { - int indx = HGCalWaferIndex::waferIndex(layer, waferU, waferV); - auto ktr = hgpar_->waferInfoMap_.find(indx); - if (ktr != hgpar_->waferInfoMap_.end()) { - auto cshift = hgcassette_.getShift(layer, -1, (ktr->second).cassette); - if (debug) - edm::LogVerbatim("HGCalGeom") << "Cassette " << (ktr->second).cassette << " Shift " << cshift.first << ":" << cshift.second; - dx0 = -cshift.first; - dy0 = cshift.second; - } + int indx = HGCalWaferIndex::waferIndex(layer, waferU, waferV); + auto ktr = hgpar_->waferInfoMap_.find(indx); + if (ktr != hgpar_->waferInfoMap_.end()) { + auto cshift = hgcassette_.getShift(layer, -1, (ktr->second).cassette); + if (debug) + edm::LogVerbatim("HGCalGeom") + << "Cassette " << (ktr->second).cassette << " Shift " << cshift.first << ":" << cshift.second; + dx0 = -cshift.first; + dy0 = cshift.second; + } } double dx = std::abs(xx - dx0 - hgpar_->waferPosX_[k]); double dy = std::abs(yy - dy0 - hgpar_->waferPosY_[k]); constexpr double tolc = 0.01; if (debug) { - edm::LogVerbatim("HGCalGeom") << "Wafer " << waferU << ":" << waferV << " position " << xx << ":" << yy << " Distance " << dx << ":" << dy << " diff0 " << (dx - rmax) << ":" << (dy - hexside) << " diff1 " << (dy - 0.5 * hexside) << ":" << (dx * tan30deg_ - (hexside - dy)); - if ((dx - rmax) <= tolc && (dy - hexside) <= tolc) { - tolmin = std::min(tolmin, (dy - 0.5 * hexside)); - tolmin = std::min(tolmin, (dx * tan30deg_ - (hexside - dy))); - } + edm::LogVerbatim("HGCalGeom") << "Wafer " << waferU << ":" << waferV << " position " << xx << ":" << yy + << " Distance " << dx << ":" << dy << " diff0 " << (dx - rmax) << ":" + << (dy - hexside) << " diff1 " << (dy - 0.5 * hexside) << ":" + << (dx * tan30deg_ - (hexside - dy)); + if ((dx - rmax) <= tolc && (dy - hexside) <= tolc) { + tolmin = std::min(tolmin, (dy - 0.5 * hexside)); + tolmin = std::min(tolmin, (dx * tan30deg_ - (hexside - dy))); + } } if ((dx - rmax) <= tolc && (dy - hexside) <= tolc) { - if (((dy - 0.5 * hexside) <= tolc) || ((dx * tan30deg_ - (hexside - dy)) <= tolc)) { - if (waferHexagon8File()) { - int index = HGCalWaferIndex::waferIndex(layer, waferU, waferV); - celltype = HGCalWaferType::getType(index, hgpar_->waferInfoMap_); - if (debug) - edm::LogVerbatim("HGCalGeom") << "Position (" << x << ", " << y << ") Wafer type:partial:orient:cassette " - << celltype << ":" << HGCalWaferType::getPartial(index, hgpar_->waferInfoMap_) - << ":" << HGCalWaferType::getOrient(index, hgpar_->waferInfoMap_) << ":" - << HGCalWaferType::getCassette(index, hgpar_->waferInfoMap_); - } else { - auto itr = hgpar_->typesInLayers_.find(HGCalWaferIndex::waferIndex(layer, waferU, waferV)); - celltype = ((itr == hgpar_->typesInLayers_.end()) ? HGCSiliconDetId::HGCalCoarseThick - : hgpar_->waferTypeL_[itr->second]); - } - if (debug) - edm::LogVerbatim("HGCalGeom") << "WaferFromPosition:: Input " << layer << ":" << ll << ":" << hgpar_->firstLayer_ << ":" << rotx << ":" << x << ":" << y << ":" << hgpar_->xLayerHex_[ll] << ":" << hgpar_->yLayerHex_[ll] << ":" << xx << ":" << yy << " compared with " << hgpar_->waferPosX_[k] << ":" << hgpar_->waferPosY_[k] << " difference " << dx << ":" << dy << ":" << dx * tan30deg_ << ":" << (hexside_ - dy) << " comparator " << rmax_ << ":" << rmaxT_ << ":" << hexside_ << ":" << hexsideT_ << " wafer " << waferU << ":" << waferV << ":" << celltype; - xx -= (dx0 + hgpar_->waferPosX_[k]); - yy -= (dy0 + hgpar_->waferPosY_[k]); - break; - } + if (((dy - 0.5 * hexside) <= tolc) || ((dx * tan30deg_ - (hexside - dy)) <= tolc)) { + if (waferHexagon8File()) { + int index = HGCalWaferIndex::waferIndex(layer, waferU, waferV); + celltype = HGCalWaferType::getType(index, hgpar_->waferInfoMap_); + if (debug) + edm::LogVerbatim("HGCalGeom") + << "Position (" << x << ", " << y << ") Wafer type:partial:orient:cassette " << celltype << ":" + << HGCalWaferType::getPartial(index, hgpar_->waferInfoMap_) << ":" + << HGCalWaferType::getOrient(index, hgpar_->waferInfoMap_) << ":" + << HGCalWaferType::getCassette(index, hgpar_->waferInfoMap_); + } else { + auto itr = hgpar_->typesInLayers_.find(HGCalWaferIndex::waferIndex(layer, waferU, waferV)); + celltype = ((itr == hgpar_->typesInLayers_.end()) ? HGCSiliconDetId::HGCalCoarseThick + : hgpar_->waferTypeL_[itr->second]); + } + if (debug) + edm::LogVerbatim("HGCalGeom") + << "WaferFromPosition:: Input " << layer << ":" << ll << ":" << hgpar_->firstLayer_ << ":" << rotx + << ":" << x << ":" << y << ":" << hgpar_->xLayerHex_[ll] << ":" << hgpar_->yLayerHex_[ll] << ":" << xx + << ":" << yy << " compared with " << hgpar_->waferPosX_[k] << ":" << hgpar_->waferPosY_[k] + << " difference " << dx << ":" << dy << ":" << dx * tan30deg_ << ":" << (hexside_ - dy) + << " comparator " << rmax_ << ":" << rmaxT_ << ":" << hexside_ << ":" << hexsideT_ << " wafer " + << waferU << ":" << waferV << ":" << celltype; + xx -= (dx0 + hgpar_->waferPosX_[k]); + yy -= (dy0 + hgpar_->waferPosY_[k]); + break; + } } } if (debug) @@ -1537,30 +1550,35 @@ void HGCalDDDConstants::waferFromPosition(const double x, for (unsigned int k = 0; k < hgpar_->waferPosX_.size(); ++k) { double dx0(0), dy0(0); if ((waferU == HGCalWaferIndex::waferU(hgpar_->waferCopy_[k])) && - (waferV == HGCalWaferIndex::waferV(hgpar_->waferCopy_[k]))) { - if (cassetteMode()) { - int indx = HGCalWaferIndex::waferIndex(layer, waferU, waferV); - auto ktr = hgpar_->waferInfoMap_.find(indx); - if (ktr != hgpar_->waferInfoMap_.end()) { - auto cshift = hgcassette_.getShift(layer, -1, (ktr->second).cassette); - if (debug) - edm::LogVerbatim("HGCalGeom") << "Cassette " << (ktr->second).cassette << " Shift " << cshift.first << ":" << cshift.second; - dx0 = -cshift.first; - dy0 = cshift.second; - } - } - if (waferHexagon8File()) { - int index = HGCalWaferIndex::waferIndex(layer, waferU, waferV); - celltype = HGCalWaferType::getType(index, hgpar_->waferInfoMap_); - if (debug) - edm::LogVerbatim("HGCalGeom") << "Position (" << x << ", " << y << ") Wafer type:partial:orient:cassette " << celltype << ":" << HGCalWaferType::getPartial(index, hgpar_->waferInfoMap_) << ":" << HGCalWaferType::getOrient(index, hgpar_->waferInfoMap_) << ":" << HGCalWaferType::getCassette(index, hgpar_->waferInfoMap_); - } else { - auto itr = hgpar_->typesInLayers_.find(HGCalWaferIndex::waferIndex(layer, waferU, waferV)); - celltype = ((itr == hgpar_->typesInLayers_.end()) ? HGCSiliconDetId::HGCalCoarseThick : hgpar_->waferTypeL_[itr->second]); - } - xx -= (dx0 + hgpar_->waferPosX_[k]); - yy -= (dy0 + hgpar_->waferPosY_[k]); - break; + (waferV == HGCalWaferIndex::waferV(hgpar_->waferCopy_[k]))) { + if (cassetteMode()) { + int indx = HGCalWaferIndex::waferIndex(layer, waferU, waferV); + auto ktr = hgpar_->waferInfoMap_.find(indx); + if (ktr != hgpar_->waferInfoMap_.end()) { + auto cshift = hgcassette_.getShift(layer, -1, (ktr->second).cassette); + if (debug) + edm::LogVerbatim("HGCalGeom") + << "Cassette " << (ktr->second).cassette << " Shift " << cshift.first << ":" << cshift.second; + dx0 = -cshift.first; + dy0 = cshift.second; + } + } + if (waferHexagon8File()) { + int index = HGCalWaferIndex::waferIndex(layer, waferU, waferV); + celltype = HGCalWaferType::getType(index, hgpar_->waferInfoMap_); + if (debug) + edm::LogVerbatim("HGCalGeom") << "Position (" << x << ", " << y << ") Wafer type:partial:orient:cassette " + << celltype << ":" << HGCalWaferType::getPartial(index, hgpar_->waferInfoMap_) + << ":" << HGCalWaferType::getOrient(index, hgpar_->waferInfoMap_) << ":" + << HGCalWaferType::getCassette(index, hgpar_->waferInfoMap_); + } else { + auto itr = hgpar_->typesInLayers_.find(HGCalWaferIndex::waferIndex(layer, waferU, waferV)); + celltype = ((itr == hgpar_->typesInLayers_.end()) ? HGCSiliconDetId::HGCalCoarseThick + : hgpar_->waferTypeL_[itr->second]); + } + xx -= (dx0 + hgpar_->waferPosX_[k]); + yy -= (dy0 + hgpar_->waferPosY_[k]); + break; } } } diff --git a/Geometry/HGCalCommonData/test/HGCalPartialIDTester.cc b/Geometry/HGCalCommonData/test/HGCalPartialIDTester.cc index 5d93d0b244d7f..6bf9d02ad686a 100644 --- a/Geometry/HGCalCommonData/test/HGCalPartialIDTester.cc +++ b/Geometry/HGCalCommonData/test/HGCalPartialIDTester.cc @@ -89,36 +89,38 @@ HGCalPartialIDTester::HGCalPartialIDTester(const edm::ParameterSet &iC) if ((det == DetId::HGCalEE) || (det == DetId::HGCalHSi)) { zside_.emplace_back(std::atoi(items[1].c_str())); layer_.emplace_back(std::atoi(items[2].c_str())); - waferU_.emplace_back(0); - waferV_.emplace_back(0); + waferU_.emplace_back(0); + waferV_.emplace_back(0); xpos_.emplace_back(std::atof(items[3].c_str())); ypos_.emplace_back(std::atof(items[4].c_str())); - zpos_.emplace_back(0); + zpos_.emplace_back(0); } } - } else if (items.size() == 8) { + } else if (items.size() == 8) { DetId::Detector det = static_cast(std::atoi(items[0].c_str())); if (det == dets) { if ((det == DetId::HGCalEE) || (det == DetId::HGCalHSi)) { layer_.emplace_back(std::atoi(items[1].c_str())); - int module = std::atoi(items[2].c_str()); - waferU_.emplace_back(HGCalTypes::getUnpackedU(module)); - waferV_.emplace_back(HGCalTypes::getUnpackedV(module)); - int zside = std::atoi(items[4].c_str()); - zside_.emplace_back(zside); + int module = std::atoi(items[2].c_str()); + waferU_.emplace_back(HGCalTypes::getUnpackedU(module)); + waferV_.emplace_back(HGCalTypes::getUnpackedV(module)); + int zside = std::atoi(items[4].c_str()); + zside_.emplace_back(zside); xpos_.emplace_back(zside * std::atof(items[5].c_str())); ypos_.emplace_back(std::atof(items[6].c_str())); zpos_.emplace_back(std::atof(items[7].c_str())); - } - } - } + } + } + } } fInput.close(); } } edm::LogVerbatim("HGCalGeom") << "Reads " << layer_.size() << " posiitons for det " << dets << " from " << fileName_; for (unsigned int k = 0; k < layer_.size(); ++k) { - edm::LogVerbatim("HGCalGeom") << "[" << k << "] Layer " << layer_[k] << " Wafer " << waferU_[k] << ":" << waferV_[k] << " zside " << zside_[k] << " position " << xpos_[k] << ":" << ypos_[k] << ":" << zpos_[k]; + edm::LogVerbatim("HGCalGeom") << "[" << k << "] Layer " << layer_[k] << " Wafer " << waferU_[k] << ":" + << waferV_[k] << " zside " << zside_[k] << " position " << xpos_[k] << ":" << ypos_[k] + << ":" << zpos_[k]; } } @@ -144,36 +146,40 @@ void HGCalPartialIDTester::beginRun(edm::Run const &iRun, edm::EventSetup const for (uint32_t i = 0; i < layer_.size(); i++) { int waferU(waferU_[i]), waferV(waferV_[i]), cellU(0), cellV(0), waferType(0); double wt(0); - edm::LogVerbatim("HGCalGeom") << "Input " << xpos_[i] << ":" << ypos_[i] << ":" << zside_[i] << ":" << layer_[i] << ":" << waferU << ":" << waferV; + edm::LogVerbatim("HGCalGeom") << "Input " << xpos_[i] << ":" << ypos_[i] << ":" << zside_[i] << ":" << layer_[i] + << ":" << waferU << ":" << waferV; hgcCons_->waferFromPosition( xpos_[i], ypos_[i], zside_[i], layer_[i], waferU, waferV, cellU, cellV, waferType, wt, false, debug_); HGCalParameters::waferInfo info = hgcCons_->waferInfo(layer_[i], waferU, waferV); double dR(0); if ((waferU_[i] != 0) || (waferV_[i] != 0)) { - std::pair xy = hgcCons_->locateCell(zside_[i], layer_[i], waferU, waferV, cellU, cellV, false, true, false, false); - double dx = (xpos_[i] - xy.first); - double dy = (ypos_[i] - xy.second); - dR = std::sqrt(dx*dx + dy*dy); + std::pair xy = + hgcCons_->locateCell(zside_[i], layer_[i], waferU, waferV, cellU, cellV, false, true, false, false); + double dx = (xpos_[i] - xy.first); + double dy = (ypos_[i] - xy.second); + dR = std::sqrt(dx * dx + dy * dy); } std::string ck = (dR > tolR) ? " ***** ERROR *****" : ""; edm::LogVerbatim("HGCalGeom") << "Input " << dets << ":" << zside_[i] << ":" << layer_[i] << ":" << std::setprecision(4) << xpos_[i] << ":" << std::setprecision(4) << ypos_[i] - << " WaferType " << waferType << " Wafer " << waferU << ":" << waferU_[i] << ":" << waferV << ":" << waferV_[i] << " Cell " - << cellU << ":" << cellV << " wt " << wt << " part:orien:cass " << info.part << ":" - << info.orient << ":" << info.cassette << " deltaR " << dR << ck; + << " WaferType " << waferType << " Wafer " << waferU << ":" << waferU_[i] << ":" + << waferV << ":" << waferV_[i] << " Cell " << cellU << ":" << cellV << " wt " << wt + << " part:orien:cass " << info.part << ":" << info.orient << ":" << info.cassette + << " deltaR " << dR << ck; if (invert_ && (zside_[i] == -1)) { - waferU = waferV = cellU = cellV = waferType = wt = dR = 0; - double xx = ((waferU_[i] != 0) || (waferV_[i] != 0)) ? xpos_[i] : -xpos_[i]; + waferU = waferV = cellU = cellV = waferType = wt = dR = 0; + double xx = ((waferU_[i] != 0) || (waferV_[i] != 0)) ? xpos_[i] : -xpos_[i]; hgcCons_->waferFromPosition( xx, ypos_[i], zside_[i], layer_[i], waferU, waferV, cellU, cellV, waferType, wt, false, debug_); info = hgcCons_->waferInfo(layer_[i], waferU, waferV); - if ((waferU_[i] != 0) || (waferV_[i] != 0)) { - std::pair xy = hgcCons_->locateCell(zside_[i], layer_[i], waferU, waferV, cellU, cellV, false, true, false, false); - double dx = (xpos_[i] - xy.first); - double dy = (ypos_[i] - xy.second); - dR = std::sqrt(dx*dx + dy*dy); - } - ck = (dR > tolR) ? " ***** ERROR *****" : ""; + if ((waferU_[i] != 0) || (waferV_[i] != 0)) { + std::pair xy = + hgcCons_->locateCell(zside_[i], layer_[i], waferU, waferV, cellU, cellV, false, true, false, false); + double dx = (xpos_[i] - xy.first); + double dy = (ypos_[i] - xy.second); + dR = std::sqrt(dx * dx + dy * dy); + } + ck = (dR > tolR) ? " ***** ERROR *****" : ""; edm::LogVerbatim("HGCalGeom") << "Input " << dets << ":" << zside_[i] << ":" << layer_[i] << ":" << std::setprecision(4) << -xpos_[i] << ":" << std::setprecision(4) << ypos_[i] << " WaferType " << waferType << " Wafer " << waferU << ":" << waferV << " Cell " diff --git a/SimG4CMS/Calo/src/HGCalNumberingScheme.cc b/SimG4CMS/Calo/src/HGCalNumberingScheme.cc index 3b7e8e14f08a2..beb344a7e92a3 100644 --- a/SimG4CMS/Calo/src/HGCalNumberingScheme.cc +++ b/SimG4CMS/Calo/src/HGCalNumberingScheme.cc @@ -178,7 +178,9 @@ uint32_t HGCalNumberingScheme::getUnitID(int layer, int module, int cell, int iz << " R " << pos.perp(); #ifdef EDM_ML_DEBUG } else { - edm::LogVerbatim("HGCSim") << "Radius/Phi " << id[0] << ":" << id[1] << " Type " << id[2] << " Layer|iz " << layer << ":" << iz << " for i/p Layer " << layer << " module " << module << " cell " << cell << " iz " << iz << " pos " << pos << " wt " << wt << " ERROR"; + edm::LogVerbatim("HGCSim") << "Radius/Phi " << id[0] << ":" << id[1] << " Type " << id[2] << " Layer|iz " << layer + << ":" << iz << " for i/p Layer " << layer << " module " << module << " cell " << cell + << " iz " << iz << " pos " << pos << " wt " << wt << " ERROR"; #endif } } @@ -237,7 +239,7 @@ bool HGCalNumberingScheme::checkPosition(uint32_t index, const G4ThreeVector& po : ""); if (matchOnly && match) ck = ""; - if (ck != "") + if (!ck.empty()) iok = false; if (!(match && inok && outok) || debug) { edm::LogVerbatim("HGCSim") << "HGCalNumberingScheme::Detector " << det_ << " Layer " << lay << " R " << r2 << ":" @@ -255,9 +257,9 @@ bool HGCalNumberingScheme::checkPosition(uint32_t index, const G4ThreeVector& po double dx = (xx - xy.first); double dy = (pos.y() - xy.second); double dR = std::sqrt(dx * dx + dy * dy); - if (dR > tolR) { + if (dR > tolR) { ck = " ***** ERROR *****"; - iok = false; + iok = false; } else { ck = ""; } From 19f3de0b402217572969e1eb68a25ddcff5ad293 Mon Sep 17 00:00:00 2001 From: AdrianoDee Date: Thu, 14 Dec 2023 20:15:02 +0100 Subject: [PATCH 097/281] Moving to ZEE_14 --- Configuration/PyReleaseValidation/python/relval_2017.py | 2 +- Configuration/PyReleaseValidation/scripts/README.md | 2 +- Configuration/PyReleaseValidation/scripts/runTheMatrix.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Configuration/PyReleaseValidation/python/relval_2017.py b/Configuration/PyReleaseValidation/python/relval_2017.py index 3a4b2fe5b6d5f..088cff74d42e9 100644 --- a/Configuration/PyReleaseValidation/python/relval_2017.py +++ b/Configuration/PyReleaseValidation/python/relval_2017.py @@ -84,7 +84,7 @@ 12434.521, 12450.501,12450.505, 14034.0,14234.0,14040.303, - 12425.0, + 12446.0, 12834.0,13034.0,13034.99,] for numWF in numWFIB: diff --git a/Configuration/PyReleaseValidation/scripts/README.md b/Configuration/PyReleaseValidation/scripts/README.md index 3403692c85f3d..a4850843a16e9 100644 --- a/Configuration/PyReleaseValidation/scripts/README.md +++ b/Configuration/PyReleaseValidation/scripts/README.md @@ -321,7 +321,7 @@ MC workflows for pp collisions: | 11634.0 | TTbar_14TeV | phase1_2022_realistic | Run3 | | | 13234.0 | RelValTTbar_14TeV | phase1_2022_realistic | Run3_FastSim | *FastSim* | | 12434.0 | RelValTTbar_14TeV | phase1_2023_realistic | Run3_2023 | | -| 12425.0 | RelValZEE_13 | phase1_2023_realistic | Run3_2023 | | +| 12446.0 | RelValZEE_14 | phase1_2023_realistic | Run3_2023 | | | 12634.0 | RelValTTbar_14TeV | phase1_2023_realistic | Run3_2023 | Run3_Flat55To75_PoissonOOTPU | | 12434.7 | RelValTTbar_14TeV | phase1_2023_realistic | Run3_2023 | mkFit | | 14034.0 | RelValTTbar_14TeV | phase1_2023_realistic | Run3_2023_FastSim | *FastSim* | diff --git a/Configuration/PyReleaseValidation/scripts/runTheMatrix.py b/Configuration/PyReleaseValidation/scripts/runTheMatrix.py index dc7bf9940038a..4138e276b5454 100755 --- a/Configuration/PyReleaseValidation/scripts/runTheMatrix.py +++ b/Configuration/PyReleaseValidation/scripts/runTheMatrix.py @@ -81,7 +81,7 @@ def runSelected(opt): 11634.0, # TTbar_14TeV 13234.0, # RelValTTbar_14TeV FastsSim 12434.0, # RelValTTbar_14TeV - 12425.0, # RelValZEE_13 + 12446.0, # RelValZEE_13 12634.0, # RelValTTbar_14TeV PU = Run3_Flat55To75_PoissonOOTPU 12434.7, # RelValTTbar_14TeV mkFit 14034.0, # RelValTTbar_14TeV Run3_2023_FastSim From 5813b588622fa08429631f7ab6ce52b86b1d715d Mon Sep 17 00:00:00 2001 From: jsamudio Date: Thu, 14 Dec 2023 13:22:24 -0600 Subject: [PATCH 098/281] Update configuration to run alpaka-based PF clustering --- .../PFClusterProducer/python/particleFlowCluster_cff.py | 2 +- .../PFClusterProducer/python/pfClusterHBHEAlpaka_cff.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/RecoParticleFlow/PFClusterProducer/python/particleFlowCluster_cff.py b/RecoParticleFlow/PFClusterProducer/python/particleFlowCluster_cff.py index 6971ce8a0052a..3436581964004 100644 --- a/RecoParticleFlow/PFClusterProducer/python/particleFlowCluster_cff.py +++ b/RecoParticleFlow/PFClusterProducer/python/particleFlowCluster_cff.py @@ -91,6 +91,6 @@ from Configuration.ProcessModifiers.alpaka_cff import alpaka def _addProcessPFClusterAlpaka(process): - process.load("RecoParticleFlow.PFClusterProducerAlpaka.pfClusterHBHEAlpaka_cff") + process.load("RecoParticleFlow.PFClusterProducer.pfClusterHBHEAlpaka_cff") modifyConfigurationPFClusterAlpaka_ = alpaka.makeProcessModifier(_addProcessPFClusterAlpaka) diff --git a/RecoParticleFlow/PFClusterProducer/python/pfClusterHBHEAlpaka_cff.py b/RecoParticleFlow/PFClusterProducer/python/pfClusterHBHEAlpaka_cff.py index 8053333f0769d..631eee2cec974 100644 --- a/RecoParticleFlow/PFClusterProducer/python/pfClusterHBHEAlpaka_cff.py +++ b/RecoParticleFlow/PFClusterProducer/python/pfClusterHBHEAlpaka_cff.py @@ -61,13 +61,14 @@ pfClusterParamsESProducer = _pfClusterParamsESProducer.clone() pfClusterSoAProducer = _pfClusterSoAProducer.clone( pfRecHits = 'pfRecHitSoAProducerHCAL', + topology = "pfRecHitHCALTopologyESProducer:", pfClusterParams = 'pfClusterParamsESProducer:', synchronise = cms.bool(False) ) legacyPFClusterProducer = _legacyPFClusterProducer.clone( - src = 'pfClusterProducerAlpaka', + src = 'pfClusterSoAProducer', pfClusterParams = 'pfClusterParamsESProducer:', pfClusterBuilder = particleFlowClusterHBHE.pfClusterBuilder, recHitsSource = 'legacyPFRecHitProducer', From fc82e45bbab2eb8e5e4ed4516a29058ad4fe1e20 Mon Sep 17 00:00:00 2001 From: Matevz Tadel Date: Thu, 14 Dec 2023 12:28:41 -0800 Subject: [PATCH 099/281] Add bool IterationParams::useHitSelectionV2, when true use MkFinder::selectHitIndicesV2(). --- RecoTracker/MkFitCore/interface/IterationConfig.h | 1 + RecoTracker/MkFitCore/src/HitStructures.cc | 8 +++++--- RecoTracker/MkFitCore/src/IterationConfig.cc | 1 + RecoTracker/MkFitCore/src/MkBuilder.cc | 5 ++++- 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/RecoTracker/MkFitCore/interface/IterationConfig.h b/RecoTracker/MkFitCore/interface/IterationConfig.h index bab0e56b958ab..5504d2476e504 100644 --- a/RecoTracker/MkFitCore/interface/IterationConfig.h +++ b/RecoTracker/MkFitCore/interface/IterationConfig.h @@ -91,6 +91,7 @@ namespace mkfit { float chi2CutOverlap = 3.5; float pTCutOverlap = 0.0; bool recheckOverlap = false; + bool useHitSelectionV2 = false; //quality filter params int minHitsQF = 4; diff --git a/RecoTracker/MkFitCore/src/HitStructures.cc b/RecoTracker/MkFitCore/src/HitStructures.cc index da2afc2f60b0f..258bf295d72f6 100644 --- a/RecoTracker/MkFitCore/src/HitStructures.cc +++ b/RecoTracker/MkFitCore/src/HitStructures.cc @@ -91,6 +91,9 @@ namespace mkfit { m_hit_infos.reserve(m_n_hits); } + // Factor to get from hit sigma to half-length in q direction. + const float hl_fac = is_pixel() ? 3.0f : std::sqrt(3.0f); + for (unsigned int i = 0; i < m_n_hits; ++i) { const Hit &h = hitv[i]; @@ -100,13 +103,12 @@ namespace mkfit { m_binnor.register_entry_safe(phi, q); if (Config::usePhiQArrays) { - const float sqrt3 = std::sqrt(3); float half_length, qbar; if (m_is_barrel) { - half_length = sqrt3 * std::sqrt(h.ezz()); + half_length = hl_fac * std::sqrt(h.ezz()); qbar = h.r(); } else { - half_length = sqrt3 * std::sqrt(h.exx() + h.eyy()); + half_length = hl_fac * std::sqrt(h.exx() + h.eyy()); qbar = h.z(); } hinfos.emplace_back(HitInfo({phi, q, half_length, qbar})); diff --git a/RecoTracker/MkFitCore/src/IterationConfig.cc b/RecoTracker/MkFitCore/src/IterationConfig.cc index b1ddb549f8952..b4b5e612584a9 100644 --- a/RecoTracker/MkFitCore/src/IterationConfig.cc +++ b/RecoTracker/MkFitCore/src/IterationConfig.cc @@ -62,6 +62,7 @@ namespace mkfit { /* float */ chi2CutOverlap, /* float */ pTCutOverlap, /* bool */ recheckOverlap, + /* bool */ useHitSelectionV2, /* int */ minHitsQF, /* float */ minPtCut, /* unsigned int */ maxClusterSize) diff --git a/RecoTracker/MkFitCore/src/MkBuilder.cc b/RecoTracker/MkFitCore/src/MkBuilder.cc index 0a6db9d05f1c7..4d4e3a30d1675 100644 --- a/RecoTracker/MkFitCore/src/MkBuilder.cc +++ b/RecoTracker/MkFitCore/src/MkBuilder.cc @@ -1088,7 +1088,10 @@ namespace mkfit { dprint("now get hit range"); - mkfndr->selectHitIndices(layer_of_hits, end - itrack); + if (iter_params.useHitSelectionV2) + mkfndr->selectHitIndicesV2(layer_of_hits, end - itrack); + else + mkfndr->selectHitIndices(layer_of_hits, end - itrack); find_tracks_handle_missed_layers( mkfndr, layer_info, extra_cands, seed_cand_idx, region, start_seed, itrack, end); From bce91ddae2ea2e504002e520e5e464f831f68b62 Mon Sep 17 00:00:00 2001 From: Matevz Tadel Date: Thu, 14 Dec 2023 12:37:59 -0800 Subject: [PATCH 100/281] Rescale pixel hit sigma by 3 to get to cluster extents in q direction. --- RecoTracker/MkFitCore/src/HitStructures.cc | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/RecoTracker/MkFitCore/src/HitStructures.cc b/RecoTracker/MkFitCore/src/HitStructures.cc index 258bf295d72f6..91d9cebdeb60a 100644 --- a/RecoTracker/MkFitCore/src/HitStructures.cc +++ b/RecoTracker/MkFitCore/src/HitStructures.cc @@ -170,13 +170,14 @@ namespace mkfit { m_binnor.register_entry_safe(phi, q); if (Config::usePhiQArrays) { - const float sqrt3 = std::sqrt(3); + // Factor to get from hit sigma to half-length in q direction. + const float hl_fac = is_pixel() ? 3.0f : std::sqrt(3.0f); float half_length, qbar; if (m_is_barrel) { - half_length = sqrt3 * std::sqrt(h.ezz()); + half_length = hl_fac * std::sqrt(h.ezz()); qbar = h.r(); } else { - half_length = sqrt3 * std::sqrt(h.exx() + h.eyy()); + half_length = hl_fac * std::sqrt(h.exx() + h.eyy()); qbar = h.z(); } m_hit_infos.emplace_back(HitInfo({phi, q, half_length, qbar})); From e3adedd092f960f1f02080fc9413fd4a8b367525 Mon Sep 17 00:00:00 2001 From: Aleksandra Krzeminska Date: Tue, 14 Nov 2023 15:03:12 +0100 Subject: [PATCH 101/281] new PI plugin added, prints out text info about TotemDAQMapping class --- .../DAQMappingPayloadInspectorHelper.h | 91 +++++++++++++++++++ CondCore/CTPPSPlugins/plugins/BuildFile.xml | 7 +- .../plugins/DAQMapping_PayloadInspector.cc | 18 ++++ CondCore/CTPPSPlugins/src/plugin.cc | 48 +++++----- CondCore/CTPPSPlugins/test/testDAQMapping.sh | 29 ++++++ 5 files changed, 171 insertions(+), 22 deletions(-) create mode 100644 CondCore/CTPPSPlugins/interface/DAQMappingPayloadInspectorHelper.h create mode 100644 CondCore/CTPPSPlugins/plugins/DAQMapping_PayloadInspector.cc create mode 100755 CondCore/CTPPSPlugins/test/testDAQMapping.sh diff --git a/CondCore/CTPPSPlugins/interface/DAQMappingPayloadInspectorHelper.h b/CondCore/CTPPSPlugins/interface/DAQMappingPayloadInspectorHelper.h new file mode 100644 index 0000000000000..4642d1fbccf9a --- /dev/null +++ b/CondCore/CTPPSPlugins/interface/DAQMappingPayloadInspectorHelper.h @@ -0,0 +1,91 @@ +#ifndef CONDCORE_CTPPSPLUGINS_PPSDAQMAPPINGPAYLOADINSPECTORHELPER_H +#define CONDCORE_CTPPSPLUGINS_PPSDAQMAPPINGPAYLOADINSPECTORHELPER_H + +// User includes +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "CondCore/Utilities/interface/PayloadInspectorModule.h" +#include "CondCore/Utilities/interface/PayloadInspector.h" +#include "CondCore/CondDB/interface/Time.h" +#include "CondFormats/PPSObjects/interface/TotemDAQMapping.h" +#include "DataFormats/CTPPSDetId/interface/CTPPSDetId.h" + +// system includes +#include +#include + +// ROOT includes +#include "TCanvas.h" +#include "TStyle.h" +#include "TH2F.h" +#include "TLatex.h" +#include "TGraph.h" + +namespace DAQMappingPI { + inline std::string resolveDetIDForDAQMapping(int detIDNumber) { + static const std::map mapping = {{CTPPSDetId::SubDetector::sdTrackingStrip, "Strip"}, + {CTPPSDetId::SubDetector::sdTrackingPixel, "Pixel"}, + {CTPPSDetId::SubDetector::sdTimingDiamond, "Diamond"}, + {CTPPSDetId::SubDetector::sdTimingFastSilicon, "FastSilicon"}, + {CTPPSDetId::SubDetector::sdTotemT2, "TotemT2"}}; + + auto it = mapping.find(detIDNumber); + if (it != mapping.end()) { + return it->second; + } else { + return "not defined"; + } + } +} // namespace DAQMappingPI + +template +class DAQMappingPayloadInfo + : public cond::payloadInspector::PlotImage { +public: + DAQMappingPayloadInfo() + : cond::payloadInspector::PlotImage( + "DAQMappingPayloadInfo text") {} + + bool fill() override { + auto tag = cond::payloadInspector::PlotBase::getTag<0>(); + auto tagname = tag.name; + auto iov = tag.iovs.back(); + auto m_payload = this->fetchPayload(std::get<1>(iov)); + + if (m_payload != nullptr) { + std::stringstream payloadInfo, lineCountStream; + int subDet = CTPPSDetId(m_payload->VFATMapping.begin()->second.symbolicID.symbolicID).subdetId(); + payloadInfo << "TAG: " << tagname << ", the mapping for: " << DAQMappingPI::resolveDetIDForDAQMapping(subDet) + << std::endl; + payloadInfo << *m_payload; + lineCountStream << *m_payload; + std::string line; + + //created to dynamically set canvas height + int lineCounter = 0; + while (std::getline(lineCountStream, line)) { + lineCounter++; + } + + TCanvas canvas("canvas", "Canvas", 800, 20 * lineCounter); + + TLatex latex; + latex.SetNDC(); + latex.SetTextSize(0.015); + double yPos = 0.95; + + while (std::getline(payloadInfo, line)) { + yPos -= 0.015; + latex.DrawLatex(0.1, yPos, line.c_str()); + } + + std::string fileName(this->m_imageFileName); + canvas.SaveAs(fileName.c_str()); + + return true; + } else { + return false; + } + } +}; + +#endif diff --git a/CondCore/CTPPSPlugins/plugins/BuildFile.xml b/CondCore/CTPPSPlugins/plugins/BuildFile.xml index 062613a3ab481..9384a5f0d7a53 100644 --- a/CondCore/CTPPSPlugins/plugins/BuildFile.xml +++ b/CondCore/CTPPSPlugins/plugins/BuildFile.xml @@ -12,4 +12,9 @@ - \ No newline at end of file + + + + + + diff --git a/CondCore/CTPPSPlugins/plugins/DAQMapping_PayloadInspector.cc b/CondCore/CTPPSPlugins/plugins/DAQMapping_PayloadInspector.cc new file mode 100644 index 0000000000000..4bcf88c1f3691 --- /dev/null +++ b/CondCore/CTPPSPlugins/plugins/DAQMapping_PayloadInspector.cc @@ -0,0 +1,18 @@ +/**************************************************************************** + * + * This is a part of PPS PI software. + * + ****************************************************************************/ + +#include "CondCore/Utilities/interface/PayloadInspectorModule.h" +#include "CondCore/Utilities/interface/PayloadInspector.h" +#include "CondCore/CondDB/interface/Time.h" +#include "CondCore/CondDB/interface/PayloadReader.h" +#include "CondFormats/PPSObjects/interface/TotemDAQMapping.h" +#include "CondCore/CTPPSPlugins/interface/DAQMappingPayloadInspectorHelper.h" + +namespace { + typedef DAQMappingPayloadInfo DAQMappingPayloadInfo_Text; +} + +PAYLOAD_INSPECTOR_MODULE(TotemDAQMapping) { PAYLOAD_INSPECTOR_CLASS(DAQMappingPayloadInfo_Text); } diff --git a/CondCore/CTPPSPlugins/src/plugin.cc b/CondCore/CTPPSPlugins/src/plugin.cc index 2bd2270159d39..89ebdc0fc0dcc 100644 --- a/CondCore/CTPPSPlugins/src/plugin.cc +++ b/CondCore/CTPPSPlugins/src/plugin.cc @@ -1,32 +1,36 @@ #include "CondCore/ESSources/interface/registration_macros.h" -#include "CondFormats/PPSObjects/interface/CTPPSBeamParameters.h" +#include "CondFormats/AlignmentRecord/interface/CTPPSRPAlignmentCorrectionsDataRcd.h" +#include "CondFormats/AlignmentRecord/interface/RPMisalignedAlignmentRecord.h" +#include "CondFormats/AlignmentRecord/interface/RPRealAlignmentRecord.h" #include "CondFormats/DataRecord/interface/CTPPSBeamParametersRcd.h" -#include "CondFormats/PPSObjects/interface/CTPPSPixelDAQMapping.h" +#include "CondFormats/DataRecord/interface/CTPPSOpticsRcd.h" +#include "CondFormats/DataRecord/interface/CTPPSPixelAnalysisMaskRcd.h" #include "CondFormats/DataRecord/interface/CTPPSPixelDAQMappingRcd.h" +#include "CondFormats/DataRecord/interface/CTPPSPixelGainCalibrationsRcd.h" +#include "CondFormats/DataRecord/interface/PPSAlignmentConfigRcd.h" +#include "CondFormats/DataRecord/interface/PPSAlignmentConfigurationRcd.h" +#include "CondFormats/DataRecord/interface/PPSAssociationCutsRcd.h" +#include "CondFormats/DataRecord/interface/PPSDirectSimulationDataRcd.h" +#include "CondFormats/DataRecord/interface/PPSPixelTopologyRcd.h" +#include "CondFormats/DataRecord/interface/PPSTimingCalibrationLUTRcd.h" +#include "CondFormats/DataRecord/interface/PPSTimingCalibrationRcd.h" +#include "CondFormats/DataRecord/interface/TotemAnalysisMaskRcd.h" +#include "CondFormats/DataRecord/interface/TotemReadoutRcd.h" +#include "CondFormats/PPSObjects/interface/CTPPSBeamParameters.h" #include "CondFormats/PPSObjects/interface/CTPPSPixelAnalysisMask.h" -#include "CondFormats/DataRecord/interface/CTPPSPixelAnalysisMaskRcd.h" +#include "CondFormats/PPSObjects/interface/CTPPSPixelDAQMapping.h" #include "CondFormats/PPSObjects/interface/CTPPSPixelGainCalibrations.h" -#include "CondFormats/DataRecord/interface/CTPPSPixelGainCalibrationsRcd.h" #include "CondFormats/PPSObjects/interface/CTPPSRPAlignmentCorrectionsData.h" -#include "CondFormats/AlignmentRecord/interface/CTPPSRPAlignmentCorrectionsDataRcd.h" -#include "CondFormats/AlignmentRecord/interface/RPRealAlignmentRecord.h" -#include "CondFormats/AlignmentRecord/interface/RPMisalignedAlignmentRecord.h" -#include "CondFormats/PPSObjects/interface/PPSTimingCalibration.h" -#include "CondFormats/DataRecord/interface/PPSTimingCalibrationRcd.h" -#include "CondFormats/PPSObjects/interface/PPSTimingCalibrationLUT.h" -#include "CondFormats/DataRecord/interface/PPSTimingCalibrationLUTRcd.h" #include "CondFormats/PPSObjects/interface/LHCOpticalFunctionsSetCollection.h" -#include "CondFormats/DataRecord/interface/CTPPSOpticsRcd.h" -#include "CondFormats/PPSObjects/interface/PPSDirectSimulationData.h" -#include "CondFormats/DataRecord/interface/PPSDirectSimulationDataRcd.h" -#include "CondFormats/PPSObjects/interface/PPSPixelTopology.h" -#include "CondFormats/DataRecord/interface/PPSPixelTopologyRcd.h" #include "CondFormats/PPSObjects/interface/PPSAlignmentConfig.h" -#include "CondFormats/DataRecord/interface/PPSAlignmentConfigRcd.h" #include "CondFormats/PPSObjects/interface/PPSAlignmentConfiguration.h" -#include "CondFormats/DataRecord/interface/PPSAlignmentConfigurationRcd.h" #include "CondFormats/PPSObjects/interface/PPSAssociationCuts.h" -#include "CondFormats/DataRecord/interface/PPSAssociationCutsRcd.h" +#include "CondFormats/PPSObjects/interface/PPSDirectSimulationData.h" +#include "CondFormats/PPSObjects/interface/PPSPixelTopology.h" +#include "CondFormats/PPSObjects/interface/PPSTimingCalibration.h" +#include "CondFormats/PPSObjects/interface/PPSTimingCalibrationLUT.h" +#include "CondFormats/PPSObjects/interface/TotemAnalysisMask.h" +#include "CondFormats/PPSObjects/interface/TotemDAQMapping.h" namespace { struct InitAssociationCuts { @@ -39,8 +43,8 @@ REGISTER_PLUGIN(CTPPSPixelDAQMappingRcd, CTPPSPixelDAQMapping); REGISTER_PLUGIN(CTPPSPixelAnalysisMaskRcd, CTPPSPixelAnalysisMask); REGISTER_PLUGIN(CTPPSPixelGainCalibrationsRcd, CTPPSPixelGainCalibrations); REGISTER_PLUGIN(CTPPSRPAlignmentCorrectionsDataRcd, CTPPSRPAlignmentCorrectionsData); -REGISTER_PLUGIN(RPRealAlignmentRecord, CTPPSRPAlignmentCorrectionsData); -REGISTER_PLUGIN(RPMisalignedAlignmentRecord, CTPPSRPAlignmentCorrectionsData); +REGISTER_PLUGIN_NO_SERIAL(RPRealAlignmentRecord, CTPPSRPAlignmentCorrectionsData); +REGISTER_PLUGIN_NO_SERIAL(RPMisalignedAlignmentRecord, CTPPSRPAlignmentCorrectionsData); REGISTER_PLUGIN(PPSTimingCalibrationRcd, PPSTimingCalibration); REGISTER_PLUGIN(PPSTimingCalibrationLUTRcd, PPSTimingCalibrationLUT); REGISTER_PLUGIN(CTPPSOpticsRcd, LHCOpticalFunctionsSetCollection); @@ -48,5 +52,7 @@ REGISTER_PLUGIN(PPSDirectSimulationDataRcd, PPSDirectSimulationData); REGISTER_PLUGIN(PPSPixelTopologyRcd, PPSPixelTopology); REGISTER_PLUGIN(PPSAlignmentConfigRcd, PPSAlignmentConfig); REGISTER_PLUGIN(PPSAlignmentConfigurationRcd, PPSAlignmentConfiguration); +REGISTER_PLUGIN(TotemAnalysisMaskRcd, TotemAnalysisMask); +REGISTER_PLUGIN(TotemReadoutRcd, TotemDAQMapping); REGISTER_PLUGIN_INIT(PPSAssociationCutsRcd, PPSAssociationCuts, InitAssociationCuts); diff --git a/CondCore/CTPPSPlugins/test/testDAQMapping.sh b/CondCore/CTPPSPlugins/test/testDAQMapping.sh new file mode 100755 index 0000000000000..b187d3e0c1603 --- /dev/null +++ b/CondCore/CTPPSPlugins/test/testDAQMapping.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +if [ "$1" == "run" ] +then + mkdir -p $CMSSW_BASE/src/CondCore/CTPPSPlugins/test/results + if [ -f *.png ]; then + rm *.png + fi + + echo "Testing DAQMapping info" + + getPayloadData.py \ + --plugin pluginTotemDAQMapping_PayloadInspector \ + --plot plot_DAQMappingPayloadInfo_Text \ + --tag PPSDAQMapping_TimingDiamond_v1 \ + --time_type Run \ + --iovs '{"start_iov": "283820", "end_iov": "283820"}' \ + --db Prod \ + --test + + mv *.png $CMSSW_BASE/src/CondCore/CTPPSPlugins/test/results/DAQMapping_TextInfo.png + +elif [ "$1" == "clear" ] +then + rm -rf $CMSSW_BASE/src/CondCore/CTPPSPlugins/test/results + +else + echo "Wrong option! (available options: run/clear)" +fi From 0a516e4a30089f0d02bd5d7a94547fec01f0b846 Mon Sep 17 00:00:00 2001 From: Matteo Migliorini Date: Fri, 15 Dec 2023 12:10:43 +0100 Subject: [PATCH 102/281] Added L1 trigger objects interface + Renamed scouting classes --- DataFormats/L1Scouting/README.md | 8 + .../L1Scouting/interface/L1ScoutingCalo.h | 82 ++++---- .../L1Scouting/interface/L1ScoutingMuon.h | 32 ++-- .../L1Scouting/interface/OrbitCollection.h | 13 +- DataFormats/L1Scouting/src/classes_def.xml | 54 +++--- .../L1Scouting/test/TestReadL1Scouting.cc | 158 ++++++++------- .../L1Scouting/test/TestWriteL1Scouting.cc | 154 +++++---------- DataFormats/L1ScoutingRawData/README.md | 8 + .../plugins/ScCALORawToDigi.cc | 40 ++-- .../plugins/ScCALORawToDigi.h | 8 +- .../plugins/ScGMTRawToDigi.cc | 10 +- .../plugins/ScGMTRawToDigi.h | 2 +- .../Utilities/interface/convertToL1TFormat.h | 26 +++ .../Utilities/interface/printScObjects.h | 12 +- .../Utilities/plugins/DumpScObjects.cc | 62 +++--- .../Utilities/src/convertToL1TFormat.cc | 180 ++++++++++++++++++ .../Utilities/src/printScObjects.cc | 12 +- 17 files changed, 513 insertions(+), 348 deletions(-) create mode 100644 DataFormats/L1Scouting/README.md create mode 100644 DataFormats/L1ScoutingRawData/README.md create mode 100644 L1TriggerScouting/Utilities/interface/convertToL1TFormat.h create mode 100644 L1TriggerScouting/Utilities/src/convertToL1TFormat.cc diff --git a/DataFormats/L1Scouting/README.md b/DataFormats/L1Scouting/README.md new file mode 100644 index 0000000000000..c25fbf3387ee8 --- /dev/null +++ b/DataFormats/L1Scouting/README.md @@ -0,0 +1,8 @@ +# DataFormats/L1Scouting + +## L1 Trigger Scouting data formats + +Any changes to the L1 scouting data formats must be backwards compatible. +In order to ensure the L1 Scouting formats can be read by future CMSSW releases, +there is a `TestWriteL1ScoutingDataFormats` unit test, which makes use of the `TestReadL1Scouting` analyzer and the `TestWriteL1Scouting` producer. +The unit test checks that objects can be written and read properly. \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h index 947d35a12a83d..cda560a0c7783 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h @@ -5,13 +5,13 @@ namespace l1ScoutingRun3 { - class ScCaloObject { + class CaloObject { public: - ScCaloObject() : hwEt_(0), hwEta_(0), hwPhi_(0), hwIso_(0) {} + CaloObject() : hwEt_(0), hwEta_(0), hwPhi_(0), hwIso_(0) {} - ScCaloObject(int hwEt, int hwEta, int hwPhi, int iso) : hwEt_(hwEt), hwEta_(hwEta), hwPhi_(hwPhi), hwIso_(iso) {} + CaloObject(int hwEt, int hwEta, int hwPhi, int iso) : hwEt_(hwEt), hwEta_(hwEta), hwPhi_(hwPhi), hwIso_(iso) {} - void swap(ScCaloObject& other) { + void swap(CaloObject& other) { using std::swap; swap(hwEt_, other.hwEt_); swap(hwEta_, other.hwEta_); @@ -36,34 +36,34 @@ namespace l1ScoutingRun3 { int hwIso_; }; - class ScJet : public ScCaloObject { + class Jet : public CaloObject { public: - ScJet() : ScCaloObject(0, 0, 0, 0) {} + Jet() : CaloObject(0, 0, 0, 0) {} - ScJet(int hwEt, int hwEta, int hwPhi, int hwQual) : ScCaloObject(hwEt, hwEta, hwPhi, hwQual) {} + Jet(int hwEt, int hwEta, int hwPhi, int hwQual) : CaloObject(hwEt, hwEta, hwPhi, hwQual) {} // store quality instead of iso void setHwQual(int hwQual) { setHwIso(hwQual); } int hwQual() const { return hwIso(); } }; - class ScEGamma : public ScCaloObject { + class EGamma : public CaloObject { public: - ScEGamma() : ScCaloObject(0, 0, 0, 0) {} + EGamma() : CaloObject(0, 0, 0, 0) {} - ScEGamma(int hwEt, int hwEta, int hwPhi, int iso) : ScCaloObject(hwEt, hwEta, hwPhi, iso) {} + EGamma(int hwEt, int hwEta, int hwPhi, int iso) : CaloObject(hwEt, hwEta, hwPhi, iso) {} }; - class ScTau : public ScCaloObject { + class Tau : public CaloObject { public: - ScTau() : ScCaloObject(0, 0, 0, 0) {} + Tau() : CaloObject(0, 0, 0, 0) {} - ScTau(int hwEt, int hwEta, int hwPhi, int iso) : ScCaloObject(hwEt, hwEta, hwPhi, iso) {} + Tau(int hwEt, int hwEta, int hwPhi, int iso) : CaloObject(hwEt, hwEta, hwPhi, iso) {} }; - class ScBxSums { + class BxSums { public: - ScBxSums() + BxSums() : hwTotalEt_(0), hwTotalEtEm_(0), hwTotalHt_(0), @@ -86,27 +86,27 @@ namespace l1ScoutingRun3 { towerCount_(0), centrality_(0) {} - ScBxSums(int hwTotalEt, - int hwTotalEtEm, - int hwTotalHt, - int hwMissEt, - int hwMissEtPhi, - int hwMissHt, - int hwMissHtPhi, - int hwMissEtHF, - int hwMissEtHFPhi, - int hwMissHtHF, - int hwMissHtHFPhi, - int hwAsymEt, - int hwAsymHt, - int hwAsymEtHF, - int hwAsymHtHF, - int minBiasHFP0, - int minBiasHFM0, - int minBiasHFP1, - int minBiasHFM1, - int towerCount, - int centrality) + BxSums(int hwTotalEt, + int hwTotalEtEm, + int hwTotalHt, + int hwMissEt, + int hwMissEtPhi, + int hwMissHt, + int hwMissHtPhi, + int hwMissEtHF, + int hwMissEtHFPhi, + int hwMissHtHF, + int hwMissHtHFPhi, + int hwAsymEt, + int hwAsymHt, + int hwAsymEtHF, + int hwAsymHtHF, + int minBiasHFP0, + int minBiasHFM0, + int minBiasHFP1, + int minBiasHFM1, + int towerCount, + int centrality) : hwTotalEt_(hwTotalEt), hwTotalEtEm_(hwTotalEtEm), hwTotalHt_(hwTotalHt), @@ -129,7 +129,7 @@ namespace l1ScoutingRun3 { towerCount_(towerCount), centrality_(centrality) {} - void swap(ScBxSums& other) { + void swap(BxSums& other) { using std::swap; swap(hwTotalEt_, other.hwTotalEt_); swap(hwTotalEtEm_, other.hwTotalEtEm_); @@ -222,10 +222,10 @@ namespace l1ScoutingRun3 { int centrality_; }; - typedef OrbitCollection ScJetOrbitCollection; - typedef OrbitCollection ScEGammaOrbitCollection; - typedef OrbitCollection ScTauOrbitCollection; - typedef OrbitCollection ScBxSumsOrbitCollection; + typedef OrbitCollection JetOrbitCollection; + typedef OrbitCollection EGammaOrbitCollection; + typedef OrbitCollection TauOrbitCollection; + typedef OrbitCollection BxSumsOrbitCollection; } // namespace l1ScoutingRun3 #endif // DataFormats_L1Scouting_L1ScoutingCalo_h \ No newline at end of file diff --git a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h index 3373396c3221c..da2f251bfd9e8 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h @@ -5,9 +5,9 @@ namespace l1ScoutingRun3 { - class ScMuon { + class Muon { public: - ScMuon() + Muon() : hwPt_(0), hwEta_(0), hwPhi_(0), @@ -21,18 +21,18 @@ namespace l1ScoutingRun3 { hwPtUnconstrained_(0), hwDXY_(0) {} - ScMuon(int hwPt, - int hwEta, - int hwPhi, - int hwQual, - int hwChrg, - int hwChrgv, - int hwIso, - int tfIndex, - int hwEtaAtVtx, - int hwPhiAtVtx, - int hwPtUnconstrained, - int hwDXY) + Muon(int hwPt, + int hwEta, + int hwPhi, + int hwQual, + int hwChrg, + int hwChrgv, + int hwIso, + int tfIndex, + int hwEtaAtVtx, + int hwPhiAtVtx, + int hwPtUnconstrained, + int hwDXY) : hwPt_(hwPt), hwEta_(hwEta), hwPhi_(hwPhi), @@ -46,7 +46,7 @@ namespace l1ScoutingRun3 { hwPtUnconstrained_(hwPtUnconstrained), hwDXY_(hwDXY) {} - void swap(ScMuon& other) { + void swap(Muon& other) { using std::swap; swap(hwPt_, other.hwPt_); swap(hwEta_, other.hwEta_); @@ -104,7 +104,7 @@ namespace l1ScoutingRun3 { int hwDXY_; }; - typedef OrbitCollection ScMuonOrbitCollection; + typedef OrbitCollection MuonOrbitCollection; } // namespace l1ScoutingRun3 diff --git a/DataFormats/L1Scouting/interface/OrbitCollection.h b/DataFormats/L1Scouting/interface/OrbitCollection.h index 5e7be3080e181..3a544a648c206 100644 --- a/DataFormats/L1Scouting/interface/OrbitCollection.h +++ b/DataFormats/L1Scouting/interface/OrbitCollection.h @@ -18,12 +18,12 @@ class OrbitCollection { // Initialize the offset vector with 0s from 0 to 3565. // BX range is [1,3564], an extra entry is needed for the offserts of the last BX - OrbitCollection() : bxOffsets_(orbitBufferSize_+1, 0), data_(0) {} + OrbitCollection() : bxOffsets_(orbitBufferSize_ + 1, 0), data_(0) {} // Construct the flat orbit collection starting from an OrbitBuffer. - // The method fillAndClear will be used, meaning that, after copying the objects, + // The method fillAndClear will be used, meaning that, after copying the objects, // orbitBuffer's vectors will be cleared. OrbitCollection(std::vector>& orbitBuffer, unsigned nObjects = 0) - : bxOffsets_(orbitBufferSize_+1, 0), data_(nObjects) { + : bxOffsets_(orbitBufferSize_ + 1, 0), data_(nObjects) { fillAndClear(orbitBuffer, nObjects); } @@ -74,9 +74,8 @@ class OrbitCollection { // iterate over elements of a bx edm::Span bxIterator(unsigned bx) const { if (bx >= orbitBufferSize_) - throw cms::Exception("OrbitCollection::bxIterator") - << "Trying to access and object outside the orbit range. " - << " BX = " << bx; + throw cms::Exception("OrbitCollection::bxIterator") << "Trying to access and object outside the orbit range. " + << " BX = " << bx; if (getBxSize(bx) > 0) { return edm::Span(data_.begin() + bxOffsets_[bx], data_.begin() + bxOffsets_[bx + 1]); } else { @@ -98,7 +97,7 @@ class OrbitCollection { const T& getBxObject(unsigned bx, unsigned i) const { if (bx >= orbitBufferSize_) throw cms::Exception("OrbitCollection::getBxObject") << "Trying to access and object outside the orbit range. " - << " BX = " << bx ; + << " BX = " << bx; if (i >= getBxSize(bx)) throw cms::Exception("OrbitCollection::getBxObject") << "Trying to get element " << i << " but for" diff --git a/DataFormats/L1Scouting/src/classes_def.xml b/DataFormats/L1Scouting/src/classes_def.xml index 9a18e0720da58..994fe65b0d442 100644 --- a/DataFormats/L1Scouting/src/classes_def.xml +++ b/DataFormats/L1Scouting/src/classes_def.xml @@ -1,40 +1,40 @@ - - + + - - - + + + - - + + - - + + - - - + + + - - + + - - - + + + - - + + - - - + + + - - + + - - - + + + \ No newline at end of file diff --git a/DataFormats/L1Scouting/test/TestReadL1Scouting.cc b/DataFormats/L1Scouting/test/TestReadL1Scouting.cc index 6a1949e7eee51..b39f5f8b7547c 100644 --- a/DataFormats/L1Scouting/test/TestReadL1Scouting.cc +++ b/DataFormats/L1Scouting/test/TestReadL1Scouting.cc @@ -26,7 +26,6 @@ namespace edmtest { static void fillDescriptions(edm::ConfigurationDescriptions&); private: - void analyzeMuons(edm::Event const& iEvent) const; void analyzeJets(edm::Event const& iEvent) const; void analyzeEGammas(edm::Event const& iEvent) const; @@ -37,21 +36,21 @@ namespace edmtest { void throwWithMessage(const char*) const; const std::vector bxValues_; - + const std::vector expectedMuonValues_; - const edm::EDGetTokenT> muonsToken_; + const edm::EDGetTokenT> muonsToken_; const std::vector expectedJetValues_; - const edm::EDGetTokenT> jetsToken_; + const edm::EDGetTokenT> jetsToken_; const std::vector expectedEGammaValues_; - const edm::EDGetTokenT> eGammasToken_; + const edm::EDGetTokenT> eGammasToken_; const std::vector expectedTauValues_; - const edm::EDGetTokenT> tausToken_; + const edm::EDGetTokenT> tausToken_; const std::vector expectedBxSumsValues_; - const edm::EDGetTokenT> bxSumsToken_; + const edm::EDGetTokenT> bxSumsToken_; }; TestReadL1Scouting::TestReadL1Scouting(edm::ParameterSet const& iPSet) @@ -66,23 +65,22 @@ namespace edmtest { tausToken_(consumes(iPSet.getParameter("tausTag"))), expectedBxSumsValues_(iPSet.getParameter>("expectedBxSumsValues")), bxSumsToken_(consumes(iPSet.getParameter("bxSumsTag"))) { - - if (bxValues_.size()!=2) { + if (bxValues_.size() != 2) { throwWithMessageFromConstructor("bxValues must have 2 elements and it does not"); } - if (expectedMuonValues_.size()!=3) { + if (expectedMuonValues_.size() != 3) { throwWithMessageFromConstructor("muonValues must have 3 elements and it does not"); } - if (expectedJetValues_.size()!=4) { + if (expectedJetValues_.size() != 4) { throwWithMessageFromConstructor("jetValues must have 4 elements and it does not"); } - if (expectedEGammaValues_.size()!=3) { + if (expectedEGammaValues_.size() != 3) { throwWithMessageFromConstructor("eGammaValues must have 3 elements and it does not"); } - if (expectedTauValues_.size()!=2) { + if (expectedTauValues_.size() != 2) { throwWithMessageFromConstructor("tauValues must have 2 elements and it does not"); } - if (expectedBxSumsValues_.size()!=1) { + if (expectedBxSumsValues_.size() != 1) { throwWithMessageFromConstructor("bxSumsValues_ must have 1 elements and it does not"); } } @@ -96,82 +94,80 @@ namespace edmtest { } void TestReadL1Scouting::analyzeMuons(edm::Event const& iEvent) const { - auto const& muonsCollection = iEvent.get(muonsToken_); - for (const unsigned& bx: bxValues_){ + for (const unsigned& bx : bxValues_) { unsigned nMuons = muonsCollection.getBxSize(bx); - if (nMuons!=expectedMuonValues_.size()){ + if (nMuons != expectedMuonValues_.size()) { throwWithMessage("analyzeMuons, muons do not have the expected bx size"); } - const auto &muons = muonsCollection.bxIterator(bx); - for (unsigned i=0; i bxValues_; - + const std::vector muonValues_; - const edm::EDPutTokenT> muonsPutToken_; + const edm::EDPutTokenT> muonsPutToken_; const std::vector jetValues_; - const edm::EDPutTokenT> jetsPutToken_; + const edm::EDPutTokenT> jetsPutToken_; const std::vector eGammaValues_; - const edm::EDPutTokenT> eGammasPutToken_; + const edm::EDPutTokenT> eGammasPutToken_; const std::vector tauValues_; - const edm::EDPutTokenT> tausPutToken_; + const edm::EDPutTokenT> tausPutToken_; const std::vector bxSumsValues_; - const edm::EDPutTokenT> bxSumsPutToken_; + const edm::EDPutTokenT> bxSumsPutToken_; }; TestWriteL1Scouting::TestWriteL1Scouting(edm::ParameterSet const& iPSet) @@ -63,23 +62,22 @@ namespace edmtest { tausPutToken_(produces()), bxSumsValues_(iPSet.getParameter>("bxSumsValues")), bxSumsPutToken_(produces()) { - - if (bxValues_.size()!=2) { + if (bxValues_.size() != 2) { throwWithMessage("bxValues must have 2 elements and it does not"); } - if (muonValues_.size()!=3) { + if (muonValues_.size() != 3) { throwWithMessage("muonValues must have 3 elements and it does not"); } - if (jetValues_.size()!=4) { + if (jetValues_.size() != 4) { throwWithMessage("jetValues must have 4 elements and it does not"); } - if (eGammaValues_.size()!=3) { + if (eGammaValues_.size() != 3) { throwWithMessage("eGammaValues must have 3 elements and it does not"); } - if (tauValues_.size()!=2) { + if (tauValues_.size() != 2) { throwWithMessage("tauValues must have 2 elements and it does not"); } - if (bxSumsValues_.size()!=1) { + if (bxSumsValues_.size() != 1) { throwWithMessage("bxSumsValues_ must have 1 elements and it does not"); } } @@ -93,27 +91,14 @@ namespace edmtest { } void TestWriteL1Scouting::produceMuons(edm::Event& iEvent) const { - std::unique_ptr muons(new l1ScoutingRun3::ScMuonOrbitCollection); - - std::vector> orbitBufferMuons(3565); - int nMuons=0; - for (const unsigned& bx: bxValues_){ - for(const int& val: muonValues_){ - orbitBufferMuons[bx].emplace_back( - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val - ); - nMuons ++; + std::unique_ptr muons(new l1ScoutingRun3::MuonOrbitCollection); + + std::vector> orbitBufferMuons(3565); + int nMuons = 0; + for (const unsigned& bx : bxValues_) { + for (const int& val : muonValues_) { + orbitBufferMuons[bx].emplace_back(val, val, val, val, val, val, val, val, val, val, val, val); + nMuons++; } } @@ -122,19 +107,14 @@ namespace edmtest { } void TestWriteL1Scouting::produceJets(edm::Event& iEvent) const { - std::unique_ptr jets(new l1ScoutingRun3::ScJetOrbitCollection); - - std::vector> orbitBufferJets(3565); - int nJets=0; - for (const unsigned& bx: bxValues_){ - for(const int& val: jetValues_){ - orbitBufferJets[bx].emplace_back( - val, - val, - val, - val - ); - nJets ++; + std::unique_ptr jets(new l1ScoutingRun3::JetOrbitCollection); + + std::vector> orbitBufferJets(3565); + int nJets = 0; + for (const unsigned& bx : bxValues_) { + for (const int& val : jetValues_) { + orbitBufferJets[bx].emplace_back(val, val, val, val); + nJets++; } } @@ -143,19 +123,14 @@ namespace edmtest { } void TestWriteL1Scouting::produceEGammas(edm::Event& iEvent) const { - std::unique_ptr eGammas(new l1ScoutingRun3::ScEGammaOrbitCollection); - - std::vector> orbitBufferEGammas(3565); - int nEGammas=0; - for (const unsigned& bx: bxValues_){ - for(const int& val: eGammaValues_){ - orbitBufferEGammas[bx].emplace_back( - val, - val, - val, - val - ); - nEGammas ++; + std::unique_ptr eGammas(new l1ScoutingRun3::EGammaOrbitCollection); + + std::vector> orbitBufferEGammas(3565); + int nEGammas = 0; + for (const unsigned& bx : bxValues_) { + for (const int& val : eGammaValues_) { + orbitBufferEGammas[bx].emplace_back(val, val, val, val); + nEGammas++; } } @@ -164,58 +139,31 @@ namespace edmtest { } void TestWriteL1Scouting::produceTaus(edm::Event& iEvent) const { - std::unique_ptr taus(new l1ScoutingRun3::ScTauOrbitCollection); - - std::vector> orbitBufferTaus(3565); - int nTaus=0; - for (const unsigned& bx: bxValues_){ - for(const int& val: tauValues_){ - orbitBufferTaus[bx].emplace_back( - val, - val, - val, - val - ); - nTaus ++; + std::unique_ptr taus(new l1ScoutingRun3::TauOrbitCollection); + + std::vector> orbitBufferTaus(3565); + int nTaus = 0; + for (const unsigned& bx : bxValues_) { + for (const int& val : tauValues_) { + orbitBufferTaus[bx].emplace_back(val, val, val, val); + nTaus++; } } taus->fillAndClear(orbitBufferTaus, nTaus); iEvent.put(tausPutToken_, std::move(taus)); - } void TestWriteL1Scouting::produceBxSums(edm::Event& iEvent) const { - std::unique_ptr bxSums(new l1ScoutingRun3::ScBxSumsOrbitCollection); + std::unique_ptr bxSums(new l1ScoutingRun3::BxSumsOrbitCollection); - std::vector> orbitBufferBxSums(3565); - int nBxSums=0; - for (const unsigned& bx: bxValues_){ - for(const int& val: bxSumsValues_){ + std::vector> orbitBufferBxSums(3565); + int nBxSums = 0; + for (const unsigned& bx : bxValues_) { + for (const int& val : bxSumsValues_) { orbitBufferBxSums[bx].emplace_back( - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val, - val - ); - nBxSums ++; + val, val, val, val, val, val, val, val, val, val, val, val, val, val, val, val, val, val, val, val, val); + nBxSums++; } } diff --git a/DataFormats/L1ScoutingRawData/README.md b/DataFormats/L1ScoutingRawData/README.md new file mode 100644 index 0000000000000..4c610acbe176e --- /dev/null +++ b/DataFormats/L1ScoutingRawData/README.md @@ -0,0 +1,8 @@ +# DataFormats/L1ScoutingRawData + +## L1 Trigger Scouting raw data formats + +Any changes to the L1 scouting raw data `SDSRawDataCollection` must be backwards compatible. +In order to ensure the L1 Scouting raw data formats can be read by future CMSSW releases, +there is a `TestSDSRawDataCollectionFormat` unit test, which makes use of the `TestReadSDSRawDataCollection` analyzer and the `TestWriteSDSRawDataCollection` producer. +The unit test checks that objects can be written and read properly. \ No newline at end of file diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc index 5ec94ac356a9d..b635d82c66375 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.cc @@ -7,20 +7,20 @@ ScCaloRawToDigi::ScCaloRawToDigi(const edm::ParameterSet& iConfig) { enableAllSums_ = iConfig.getUntrackedParameter("enableAllSums", false); debug_ = iConfig.getUntrackedParameter("debug", false); - orbitBufferJets_ = std::vector>(3565); - orbitBufferEGammas_ = std::vector>(3565); - orbitBufferTaus_ = std::vector>(3565); - orbitBufferEtSums_ = std::vector>(3565); + orbitBufferJets_ = std::vector>(3565); + orbitBufferEGammas_ = std::vector>(3565); + orbitBufferTaus_ = std::vector>(3565); + orbitBufferEtSums_ = std::vector>(3565); nJetsOrbit_ = 0; nEGammasOrbit_ = 0; nTausOrbit_ = 0; nEtSumsOrbit_ = 0; - produces().setBranchAlias("ScJetOrbitCollection"); - produces().setBranchAlias("ScTauOrbitCollection"); - produces().setBranchAlias("ScEGammaOrbitCollection"); - produces().setBranchAlias("ScBxSumsOrbitCollection"); + produces().setBranchAlias("JetOrbitCollection"); + produces().setBranchAlias("TauOrbitCollection"); + produces().setBranchAlias("EGammaOrbitCollection"); + produces().setBranchAlias("BxSumsOrbitCollection"); rawToken = consumes(srcInputTag); } @@ -37,10 +37,10 @@ void ScCaloRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) const FEDRawData& sourceRawData = ScoutingRawDataCollection->FEDData(SDSNumbering::CaloSDSID); size_t orbitSize = sourceRawData.size(); - std::unique_ptr unpackedJets(new ScJetOrbitCollection); - std::unique_ptr unpackedTaus(new ScTauOrbitCollection); - std::unique_ptr unpackedEGammas(new ScEGammaOrbitCollection); - std::unique_ptr unpackedEtSums(new ScBxSumsOrbitCollection); + std::unique_ptr unpackedJets(new JetOrbitCollection); + std::unique_ptr unpackedTaus(new TauOrbitCollection); + std::unique_ptr unpackedEGammas(new EGammaOrbitCollection); + std::unique_ptr unpackedEtSums(new BxSumsOrbitCollection); if ((sourceRawData.size() == 0) && debug_) { std::cout << "No raw data for CALO source\n"; @@ -140,14 +140,14 @@ void ScCaloRawToDigi::unpackLinkJets(uint32_t* dataBlock, int bx) { if (Eta > 127) Eta = Eta - 256; - ScJet jet(ET, Eta, Phi, Qual); + Jet jet(ET, Eta, Phi, Qual); orbitBufferJets_[bx].push_back(jet); nJetsOrbit_++; if (debug_) { std::cout << "Jet " << i << std::endl; std::cout << " Raw: 0x" << std::hex << dataBlock[i] << std::dec << std::endl; - printScJet(jet); + printJet(jet); } } } // end link jets unpacking loop @@ -167,14 +167,14 @@ void ScCaloRawToDigi::unpackLinkEGammas(uint32_t* dataBlock, int bx) { if (Eta > 127) Eta = Eta - 256; - ScEGamma eGamma(ET, Eta, Phi, Iso); + EGamma eGamma(ET, Eta, Phi, Iso); orbitBufferEGammas_[bx].push_back(eGamma); nEGammasOrbit_++; if (debug_) { std::cout << "E/g " << i << std::endl; std::cout << " Raw: 0x" << std::hex << dataBlock[i] << std::dec << std::endl; - printScEGamma(eGamma); + printEGamma(eGamma); } } } // end link e/gammas unpacking loop @@ -194,14 +194,14 @@ void ScCaloRawToDigi::unpackLinkTaus(uint32_t* dataBlock, int bx) { if (Eta > 127) Eta = Eta - 256; - ScTau tau(ET, Eta, Phi, Iso); + Tau tau(ET, Eta, Phi, Iso); orbitBufferTaus_[bx].push_back(tau); nTausOrbit_++; if (debug_) { std::cout << "Tau " << i << std::endl; std::cout << " Raw: 0x" << std::hex << dataBlock[i] << std::dec << std::endl; - printScTau(tau); + printTau(tau); } } } // end link taus unpacking loop @@ -210,7 +210,7 @@ void ScCaloRawToDigi::unpackLinkTaus(uint32_t* dataBlock, int bx) { void ScCaloRawToDigi::unpackEtSums(uint32_t* dataBlock, int bx) { using namespace l1ScoutingRun3; - ScBxSums bxSums; + BxSums bxSums; int32_t ETEt(0), ETEttem(0), ETMinBiasHFP0(0); // ET int32_t HTEt(0), HTtowerCount(0), HTMinBiasHFM0(0); // HT @@ -315,7 +315,7 @@ void ScCaloRawToDigi::unpackEtSums(uint32_t* dataBlock, int bx) { for (int frame = 0; frame < 6; frame++) { std::cout << " frame " << frame << ": 0x" << std::hex << dataBlock[frame] << std::dec << std::endl; } - printScBxSums(bxSums); + printBxSums(bxSums); } } diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h index fdc8f8c79da2a..ca1bcd34e1ea3 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScCALORawToDigi.h @@ -41,10 +41,10 @@ class ScCaloRawToDigi : public edm::stream::EDProducer<> { int nJetsOrbit_, nEGammasOrbit_, nTausOrbit_, nEtSumsOrbit_; // vectors holding data for every bunch crossing // before filling the orbit collection - std::vector> orbitBufferJets_; - std::vector> orbitBufferEGammas_; - std::vector> orbitBufferTaus_; - std::vector> orbitBufferEtSums_; + std::vector> orbitBufferJets_; + std::vector> orbitBufferEGammas_; + std::vector> orbitBufferTaus_; + std::vector> orbitBufferEtSums_; bool debug_ = false; bool enableAllSums_ = false; diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc index 2759ec17ce0aa..349c250d4bba2 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.cc @@ -6,13 +6,13 @@ ScGMTRawToDigi::ScGMTRawToDigi(const edm::ParameterSet& iConfig) { debug_ = iConfig.getUntrackedParameter("debug", false); // initialize orbit buffer for BX 1->3564; - orbitBuffer_ = std::vector>(3565); + orbitBuffer_ = std::vector>(3565); for (auto& bxVec : orbitBuffer_) { bxVec.reserve(8); } nMuonsOrbit_ = 0; - produces().setBranchAlias("ScMuonOrbitCollection"); + produces().setBranchAlias("MuonOrbitCollection"); rawToken = consumes(srcInputTag); } @@ -27,7 +27,7 @@ void ScGMTRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) const FEDRawData& sourceRawData = ScoutingRawDataCollection->FEDData(SDSNumbering::GmtSDSID); size_t orbitSize = sourceRawData.size(); - std::unique_ptr unpackedMuons(new l1ScoutingRun3::ScMuonOrbitCollection); + std::unique_ptr unpackedMuons(new l1ScoutingRun3::MuonOrbitCollection); if ((sourceRawData.size() == 0) && debug_) { std::cout << "No raw data for GMT FED\n"; @@ -141,7 +141,7 @@ void ScGMTRawToDigi::unpackOrbit(const unsigned char* buf, size_t len) { // increment muon counter nMuonsOrbit_++; - l1ScoutingRun3::ScMuon muon(ipt, ieta, iphi, qual, chrg, chrg != 0, iso, index, ietaext, iphiext, iptuncon, idxy); + l1ScoutingRun3::Muon muon(ipt, ieta, iphi, qual, chrg, chrg != 0, iso, index, ietaext, iphiext, iptuncon, idxy); orbitBuffer_[bx].push_back(muon); @@ -150,7 +150,7 @@ void ScGMTRawToDigi::unpackOrbit(const unsigned char* buf, size_t len) { std::cout << " Raw f: 0x" << std::hex << bl->mu[i].f << std::dec << "\n"; std::cout << " Raw s: 0x" << std::hex << bl->mu[i].s << std::dec << "\n"; std::cout << " Raw extra: 0x" << std::hex << bl->mu[i].extra << std::dec << "\n"; - printScMuon(muon); + printMuon(muon); } } // end of bx diff --git a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h index f9acbe6c4e187..8b1622d327304 100644 --- a/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h +++ b/EventFilter/L1ScoutingRawToDigi/plugins/ScGMTRawToDigi.h @@ -35,7 +35,7 @@ class ScGMTRawToDigi : public edm::stream::EDProducer<> { // vector holding data for every bunch crossing // before filling the orbit collection - std::vector> orbitBuffer_; + std::vector> orbitBuffer_; int nMuonsOrbit_; bool debug_ = false; diff --git a/L1TriggerScouting/Utilities/interface/convertToL1TFormat.h b/L1TriggerScouting/Utilities/interface/convertToL1TFormat.h new file mode 100644 index 0000000000000..93914e4afea23 --- /dev/null +++ b/L1TriggerScouting/Utilities/interface/convertToL1TFormat.h @@ -0,0 +1,26 @@ +#ifndef L1TriggerScouting_Utilities_convertToL1TFormat_h +#define L1TriggerScouting_Utilities_convertToL1TFormat_h + +#include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" +#include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" +#include "DataFormats/L1Trigger/interface/Muon.h" +#include "DataFormats/L1Trigger/interface/Jet.h" +#include "DataFormats/L1Trigger/interface/EGamma.h" +#include "DataFormats/L1Trigger/interface/Tau.h" +#include "DataFormats/L1Trigger/interface/EtSum.h" + +#include "L1TriggerScouting/Utilities/interface/conversion.h" + +#include "iostream" + +namespace l1ScoutingRun3 { + + l1t::Muon getL1TMuon(const Muon& muon); + l1t::Jet getL1TJet(const Jet& jet); + l1t::EGamma getL1TEGamma(const EGamma& eGamma); + l1t::Tau getL1TTau(const Tau& scTau); + l1t::EtSum getL1TEtSum(const BxSums& sums, l1t::EtSum::EtSumType); + +} // namespace l1ScoutingRun3 + +#endif // L1TriggerScouting_Utilities_convertToL1TFormat_h \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/interface/printScObjects.h b/L1TriggerScouting/Utilities/interface/printScObjects.h index 7e607ac9e09f1..c2a6257811de5 100644 --- a/L1TriggerScouting/Utilities/interface/printScObjects.h +++ b/L1TriggerScouting/Utilities/interface/printScObjects.h @@ -9,13 +9,13 @@ namespace l1ScoutingRun3 { - void printScMuon(const ScMuon& muon, std::ostream& outs = std::cout); + void printMuon(const Muon& muon, std::ostream& outs = std::cout); template - void printScCaloObject(const T& obj, std::ostream& outs = std::cout); - void printScJet(const ScJet& jet, std::ostream& outs = std::cout); - void printScEGamma(const ScEGamma& eGamma, std::ostream& outs = std::cout); - void printScTau(const ScTau& tau, std::ostream& outs = std::cout); - void printScBxSums(const ScBxSums& sums, std::ostream& outs = std::cout); + void printCaloObject(const T& obj, std::ostream& outs = std::cout); + void printJet(const Jet& jet, std::ostream& outs = std::cout); + void printEGamma(const EGamma& eGamma, std::ostream& outs = std::cout); + void printTau(const Tau& tau, std::ostream& outs = std::cout); + void printBxSums(const BxSums& sums, std::ostream& outs = std::cout); } // namespace l1ScoutingRun3 diff --git a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc index 312a4d11518da..8e9e48e2eb2ab 100644 --- a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc +++ b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc @@ -20,6 +20,7 @@ #include "DataFormats/L1Scouting/interface/L1ScoutingMuon.h" #include "DataFormats/L1Scouting/interface/L1ScoutingCalo.h" #include "L1TriggerScouting/Utilities/interface/printScObjects.h" +#include "L1TriggerScouting/Utilities/interface/convertToL1TFormat.h" using namespace l1ScoutingRun3; @@ -38,17 +39,17 @@ class DumpScObjects : public edm::stream::EDAnalyzer<> { void printBx(unsigned bx); // the tokens to access the data - edm::EDGetTokenT gmtMuonsToken_; - edm::EDGetTokenT caloJetsToken_; - edm::EDGetTokenT caloEGammasToken_; - edm::EDGetTokenT caloTausToken_; - edm::EDGetTokenT caloEtSumsToken_; - - edm::Handle muonHandle_; - edm::Handle jetHandle_; - edm::Handle eGammaHandle_; - edm::Handle tauHandle_; - edm::Handle etSumHandle_; + edm::EDGetTokenT gmtMuonsToken_; + edm::EDGetTokenT caloJetsToken_; + edm::EDGetTokenT caloEGammasToken_; + edm::EDGetTokenT caloTausToken_; + edm::EDGetTokenT caloEtSumsToken_; + + edm::Handle muonHandle_; + edm::Handle jetHandle_; + edm::Handle eGammaHandle_; + edm::Handle tauHandle_; + edm::Handle etSumHandle_; // the min and max BX to be analyzed unsigned minBx_; @@ -91,15 +92,15 @@ DumpScObjects::DumpScObjects(const edm::ParameterSet& iConfig) skipEmptyBx_(iConfig.getUntrackedParameter("skipEmptyBx", true)) { if (checkMuons_) - gmtMuonsToken_ = consumes(iConfig.getParameter("gmtMuonsTag")); + gmtMuonsToken_ = consumes(iConfig.getParameter("gmtMuonsTag")); if (checkJets_) - caloJetsToken_ = consumes(iConfig.getParameter("caloJetsTag")); + caloJetsToken_ = consumes(iConfig.getParameter("caloJetsTag")); if (checkEGammas_) - caloEGammasToken_ = consumes(iConfig.getParameter("caloEGammasTag")); + caloEGammasToken_ = consumes(iConfig.getParameter("caloEGammasTag")); if (checkTaus_) - caloTausToken_ = consumes(iConfig.getParameter("caloTausTag")); + caloTausToken_ = consumes(iConfig.getParameter("caloTausTag")); if (checkEtSums_) - caloEtSumsToken_ = consumes(iConfig.getParameter("caloEtSumsTag")); + caloEtSumsToken_ = consumes(iConfig.getParameter("caloEtSumsTag")); } // ----------------------------------------------------------------------------- @@ -184,49 +185,48 @@ void DumpScObjects::printBx(unsigned bx) { if (checkMuons_ && muonHandle_.isValid()) { int i = 0; - const auto &muons = muonHandle_->bxIterator(bx); - for (const auto& muon: muons){ + const auto& muons = muonHandle_->bxIterator(bx); + for (const auto& muon : muons) { std::cout << "--- Muon " << i << " ---\n"; - printScMuon(muon); + printMuon(muon); i++; } } if (checkJets_ && jetHandle_.isValid()) { int i = 0; - const auto &jets = jetHandle_->bxIterator(bx); - for (const auto& jet: jets){ + const auto& jets = jetHandle_->bxIterator(bx); + for (const auto& jet : jets) { std::cout << "--- Jet " << i << " ---\n"; - printScJet(jet); + printJet(jet); i++; } } if (checkEGammas_ && jetHandle_.isValid()) { int i = 0; - const auto &eGammas = eGammaHandle_->bxIterator(bx); - for (const auto& egamma: eGammas){ + const auto& eGammas = eGammaHandle_->bxIterator(bx); + for (const auto& egamma : eGammas) { std::cout << "--- E/Gamma " << i << " ---\n"; - printScEGamma(egamma); + printEGamma(egamma); i++; } } if (checkTaus_ && tauHandle_.isValid()) { int i = 0; - const auto &taus = tauHandle_->bxIterator(bx); - for (const auto& tau: taus){ + const auto& taus = tauHandle_->bxIterator(bx); + for (const auto& tau : taus) { std::cout << "--- Tau " << i << " ---\n"; - printScTau(tau); + printTau(tau); i++; } } if (checkEtSums_ && etSumHandle_.isValid()) { - const auto &sums = etSumHandle_->bxIterator(bx); - for (const auto& sum: sums){ + const auto& sums = etSumHandle_->bxIterator(bx); + for (const auto& sum : sums) { std::cout << "--- Calo Sums ---\n"; - printScBxSums(sum); } } } diff --git a/L1TriggerScouting/Utilities/src/convertToL1TFormat.cc b/L1TriggerScouting/Utilities/src/convertToL1TFormat.cc new file mode 100644 index 0000000000000..655fdb8cd1130 --- /dev/null +++ b/L1TriggerScouting/Utilities/src/convertToL1TFormat.cc @@ -0,0 +1,180 @@ +#include "L1TriggerScouting/Utilities/interface/convertToL1TFormat.h" + +namespace l1ScoutingRun3 { + + l1t::Muon getL1TMuon(const Muon& muon){ + return l1t::Muon( + math::PtEtaPhiMLorentzVector( + ugmt::fPt(muon.hwPt()), + ugmt::fEta(muon.hwEta()), + ugmt::fPhi(muon.hwPhi()), + 0. + ), + muon.hwPt(), + muon.hwEta(), + muon.hwPhi(), + muon.hwQual(), + muon.hwCharge(), + muon.hwChargeValid(), + 0, + muon.tfMuonIndex(), + 0, + false, + 0, + 0, + 0, + 0, + muon.hwEtaAtVtx(), + muon.hwPhiAtVtx(), + ugmt::fEtaAtVtx(muon.hwEtaAtVtx()), + ugmt::fPhiAtVtx(muon.hwPhiAtVtx()), + muon.hwPtUnconstrained(), + ugmt::fPtUnconstrained(muon.hwPtUnconstrained()), + muon.hwDXY() + ); + } + + l1t::Jet getL1TJet(const Jet& jet){ + return l1t::Jet( + math::PtEtaPhiMLorentzVector( + demux::fEt(jet.hwEt()), + demux::fEta(jet.hwEta()), + demux::fPhi(jet.hwPhi()), + 0. + ), + jet.hwEt(), + jet.hwEta(), + jet.hwPhi(), + jet.hwIso() + ); + } + + l1t::EGamma getL1TEGamma(const EGamma& eGamma){ + return l1t::EGamma( + math::PtEtaPhiMLorentzVector( + demux::fEt(eGamma.hwEt()), + demux::fEta(eGamma.hwEta()), + demux::fPhi(eGamma.hwPhi()), + 0. + ), + eGamma.hwEt(), + eGamma.hwEta(), + eGamma.hwPhi(), + 0, + eGamma.hwIso() + ); + } + + l1t::Tau getL1TTau(const Tau& tau){ + return l1t::Tau( + math::PtEtaPhiMLorentzVector( + demux::fEt(tau.hwEt()), + demux::fEta(tau.hwEta()), + demux::fPhi(tau.hwPhi()), + 0. + ), + tau.hwEt(), + tau.hwEta(), + tau.hwPhi(), + 0, + tau.hwIso() + ); + } + + l1t::EtSum getL1TEtSum(const BxSums& sums, l1t::EtSum::EtSumType sumType){ + switch (sumType) + { + case l1t::EtSum::kTotalEt: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwTotalEt()), 0., 0., 0.), + sumType, sums.hwTotalEt(), 0, 0, 0 + ); + case l1t::EtSum::kTotalEtEm: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwTotalEtEm()), 0., 0., 0.), + sumType, sums.hwTotalEtEm(), 0, 0, 0 + ); + case l1t::EtSum::kTotalHt: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwTotalHt()), 0., 0., 0.), + sumType, sums.hwTotalHt(), 0, 0, 0 + ); + case l1t::EtSum::kMissingEt: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissEt()), 0., demux::fPhi(sums.hwMissEtPhi()), 0.), + sumType, sums.hwMissEt(), 0, sums.hwMissEtPhi(), 0 + ); + case l1t::EtSum::kMissingHt: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissHt()), 0., demux::fPhi(sums.hwMissHtPhi()), 0.), + sumType, sums.hwMissHt(), 0, sums.hwMissHtPhi(), 0 + ); + case l1t::EtSum::kMissingEtHF: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissEtHF()), 0., demux::fPhi(sums.hwMissEtHFPhi()), 0.), + sumType, sums.hwMissEtHF(), 0, sums.hwMissEtHFPhi(), 0 + ); + case l1t::EtSum::kMissingHtHF: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissHtHF()), 0., demux::fPhi(sums.hwMissHtHFPhi()), 0.), + sumType, sums.hwMissHtHF(), 0, sums.hwMissHtHFPhi(), 0 + ); + case l1t::EtSum::kAsymEt: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymEt()), 0., 0., 0.), + sumType, sums.hwAsymEt(), 0, 0, 0 + ); + case l1t::EtSum::kAsymHt: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymHt()), 0., 0., 0.), + sumType, sums.hwAsymHt(), 0, 0, 0 + ); + case l1t::EtSum::kAsymEtHF: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymEtHF()), 0., 0., 0.), + sumType, sums.hwAsymEtHF(), 0, 0, 0 + ); + case l1t::EtSum::kAsymHtHF: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymHtHF()), 0., 0., 0.), + sumType, sums.hwAsymHtHF(), 0, 0, 0 + ); + case l1t::EtSum::kMinBiasHFP0: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), + sumType, sums.minBiasHFP0(), 0, 0, 0 + ); + case l1t::EtSum::kMinBiasHFP1: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), + sumType, sums.minBiasHFP1(), 0, 0, 0 + ); + case l1t::EtSum::kMinBiasHFM0: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), + sumType, sums.minBiasHFM0(), 0, 0, 0 + ); + case l1t::EtSum::kMinBiasHFM1: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), + sumType, sums.minBiasHFM1(), 0, 0, 0 + ); + case l1t::EtSum::kCentrality: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), + sumType, sums.centrality(), 0, 0, 0 + ); + case l1t::EtSum::kTowerCount: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), + sumType, sums.towerCount(), 0, 0, 0 + ); + default: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), + l1t::EtSum::kUninitialized, 0, 0, 0, 0 + ); + } + } + +} // namespace l1ScoutingRun3 \ No newline at end of file diff --git a/L1TriggerScouting/Utilities/src/printScObjects.cc b/L1TriggerScouting/Utilities/src/printScObjects.cc index 50971931861c2..42a9e8e27bb3b 100644 --- a/L1TriggerScouting/Utilities/src/printScObjects.cc +++ b/L1TriggerScouting/Utilities/src/printScObjects.cc @@ -2,7 +2,7 @@ namespace l1ScoutingRun3 { - void printScMuon(const ScMuon& muon, std::ostream& outs) { + void printMuon(const Muon& muon, std::ostream& outs) { outs << " Pt [GeV/Hw]: " << ugmt::fPt(muon.hwPt()) << "/" << muon.hwPt() << "\n" << " Eta [rad/Hw]: " << ugmt::fEta(muon.hwEta()) << "/" << muon.hwEta() << "\n" << " Phi [rad/Hw]: " << ugmt::fPhi(muon.hwPhi()) << "/" << muon.hwPhi() << "\n" @@ -17,18 +17,18 @@ namespace l1ScoutingRun3 { } template - void printScCaloObject(const T& obj, std::ostream& outs) { + void printCaloObject(const T& obj, std::ostream& outs) { outs << " Et [GeV/Hw]: " << demux::fEt(obj.hwEt()) << "/" << obj.hwEt() << "\n" << " Eta [rad/Hw]: " << demux::fEta(obj.hwEta()) << "/" << obj.hwEta() << "\n" << " Phi [rad/Hw]: " << demux::fPhi(obj.hwPhi()) << "/" << obj.hwPhi() << "\n" << " Iso [Hw]: " << obj.hwIso() << "\n"; } - void printScJet(const ScJet& jet, std::ostream& outs) { printScCaloObject(jet, outs); } - void printScEGamma(const ScEGamma& eGamma, std::ostream& outs) { printScCaloObject(eGamma, outs); } - void printScTau(const ScTau& tau, std::ostream& outs) { printScCaloObject(tau, outs); } + void printJet(const Jet& jet, std::ostream& outs) { printCaloObject(jet, outs); } + void printEGamma(const EGamma& eGamma, std::ostream& outs) { printCaloObject(eGamma, outs); } + void printTau(const Tau& tau, std::ostream& outs) { printCaloObject(tau, outs); } - void printScBxSums(const ScBxSums& sums, std::ostream& outs) { + void printBxSums(const BxSums& sums, std::ostream& outs) { outs << "Total ET\n" << " Et [GeV/Hw]: " << demux::fEt(sums.hwTotalEt()) << "/" << sums.hwTotalEt() << "\n" << "Total ETEm\n" From ad2c5809daf395ba40ce8b8772c27c5a57be768b Mon Sep 17 00:00:00 2001 From: Vladimir Date: Fri, 15 Dec 2023 12:17:45 +0100 Subject: [PATCH 103/281] Added Russian roulette to ZDC and optionally to HGCal --- SimG4CMS/Forward/src/ZdcSD.cc | 7 +++++ .../Application/interface/StackingAction.h | 6 ++++ .../Application/interface/SteppingAction.h | 1 + .../Application/plugins/OscarMTProducer.cc | 9 +++--- SimG4Core/Application/python/g4SimHits_cfi.py | 4 +++ SimG4Core/Application/src/EventAction.cc | 11 +++---- SimG4Core/Application/src/StackingAction.cc | 26 ++++++++++++++-- SimG4Core/Application/src/SteppingAction.cc | 31 ++++++++++++------- 8 files changed, 69 insertions(+), 26 deletions(-) diff --git a/SimG4CMS/Forward/src/ZdcSD.cc b/SimG4CMS/Forward/src/ZdcSD.cc index 31db361f10e6c..0f2cd504d674a 100644 --- a/SimG4CMS/Forward/src/ZdcSD.cc +++ b/SimG4CMS/Forward/src/ZdcSD.cc @@ -96,6 +96,13 @@ bool ZdcSD::ProcessHits(G4Step* aStep, G4TouchableHistory*) { int primaryID = getTrackID(theTrack); currentID[0].setID(unitID, time, primaryID, depth); double energy = calculateCherenkovDeposit(aStep); + + // Russian Roulette + double wt2 = theTrack->GetWeight(); + if (wt2 > 0.0) { + energy *= wt2; + } + if (G4TrackToParticleID::isGammaElectronPositron(theTrack)) { edepositEM = energy; edepositHAD = 0; diff --git a/SimG4Core/Application/interface/StackingAction.h b/SimG4Core/Application/interface/StackingAction.h index a058971e35c78..6e997fb25a14f 100644 --- a/SimG4Core/Application/interface/StackingAction.h +++ b/SimG4Core/Application/interface/StackingAction.h @@ -79,6 +79,8 @@ class StackingAction : public G4UserStackingAction { const G4Region* regionMuonIron{nullptr}; const G4Region* regionPreShower{nullptr}; const G4Region* regionCastor{nullptr}; + const G4Region* regionZDC{nullptr}; + const G4Region* regionHGcal{nullptr}; const G4Region* regionWorld{nullptr}; // Russian roulette energy limits @@ -96,6 +98,10 @@ class StackingAction : public G4UserStackingAction { double nRusRoPreShower; double gRusRoCastor; double nRusRoCastor; + double gRusRoZDC; + double nRusRoZDC; + double gRusRoHGcal; + double nRusRoHGcal; double gRusRoWorld; double nRusRoWorld; // flags diff --git a/SimG4Core/Application/interface/SteppingAction.h b/SimG4Core/Application/interface/SteppingAction.h index cad14a885f48f..e5601908a5bc9 100644 --- a/SimG4Core/Application/interface/SteppingAction.h +++ b/SimG4Core/Application/interface/SteppingAction.h @@ -40,6 +40,7 @@ class SteppingAction : public G4UserSteppingAction { const G4VPhysicalVolume* calo{nullptr}; const CMSSteppingVerbose* steppingVerbose{nullptr}; const G4LogicalVolume* m_CMStoZDC{nullptr}; + const G4Region* m_ZDCRegion{nullptr}; double theCriticalEnergyForVacuum; double theCriticalDensity; double maxTrackTime; diff --git a/SimG4Core/Application/plugins/OscarMTProducer.cc b/SimG4Core/Application/plugins/OscarMTProducer.cc index f8b0fcd93abe6..807e59a4f1b8d 100644 --- a/SimG4Core/Application/plugins/OscarMTProducer.cc +++ b/SimG4Core/Application/plugins/OscarMTProducer.cc @@ -23,7 +23,6 @@ #include "SimG4Core/Application/interface/RunManagerMTWorker.h" #include "SimG4Core/Notification/interface/TmpSimEvent.h" #include "SimG4Core/Notification/interface/TmpSimVertex.h" -#include "SimG4Core/Notification/interface/TmpSimTrack.h" #include "SimG4Core/SensitiveDetector/interface/SensitiveTkDetector.h" #include "SimG4Core/SensitiveDetector/interface/SensitiveCaloDetector.h" @@ -270,9 +269,9 @@ void OscarMTProducer::produce(edm::Event& e, const edm::EventSetup& es) { e.put(std::move(p1)); e.put(std::move(p2)); - for (auto& tracker : sTk) { + for (auto const& tracker : sTk) { const std::vector& v = tracker->getNames(); - for (auto& name : v) { + for (auto const& name : v) { std::unique_ptr product(new edm::PSimHitContainer); tracker->fillHits(*product, name); if (0 < m_verbose && product != nullptr && !product->empty()) @@ -280,9 +279,9 @@ void OscarMTProducer::produce(edm::Event& e, const edm::EventSetup& es) { e.put(std::move(product), name); } } - for (auto& calo : sCalo) { + for (auto const& calo : sCalo) { const std::vector& v = calo->getNames(); - for (auto& name : v) { + for (auto const& name : v) { std::unique_ptr product(new edm::PCaloHitContainer); calo->fillHits(*product, name); if (0 < m_verbose && product != nullptr && !product->empty()) diff --git a/SimG4Core/Application/python/g4SimHits_cfi.py b/SimG4Core/Application/python/g4SimHits_cfi.py index 0027314c1bee1..8388d06a3cca9 100644 --- a/SimG4Core/Application/python/g4SimHits_cfi.py +++ b/SimG4Core/Application/python/g4SimHits_cfi.py @@ -316,6 +316,8 @@ RusRoMuonIronGamma = cms.double(0.3), RusRoPreShowerGamma = cms.double(0.3), RusRoCastorGamma = cms.double(0.3), + RusRoZDCGamma = cms.double(0.3), + RusRoHGcalGamma = cms.double(1.3), RusRoWorldGamma = cms.double(0.3), RusRoNeutronEnergyLimit = cms.double(10.0), ## (MeV) RusRoEcalNeutron = cms.double(0.1), @@ -323,6 +325,8 @@ RusRoMuonIronNeutron = cms.double(0.1), RusRoPreShowerNeutron = cms.double(0.1), RusRoCastorNeutron = cms.double(0.1), + RusRoZDCNeutron = cms.double(0.1), + RusRoHGcalNeutron = cms.double(1.1), RusRoWorldNeutron = cms.double(0.1), RusRoProtonEnergyLimit = cms.double(0.0), RusRoEcalProton = cms.double(1.0), diff --git a/SimG4Core/Application/src/EventAction.cc b/SimG4Core/Application/src/EventAction.cc index 603ef1817c009..fdbe3cf9d8716 100644 --- a/SimG4Core/Application/src/EventAction.cc +++ b/SimG4Core/Application/src/EventAction.cc @@ -2,7 +2,6 @@ #include "SimG4Core/Application/interface/SimRunInterface.h" #include "SimG4Core/Notification/interface/TmpSimEvent.h" #include "SimG4Core/Notification/interface/TmpSimVertex.h" -#include "SimG4Core/Notification/interface/TmpSimTrack.h" #include "SimG4Core/Notification/interface/BeginOfEvent.h" #include "SimG4Core/Notification/interface/EndOfEvent.h" #include "SimG4Core/Notification/interface/CMSSteppingVerbose.h" @@ -23,8 +22,6 @@ EventAction::EventAction(const edm::ParameterSet& p, m_debug(p.getUntrackedParameter("debug", false)) {} void EventAction::BeginOfEventAction(const G4Event* anEvent) { - m_trackManager->reset(); - BeginOfEvent e(anEvent); m_beginOfEventSignal(&e); @@ -41,17 +38,17 @@ void EventAction::BeginOfEventAction(const G4Event* anEvent) { void EventAction::EndOfEventAction(const G4Event* anEvent) { if (m_printRandom) { edm::LogVerbatim("SimG4CoreApplication") - << " EndOfEvent " << anEvent->GetEventID() << " Random number: " << G4UniformRand(); + << "EventACtion::EndOfEventAction: " << anEvent->GetEventID() << " Random number: " << G4UniformRand(); } if (!m_stopFile.empty() && std::ifstream(m_stopFile.c_str())) { edm::LogWarning("SimG4CoreApplication") - << "EndOfEventAction: termination signal received at event " << anEvent->GetEventID(); + << "EventACtion::EndOfEventAction: termination signal received at event " << anEvent->GetEventID(); // soft abort run m_runInterface->abortRun(true); } if (anEvent->GetNumberOfPrimaryVertex() == 0) { - edm::LogWarning("SimG4CoreApplication") << "EndOfEventAction: event " << anEvent->GetEventID() - << " must have failed (no G4PrimaryVertices found) and will be skipped "; + edm::LogWarning("SimG4CoreApplication") << "EventACtion::EndOfEventAction: event " << anEvent->GetEventID() + << " must have failed (no G4PrimaryVertices found) and will be skipped"; return; } diff --git a/SimG4Core/Application/src/StackingAction.cc b/SimG4Core/Application/src/StackingAction.cc index 4339142883ea5..968f74f72ce06 100644 --- a/SimG4Core/Application/src/StackingAction.cc +++ b/SimG4Core/Application/src/StackingAction.cc @@ -3,6 +3,7 @@ #include "SimG4Core/Notification/interface/MCTruthUtil.h" #include "SimG4Core/Notification/interface/TrackInformation.h" #include "SimG4Core/Notification/interface/CMSSteppingVerbose.h" +#include "SimG4Core/Notification/interface/G4TrackToParticleID.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" @@ -57,6 +58,11 @@ StackingAction::StackingAction(const TrackingAction* trka, const edm::ParameterS nRusRoCastor = p.getParameter("RusRoCastorNeutron"); nRusRoWorld = p.getParameter("RusRoWorldNeutron"); + gRusRoZDC = p.getParameter("RusRoZDCGamma"); + gRusRoHGcal = p.getParameter("RusRoHGcalGamma"); + nRusRoZDC = p.getParameter("RusRoZDCNeutron"); + nRusRoHGcal = p.getParameter("RusRoHGcalNeutron"); + if (gRusRoEnerLim > 0.0 && (gRusRoEcal < 1.0 || gRusRoHcal < 1.0 || gRusRoMuonIron < 1.0 || gRusRoPreShower < 1.0 || gRusRoCastor < 1.0 || gRusRoWorld < 1.0)) { gRRactive = true; @@ -239,9 +245,11 @@ G4ClassificationOfNewTrack StackingAction::ClassifyNewTrack(const G4Track* aTrac } } - if (killDeltaRay && classification != fKill && subType == fIonisation) { + if (killDeltaRay && classification != fKill && aTrack->GetParentID() > 0 && + G4TrackToParticleID::isGammaElectronPositron(aTrack)) { classification = fKill; } + if (killInCalo && classification != fKill && isThisRegion(reg, caloRegions)) { classification = fKill; } @@ -275,7 +283,7 @@ G4ClassificationOfNewTrack StackingAction::ClassifyNewTrack(const G4Track* aTrac double currentWeight = aTrack->GetWeight(); if (1.0 >= currentWeight) { - double prob = 1.0; + double prob = 1.001; double elim = 0.0; // neutron @@ -289,6 +297,10 @@ G4ClassificationOfNewTrack StackingAction::ClassifyNewTrack(const G4Track* aTrac prob = nRusRoMuonIron; } else if (reg == regionPreShower) { prob = nRusRoPreShower; + } else if (reg == regionHGcal) { + prob = nRusRoHGcal; + } else if (reg == regionZDC) { + prob = nRusRoZDC; } else if (reg == regionCastor) { prob = nRusRoCastor; } else if (reg == regionWorld) { @@ -311,6 +323,10 @@ G4ClassificationOfNewTrack StackingAction::ClassifyNewTrack(const G4Track* aTrac prob = gRusRoHcal; } else if (reg == regionMuonIron) { prob = gRusRoMuonIron; + } else if (reg == regionHGcal) { + prob = gRusRoHGcal; + } else if (reg == regionZDC) { + prob = gRusRoZDC; } else if (reg == regionCastor) { prob = gRusRoCastor; } else if (reg == regionWorld) { @@ -373,6 +389,12 @@ void StackingAction::initPointer() { if ((gRusRoCastor < 1.0 || nRusRoCastor < 1.0) && rname == "CastorRegion") { regionCastor = reg; } + if ((gRusRoZDC < 1.0 || nRusRoZDC < 1.0) && rname == "ZDCRegion") { + regionZDC = reg; + } + if ((gRusRoHGcal < 1.0 || nRusRoHGcal < 1.0) && rname == "HGCalRegion") { + regionHGcal = reg; + } if ((gRusRoWorld < 1.0 || nRusRoWorld < 1.0) && rname == "DefaultRegionForTheWorld") { regionWorld = reg; } diff --git a/SimG4Core/Application/src/SteppingAction.cc b/SimG4Core/Application/src/SteppingAction.cc index a22305baf4917..377a642149db3 100644 --- a/SimG4Core/Application/src/SteppingAction.cc +++ b/SimG4Core/Application/src/SteppingAction.cc @@ -44,7 +44,7 @@ SteppingAction::SteppingAction(const CMSSteppingVerbose* sv, const edm::Paramete << " MaxTrackTime = " << maxTrackTime / CLHEP::ns << " ns;" << " MaxZCentralCMS = " << maxZCentralCMS / CLHEP::m << " m" << " MaxTrackTimeForward = " << maxTrackTimeForward / CLHEP::ns << " ns" - << " MaxNumberOfSteps = " << maxNumberOfSteps << "\n" + << " MaxNumberOfSteps = " << maxNumberOfSteps << " ZDC: " << m_CMStoZDCtransport << "\n" << " Names of special volumes: " << trackerName_ << " " << caloName_; numberTimes = maxTrackTimes.size(); @@ -140,11 +140,18 @@ void SteppingAction::UserSteppingAction(const G4Step* aStep) { const G4LogicalVolume* lv = postStep->GetPhysicalVolume()->GetLogicalVolume(); const G4Region* theRegion = lv->GetRegion(); - // kill in dead regions excpt CMStoZDC volume + // kill in dead regions except CMStoZDC volume if (isInsideDeadRegion(theRegion) && !isForZDC(lv, std::abs(theTrack->GetParticleDefinition()->GetPDGEncoding()))) { tstat = sDeadRegion; } + // kill particles leaving ZDC + if (sAlive == sVeryForward && m_CMStoZDCtransport) { + const G4Region* preRegion = preStep->GetPhysicalVolume()->GetLogicalVolume()->GetRegion(); + if (preRegion == m_ZDCRegion && preRegion != theRegion) + tstat = sDeadRegion; + } + // kill out of time if (sAlive == tstat) { if (isOutOfTimeWindow(theRegion, time)) @@ -220,8 +227,8 @@ bool SteppingAction::initPointer() { for (auto const& pvcite : *pvs) edm::LogVerbatim("SimG4CoreApplication") << pvcite << " corresponds to " << pvcite->GetName(); #endif - const G4LogicalVolumeStore* lvs = G4LogicalVolumeStore::GetInstance(); + const G4LogicalVolumeStore* lvs = G4LogicalVolumeStore::GetInstance(); ekinVolumes.resize(numberEkins, nullptr); #ifdef EDM_ML_DEBUG edm::LogVerbatim("SimG4CoreApplication") << lvs->size() << " Logical volume in the store"; @@ -264,10 +271,10 @@ bool SteppingAction::initPointer() { for (auto const& rcite : *rs) edm::LogVerbatim("SimG4CoreApplication") << rcite << " corresponds to " << rcite->GetName(); #endif - if (numberTimes > 0) { - maxTimeRegions.resize(numberTimes, nullptr); - for (auto const& rcite : *rs) { - const G4String& rname = rcite->GetName(); + for (auto const& rcite : *rs) { + const G4String& rname = rcite->GetName(); + if (numberTimes > 0) { + maxTimeRegions.resize(numberTimes, nullptr); for (unsigned int i = 0; i < numberTimes; ++i) { if (rname == (G4String)(maxTimeNames[i])) { maxTimeRegions[i] = rcite; @@ -275,11 +282,8 @@ bool SteppingAction::initPointer() { } } } - } - if (ndeadRegions > 0) { - deadRegions.resize(ndeadRegions, nullptr); - for (auto const& rcite : *rs) { - const G4String& rname = rcite->GetName(); + if (ndeadRegions > 0) { + deadRegions.resize(ndeadRegions, nullptr); for (unsigned int i = 0; i < ndeadRegions; ++i) { if (rname == (G4String)(deadRegionNames[i])) { deadRegions[i] = rcite; @@ -287,6 +291,9 @@ bool SteppingAction::initPointer() { } } } + if (m_CMStoZDCtransport && rname == "ZDCRegion") { + m_ZDCRegion = rcite; + } } return true; } From 3823a79e2ccdd7e0744a3ebcbe89ecb098f72b11 Mon Sep 17 00:00:00 2001 From: Matteo Migliorini Date: Fri, 15 Dec 2023 12:25:21 +0100 Subject: [PATCH 104/281] Fixed unused variable warning --- L1TriggerScouting/Utilities/plugins/DumpScObjects.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc index 8e9e48e2eb2ab..bb57a7ed37da6 100644 --- a/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc +++ b/L1TriggerScouting/Utilities/plugins/DumpScObjects.cc @@ -227,6 +227,7 @@ void DumpScObjects::printBx(unsigned bx) { const auto& sums = etSumHandle_->bxIterator(bx); for (const auto& sum : sums) { std::cout << "--- Calo Sums ---\n"; + printBxSums(sum); } } } From 6dbd84ff411f109242e1d2b656f9719ecba87e6e Mon Sep 17 00:00:00 2001 From: Matteo Migliorini Date: Fri, 15 Dec 2023 12:34:14 +0100 Subject: [PATCH 105/281] applied code checks --- .../Utilities/src/convertToL1TFormat.cc | 286 ++++++++---------- 1 file changed, 125 insertions(+), 161 deletions(-) diff --git a/L1TriggerScouting/Utilities/src/convertToL1TFormat.cc b/L1TriggerScouting/Utilities/src/convertToL1TFormat.cc index 655fdb8cd1130..bb2ffda7440ba 100644 --- a/L1TriggerScouting/Utilities/src/convertToL1TFormat.cc +++ b/L1TriggerScouting/Utilities/src/convertToL1TFormat.cc @@ -2,178 +2,142 @@ namespace l1ScoutingRun3 { - l1t::Muon getL1TMuon(const Muon& muon){ + l1t::Muon getL1TMuon(const Muon& muon) { return l1t::Muon( - math::PtEtaPhiMLorentzVector( - ugmt::fPt(muon.hwPt()), - ugmt::fEta(muon.hwEta()), - ugmt::fPhi(muon.hwPhi()), - 0. - ), - muon.hwPt(), - muon.hwEta(), - muon.hwPhi(), - muon.hwQual(), - muon.hwCharge(), - muon.hwChargeValid(), - 0, - muon.tfMuonIndex(), - 0, - false, - 0, - 0, - 0, - 0, - muon.hwEtaAtVtx(), - muon.hwPhiAtVtx(), - ugmt::fEtaAtVtx(muon.hwEtaAtVtx()), - ugmt::fPhiAtVtx(muon.hwPhiAtVtx()), - muon.hwPtUnconstrained(), - ugmt::fPtUnconstrained(muon.hwPtUnconstrained()), - muon.hwDXY() - ); + math::PtEtaPhiMLorentzVector(ugmt::fPt(muon.hwPt()), ugmt::fEta(muon.hwEta()), ugmt::fPhi(muon.hwPhi()), 0.), + muon.hwPt(), + muon.hwEta(), + muon.hwPhi(), + muon.hwQual(), + muon.hwCharge(), + muon.hwChargeValid(), + 0, + muon.tfMuonIndex(), + 0, + false, + 0, + 0, + 0, + 0, + muon.hwEtaAtVtx(), + muon.hwPhiAtVtx(), + ugmt::fEtaAtVtx(muon.hwEtaAtVtx()), + ugmt::fPhiAtVtx(muon.hwPhiAtVtx()), + muon.hwPtUnconstrained(), + ugmt::fPtUnconstrained(muon.hwPtUnconstrained()), + muon.hwDXY()); } - l1t::Jet getL1TJet(const Jet& jet){ + l1t::Jet getL1TJet(const Jet& jet) { return l1t::Jet( - math::PtEtaPhiMLorentzVector( - demux::fEt(jet.hwEt()), - demux::fEta(jet.hwEta()), - demux::fPhi(jet.hwPhi()), - 0. - ), - jet.hwEt(), - jet.hwEta(), - jet.hwPhi(), - jet.hwIso() - ); + math::PtEtaPhiMLorentzVector(demux::fEt(jet.hwEt()), demux::fEta(jet.hwEta()), demux::fPhi(jet.hwPhi()), 0.), + jet.hwEt(), + jet.hwEta(), + jet.hwPhi(), + jet.hwIso()); } - l1t::EGamma getL1TEGamma(const EGamma& eGamma){ - return l1t::EGamma( - math::PtEtaPhiMLorentzVector( - demux::fEt(eGamma.hwEt()), - demux::fEta(eGamma.hwEta()), - demux::fPhi(eGamma.hwPhi()), - 0. - ), - eGamma.hwEt(), - eGamma.hwEta(), - eGamma.hwPhi(), - 0, - eGamma.hwIso() - ); + l1t::EGamma getL1TEGamma(const EGamma& eGamma) { + return l1t::EGamma(math::PtEtaPhiMLorentzVector( + demux::fEt(eGamma.hwEt()), demux::fEta(eGamma.hwEta()), demux::fPhi(eGamma.hwPhi()), 0.), + eGamma.hwEt(), + eGamma.hwEta(), + eGamma.hwPhi(), + 0, + eGamma.hwIso()); } - l1t::Tau getL1TTau(const Tau& tau){ + l1t::Tau getL1TTau(const Tau& tau) { return l1t::Tau( - math::PtEtaPhiMLorentzVector( - demux::fEt(tau.hwEt()), - demux::fEta(tau.hwEta()), - demux::fPhi(tau.hwPhi()), - 0. - ), - tau.hwEt(), - tau.hwEta(), - tau.hwPhi(), - 0, - tau.hwIso() - ); + math::PtEtaPhiMLorentzVector(demux::fEt(tau.hwEt()), demux::fEta(tau.hwEta()), demux::fPhi(tau.hwPhi()), 0.), + tau.hwEt(), + tau.hwEta(), + tau.hwPhi(), + 0, + tau.hwIso()); } - l1t::EtSum getL1TEtSum(const BxSums& sums, l1t::EtSum::EtSumType sumType){ - switch (sumType) - { - case l1t::EtSum::kTotalEt: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwTotalEt()), 0., 0., 0.), - sumType, sums.hwTotalEt(), 0, 0, 0 - ); - case l1t::EtSum::kTotalEtEm: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwTotalEtEm()), 0., 0., 0.), - sumType, sums.hwTotalEtEm(), 0, 0, 0 - ); - case l1t::EtSum::kTotalHt: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwTotalHt()), 0., 0., 0.), - sumType, sums.hwTotalHt(), 0, 0, 0 - ); - case l1t::EtSum::kMissingEt: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissEt()), 0., demux::fPhi(sums.hwMissEtPhi()), 0.), - sumType, sums.hwMissEt(), 0, sums.hwMissEtPhi(), 0 - ); - case l1t::EtSum::kMissingHt: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissHt()), 0., demux::fPhi(sums.hwMissHtPhi()), 0.), - sumType, sums.hwMissHt(), 0, sums.hwMissHtPhi(), 0 - ); - case l1t::EtSum::kMissingEtHF: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissEtHF()), 0., demux::fPhi(sums.hwMissEtHFPhi()), 0.), - sumType, sums.hwMissEtHF(), 0, sums.hwMissEtHFPhi(), 0 - ); - case l1t::EtSum::kMissingHtHF: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissHtHF()), 0., demux::fPhi(sums.hwMissHtHFPhi()), 0.), - sumType, sums.hwMissHtHF(), 0, sums.hwMissHtHFPhi(), 0 - ); - case l1t::EtSum::kAsymEt: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymEt()), 0., 0., 0.), - sumType, sums.hwAsymEt(), 0, 0, 0 - ); - case l1t::EtSum::kAsymHt: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymHt()), 0., 0., 0.), - sumType, sums.hwAsymHt(), 0, 0, 0 - ); - case l1t::EtSum::kAsymEtHF: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymEtHF()), 0., 0., 0.), - sumType, sums.hwAsymEtHF(), 0, 0, 0 - ); - case l1t::EtSum::kAsymHtHF: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymHtHF()), 0., 0., 0.), - sumType, sums.hwAsymHtHF(), 0, 0, 0 - ); - case l1t::EtSum::kMinBiasHFP0: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), - sumType, sums.minBiasHFP0(), 0, 0, 0 - ); - case l1t::EtSum::kMinBiasHFP1: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), - sumType, sums.minBiasHFP1(), 0, 0, 0 - ); - case l1t::EtSum::kMinBiasHFM0: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), - sumType, sums.minBiasHFM0(), 0, 0, 0 - ); - case l1t::EtSum::kMinBiasHFM1: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), - sumType, sums.minBiasHFM1(), 0, 0, 0 - ); - case l1t::EtSum::kCentrality: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), - sumType, sums.centrality(), 0, 0, 0 - ); - case l1t::EtSum::kTowerCount: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), - sumType, sums.towerCount(), 0, 0, 0 - ); - default: - return l1t::EtSum( - math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), - l1t::EtSum::kUninitialized, 0, 0, 0, 0 - ); + l1t::EtSum getL1TEtSum(const BxSums& sums, l1t::EtSum::EtSumType sumType) { + switch (sumType) { + case l1t::EtSum::kTotalEt: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwTotalEt()), 0., 0., 0.), sumType, sums.hwTotalEt(), 0, 0, 0); + case l1t::EtSum::kTotalEtEm: + return l1t::EtSum(math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwTotalEtEm()), 0., 0., 0.), + sumType, + sums.hwTotalEtEm(), + 0, + 0, + 0); + case l1t::EtSum::kTotalHt: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwTotalHt()), 0., 0., 0.), sumType, sums.hwTotalHt(), 0, 0, 0); + case l1t::EtSum::kMissingEt: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissEt()), 0., demux::fPhi(sums.hwMissEtPhi()), 0.), + sumType, + sums.hwMissEt(), + 0, + sums.hwMissEtPhi(), + 0); + case l1t::EtSum::kMissingHt: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissHt()), 0., demux::fPhi(sums.hwMissHtPhi()), 0.), + sumType, + sums.hwMissHt(), + 0, + sums.hwMissHtPhi(), + 0); + case l1t::EtSum::kMissingEtHF: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissEtHF()), 0., demux::fPhi(sums.hwMissEtHFPhi()), 0.), + sumType, + sums.hwMissEtHF(), + 0, + sums.hwMissEtHFPhi(), + 0); + case l1t::EtSum::kMissingHtHF: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissHtHF()), 0., demux::fPhi(sums.hwMissHtHFPhi()), 0.), + sumType, + sums.hwMissHtHF(), + 0, + sums.hwMissHtHFPhi(), + 0); + case l1t::EtSum::kAsymEt: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymEt()), 0., 0., 0.), sumType, sums.hwAsymEt(), 0, 0, 0); + case l1t::EtSum::kAsymHt: + return l1t::EtSum( + math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymHt()), 0., 0., 0.), sumType, sums.hwAsymHt(), 0, 0, 0); + case l1t::EtSum::kAsymEtHF: + return l1t::EtSum(math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymEtHF()), 0., 0., 0.), + sumType, + sums.hwAsymEtHF(), + 0, + 0, + 0); + case l1t::EtSum::kAsymHtHF: + return l1t::EtSum(math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymHtHF()), 0., 0., 0.), + sumType, + sums.hwAsymHtHF(), + 0, + 0, + 0); + case l1t::EtSum::kMinBiasHFP0: + return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), sumType, sums.minBiasHFP0(), 0, 0, 0); + case l1t::EtSum::kMinBiasHFP1: + return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), sumType, sums.minBiasHFP1(), 0, 0, 0); + case l1t::EtSum::kMinBiasHFM0: + return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), sumType, sums.minBiasHFM0(), 0, 0, 0); + case l1t::EtSum::kMinBiasHFM1: + return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), sumType, sums.minBiasHFM1(), 0, 0, 0); + case l1t::EtSum::kCentrality: + return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), sumType, sums.centrality(), 0, 0, 0); + case l1t::EtSum::kTowerCount: + return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), sumType, sums.towerCount(), 0, 0, 0); + default: + return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), l1t::EtSum::kUninitialized, 0, 0, 0, 0); } } From a2c01cce153e4c5492e4a92a94a5d7bc9e7c6eca Mon Sep 17 00:00:00 2001 From: Matevz Tadel Date: Fri, 15 Dec 2023 04:16:18 -0800 Subject: [PATCH 106/281] In MkFinder::selectHitIndicesV2() use track errors for extending bin search and for doing hit preselection. --- .../MkFitCore/src/Matriplex/Matriplex.h | 26 +++++++++++++- .../MkFitCore/src/Matriplex/MatriplexSym.h | 8 +++++ RecoTracker/MkFitCore/src/MkFinder.cc | 36 +++++++++++++------ 3 files changed, 59 insertions(+), 11 deletions(-) diff --git a/RecoTracker/MkFitCore/src/Matriplex/Matriplex.h b/RecoTracker/MkFitCore/src/Matriplex/Matriplex.h index 712afd240789b..2eff5e7bbecc6 100644 --- a/RecoTracker/MkFitCore/src/Matriplex/Matriplex.h +++ b/RecoTracker/MkFitCore/src/Matriplex/Matriplex.h @@ -115,6 +115,24 @@ namespace Matriplex { return *this; } + Matriplex operator-() { + Matriplex t; + for (idx_t i = 0; i < kTotSize; ++i) + t.fArray[i] = -fArray[i]; + return t; + } + + Matriplex& abs(const Matriplex& a) { + for (idx_t i = 0; i < kTotSize; ++i) + fArray[i] = std::abs(a.fArray[i]); + return *this; + } + Matriplex& abs() { + for (idx_t i = 0; i < kTotSize; ++i) + fArray[i] = std::abs(fArray[i]); + return *this; + } + Matriplex& sqrt(const Matriplex& a) { for (idx_t i = 0; i < kTotSize; ++i) fArray[i] = std::sqrt(a.fArray[i]); @@ -401,6 +419,12 @@ namespace Matriplex { return t; } + template + MPlex abs(const MPlex& a) { + MPlex t; + return t.abs(a); + } + template MPlex sqrt(const MPlex& a) { MPlex t; @@ -410,7 +434,7 @@ namespace Matriplex { template MPlex sqr(const MPlex& a) { MPlex t; - return t.sqrt(a); + return t.sqr(a); } template diff --git a/RecoTracker/MkFitCore/src/Matriplex/MatriplexSym.h b/RecoTracker/MkFitCore/src/Matriplex/MatriplexSym.h index 151f616402440..4a746d2c972c4 100644 --- a/RecoTracker/MkFitCore/src/Matriplex/MatriplexSym.h +++ b/RecoTracker/MkFitCore/src/Matriplex/MatriplexSym.h @@ -263,6 +263,14 @@ namespace Matriplex { a[5 * N + n] = s * c22; } } + + Matriplex ReduceFixedIJ(idx_t i, idx_t j) const { + Matriplex t; + for (idx_t n = 0; n < N; ++n) { + t[n] = constAt(n, i, j); + } + return t; + } }; template diff --git a/RecoTracker/MkFitCore/src/MkFinder.cc b/RecoTracker/MkFitCore/src/MkFinder.cc index 85d6f39ac1841..d15ae47c4b7da 100644 --- a/RecoTracker/MkFitCore/src/MkFinder.cc +++ b/RecoTracker/MkFitCore/src/MkFinder.cc @@ -789,6 +789,8 @@ namespace mkfit { mp::StatePlex sp1, sp2; int n_proc; + MPlexQF dphi_track, dq_track; // 3 sigma track errors at initial state + // debug & ntuple dump -- to be local in functions MPlexQF phi_c, dphi; MPlexQF q_c, qmin, qmax; @@ -808,10 +810,10 @@ namespace mkfit { } } - void find_bin_ranges(const LayerInfo &li, const LayerOfHits &loh) { + void find_bin_ranges(const LayerInfo &li, const LayerOfHits &loh, const MPlexLS &err) { // Below made members for debugging // MPlexQF phi_c, dphi_min, dphi_max; - phi_c = mp::fast_atan2(isp.y, isp.x); + // phi_c = mp::fast_atan2(isp.y, isp.x); // calculated below as difference // Matriplex::min_max(sp1.dphi, sp2.dphi, dphi_min, dphi_max); // the above is wrong: dalpha is not dphi --> renamed variable in State @@ -833,13 +835,27 @@ namespace mkfit { // phi_c[ii], xp1[ii], xp2[ii], pmin[ii], pmax[ii], dphi[ii]); } + const auto calc_err_xy = [&](const MPlexQF &x, const MPlexQF &y) { + return x * x * err.ReduceFixedIJ(0, 0) + y * y * err.ReduceFixedIJ(1, 1) + + 2.0f * x * y * err.ReduceFixedIJ(0, 1); + }; + + // Calculate dphi_track, dq_track differs for barrel/endcap + MPlexQF r2_c = isp.x * isp.x + isp.y * isp.y; + MPlexQF r2inv_c = 1.0f / r2_c; + MPlexQF dphidx_c = -isp.y * r2inv_c; + MPlexQF dphidy_c = isp.x * r2inv_c; + dphi_track = 3.0f * calc_err_xy(dphidx_c, dphidy_c).abs().sqrt(); + // MPlexQF qmin, qmax; if (li.is_barrel()) { Matriplex::min_max(sp1.z, sp2.z, qmin, qmax); q_c = isp.z; + dq_track = 3.0f * err.ReduceFixedIJ(2, 2).abs().sqrt(); } else { Matriplex::min_max(Matriplex::hypot(sp1.x, sp1.y), Matriplex::hypot(sp2.x, sp2.y), qmin, qmax); - q_c = Matriplex::hypot(isp.x, isp.y); + q_c = Matriplex::sqrt(r2_c); + dq_track = 3.0f * (r2inv_c * calc_err_xy(isp.x, isp.y).abs()).sqrt(); } for (int i = 0; i < p1.kTotSize; ++i) { @@ -847,19 +863,19 @@ namespace mkfit { // const float dphi_clamp = 0.1; // if (dphi_min[i] > 0.0f || dphi_min[i] < -dphi_clamp) dphi_min[i] = -dphi_clamp; // if (dphi_max[i] < 0.0f || dphi_max[i] > dphi_clampf) dphi_max[i] = dphi_clamp; - p1[i] = loh.phiBinChecked(pmin[i] - PHI_BIN_EXTRA_FAC * 0.0123f); - p2[i] = loh.phiBinChecked(pmax[i] + PHI_BIN_EXTRA_FAC * 0.0123f); + p1[i] = loh.phiBinChecked(pmin[i] - dphi_track[i] - PHI_BIN_EXTRA_FAC * 0.0123f); + p2[i] = loh.phiBinChecked(pmax[i] + dphi_track[i] + PHI_BIN_EXTRA_FAC * 0.0123f); q0[i] = loh.qBinChecked(q_c[i]); - q1[i] = loh.qBinChecked(qmin[i] - Q_BIN_EXTRA_FAC * 0.5f * li.q_bin()); - q2[i] = loh.qBinChecked(qmax[i] + Q_BIN_EXTRA_FAC * 0.5f * li.q_bin()) + 1; + q1[i] = loh.qBinChecked(qmin[i] - dq_track[i] - Q_BIN_EXTRA_FAC * 0.5f * li.q_bin()); + q2[i] = loh.qBinChecked(qmax[i] + dq_track[i] + Q_BIN_EXTRA_FAC * 0.5f * li.q_bin()) + 1; } } }; Bins B(m_Par[iI], m_Chg, N_proc); B.prop_to_limits(LI); - B.find_bin_ranges(LI, L); + B.find_bin_ranges(LI, L, m_Err[iI]); for (int i = 0; i < N_proc; ++i) { m_XHitSize[i] = 0; @@ -982,8 +998,8 @@ namespace mkfit { new_ddphi = cdist(std::abs(new_phi - L.hit_phi(hi))); new_ddq = std::abs(new_q - L.hit_q(hi)); - bool dqdphi_presel = - new_ddq < DDQ_PRESEL_FAC * L.hit_q_half_length(hi) && new_ddphi < DDPHI_PRESEL_FAC * 0.0123f; + bool dqdphi_presel = new_ddq < B.dq_track[itrack] + DDQ_PRESEL_FAC * L.hit_q_half_length(hi) && + new_ddphi < B.dphi_track[itrack] + DDPHI_PRESEL_FAC * 0.0123f; // clang-format off dprintf(" SHI %3u %4u %5u %6.3f %6.3f %6.4f %7.5f PROP-%s %s\n", From 2114bdf4576b5cdd33e2cb41d7d3e39ee02055af Mon Sep 17 00:00:00 2001 From: Ilia Ponomarev Date: Fri, 15 Dec 2023 13:26:43 +0100 Subject: [PATCH 107/281] added JSON dump option and JSON file name management via iConfig --- CondCore/ESSources/plugins/CondDBESSource.cc | 70 +++++++++++++++++--- CondCore/ESSources/plugins/CondDBESSource.h | 4 ++ 2 files changed, 64 insertions(+), 10 deletions(-) diff --git a/CondCore/ESSources/plugins/CondDBESSource.cc b/CondCore/ESSources/plugins/CondDBESSource.cc index dbbdd4627f2be..f01630f9a84b5 100644 --- a/CondCore/ESSources/plugins/CondDBESSource.cc +++ b/CondCore/ESSources/plugins/CondDBESSource.cc @@ -30,6 +30,10 @@ #include +#include + +using json = nlohmann::json; + namespace { /* utility ot build the name of the plugin corresponding to a given record se ESSources @@ -85,6 +89,27 @@ namespace { out << " " << id.since << " - " << id.till << " : " << id.payloadId << std::endl; } + void dumpInfoJson(json& jsonData, const std::string& recName, cond::ProductResolverWrapperBase const& proxy) { + json recordData; + recordData["label"] = proxy.label(); + recordData["connectionString"] = proxy.connString(); + recordData["tag"] = proxy.tag(); + + // Code to fill the JSON structure + + recordData["timeLookupPayloadIds"] = json::array(); + const auto& pids = *proxy.requests(); + for (const auto& id : pids) { + json payloadIdData; + payloadIdData["since"] = id.since; + payloadIdData["till"] = id.till; + payloadIdData["payloadId"] = id.payloadId; + recordData["timeLookupPayloadIds"].push_back(payloadIdData); + } + + jsonData[recName].push_back(recordData); + } + } // namespace /* @@ -96,7 +121,8 @@ namespace { * toGet: list of record label tag connection-string to add/overwrite the content of the global-tag */ CondDBESSource::CondDBESSource(const edm::ParameterSet& iConfig) - : m_connection(), + : m_jsonDumpFilename(iConfig.getUntrackedParameter("JsonDumpFileName", "")), + m_connection(), m_connectionString(""), m_frontierKey(""), m_lastRun(0), // for the stat @@ -322,15 +348,28 @@ void CondDBESSource::fillList(const std::string& stringList, } } +void CondDBESSource::printStatistics(const Stats& stats) const { + std::cout << "CondDBESSource Statistics\n" + << "DataProxy " << stats.nData << " setInterval " << stats.nSet << " Runs " << stats.nRun << " Lumis " + << stats.nLumi << " Refresh " << stats.nRefresh << " Actual Refresh " << stats.nActualRefresh + << " Reconnect " << stats.nReconnect << " Actual Reconnect " << stats.nActualReconnect << std::endl; +} + +void saveJsonToFile(const json& jsonData, const std::string& filename) { + std::ofstream outputFile(filename); + if (outputFile.is_open()) { + outputFile << jsonData.dump(2) << std::endl; + std::cout << "JSON data saved in file '" << filename << "'" << std::endl; + } else { + std::cerr << "Error opening file to write JSON data." << std::endl; + } +} + CondDBESSource::~CondDBESSource() { //dump info FIXME: find a more suitable place... if (m_doDump) { - std::cout << "CondDBESSource Statistics" << std::endl - << "ProductResolver " << m_stats.nData << " setInterval " << m_stats.nSet << " Runs " << m_stats.nRun - << " Lumis " << m_stats.nLumi << " Refresh " << m_stats.nRefresh << " Actual Refresh " - << m_stats.nActualRefresh << " Reconnect " << m_stats.nReconnect << " Actual Reconnect " - << m_stats.nActualReconnect; - std::cout << std::endl; + //Output CondDBESSource Statistics to the console + printStatistics(m_stats); ResolverMap::iterator b = m_resolvers.begin(); ResolverMap::iterator e = m_resolvers.end(); @@ -338,10 +377,21 @@ CondDBESSource::~CondDBESSource() { dumpInfo(std::cout, (*b).first, *(*b).second); std::cout << "\n" << std::endl; } - - // FIXME - // We shall eventually close transaction and session... } + //if filename was provided for iConfig by process.GlobalTag.JsonDumpFileName =cms.untracked.string("CondDBESSource.json") + if (!m_jsonDumpFilename.empty()) { + json jsonData; + + for (const auto& entry : m_resolvers) { + std::string recName = entry.first; + const auto& proxy = *entry.second; + dumpInfoJson(jsonData, recName, proxy); + } + //Save the dump data to a file in JSON format + saveJsonToFile(jsonData, m_jsonDumpFilename); + } + // FIXME + // We shall eventually close transaction and session... } // diff --git a/CondCore/ESSources/plugins/CondDBESSource.h b/CondCore/ESSources/plugins/CondDBESSource.h index 009949041898e..ced8f46d23ca2 100644 --- a/CondCore/ESSources/plugins/CondDBESSource.h +++ b/CondCore/ESSources/plugins/CondDBESSource.h @@ -93,6 +93,8 @@ class CondDBESSource : public edm::eventsetup::ESProductResolverProvider, public typedef enum { NOREFRESH, REFRESH_ALWAYS, REFRESH_OPEN_IOVS, REFRESH_EACH_RUN, RECONNECT_EACH_RUN } RefreshPolicy; + std::string m_jsonDumpFilename; + explicit CondDBESSource(const edm::ParameterSet&); ~CondDBESSource() override; @@ -164,5 +166,7 @@ class CondDBESSource : public edm::eventsetup::ESProductResolverProvider, public const std::vector& roottagList, std::map& replacement, cond::GTMetadata_t& gtMetadata); + + void printStatistics(const Stats& stats) const; }; #endif From 306b6634d5795fa5997263c72d2c8486c290629d Mon Sep 17 00:00:00 2001 From: Dan Riley Date: Fri, 15 Dec 2023 12:12:57 -0500 Subject: [PATCH 108/281] fixup! more valgrind, set loop indices to vector width, cleanup builder pools in producer destructor --- RecoTracker/MkFitCore/src/MkBuilderWrapper.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RecoTracker/MkFitCore/src/MkBuilderWrapper.cc b/RecoTracker/MkFitCore/src/MkBuilderWrapper.cc index d9036aa77ebb1..f05db168d1684 100644 --- a/RecoTracker/MkFitCore/src/MkBuilderWrapper.cc +++ b/RecoTracker/MkFitCore/src/MkBuilderWrapper.cc @@ -2,7 +2,7 @@ #include "RecoTracker/MkFitCore/interface/MkBuilder.h" namespace mkfit { - MkBuilderWrapper::MkBuilderWrapper(bool silent) : builder_(MkBuilder::make_builder(silent)) = default; + MkBuilderWrapper::MkBuilderWrapper(bool silent) : builder_(MkBuilder::make_builder(silent)) {} MkBuilderWrapper::~MkBuilderWrapper() = default; void MkBuilderWrapper::populate() { MkBuilder::populate(); } From f0b7204e33e550a4b432f6de66294ce155bea363 Mon Sep 17 00:00:00 2001 From: Matteo Migliorini Date: Fri, 15 Dec 2023 18:14:19 +0100 Subject: [PATCH 109/281] Added Exception to OrbitCollection::getBxSize(), removed swap method from Scouting classes --- .../L1Scouting/interface/L1ScoutingCalo.h | 33 ------------------- .../L1Scouting/interface/L1ScoutingMuon.h | 16 --------- .../L1Scouting/interface/OrbitCollection.h | 8 +---- 3 files changed, 1 insertion(+), 56 deletions(-) diff --git a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h index cda560a0c7783..53913fe840b0b 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingCalo.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingCalo.h @@ -11,14 +11,6 @@ namespace l1ScoutingRun3 { CaloObject(int hwEt, int hwEta, int hwPhi, int iso) : hwEt_(hwEt), hwEta_(hwEta), hwPhi_(hwPhi), hwIso_(iso) {} - void swap(CaloObject& other) { - using std::swap; - swap(hwEt_, other.hwEt_); - swap(hwEta_, other.hwEta_); - swap(hwPhi_, other.hwPhi_); - swap(hwIso_, other.hwIso_); - } - void setHwEt(int hwEt) { hwEt_ = hwEt; } void setHwEta(int hwEta) { hwEta_ = hwEta; } void setHwPhi(int hwPhi) { hwPhi_ = hwPhi; } @@ -129,31 +121,6 @@ namespace l1ScoutingRun3 { towerCount_(towerCount), centrality_(centrality) {} - void swap(BxSums& other) { - using std::swap; - swap(hwTotalEt_, other.hwTotalEt_); - swap(hwTotalEtEm_, other.hwTotalEtEm_); - swap(hwTotalHt_, other.hwTotalHt_); - swap(hwMissEt_, other.hwMissEt_); - swap(hwMissEtPhi_, other.hwMissEtPhi_); - swap(hwMissHt_, other.hwMissHt_); - swap(hwMissHtPhi_, other.hwMissHtPhi_); - swap(hwMissEtHF_, other.hwMissEtHF_); - swap(hwMissEtHFPhi_, other.hwMissEtHFPhi_); - swap(hwMissHtHF_, other.hwMissHtHF_); - swap(hwMissHtHFPhi_, other.hwMissHtHFPhi_); - swap(hwAsymEt_, other.hwAsymEt_); - swap(hwAsymHt_, other.hwAsymHt_); - swap(hwAsymEtHF_, other.hwAsymEtHF_); - swap(hwAsymHtHF_, other.hwAsymHtHF_); - swap(minBiasHFP0_, other.minBiasHFP0_); - swap(minBiasHFM0_, other.minBiasHFM0_); - swap(minBiasHFP1_, other.minBiasHFP1_); - swap(minBiasHFM1_, other.minBiasHFM1_); - swap(towerCount_, other.towerCount_); - swap(centrality_, other.centrality_); - } - void setHwTotalEt(int hwTotalEt) { hwTotalEt_ = hwTotalEt; } void setHwTotalEtEm(int hwTotalEtEm) { hwTotalEtEm_ = hwTotalEtEm; } void setMinBiasHFP0(int minBiasHFP0) { minBiasHFP0_ = minBiasHFP0; } diff --git a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h index da2f251bfd9e8..59882addb1b6a 100644 --- a/DataFormats/L1Scouting/interface/L1ScoutingMuon.h +++ b/DataFormats/L1Scouting/interface/L1ScoutingMuon.h @@ -46,22 +46,6 @@ namespace l1ScoutingRun3 { hwPtUnconstrained_(hwPtUnconstrained), hwDXY_(hwDXY) {} - void swap(Muon& other) { - using std::swap; - swap(hwPt_, other.hwPt_); - swap(hwEta_, other.hwEta_); - swap(hwPhi_, other.hwPhi_); - swap(hwQual_, other.hwQual_); - swap(hwChrg_, other.hwChrg_); - swap(hwChrgv_, other.hwChrgv_); - swap(hwIso_, other.hwIso_); - swap(tfIndex_, other.tfIndex_); - swap(hwEtaAtVtx_, other.hwEtaAtVtx_); - swap(hwPhiAtVtx_, other.hwPhiAtVtx_); - swap(hwPtUnconstrained_, other.hwPtUnconstrained_); - swap(hwDXY_, other.hwDXY_); - } - void setHwPt(int hwPt) { hwPt_ = hwPt; } void setHwEta(int hwEta) { hwEta_ = hwEta; } void setHwPhi(int hwPhi) { hwPhi_ = hwPhi; } diff --git a/DataFormats/L1Scouting/interface/OrbitCollection.h b/DataFormats/L1Scouting/interface/OrbitCollection.h index 3a544a648c206..152276fa3746c 100644 --- a/DataFormats/L1Scouting/interface/OrbitCollection.h +++ b/DataFormats/L1Scouting/interface/OrbitCollection.h @@ -32,12 +32,6 @@ class OrbitCollection { OrbitCollection& operator=(const OrbitCollection& other) = default; OrbitCollection& operator=(OrbitCollection&& other) = default; - void swap(OrbitCollection& other) { - using std::swap; - swap(bxOffsets_, other.bxOffsets_); - swap(data_, other.data_); - } - // Fill the orbit collection starting from a vector of vectors, one per BX. // Objects are copied into a flat data vector, and a second vector is used to keep track // of the starting index in the data vector for every BX. @@ -86,7 +80,7 @@ class OrbitCollection { // get number of objects stored in a BX int getBxSize(unsigned bx) const { if (bx >= orbitBufferSize_) { - edm::LogWarning("OrbitCollection") << "Called getBxSize() of a bx out of the orbit range." + cms::Exception("OrbitCollection") << "Called getBxSize() of a bx out of the orbit range." << " BX = " << bx; return 0; } From 9d13a12df6dbea3ffa136b04f7c9694653a861e4 Mon Sep 17 00:00:00 2001 From: Matteo Migliorini Date: Fri, 15 Dec 2023 18:34:05 +0100 Subject: [PATCH 110/281] code checks --- DataFormats/L1Scouting/interface/OrbitCollection.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DataFormats/L1Scouting/interface/OrbitCollection.h b/DataFormats/L1Scouting/interface/OrbitCollection.h index 152276fa3746c..d9d2c34ca75a9 100644 --- a/DataFormats/L1Scouting/interface/OrbitCollection.h +++ b/DataFormats/L1Scouting/interface/OrbitCollection.h @@ -81,7 +81,7 @@ class OrbitCollection { int getBxSize(unsigned bx) const { if (bx >= orbitBufferSize_) { cms::Exception("OrbitCollection") << "Called getBxSize() of a bx out of the orbit range." - << " BX = " << bx; + << " BX = " << bx; return 0; } return bxOffsets_[bx + 1] - bxOffsets_[bx]; From e5504fbc4a829fb52e4ffd459af67236baad725a Mon Sep 17 00:00:00 2001 From: "W. David Dagenhart" Date: Fri, 15 Dec 2023 17:45:26 +0100 Subject: [PATCH 111/281] Fix bug related to cmsRun exit code with FileReadError --- FWCore/Framework/src/ProductResolvers.cc | 15 +++++++++------ IOPool/Input/test/testSchemaEvolution.sh | 24 +++++++++++++++++++++++- 2 files changed, 32 insertions(+), 7 deletions(-) diff --git a/FWCore/Framework/src/ProductResolvers.cc b/FWCore/Framework/src/ProductResolvers.cc index b5277365037e8..0346563353373 100644 --- a/FWCore/Framework/src/ProductResolvers.cc +++ b/FWCore/Framework/src/ProductResolvers.cc @@ -159,13 +159,12 @@ namespace edm { } namespace { - cms::Exception& extendException(cms::Exception& e, BranchDescription const& bd, ModuleCallingContext const* mcc) { + void extendException(cms::Exception& e, BranchDescription const& bd, ModuleCallingContext const* mcc) { e.addContext(std::string("While reading from source ") + bd.className() + " " + bd.moduleLabel() + " '" + bd.productInstanceName() + "' " + bd.processName()); if (mcc) { edm::exceptionContext(e, *mcc); } - return e; } } // namespace ProductResolverBase::Resolution DelayedReaderInputProductResolver::resolveProduct_( @@ -197,10 +196,12 @@ namespace edm { //another thread could have beaten us here setProduct(reader->getProduct(branchDescription().branchID(), &principal, mcc)); } catch (cms::Exception& e) { - throw extendException(e, branchDescription(), mcc); + extendException(e, branchDescription(), mcc); + throw; } catch (std::exception const& e) { auto newExcept = edm::Exception(errors::StdException) << e.what(); - throw extendException(newExcept, branchDescription(), mcc); + extendException(newExcept, branchDescription(), mcc); + throw newExcept; } } } @@ -299,10 +300,12 @@ namespace edm { //another thread could have finished this while we were waiting setProduct(reader->getProduct(branchDescription().branchID(), &principal, mcc)); } catch (cms::Exception& e) { - throw extendException(e, branchDescription(), mcc); + extendException(e, branchDescription(), mcc); + throw; } catch (std::exception const& e) { auto newExcept = edm::Exception(errors::StdException) << e.what(); - throw extendException(newExcept, branchDescription(), mcc); + extendException(newExcept, branchDescription(), mcc); + throw newExcept; } } } diff --git a/IOPool/Input/test/testSchemaEvolution.sh b/IOPool/Input/test/testSchemaEvolution.sh index 237bfa639fcad..faaa577f133fe 100755 --- a/IOPool/Input/test/testSchemaEvolution.sh +++ b/IOPool/Input/test/testSchemaEvolution.sh @@ -1,4 +1,4 @@ -#!/bin/sh -x +#!/bin/sh function die { echo $1: status $2 ; exit $2; } @@ -91,6 +91,28 @@ cmsRun ${LOCAL_TEST_DIR}/SchemaEvolution_test_read_cfg.py --inputFile "$inputfil file=SchemaEvolutionTestOLD13_0_0.root inputfile=$(edmFileInPath IOPool/Input/data/$file) || die "Failure edmFileInPath IOPool/Input/data/$file" $? + +# The next test demonstrates the FileReadError that can occur as a +# result of the known ROOT bug in 13_0_0 (file has a problem when +# written with 13_0_0 that causes an exception when read). +# Note that this is also used to test the cmsRun exit code +# after a FileReadError (should be 8021). It is very convenient +# to test that here because it is hard to intentionally create +# a file that will cause a FileReadError. So we take advantage +# of the ROOT bug to implement the test. This bug actually +# occurred, see Issue 42179 for details. +echo "***" +echo "***" +echo "Exception in next test is INTENTIONAL. Test fails if not thrown or cmsRun returns wrong exit code" +echo "***" +echo "***" +cmsRun -j FileReadErrorTest_jobreport.xml ${LOCAL_TEST_DIR}/SchemaEvolution_test_read_cfg.py --inputFile $inputfile && die 'SchemaEvolution_test_read_cfg.py with corrupt input did not throw an exception' 1 +CMSRUN_EXIT_CODE=$(edmFjrDump --exitCode FileReadErrorTest_jobreport.xml) +if [ "x${CMSRUN_EXIT_CODE}" != "x8021" ]; then + echo "cmsRun reported exit code ${CMSRUN_EXIT_CODE} which is different from the expected 8021 (FileReadError)" + exit 1 +fi + # The test below would fail without the "--enableStreamerInfosFix" # because there was a bug in the version of ROOT associated with CMSSW_13_0_0. # The bug caused StreamerInfo objects to be missing from the ROOT file. In this case, From a24b7e4a430bea48e2c6048fad692bfd671b16f2 Mon Sep 17 00:00:00 2001 From: jsamudio Date: Fri, 15 Dec 2023 13:48:18 -0600 Subject: [PATCH 112/281] Implement suggestions from PR review --- .../plugins/LegacyPFClusterProducer.cc | 14 +++++------- .../alpaka/PFClusterSoAProducerKernel.dev.cc | 22 +++++++++---------- .../test/test_PFRecHitAndClusterSoA.py | 1 - .../alpaka/PFRecHitTopologyESProducer.cc | 4 ++-- 4 files changed, 19 insertions(+), 22 deletions(-) diff --git a/RecoParticleFlow/PFClusterProducer/plugins/LegacyPFClusterProducer.cc b/RecoParticleFlow/PFClusterProducer/plugins/LegacyPFClusterProducer.cc index f5d22f9aecc4e..4027bb340a168 100644 --- a/RecoParticleFlow/PFClusterProducer/plugins/LegacyPFClusterProducer.cc +++ b/RecoParticleFlow/PFClusterProducer/plugins/LegacyPFClusterProducer.cc @@ -43,8 +43,8 @@ class LegacyPFClusterProducer : public edm::stream::EDProducer<> { pfClusParamsToken_(esConsumes(config.getParameter("pfClusterParams"))), legacyPfClustersToken_(produces()), recHitsLabel_(consumes(config.getParameter("recHitsSource"))), - hcalCutsToken_(esConsumes(edm::ESInputTag("", "withTopo"))) { - cutsFromDB = config.getParameter("usePFThresholdsFromDB"); + hcalCutsToken_(esConsumes(edm::ESInputTag("", "withTopo"))), + cutsFromDB_(config.getParameter("usePFThresholdsFromDB")) { edm::ConsumesCollector cc = consumesCollector(); //setup pf cluster builder if requested @@ -70,7 +70,7 @@ class LegacyPFClusterProducer : public edm::stream::EDProducer<> { desc.add("PFRecHitsLabelIn"); desc.add("pfClusterParams"); desc.add("recHitsSource"); - desc.add("usePFThresholdsFromDB", "True"); + desc.add("usePFThresholdsFromDB", true); { edm::ParameterSetDescription pfClusterBuilder; pfClusterBuilder.add("maxIterations", 5); @@ -187,19 +187,17 @@ class LegacyPFClusterProducer : public edm::stream::EDProducer<> { const edm::EDPutTokenT legacyPfClustersToken_; const edm::EDGetTokenT recHitsLabel_; const edm::ESGetToken hcalCutsToken_; - bool cutsFromDB; - HcalPFCuts const* paramPF = nullptr; + const bool cutsFromDB_; // the actual algorithm std::unique_ptr positionCalc_; std::unique_ptr allCellsPositionCalc_; }; void LegacyPFClusterProducer::produce(edm::Event& event, const edm::EventSetup& setup) { - if (cutsFromDB) { - paramPF = &setup.getData(hcalCutsToken_); - } const reco::PFRecHitHostCollection& pfRecHits = event.get(InputPFRecHitSoA_Token_); + HcalPFCuts const* paramPF = cutsFromDB_ ? &setup.getData(hcalCutsToken_) : nullptr; + auto const& pfClusterSoA = event.get(pfClusterSoAToken_).const_view(); auto const& pfRecHitFractionSoA = event.get(pfRecHitFractionSoAToken_).const_view(); diff --git a/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducerKernel.dev.cc b/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducerKernel.dev.cc index 05194b83afa6b..ea7816ce0cb87 100644 --- a/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducerKernel.dev.cc +++ b/RecoParticleFlow/PFClusterProducer/plugins/alpaka/PFClusterSoAProducerKernel.dev.cc @@ -122,7 +122,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { tol = pfClusParams.stoppingTolerance(); // stopping tolerance * tolerance scaling if (topology.cutsFromDB()) { - rhENormInv = (1. / topology[pfRecHits[i].denseId()].noiseThreshold()); + rhENormInv = (1.f / topology[pfRecHits[i].denseId()].noiseThreshold()); } else { if (pfRecHits[i].layer() == PFLayer::HCAL_BARREL1) rhENormInv = pfClusParams.recHitEnergyNormInvHB_vec()[pfRecHits[i].depth() - 1]; @@ -167,7 +167,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { (clusterPos.z - rhPos.z) * (clusterPos.z - rhPos.z); d2 = dist2 / pfClusParams.showerSigma2(); - fraction = clusterEnergy * rhENormInv * expf(-0.5 * d2); + fraction = clusterEnergy * rhENormInv * expf(-0.5f * d2); // For single seed clusters, rechit fraction is either 1 (100%) or -1 (not included) if (fraction > pfClusParams.minFracTot() && d2 < cutoffDistance) @@ -298,7 +298,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { int i = pfClusteringVars[topoSeedBegin].topoSeedList(); if (topology.cutsFromDB()) { - rhENormInv = (1. / topology[pfRecHits[i].denseId()].noiseThreshold()); + rhENormInv = (1.f / topology[pfRecHits[i].denseId()].noiseThreshold()); } else { if (pfRecHits[i].layer() == PFLayer::HCAL_BARREL1) rhENormInv = pfClusParams.recHitEnergyNormInvHB_vec()[pfRecHits[i].depth() - 1]; @@ -405,7 +405,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { (clusterPos[s].z - rhThreadPos.z) * (clusterPos[s].z - rhThreadPos.z); float d2 = dist2 / pfClusParams.showerSigma2(); - float fraction = clusterEnergy[s] * rhENormInv * expf(-0.5 * d2); + float fraction = clusterEnergy[s] * rhENormInv * expf(-0.5f * d2); rhFracSum[tid] += fraction; } @@ -420,7 +420,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { (clusterPos[s].z - rhThreadPos.z) * (clusterPos[s].z - rhThreadPos.z); float d2 = dist2 / pfClusParams.showerSigma2(); - float fraction = clusterEnergy[s] * rhENormInv * expf(-0.5 * d2); + float fraction = clusterEnergy[s] * rhENormInv * expf(-0.5f * d2); if (rhFracSum[tid] > pfClusParams.minFracTot()) { float fracpct = fraction / rhFracSum[tid]; @@ -589,7 +589,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { int i = pfClusteringVars[topoSeedBegin].topoSeedList(); if (topology.cutsFromDB()) { - rhENormInv = (1. / topology[pfRecHits[i].denseId()].noiseThreshold()); + rhENormInv = (1.f / topology[pfRecHits[i].denseId()].noiseThreshold()); } else { if (pfRecHits[i].layer() == PFLayer::HCAL_BARREL1) rhENormInv = pfClusParams.recHitEnergyNormInvHB_vec()[pfRecHits[i].depth() - 1]; @@ -673,7 +673,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { (clusterPos[s].z - rhThreadPos.z) * (clusterPos[s].z - rhThreadPos.z); float d2 = dist2 / pfClusParams.showerSigma2(); - float fraction = clusterEnergy[s] * rhENormInv * expf(-0.5 * d2); + float fraction = clusterEnergy[s] * rhENormInv * expf(-0.5f * d2); rhFracSum[tid] += fraction; } @@ -691,7 +691,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { (clusterPos[s].z - rhThreadPos.z) * (clusterPos[s].z - rhThreadPos.z); float d2 = dist2 / pfClusParams.showerSigma2(); - float fraction = clusterEnergy[s] * rhENormInv * expf(-0.5 * d2); + float fraction = clusterEnergy[s] * rhENormInv * expf(-0.5f * d2); if (rhFracSum[tid] > pfClusParams.minFracTot()) { float fracpct = fraction / rhFracSum[tid]; @@ -856,7 +856,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { int i = pfClusteringVars[topoSeedBegin].topoSeedList(); if (topology.cutsFromDB()) { - rhENormInv = (1. / topology[pfRecHits[i].denseId()].noiseThreshold()); + rhENormInv = (1.f / topology[pfRecHits[i].denseId()].noiseThreshold()); } else { if (pfRecHits[i].layer() == PFLayer::HCAL_BARREL1) rhENormInv = pfClusParams.recHitEnergyNormInvHB_vec()[pfRecHits[i].depth() - 1]; @@ -940,7 +940,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { (clusterPos[s].z - rhThreadPos.z) * (clusterPos[s].z - rhThreadPos.z); float d2 = dist2 / pfClusParams.showerSigma2(); - float fraction = clusterEnergy[s] * rhENormInv * expf(-0.5 * d2); + float fraction = clusterEnergy[s] * rhENormInv * expf(-0.5f * d2); rhFracSum[tid] += fraction; } @@ -958,7 +958,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { (clusterPos[s].z - rhThreadPos.z) * (clusterPos[s].z - rhThreadPos.z); float d2 = dist2 / pfClusParams.showerSigma2(); - float fraction = clusterEnergy[s] * rhENormInv * expf(-0.5 * d2); + float fraction = clusterEnergy[s] * rhENormInv * expf(-0.5f * d2); if (rhFracSum[tid] > pfClusParams.minFracTot()) { float fracpct = fraction / rhFracSum[tid]; diff --git a/RecoParticleFlow/PFClusterProducer/test/test_PFRecHitAndClusterSoA.py b/RecoParticleFlow/PFClusterProducer/test/test_PFRecHitAndClusterSoA.py index 982d506e6b484..7cf551884a504 100644 --- a/RecoParticleFlow/PFClusterProducer/test/test_PFRecHitAndClusterSoA.py +++ b/RecoParticleFlow/PFClusterProducer/test/test_PFRecHitAndClusterSoA.py @@ -48,7 +48,6 @@ # Need to use a file that contains HCAL/ECAL hits. Verify using: # root root://eoscms.cern.ch//eos/cms/store/relval/CMSSW_13_0_0/RelValTTbar_14TeV/GEN-SIM-DIGI-RAW/PU_130X_mcRun3_2022_realistic_v2_HS-v4/2590000/0088b51b-0cda-40f2-95fc-590f446624ee.root -e 'Events->Print()' -q | grep -E "hltHbhereco|hltEcalRecHit" process.source = cms.Source("PoolSource", - #fileNames = cms.untracked.vstring('/store/relval/CMSSW_13_0_0_pre4/RelValTTbar_14TeV/GEN-SIM-DIGI-RAW/PU_130X_mcRun3_2022_realistic_v2_HS-v4/2590000/05ad6501-815f-4df6-b115-03ad028f9b76.root'), #fileNames = cms.untracked.vstring('/store/relval/CMSSW_13_0_0/RelValTTbar_14TeV/GEN-SIM-DIGI-RAW/PU_130X_mcRun3_2022_realistic_v2_HS-v4/2590000/0088b51b-0cda-40f2-95fc-590f446624ee.root'), fileNames = cms.untracked.vstring('/store/relval/CMSSW_13_0_8/RelValQCD_FlatPt_15_3000HS_14/GEN-SIM-DIGI-RAW/130X_mcRun3_2022_realistic_v3_2022-v1/2580000/0e63ba30-251b-4034-93ca-4d400aaa399e.root'), secondaryFileNames = cms.untracked.vstring(), diff --git a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitTopologyESProducer.cc b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitTopologyESProducer.cc index 8aa0934bb1285..f94db2aecc362 100644 --- a/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitTopologyESProducer.cc +++ b/RecoParticleFlow/PFRecHitProducer/plugins/alpaka/PFRecHitTopologyESProducer.cc @@ -39,9 +39,9 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { static void fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; if constexpr (std::is_same_v) - desc.add("usePFThresholdsFromDB", "True"); + desc.add("usePFThresholdsFromDB", true); else // only needs to be true for HBHE - desc.add("usePFThresholdsFromDB", "False"); + desc.add("usePFThresholdsFromDB", false); descriptions.addWithDefaultLabel(desc); } From c67f1d3a946ea67b7706fc95e3df04bdddd68c97 Mon Sep 17 00:00:00 2001 From: Vladimir Date: Fri, 15 Dec 2023 21:25:34 +0100 Subject: [PATCH 113/281] restored ZDC hits --- SimG4CMS/Forward/interface/ZdcSD.h | 6 +- SimG4CMS/Forward/src/ZdcSD.cc | 186 ++++++++------------ SimG4Core/Application/src/StackingAction.cc | 4 + 3 files changed, 85 insertions(+), 111 deletions(-) diff --git a/SimG4CMS/Forward/interface/ZdcSD.h b/SimG4CMS/Forward/interface/ZdcSD.h index 80f301f96c138..8ea4948a5d878 100644 --- a/SimG4CMS/Forward/interface/ZdcSD.h +++ b/SimG4CMS/Forward/interface/ZdcSD.h @@ -26,9 +26,9 @@ class ZdcSD : public CaloSD { void initRun() override; double calculateCherenkovDeposit(const G4Step *); - double calculateMeanNumberOfPhotons(int, double, double); - double photonEnergyDist(int, double, double); - double generatePhotonEnergy(int, double, double); + double calculateMeanNumberOfPhotons(double, double, double); + double photonEnergyDist(double, double, double); + double generatePhotonEnergy(double, double, double); double pmtEfficiency(double); double convertEnergyToWavelength(double); diff --git a/SimG4CMS/Forward/src/ZdcSD.cc b/SimG4CMS/Forward/src/ZdcSD.cc index 0f2cd504d674a..d953eed4ef2c3 100644 --- a/SimG4CMS/Forward/src/ZdcSD.cc +++ b/SimG4CMS/Forward/src/ZdcSD.cc @@ -180,8 +180,6 @@ double ZdcSD::getEnergyDeposit(const G4Step* aStep) { // preStepPoint information G4StepPoint* preStepPoint = aStep->GetPreStepPoint(); - G4VPhysicalVolume* currentPV = preStepPoint->GetPhysicalVolume(); - std::string nameVolume = ForwardName::getName(currentPV->GetName()); const G4ThreeVector& hitPoint = preStepPoint->GetPosition(); const G4ThreeVector& hit_mom = preStepPoint->GetMomentumDirection(); @@ -335,28 +333,11 @@ double ZdcSD::getEnergyDeposit(const G4Step* aStep) { << "," << charge << "," << beta << "," << stepL << "," << d_qz << "," << variant << "," << meanNCherPhot << "," << poissNCherPhot << "," << NCherPhot; #endif - // --constants----------------- - // << "," << photEnSpectrDE - // << "," << nMedium - // << "," << bThreshold - // << "," << thFibDirRad - // << "," << thFullReflRad - // << "," << effPMTandTransport - // --other variables----------- - // << "," << curprocess - // << "," << nameProcess - // << "," << name - // << "," << rad - // << "," << mat } else { // determine failure mode: beta, charge, and/or nameVolume if (beta <= bThreshold) edm::LogVerbatim("ForwardSim") << "ZdcSD:: getEnergyDeposit: fail beta=" << beta; - if (charge == 0) - edm::LogVerbatim("ForwardSim") << "ZdcSD:: getEnergyDeposit: fail charge=0"; - if (!(nameVolume == "ZDC_EMFiber" || nameVolume == "ZDC_HadFiber")) - edm::LogVerbatim("ForwardSim") << "ZdcSD:: getEnergyDeposit: fail nv=" << nameVolume; } return NCherPhot; @@ -377,131 +358,120 @@ const double HBARC = 6.582119514E-16 /*eV*s*/ * 2.99792458E8 /*m/s*/; // hbar * // Calculate the Cherenkov deposit corresponding to a G4Step double ZdcSD::calculateCherenkovDeposit(const G4Step* aStep) { - G4Material* material = aStep->GetTrack()->GetMaterial(); - - if (material->GetName() != "quartz") - return 0.0; // 0 deposit if material is not quartz - else { - const G4StepPoint* pPreStepPoint = aStep->GetPreStepPoint(); - const G4StepPoint* pPostStepPoint = aStep->GetPostStepPoint(); - const G4String volumeName = pPreStepPoint->GetTouchable()->GetVolume(0)->GetLogicalVolume()->GetName(); - - G4ThreeVector pre = pPreStepPoint->GetPosition(); - G4ThreeVector post = pPostStepPoint->GetPosition(); - - if ((post - pre).mag() < 1E-9) - return 0.0; + const G4StepPoint* pPreStepPoint = aStep->GetPreStepPoint(); + G4double charge = pPreStepPoint->GetCharge() / CLHEP::eplus; + if (charge == 0.0 || aStep->GetStepLength() < 1e-9 * CLHEP::mm) + return 0.0; - //Convert step coordinates to local (fiber) coodinates - const G4ThreeVector localPre = setToLocal(pre, pPreStepPoint->GetTouchable()); - const G4ThreeVector localPost = setToLocal(post, pPreStepPoint->GetTouchable()); - // Calculate the unit direction vector in local coordinates + const G4StepPoint* pPostStepPoint = aStep->GetPostStepPoint(); - const G4ThreeVector particleDirection = (localPost - localPre) / (localPost - localPre).mag(); + G4ThreeVector pre = pPreStepPoint->GetPosition(); + G4ThreeVector post = pPostStepPoint->GetPosition(); - const G4DynamicParticle* aParticle = aStep->GetTrack()->GetDynamicParticle(); - int charge = round(aParticle->GetDefinition()->GetPDGCharge()); + //Convert step coordinates to local (fiber) coodinates + const G4ThreeVector localPre = setToLocal(pre, pPreStepPoint->GetTouchable()); + const G4ThreeVector localPost = setToLocal(post, pPreStepPoint->GetTouchable()); - if (charge == 0) - return 0.0; + // Calculate the unit direction vector in local coordinates + const G4ThreeVector particleDirection = (localPost - localPre) / (localPost - localPre).mag(); - double beta = 0.5 * (pPreStepPoint->GetBeta() + pPostStepPoint->GetBeta()); - double stepLength = aStep->GetStepLength() / 1000; // Geant4 stepLength is in "mm" + double beta = 0.5 * (pPreStepPoint->GetBeta() + pPostStepPoint->GetBeta()); + double stepLength = aStep->GetStepLength() / 1000; // Geant4 stepLength is in "mm" - int nPhotons; // Number of Cherenkov photons + int nPhotons; // Number of Cherenkov photons - nPhotons = G4Poisson(calculateMeanNumberOfPhotons(charge, beta, stepLength)); + nPhotons = G4Poisson(calculateMeanNumberOfPhotons(charge, beta, stepLength)); - double totalE = 0.0; + double totalE = 0.0; - for (int i = 0; i < nPhotons; i++) { - // uniform refractive index in PMT range -> uniform energy distribution - double photonE = EMIN + G4UniformRand() * (EMAX - EMIN); - // UPDATE: taking into account dispersion relation -> energy distribution + for (int i = 0; i < nPhotons; ++i) { + // uniform refractive index in PMT range -> uniform energy distribution + double photonE = EMIN + G4UniformRand() * (EMAX - EMIN); + // UPDATE: taking into account dispersion relation -> energy distribution - if (G4UniformRand() > pmtEfficiency(convertEnergyToWavelength(photonE))) - continue; + if (G4UniformRand() > pmtEfficiency(convertEnergyToWavelength(photonE))) + continue; - double omega = G4UniformRand() * twopi; - double thetaC = acos(1.0 / (beta * RINDEX)); + double omega = G4UniformRand() * twopi; + double cosTheta = std::min(1.0 / (beta * RINDEX), 1.0); + double sinTheta = std::sqrt((1. - cosTheta) * (1.0 + cosTheta)); #ifdef EDM_ML_DEBUG - edm::LogVerbatim("ZdcSD") << "E_gamma: " << photonE << "\t omega: " << omega << "\t thetaC: " << thetaC; + edm::LogVerbatim("ZdcSD") << "E_gamma: " << photonE << "\t omega: " << omega << "\t thetaC: " << cosTheta; #endif - // Calculate momentum direction w.r.t primary particle (z-direction) - double px = photonE * sin(thetaC) * cos(omega); - double py = photonE * sin(thetaC) * sin(omega); - double pz = photonE * cos(thetaC); - G4ThreeVector photonMomentum(px, py, pz); + // Calculate momentum direction w.r.t primary particle (z-direction) + double px = photonE * sinTheta * std::cos(omega); + double py = photonE * sinTheta * std::sin(omega); + double pz = photonE * cosTheta; + G4ThreeVector photonMomentum(px, py, pz); #ifdef EDM_ML_DEBUG - edm::LogVerbatim("ZdcSD") << "pPR = (" << particleDirection.x() << "," << particleDirection.y() << "," - << particleDirection.z() << ")"; - edm::LogVerbatim("ZdcSD") << "pCH = (" << px << "," << py << "," << pz << ")"; + edm::LogVerbatim("ZdcSD") << "pPR = (" << particleDirection.x() << "," << particleDirection.y() << "," + << particleDirection.z() << ")"; + edm::LogVerbatim("ZdcSD") << "pCH = (" << px << "," << py << "," << pz << ")"; #endif - // Rotate to the fiber reference frame - photonMomentum.rotateUz(particleDirection); + // Rotate to the fiber reference frame + photonMomentum.rotateUz(particleDirection); #ifdef EDM_ML_DEBUG - edm::LogVerbatim("ZdcSD") << "pLAB = (" << photonMomentum.x() << "," << photonMomentum.y() << "," - << photonMomentum.z() << ")"; + edm::LogVerbatim("ZdcSD") << "pLAB = (" << photonMomentum.x() << "," << photonMomentum.y() << "," + << photonMomentum.z() << ")"; #endif - // Get random position along G4Step - G4ThreeVector photonPosition = localPre + G4UniformRand() * (localPost - localPre); - - // 2D vectors to calculate impact position (x*,y*) - G4TwoVector r0(photonPosition); - G4TwoVector v0(photonMomentum); - - double R = 0.3; /*mm, fiber radius*/ - double R2 = 0.3 * 0.3; - - if (r0.mag() < R && photonMomentum.z() < 0.0) { - // 2nd order polynomial coefficients - double a = v0.mag2(); - double b = 2.0 * r0 * v0; - double c = r0.mag2() - R2; - - if (a < 1E-6) - totalE += 1; //photonE /*eV*/; - else { - // calculate intersection point - solving 2nd order polynomial - double t = (-b + sqrt(b * b - 4.0 * a * c)) / (2.0 * a); - G4ThreeVector n(r0.x() + v0.x() * t, r0.y() + v0.y() * t, 0.0); // surface normal - double cosTheta = (n * photonMomentum) / (n.mag() * photonE); // cosine of incident angle - - if (cosTheta >= NAperRINDEX) // lightguide condition - totalE += 1; //photonE /*eV*/; - } + // Get random position along G4Step + G4ThreeVector photonPosition = localPre + G4UniformRand() * (localPost - localPre); + + // 2D vectors to calculate impact position (x*,y*) + G4TwoVector r0(photonPosition); + G4TwoVector v0(photonMomentum); + + double R = 0.3; /*mm, fiber radius*/ + double R2 = 0.3 * 0.3; + + if (r0.mag() < R && photonMomentum.z() < 0.0) { + // 2nd order polynomial coefficients + double a = v0.mag2(); + double b = 2.0 * r0 * v0; + double c = r0.mag2() - R2; + + if (a < 1E-6) + totalE += 1; //photonE /*eV*/; + else { + // calculate intersection point - solving 2nd order polynomial + double t = (-b + sqrt(b * b - 4.0 * a * c)) / (2.0 * a); + G4ThreeVector n(r0.x() + v0.x() * t, r0.y() + v0.y() * t, 0.0); // surface normal + double cosTheta = (n * photonMomentum) / (n.mag() * photonE); // cosine of incident angle + + if (cosTheta >= NAperRINDEX) // lightguide condition + totalE += 1; //photonE /*eV*/; } + } #ifdef EDM_ML_DEBUG - edm::LogVerbatim("ZdcSD") << "r = (" << photonPosition.x() << "," << photonPosition.y() << "," - << photonPosition.z() << ")" << std::endl; + edm::LogVerbatim("ZdcSD") << "r = (" << photonPosition.x() << "," << photonPosition.y() << "," << photonPosition.z() + << ")" << std::endl; #endif - } + } #ifdef EDM_ML_DEBUG - if (nPhotons > 30) { - edm::LogVerbatim("ZdcSD") << totalE; + if (nPhotons > 30) { + edm::LogVerbatim("ZdcSD") << totalE; - if (totalE > 0) - edm::LogVerbatim("ZdcSD") << pre.x() << " " << pre.y() << " " << pre.z() << " " << totalE << std::endl; - } -#endif - return totalE; + if (totalE > 0) + edm::LogVerbatim("ZdcSD") << pre.x() << " " << pre.y() << " " << pre.z() << " " << totalE; } +#endif + return totalE; } // Calculate mean number of Cherenkov photons in the sensitivity range (300-650 nm) // for a given step length for a particle with given charge and beta -double ZdcSD::calculateMeanNumberOfPhotons(int charge, double beta, double stepLength) { +double ZdcSD::calculateMeanNumberOfPhotons(double charge, double beta, double stepLength) { // Return mean number of Cherenkov photons return (ALPHA * charge * charge * stepLength) / HBARC * (EMAX - EMIN) * (1.0 - 1.0 / (beta * beta * RINDEX * RINDEX)); } // Evaluate photon pdf -double ZdcSD::photonEnergyDist(int charge, double beta, double E) { +double ZdcSD::photonEnergyDist(double charge, double beta, double E) { const std::vector ENERGY_TAB{1.75715, 1.81902, 1.88311, 1.94944, 2.0183, 2.08939, 2.16302, 2.23919, 2.31789, 2.39954, 2.48416, 2.57175, 2.66232, 2.75643, 2.85349, 2.95411, 3.05756, 3.16528, 3.2774, 3.39218, 3.5123, 3.6359, 3.76394, 3.89642, @@ -516,7 +486,7 @@ double ZdcSD::photonEnergyDist(int charge, double beta, double E) { } // Generate a photon with the given minimum energy accourding to the energy distribution -double ZdcSD::generatePhotonEnergy(int charge, double beta, double Emin) { +double ZdcSD::generatePhotonEnergy(double charge, double beta, double Emin) { double photonE; // Use rejection method diff --git a/SimG4Core/Application/src/StackingAction.cc b/SimG4Core/Application/src/StackingAction.cc index 968f74f72ce06..e70fe26c07b04 100644 --- a/SimG4Core/Application/src/StackingAction.cc +++ b/SimG4Core/Application/src/StackingAction.cc @@ -127,6 +127,8 @@ StackingAction::StackingAction(const TrackingAction* trka, const edm::ParameterS << " HCAL Prob= " << gRusRoHcal << "\n" << " MuonIron Prob= " << gRusRoMuonIron << "\n" << " PreShower Prob= " << gRusRoPreShower << "\n" + << " HGCAL Prob= " << gRusRoHGcal << "\n" + << " ZDC Prob= " << gRusRoZDC << "\n" << " CASTOR Prob= " << gRusRoCastor << "\n" << " World Prob= " << gRusRoWorld; } @@ -138,6 +140,8 @@ StackingAction::StackingAction(const TrackingAction* trka, const edm::ParameterS << " HCAL Prob= " << nRusRoHcal << "\n" << " MuonIron Prob= " << nRusRoMuonIron << "\n" << " PreShower Prob= " << nRusRoPreShower << "\n" + << " HGCAL Prob= " << nRusRoHGcal << "\n" + << " ZDC Prob= " << nRusRoZDC << "\n" << " CASTOR Prob= " << nRusRoCastor << "\n" << " World Prob= " << nRusRoWorld; } From 7dac0f22bb92bfecef479a9dd7f6be6e774414da Mon Sep 17 00:00:00 2001 From: lathomasexport Date: Fri, 15 Dec 2023 22:59:38 +0100 Subject: [PATCH 114/281] TeV jet RAW-RECO skim --- DPGAnalysis/Skims/python/Skims_DPG_cff.py | 14 ++++++++++ DPGAnalysis/Skims/python/TeVJetSkim_cff.py | 31 ++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 DPGAnalysis/Skims/python/TeVJetSkim_cff.py diff --git a/DPGAnalysis/Skims/python/Skims_DPG_cff.py b/DPGAnalysis/Skims/python/Skims_DPG_cff.py index 222bca5ee7fe4..6dea86124f6dc 100644 --- a/DPGAnalysis/Skims/python/Skims_DPG_cff.py +++ b/DPGAnalysis/Skims/python/Skims_DPG_cff.py @@ -416,6 +416,20 @@ ##################### +from DPGAnalysis.Skims.TeVJetSkim_cff import * +teVJetPath = cms.Path( teVJetSequence ) + +SKIMStreamTeVJet = cms.FilteredStream( + responsible = 'L1 DPG/JME POG', + name = 'TeVJet', + paths = ( teVJetPath ), + content = skimContent.outputCommands, + selectEvents = cms.untracked.PSet(), + dataTier = cms.untracked.string('RAW-RECO') + ) + +##################### + from DPGAnalysis.Skims.HighMETSkim_cff import * condPath = cms.Path(CondMETSelSeq) #pfPath = cms.Path(pfMETSelSeq) diff --git a/DPGAnalysis/Skims/python/TeVJetSkim_cff.py b/DPGAnalysis/Skims/python/TeVJetSkim_cff.py new file mode 100644 index 0000000000000..8c67bf0b8e2d0 --- /dev/null +++ b/DPGAnalysis/Skims/python/TeVJetSkim_cff.py @@ -0,0 +1,31 @@ +import FWCore.ParameterSet.Config as cms + + +# run on MIONAOD +RUN_ON_MINIAOD = False + + +# cuts +JET_CUT=("pt > 1000 && abs(eta)<5.0") + +# single lepton selectors +if RUN_ON_MINIAOD: + teVJets = cms.EDFilter("CandViewRefSelector", + src = cms.InputTag("slimmedJets"), + cut = cms.string(JET_CUT) + ) +else: + teVJets = cms.EDFilter("CandViewRefSelector", + src = cms.InputTag("ak4PFJets"), + cut = cms.string(JET_CUT) + ) + +teVJetsCountFilter = cms.EDFilter("CandViewCountFilter", + src = cms.InputTag("teVJets"), + minNumber = cms.uint32(1) + ) + + + +#sequences +teVJetSequence = cms.Sequence(teVJets*teVJetsCountFilter ) From 4004fe367869b69aa6d46df73298022c8b743d33 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Sat, 16 Dec 2023 04:40:11 +0100 Subject: [PATCH 115/281] Fix the debug --- SimG4CMS/Calo/src/HGCalNumberingScheme.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SimG4CMS/Calo/src/HGCalNumberingScheme.cc b/SimG4CMS/Calo/src/HGCalNumberingScheme.cc index beb344a7e92a3..e976aa57de6b7 100644 --- a/SimG4CMS/Calo/src/HGCalNumberingScheme.cc +++ b/SimG4CMS/Calo/src/HGCalNumberingScheme.cc @@ -16,7 +16,7 @@ #include #include -#define EDM_ML_DEBUG +//#define EDM_ML_DEBUG HGCalNumberingScheme::HGCalNumberingScheme(const HGCalDDDConstants& hgc, const DetId::Detector& det, From 4d465bf731f4ec0e2ef3fd71702c95c0b057ed2c Mon Sep 17 00:00:00 2001 From: Vladimir Date: Sat, 16 Dec 2023 12:07:37 +0100 Subject: [PATCH 116/281] should fixed test --- SimG4Core/Application/python/g4SimHits_cfi.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SimG4Core/Application/python/g4SimHits_cfi.py b/SimG4Core/Application/python/g4SimHits_cfi.py index 8388d06a3cca9..b9be772aef5db 100644 --- a/SimG4Core/Application/python/g4SimHits_cfi.py +++ b/SimG4Core/Application/python/g4SimHits_cfi.py @@ -344,7 +344,7 @@ ), SteppingAction = cms.PSet( common_maximum_time, - CMStoZDCtransport = cms.bool(False), + CMStoZDCtransport = cms.bool(False), MaxNumberOfSteps = cms.int32(20000), CMSName = cms.string('CMSE'), TrackerName = cms.string('Tracker'), @@ -605,7 +605,7 @@ ZdcSD = cms.PSet( Verbosity = cms.int32(0), UseShowerLibrary = cms.bool(False), - UseShowerHits = cms.bool(True), + UseShowerHits = cms.bool(False), FiberDirection = cms.double(45.0), ZdcHitEnergyCut = cms.double(10.0) ), From 876619de7618eca2ce16b8db1312febf5855c947 Mon Sep 17 00:00:00 2001 From: Vladimir Date: Sat, 16 Dec 2023 17:55:34 +0100 Subject: [PATCH 117/281] extra attempt to fix --- SimG4Core/Application/python/g4SimHits_cfi.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/SimG4Core/Application/python/g4SimHits_cfi.py b/SimG4Core/Application/python/g4SimHits_cfi.py index b9be772aef5db..5b8f8d3bc05be 100644 --- a/SimG4Core/Application/python/g4SimHits_cfi.py +++ b/SimG4Core/Application/python/g4SimHits_cfi.py @@ -605,7 +605,7 @@ ZdcSD = cms.PSet( Verbosity = cms.int32(0), UseShowerLibrary = cms.bool(False), - UseShowerHits = cms.bool(False), + UseShowerHits = cms.bool(True), FiberDirection = cms.double(45.0), ZdcHitEnergyCut = cms.double(10.0) ), @@ -691,9 +691,9 @@ ## Disable PPS from Run 3 PbPb runs and enable ZDC ## from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3 -pp_on_PbPb_run3.toModify(g4SimHits, LHCTransport = False, - SteppingAction = dict( - CMStoZDCtransport = True) ) +pp_on_PbPb_run3.toModify(g4SimHits, LHCTransport = False) +# SteppingAction = dict( +# CMStoZDCtransport = True) ) ## ## Change ECAL time slices From b56e76e4e99ea66fdb65ac763741b1494a6dd035 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Sun, 17 Dec 2023 03:26:53 +0100 Subject: [PATCH 118/281] Cleanup in SimG4CMS/CherenkovAnalysis against using codes directly from DD4hep --- SimG4CMS/CherenkovAnalysis/BuildFile.xml | 2 +- SimG4CMS/CherenkovAnalysis/interface/DreamSD.h | 2 -- SimG4CMS/CherenkovAnalysis/src/DreamSD.cc | 7 ++++--- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/SimG4CMS/CherenkovAnalysis/BuildFile.xml b/SimG4CMS/CherenkovAnalysis/BuildFile.xml index a12305460cc41..80ab29da2e1e4 100644 --- a/SimG4CMS/CherenkovAnalysis/BuildFile.xml +++ b/SimG4CMS/CherenkovAnalysis/BuildFile.xml @@ -1,11 +1,11 @@ + - diff --git a/SimG4CMS/CherenkovAnalysis/interface/DreamSD.h b/SimG4CMS/CherenkovAnalysis/interface/DreamSD.h index 514d7c4a17e55..e143eb83bca89 100644 --- a/SimG4CMS/CherenkovAnalysis/interface/DreamSD.h +++ b/SimG4CMS/CherenkovAnalysis/interface/DreamSD.h @@ -11,8 +11,6 @@ #include "G4PhysicsFreeVector.hh" -#include - #include const int MAXPHOTONS = 500; // Maximum number of photons we can store diff --git a/SimG4CMS/CherenkovAnalysis/src/DreamSD.cc b/SimG4CMS/CherenkovAnalysis/src/DreamSD.cc index db3fc73ca3197..59f665de5cb5f 100644 --- a/SimG4CMS/CherenkovAnalysis/src/DreamSD.cc +++ b/SimG4CMS/CherenkovAnalysis/src/DreamSD.cc @@ -6,6 +6,7 @@ #include "DetectorDescription/Core/interface/DDValue.h" #include "DetectorDescription/DDCMS/interface/DDCompactView.h" #include "DetectorDescription/DDCMS/interface/DDFilteredView.h" +#include "SimG4Core/Geometry/interface/DD4hep2DDDName.h" #include "SimG4Core/Notification/interface/TrackInformation.h" #include "G4LogicalVolume.hh" @@ -122,7 +123,7 @@ void DreamSD::initMap(const std::string &sd) { const cms::DDFilter filter("ReadOutName", sd); cms::DDFilteredView fv((*cpvDD4hep_), filter); while (fv.firstChild()) { - std::string name = static_cast(dd4hep::dd::noNamespace(fv.name())); + std::string name = DD4hep2DDDName::noNameSpace(static_cast(fv.name())); std::vector paras(fv.parameters()); #ifdef EDM_ML_DEBUG edm::LogVerbatim("EcalSim") << "DreamSD::initMap (for " << sd << "): Solid " << name << " Shape " @@ -179,7 +180,7 @@ void DreamSD::fillMap(const std::string &name, double length, double width) { for (auto lvcite = lvs->begin(); lvcite != lvs->end(); lvcite++) { edm::LogVerbatim("EcalSim") << name << " vs " << (*lvcite)->GetName(); std::string namex = static_cast((*lvcite)->GetName()); - if (name == static_cast(dd4hep::dd::noNamespace(namex))) { + if (name == DD4hep2DDDName::noNameSpace(static_cast(namex))) { lv = (*lvcite); break; } @@ -421,7 +422,7 @@ double DreamSD::getAverageNumberOfPhotons_(const double charge, bool DreamSD::setPbWO2MaterialProperties_(G4Material *aMaterial) { std::string pbWO2Name("E_PbWO4"); std::string name = static_cast(aMaterial->GetName()); - if (static_cast(dd4hep::dd::noNamespace(name)) != pbWO2Name) { // Wrong material! + if (DD4hep2DDDName::noNameSpace(name) != pbWO2Name) { // Wrong material! edm::LogWarning("EcalSim") << "This is not the right material: " << "expecting " << pbWO2Name << ", got " << aMaterial->GetName(); return false; From 2eaea5b0075a58958f8a4905c1c7a43799fddd0d Mon Sep 17 00:00:00 2001 From: Sunanda Date: Sun, 17 Dec 2023 04:02:56 +0100 Subject: [PATCH 119/281] Cleanup in SimG4CMS/HGCalTestBeam against using codes directly from DD4hep --- SimG4CMS/HGCalTestBeam/plugins/BuildFile.xml | 2 +- SimG4CMS/HGCalTestBeam/plugins/HGCPassive.cc | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/SimG4CMS/HGCalTestBeam/plugins/BuildFile.xml b/SimG4CMS/HGCalTestBeam/plugins/BuildFile.xml index 22011317508cd..cc760d1b52380 100644 --- a/SimG4CMS/HGCalTestBeam/plugins/BuildFile.xml +++ b/SimG4CMS/HGCalTestBeam/plugins/BuildFile.xml @@ -12,11 +12,11 @@ + - diff --git a/SimG4CMS/HGCalTestBeam/plugins/HGCPassive.cc b/SimG4CMS/HGCalTestBeam/plugins/HGCPassive.cc index d9b19aeda0eda..c6608a894649b 100644 --- a/SimG4CMS/HGCalTestBeam/plugins/HGCPassive.cc +++ b/SimG4CMS/HGCalTestBeam/plugins/HGCPassive.cc @@ -12,6 +12,7 @@ // to retreive hits #include "SimDataFormats/CaloHit/interface/PassiveHit.h" +#include "SimG4Core/Geometry/interface/DD4hep2DDDName.h" #include "SimG4Core/Notification/interface/BeginOfEvent.h" #include "SimG4Core/Notification/interface/BeginOfRun.h" #include "SimG4Core/Notification/interface/Observer.h" @@ -23,7 +24,6 @@ #include "G4TransportationManager.hh" #include "G4TouchableHistory.hh" #include "G4Track.hh" -#include "DD4hep/Filter.h" #include #include @@ -157,7 +157,7 @@ void HGCPassive::update(const G4Step *aStep) { if (((aStep->GetPostStepPoint() == nullptr) || (aStep->GetTrack()->GetNextVolume() == nullptr)) && (aStep->IsLastStepInVolume())) { #ifdef EDM_ML_DEBUG - edm::LogVerbatim("HGCSim") << static_cast(dd4hep::dd::noNamespace(plv->GetName())) << " F|L Step " + edm::LogVerbatim("HGCSim") << DD4hep2DDDName::noNameSpace(static_cast(plv->GetName())) << " F|L Step " << aStep->IsFirstStepInVolume() << ":" << aStep->IsLastStepInVolume() << " Position" << aStep->GetPreStepPoint()->GetPosition() << " Track " << aStep->GetTrack()->GetDefinition()->GetParticleName() << " at" @@ -194,7 +194,7 @@ void HGCPassive::update(const G4Step *aStep) { auto it = (init_) ? mapLV_.find(plv) : findLV(plv); #ifdef EDM_ML_DEBUG edm::LogVerbatim("HGCSim") << "Level: " << level << ":" << i << " " - << static_cast(dd4hep::dd::noNamespace(plv->GetName())) + << DD4hep2DDDName::noNameSpace(static_cast(plv->GetName())) << " flag in the List " << (it != mapLV_.end()); #endif if (it != mapLV_.end()) { @@ -239,7 +239,7 @@ G4VPhysicalVolume *HGCPassive::getTopPV() { HGCPassive::volumeIterator HGCPassive::findLV(G4LogicalVolume *plv) { auto itr = mapLV_.find(plv); if (itr == mapLV_.end()) { - std::string name = static_cast(dd4hep::dd::noNamespace(plv->GetName())); + std::string name = DD4hep2DDDName::noNameSpace(static_cast(plv->GetName())); for (unsigned int k = 0; k < LVNames_.size(); ++k) { if (name.find(LVNames_[k]) != std::string::npos) { mapLV_[plv] = std::pair(k, name); @@ -249,7 +249,7 @@ HGCPassive::volumeIterator HGCPassive::findLV(G4LogicalVolume *plv) { } } if (topLV_ == nullptr) { - if (static_cast(dd4hep::dd::noNamespace(plv->GetName())) == motherName_) + if (DD4hep2DDDName::noNameSpace(static_cast(plv->GetName())) == motherName_) topLV_ = plv; } return itr; From 154e2b2e3f8c8ec7c69836a46a9d1ddf60584810 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Sun, 17 Dec 2023 04:21:57 +0100 Subject: [PATCH 120/281] Code check --- SimG4CMS/HGCalTestBeam/plugins/HGCPassive.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/SimG4CMS/HGCalTestBeam/plugins/HGCPassive.cc b/SimG4CMS/HGCalTestBeam/plugins/HGCPassive.cc index c6608a894649b..496c52c29e1be 100644 --- a/SimG4CMS/HGCalTestBeam/plugins/HGCPassive.cc +++ b/SimG4CMS/HGCalTestBeam/plugins/HGCPassive.cc @@ -157,9 +157,9 @@ void HGCPassive::update(const G4Step *aStep) { if (((aStep->GetPostStepPoint() == nullptr) || (aStep->GetTrack()->GetNextVolume() == nullptr)) && (aStep->IsLastStepInVolume())) { #ifdef EDM_ML_DEBUG - edm::LogVerbatim("HGCSim") << DD4hep2DDDName::noNameSpace(static_cast(plv->GetName())) << " F|L Step " - << aStep->IsFirstStepInVolume() << ":" << aStep->IsLastStepInVolume() << " Position" - << aStep->GetPreStepPoint()->GetPosition() << " Track " + edm::LogVerbatim("HGCSim") << DD4hep2DDDName::noNameSpace(static_cast(plv->GetName())) + << " F|L Step " << aStep->IsFirstStepInVolume() << ":" << aStep->IsLastStepInVolume() + << " Position" << aStep->GetPreStepPoint()->GetPosition() << " Track " << aStep->GetTrack()->GetDefinition()->GetParticleName() << " at" << aStep->GetTrack()->GetPosition() << " Volume " << aStep->GetTrack()->GetVolume() << ":" << aStep->GetTrack()->GetNextVolume() << " Status " From 04d809517705f041248ba01510c1a066021f1d99 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Sun, 17 Dec 2023 05:19:39 +0100 Subject: [PATCH 121/281] Cleanup in SimG4CMS/Calo against using codes directly from DD4hep --- SimG4CMS/Calo/BuildFile.xml | 1 - SimG4CMS/Calo/src/CaloTrkProcessing.cc | 8 ++++---- SimG4CMS/Calo/src/ECalSD.cc | 21 ++++++++++----------- SimG4CMS/Calo/src/EcalDumpGeometry.cc | 9 ++++----- 4 files changed, 18 insertions(+), 21 deletions(-) diff --git a/SimG4CMS/Calo/BuildFile.xml b/SimG4CMS/Calo/BuildFile.xml index 18e479eb134b2..c538379e0a464 100644 --- a/SimG4CMS/Calo/BuildFile.xml +++ b/SimG4CMS/Calo/BuildFile.xml @@ -23,7 +23,6 @@ - diff --git a/SimG4CMS/Calo/src/CaloTrkProcessing.cc b/SimG4CMS/Calo/src/CaloTrkProcessing.cc index 6a0dcff9ed9be..04f4fa494e78a 100644 --- a/SimG4CMS/Calo/src/CaloTrkProcessing.cc +++ b/SimG4CMS/Calo/src/CaloTrkProcessing.cc @@ -1,3 +1,4 @@ +#include "SimG4Core/Geometry/interface/DD4hep2DDDName.h" #include "SimG4Core/Notification/interface/BeginOfEvent.h" #include "SimG4Core/Notification/interface/TrackInformation.h" #include "SimG4Core/Notification/interface/SimTrackManager.h" @@ -12,7 +13,6 @@ #include "G4Step.hh" #include "G4Track.hh" #include "G4SystemOfUnits.hh" -#include "DD4hep/Filter.h" #include //#define EDM_ML_DEBUG @@ -82,7 +82,7 @@ CaloTrkProcessing::CaloTrkProcessing(const std::string& name, G4LogicalVolume* lv = nullptr; G4String name(csps.caloNames_[i]); for (lvcite = lvs->begin(); lvcite != lvs->end(); lvcite++) { - G4String namx(static_cast(dd4hep::dd::noNamespace((*lvcite)->GetName()))); + G4String namx(DD4hep2DDDName::noNameSpace(static_cast((*lvcite)->GetName()))); if (namx == name) { lv = (*lvcite); break; @@ -107,7 +107,7 @@ CaloTrkProcessing::CaloTrkProcessing(const std::string& name, lv = nullptr; name = static_cast(csps.insideNames_[istart + k]); for (lvcite = lvs->begin(); lvcite != lvs->end(); lvcite++) { - G4String namx(static_cast(dd4hep::dd::noNamespace((*lvcite)->GetName()))); + G4String namx(DD4hep2DDDName::noNameSpace(static_cast((*lvcite)->GetName()))); if (namx == name) { lv = (*lvcite); break; @@ -129,7 +129,7 @@ CaloTrkProcessing::CaloTrkProcessing(const std::string& name, G4LogicalVolume* lv = nullptr; G4String name = static_cast(fineNames[useFines[i]]); for (lvcite = lvs->begin(); lvcite != lvs->end(); lvcite++) { - G4String namx(static_cast(dd4hep::dd::noNamespace((*lvcite)->GetName()))); + G4String namx(DD4hep2DDDName::noNameSpace(static_cast((*lvcite)->GetName()))); if (namx == name) { lv = (*lvcite); break; diff --git a/SimG4CMS/Calo/src/ECalSD.cc b/SimG4CMS/Calo/src/ECalSD.cc index 78304d0498ffc..60b4b212d70d5 100644 --- a/SimG4CMS/Calo/src/ECalSD.cc +++ b/SimG4CMS/Calo/src/ECalSD.cc @@ -4,6 +4,7 @@ /////////////////////////////////////////////////////////////////////////////// #include "SimG4CMS/Calo/interface/ECalSD.h" #include "SimG4CMS/Calo/interface/EcalDumpGeometry.h" +#include "SimG4Core/Geometry/interface/DD4hep2DDDName.h" #include "SimG4Core/Notification/interface/TrackInformation.h" #include "Geometry/EcalCommonData/interface/EcalBarrelNumberingScheme.h" #include "Geometry/EcalCommonData/interface/EcalBaseNumber.h" @@ -18,8 +19,6 @@ #include "FWCore/ServiceRegistry/interface/Service.h" #include "CommonTools/UtilAlgos/interface/TFileService.h" -#include "DD4hep/Filter.h" - #include "G4LogicalVolumeStore.hh" #include "G4LogicalVolume.hh" #include "G4Step.hh" @@ -218,7 +217,7 @@ double ECalSD::getEnergyDeposit(const G4Step* aStep) { edep *= wt2; } #ifdef EDM_ML_DEBUG - edm::LogVerbatim("EcalSim") << lv->GetName() << " " << dd4hep::dd::noNamespace(lv->GetName()) + edm::LogVerbatim("EcalSim") << lv->GetName() << " " << DD4hep2DDDName::noNameSpace(lv->GetName()) << " Light Collection Efficiency " << weight << ":" << wt1 << " wt2= " << wt2 << " Weighted Energy Deposit " << edep / CLHEP::MeV << " MeV at " << preStepPoint->GetPosition(); @@ -292,7 +291,7 @@ uint16_t ECalSD::getRadiationLength(const G4StepPoint* hitPoint, const G4Logical double radl = hitPoint->GetMaterial()->GetRadlen(); thisX0 = (uint16_t)floor(scaleRL * crystalDepth / radl); #ifdef plotDebug - const std::string& lvname = dd4hep::dd::noNamespace(lv->GetName()); + const std::string& lvname = DD4hep2DDDName::noNameSpace(lv->GetName()); int k1 = (lvname.find("EFRY") != std::string::npos) ? 2 : 0; int k2 = (lvname.find("refl") != std::string::npos) ? 1 : 0; int kk = k1 + k2; @@ -302,7 +301,7 @@ uint16_t ECalSD::getRadiationLength(const G4StepPoint* hitPoint, const G4Logical #endif #ifdef EDM_ML_DEBUG G4ThreeVector localPoint = setToLocal(hitPoint->GetPosition(), hitPoint->GetTouchable()); - edm::LogVerbatim("EcalSim") << lv->GetName() << " " << dd4hep::dd::noNamespace(lv->GetName()) << " Global " + edm::LogVerbatim("EcalSim") << lv->GetName() << " " << DD4hep2DDDName::noNameSpace(lv->GetName()) << " Global " << hitPoint->GetPosition() << ":" << (hitPoint->GetPosition()).rho() << " Local " << localPoint << " Crystal Length " << crystalLength << " Radl " << radl << " crystalDepth " << crystalDepth << " Index " << thisX0 << " : " @@ -338,7 +337,7 @@ void ECalSD::initMap() { const G4LogicalVolumeStore* lvs = G4LogicalVolumeStore::GetInstance(); std::map nameMap; for (auto lvi = lvs->begin(), lve = lvs->end(); lvi != lve; ++lvi) - nameMap.emplace(dd4hep::dd::noNamespace((*lvi)->GetName()), *lvi); + nameMap.emplace(DD4hep2DDDName::noNameSpace((*lvi)->GetName()), *lvi); for (unsigned int it = 0; it < ecalSimParameters_->lvNames_.size(); ++it) { const std::string& matname = ecalSimParameters_->matNames_[it]; @@ -419,7 +418,7 @@ void ECalSD::initMap() { for (auto ite : xtalLMap) { std::string name("Unknown"); if (ite.first != nullptr) - name = dd4hep::dd::noNamespace((ite.first)->GetName()); + name = DD4hep2DDDName::noNameSpace((ite.first)->GetName()); edm::LogVerbatim("EcalSim") << " " << i << " " << ite.first << " " << name << " L = " << ite.second; ++i; } @@ -440,13 +439,13 @@ double ECalSD::curve_LY(const G4LogicalVolume* lv) { } else { edm::LogWarning("EcalSim") << "ECalSD: light coll curve : wrong distance " << "to APD " << dapd << " crlength = " << crystalLength << ":" << crystalDepth - << " crystal name = " << lv->GetName() << " " << dd4hep::dd::noNamespace(lv->GetName()) + << " crystal name = " << lv->GetName() << " " << DD4hep2DDDName::noNameSpace(lv->GetName()) << " z of localPoint = " << currentLocalPoint.z() << " take weight = " << weight; } } #ifdef EDM_ML_DEBUG edm::LogVerbatim("EcalSim") << "ECalSD: light coll curve : crlength = " << crystalLength << " Depth " << crystalDepth - << " crystal name = " << lv->GetName() << " " << dd4hep::dd::noNamespace(lv->GetName()) + << " crystal name = " << lv->GetName() << " " << DD4hep2DDDName::noNameSpace(lv->GetName()) << " z of localPoint = " << currentLocalPoint.z() << " take weight = " << weight; #endif return weight; @@ -461,7 +460,7 @@ void ECalSD::getBaseNumber(const G4Step* aStep) { //Get name and copy numbers if (theSize > 1) { for (int ii = 0; ii < theSize; ii++) { - std::string_view name = dd4hep::dd::noNamespace(touch->GetVolume(ii)->GetName()); + std::string_view name = DD4hep2DDDName::noNameSpace(touch->GetVolume(ii)->GetName()); theBaseNumber.addLevel(std::string(name), touch->GetReplicaNumber(ii)); #ifdef EDM_ML_DEBUG edm::LogVerbatim("EcalSim") << "ECalSD::getBaseNumber(): Adding level " << ii << ": " << name << "[" @@ -489,7 +488,7 @@ double ECalSD::getBirkL3(const G4Step* aStep) { weight = 1.; } #ifdef EDM_ML_DEBUG - edm::LogVerbatim("EcalSim") << "ECalSD::getBirkL3 in " << dd4hep::dd::noNamespace(mat->GetName()) << " Charge " + edm::LogVerbatim("EcalSim") << "ECalSD::getBirkL3 in " << DD4hep2DDDName::noNameSpace(mat->GetName()) << " Charge " << charge << " dE/dx " << dedx << " Birk Const " << rkb << " Weight = " << weight << " dE " << aStep->GetTotalEnergyDeposit(); #endif diff --git a/SimG4CMS/Calo/src/EcalDumpGeometry.cc b/SimG4CMS/Calo/src/EcalDumpGeometry.cc index c8c599d971c70..2ae3ad9b50295 100644 --- a/SimG4CMS/Calo/src/EcalDumpGeometry.cc +++ b/SimG4CMS/Calo/src/EcalDumpGeometry.cc @@ -3,10 +3,9 @@ #include "Geometry/EcalCommonData/interface/EcalBaseNumber.h" #include "Geometry/EcalCommonData/interface/EcalEndcapNumberingScheme.h" #include "Geometry/EcalCommonData/interface/EcalPreshowerNumberingScheme.h" +#include "SimG4Core/Geometry/interface/DD4hep2DDDName.h" #include "SimG4CMS/Calo/interface/EcalDumpGeometry.h" -#include "DD4hep/Filter.h" - #include EcalDumpGeometry::EcalDumpGeometry(const std::vector& names, @@ -20,7 +19,7 @@ EcalDumpGeometry::EcalDumpGeometry(const std::vector& names, G4cout << " Type: " << type << " Depth Names " << name1_ << ":" << name2_ << " with " << names.size() << " LVs: " << ss.str() << G4endl; for (const auto& name : names) { - std::string namex = (static_cast(dd4hep::dd::noNamespace(name))).substr(0, 4); + std::string namex = DD4hep2DDDName::noNameSpace(static_cast(name)).substr(0, 4); if (std::find(names_.begin(), names_.end(), namex) == names_.end()) names_.emplace_back(namex); } @@ -60,7 +59,7 @@ void EcalDumpGeometry::dumpTouch(G4VPhysicalVolume* pv, unsigned int leafDepth) G4LogicalVolume* lv = pv->GetLogicalVolume(); bool flag = ((type_ / 10) % 10 > 0); - std::string lvname = (static_cast(dd4hep::dd::noNamespace(lv->GetName()))); + std::string lvname = DD4hep2DDDName::noNameSpace(static_cast(lv->GetName())); std::string namex = lvname.substr(0, 4); EcalBaseNumber theBaseNumber; for (unsigned int k = 0; k < names_.size(); ++k) { @@ -73,7 +72,7 @@ void EcalDumpGeometry::dumpTouch(G4VPhysicalVolume* pv, unsigned int leafDepth) theBaseNumber.setSize(theSize + 1); std::stringstream ss; for (int ii = theSize; ii >= 0; --ii) { - std::string_view name = dd4hep::dd::noNamespace(fHistory_.GetVolume(ii)->GetName()); + std::string_view name = DD4hep2DDDName::noNameSpace(static_cast(fHistory_.GetVolume(ii)->GetName())); theBaseNumber.addLevel(static_cast(name), fHistory_.GetVolume(ii)->GetCopyNo()); ss << " " << ii << " " << name << ":" << fHistory_.GetVolume(ii)->GetCopyNo(); } From 74ca2b74fd50d16285fd12c4948ceb73d9360faa Mon Sep 17 00:00:00 2001 From: Sunanda Date: Sun, 17 Dec 2023 05:40:48 +0100 Subject: [PATCH 122/281] code check --- SimG4CMS/Calo/src/ECalSD.cc | 6 ++++-- SimG4CMS/Calo/src/EcalDumpGeometry.cc | 3 ++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/SimG4CMS/Calo/src/ECalSD.cc b/SimG4CMS/Calo/src/ECalSD.cc index 60b4b212d70d5..ebf65ba875f5e 100644 --- a/SimG4CMS/Calo/src/ECalSD.cc +++ b/SimG4CMS/Calo/src/ECalSD.cc @@ -439,13 +439,15 @@ double ECalSD::curve_LY(const G4LogicalVolume* lv) { } else { edm::LogWarning("EcalSim") << "ECalSD: light coll curve : wrong distance " << "to APD " << dapd << " crlength = " << crystalLength << ":" << crystalDepth - << " crystal name = " << lv->GetName() << " " << DD4hep2DDDName::noNameSpace(lv->GetName()) + << " crystal name = " << lv->GetName() << " " + << DD4hep2DDDName::noNameSpace(lv->GetName()) << " z of localPoint = " << currentLocalPoint.z() << " take weight = " << weight; } } #ifdef EDM_ML_DEBUG edm::LogVerbatim("EcalSim") << "ECalSD: light coll curve : crlength = " << crystalLength << " Depth " << crystalDepth - << " crystal name = " << lv->GetName() << " " << DD4hep2DDDName::noNameSpace(lv->GetName()) + << " crystal name = " << lv->GetName() << " " + << DD4hep2DDDName::noNameSpace(lv->GetName()) << " z of localPoint = " << currentLocalPoint.z() << " take weight = " << weight; #endif return weight; diff --git a/SimG4CMS/Calo/src/EcalDumpGeometry.cc b/SimG4CMS/Calo/src/EcalDumpGeometry.cc index 2ae3ad9b50295..cd7c47b311a70 100644 --- a/SimG4CMS/Calo/src/EcalDumpGeometry.cc +++ b/SimG4CMS/Calo/src/EcalDumpGeometry.cc @@ -72,7 +72,8 @@ void EcalDumpGeometry::dumpTouch(G4VPhysicalVolume* pv, unsigned int leafDepth) theBaseNumber.setSize(theSize + 1); std::stringstream ss; for (int ii = theSize; ii >= 0; --ii) { - std::string_view name = DD4hep2DDDName::noNameSpace(static_cast(fHistory_.GetVolume(ii)->GetName())); + std::string_view name = + DD4hep2DDDName::noNameSpace(static_cast(fHistory_.GetVolume(ii)->GetName())); theBaseNumber.addLevel(static_cast(name), fHistory_.GetVolume(ii)->GetCopyNo()); ss << " " << ii << " " << name << ":" << fHistory_.GetVolume(ii)->GetCopyNo(); } From 690906d7381e1dd875d75b78e1ddb11807a02c3e Mon Sep 17 00:00:00 2001 From: Shahzad Malik Muzaffar Date: Sun, 17 Dec 2023 11:57:45 +0100 Subject: [PATCH 123/281] Fix DQMOfflineConfiguration unit tests --- DQMOffline/Configuration/test/BuildFile.xml | 4 ++-- DQMOffline/Configuration/test/runrest.sh | 12 ++++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) create mode 100755 DQMOffline/Configuration/test/runrest.sh diff --git a/DQMOffline/Configuration/test/BuildFile.xml b/DQMOffline/Configuration/test/BuildFile.xml index 4334126214c15..7e3889dabe548 100644 --- a/DQMOffline/Configuration/test/BuildFile.xml +++ b/DQMOffline/Configuration/test/BuildFile.xml @@ -4,12 +4,12 @@ - + - + diff --git a/DQMOffline/Configuration/test/runrest.sh b/DQMOffline/Configuration/test/runrest.sh new file mode 100755 index 0000000000000..bc8b32bbab409 --- /dev/null +++ b/DQMOffline/Configuration/test/runrest.sh @@ -0,0 +1,12 @@ +#!/bin/bash -ex +ERR=0 +PYTHONUNBUFFERED=1 cmsswSequenceInfo.py --runTheMatrix --steps DQM,VALIDATION --infile $1 --offset $2 --dbfile sequences$2.db --threads 1 >run.log 2>&1 || ERR=1 +cat run.log +seqs=$(grep 'Analyzing [0-9][0-9]* seqs' run.log | sed 's|.*Analyzing *||;s| .*||') +echo "Sequences run by final DQMOfflineConfiguration: $seqs" +if [ "$seqs" -gt 0 ] ; then + echo "Final DQMOfflineConfiguration should not run any sequences." + echo "Please update parameters for TestDQMOfflineConfiguration unittest run the extra sequences." + exit 1 +fi +exit $ERR From 0a12d8d209cbec8567c44c7a6c44f15237f365a1 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Sun, 17 Dec 2023 12:09:45 +0100 Subject: [PATCH 124/281] clang error --- SimG4CMS/Calo/src/ECalSD.cc | 23 ++++++++++++----------- SimG4CMS/Calo/src/EcalDumpGeometry.cc | 4 ++-- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/SimG4CMS/Calo/src/ECalSD.cc b/SimG4CMS/Calo/src/ECalSD.cc index ebf65ba875f5e..2964f9f23b84d 100644 --- a/SimG4CMS/Calo/src/ECalSD.cc +++ b/SimG4CMS/Calo/src/ECalSD.cc @@ -126,8 +126,9 @@ ECalSD::ECalSD(const std::string& name, int type0 = dumpGeom / 1000; type += (10 * type0); - if (nullptr != scheme) + if (nullptr != scheme) { setNumberingScheme(scheme); + } #ifdef EDM_ML_DEBUG edm::LogVerbatim("EcalSim") << "Constructing a ECalSD with name " << GetName(); #endif @@ -217,7 +218,7 @@ double ECalSD::getEnergyDeposit(const G4Step* aStep) { edep *= wt2; } #ifdef EDM_ML_DEBUG - edm::LogVerbatim("EcalSim") << lv->GetName() << " " << DD4hep2DDDName::noNameSpace(lv->GetName()) + edm::LogVerbatim("EcalSim") << lv->GetName() << " " << DD4hep2DDDName::noNameSpace(static_cast(lv->GetName())) << " Light Collection Efficiency " << weight << ":" << wt1 << " wt2= " << wt2 << " Weighted Energy Deposit " << edep / CLHEP::MeV << " MeV at " << preStepPoint->GetPosition(); @@ -291,7 +292,7 @@ uint16_t ECalSD::getRadiationLength(const G4StepPoint* hitPoint, const G4Logical double radl = hitPoint->GetMaterial()->GetRadlen(); thisX0 = (uint16_t)floor(scaleRL * crystalDepth / radl); #ifdef plotDebug - const std::string& lvname = DD4hep2DDDName::noNameSpace(lv->GetName()); + const std::string lvname = DD4hep2DDDName::noNameSpace(static_cast(lv->GetName())); int k1 = (lvname.find("EFRY") != std::string::npos) ? 2 : 0; int k2 = (lvname.find("refl") != std::string::npos) ? 1 : 0; int kk = k1 + k2; @@ -301,7 +302,7 @@ uint16_t ECalSD::getRadiationLength(const G4StepPoint* hitPoint, const G4Logical #endif #ifdef EDM_ML_DEBUG G4ThreeVector localPoint = setToLocal(hitPoint->GetPosition(), hitPoint->GetTouchable()); - edm::LogVerbatim("EcalSim") << lv->GetName() << " " << DD4hep2DDDName::noNameSpace(lv->GetName()) << " Global " + edm::LogVerbatim("EcalSim") << lv->GetName() << " " << DD4hep2DDDName::noNameSpace(static_cast(lv->GetName())) << " Global " << hitPoint->GetPosition() << ":" << (hitPoint->GetPosition()).rho() << " Local " << localPoint << " Crystal Length " << crystalLength << " Radl " << radl << " crystalDepth " << crystalDepth << " Index " << thisX0 << " : " @@ -337,7 +338,7 @@ void ECalSD::initMap() { const G4LogicalVolumeStore* lvs = G4LogicalVolumeStore::GetInstance(); std::map nameMap; for (auto lvi = lvs->begin(), lve = lvs->end(); lvi != lve; ++lvi) - nameMap.emplace(DD4hep2DDDName::noNameSpace((*lvi)->GetName()), *lvi); + nameMap.emplace(DD4hep2DDDName::noNameSpace(static_cast((*lvi)->GetName())), *lvi); for (unsigned int it = 0; it < ecalSimParameters_->lvNames_.size(); ++it) { const std::string& matname = ecalSimParameters_->matNames_[it]; @@ -418,7 +419,7 @@ void ECalSD::initMap() { for (auto ite : xtalLMap) { std::string name("Unknown"); if (ite.first != nullptr) - name = DD4hep2DDDName::noNameSpace((ite.first)->GetName()); + name = DD4hep2DDDName::noNameSpace(static_cast((ite.first)->GetName())); edm::LogVerbatim("EcalSim") << " " << i << " " << ite.first << " " << name << " L = " << ite.second; ++i; } @@ -440,14 +441,14 @@ double ECalSD::curve_LY(const G4LogicalVolume* lv) { edm::LogWarning("EcalSim") << "ECalSD: light coll curve : wrong distance " << "to APD " << dapd << " crlength = " << crystalLength << ":" << crystalDepth << " crystal name = " << lv->GetName() << " " - << DD4hep2DDDName::noNameSpace(lv->GetName()) + << DD4hep2DDDName::noNameSpace(static_cast(lv->GetName())) << " z of localPoint = " << currentLocalPoint.z() << " take weight = " << weight; } } #ifdef EDM_ML_DEBUG edm::LogVerbatim("EcalSim") << "ECalSD: light coll curve : crlength = " << crystalLength << " Depth " << crystalDepth << " crystal name = " << lv->GetName() << " " - << DD4hep2DDDName::noNameSpace(lv->GetName()) + << DD4hep2DDDName::noNameSpace(static_cast(lv->GetName())) << " z of localPoint = " << currentLocalPoint.z() << " take weight = " << weight; #endif return weight; @@ -462,8 +463,8 @@ void ECalSD::getBaseNumber(const G4Step* aStep) { //Get name and copy numbers if (theSize > 1) { for (int ii = 0; ii < theSize; ii++) { - std::string_view name = DD4hep2DDDName::noNameSpace(touch->GetVolume(ii)->GetName()); - theBaseNumber.addLevel(std::string(name), touch->GetReplicaNumber(ii)); + std::string name = DD4hep2DDDName::noNameSpace(static_cast(touch->GetVolume(ii)->GetName())); + theBaseNumber.addLevel(name, touch->GetReplicaNumber(ii)); #ifdef EDM_ML_DEBUG edm::LogVerbatim("EcalSim") << "ECalSD::getBaseNumber(): Adding level " << ii << ": " << name << "[" << touch->GetReplicaNumber(ii) << "]"; @@ -490,7 +491,7 @@ double ECalSD::getBirkL3(const G4Step* aStep) { weight = 1.; } #ifdef EDM_ML_DEBUG - edm::LogVerbatim("EcalSim") << "ECalSD::getBirkL3 in " << DD4hep2DDDName::noNameSpace(mat->GetName()) << " Charge " + edm::LogVerbatim("EcalSim") << "ECalSD::getBirkL3 in " << DD4hep2DDDName::noNameSpace(static_cast(mat->GetName())) << " Charge " << charge << " dE/dx " << dedx << " Birk Const " << rkb << " Weight = " << weight << " dE " << aStep->GetTotalEnergyDeposit(); #endif diff --git a/SimG4CMS/Calo/src/EcalDumpGeometry.cc b/SimG4CMS/Calo/src/EcalDumpGeometry.cc index cd7c47b311a70..f18795177e152 100644 --- a/SimG4CMS/Calo/src/EcalDumpGeometry.cc +++ b/SimG4CMS/Calo/src/EcalDumpGeometry.cc @@ -72,9 +72,9 @@ void EcalDumpGeometry::dumpTouch(G4VPhysicalVolume* pv, unsigned int leafDepth) theBaseNumber.setSize(theSize + 1); std::stringstream ss; for (int ii = theSize; ii >= 0; --ii) { - std::string_view name = + std::string name = DD4hep2DDDName::noNameSpace(static_cast(fHistory_.GetVolume(ii)->GetName())); - theBaseNumber.addLevel(static_cast(name), fHistory_.GetVolume(ii)->GetCopyNo()); + theBaseNumber.addLevel(name, fHistory_.GetVolume(ii)->GetCopyNo()); ss << " " << ii << " " << name << ":" << fHistory_.GetVolume(ii)->GetCopyNo(); } uint32_t id = (((type_ % 10) == 0) ? ebNumbering_.getUnitID(theBaseNumber) From ec43814434cb8df40b593579705f9fe8f853cd42 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Sun, 17 Dec 2023 12:17:11 +0100 Subject: [PATCH 125/281] Code check --- SimG4CMS/Calo/src/ECalSD.cc | 9 ++++++--- SimG4CMS/Calo/src/EcalDumpGeometry.cc | 3 +-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/SimG4CMS/Calo/src/ECalSD.cc b/SimG4CMS/Calo/src/ECalSD.cc index 2964f9f23b84d..5b8ca4497770f 100644 --- a/SimG4CMS/Calo/src/ECalSD.cc +++ b/SimG4CMS/Calo/src/ECalSD.cc @@ -218,7 +218,8 @@ double ECalSD::getEnergyDeposit(const G4Step* aStep) { edep *= wt2; } #ifdef EDM_ML_DEBUG - edm::LogVerbatim("EcalSim") << lv->GetName() << " " << DD4hep2DDDName::noNameSpace(static_cast(lv->GetName())) + edm::LogVerbatim("EcalSim") << lv->GetName() << " " + << DD4hep2DDDName::noNameSpace(static_cast(lv->GetName())) << " Light Collection Efficiency " << weight << ":" << wt1 << " wt2= " << wt2 << " Weighted Energy Deposit " << edep / CLHEP::MeV << " MeV at " << preStepPoint->GetPosition(); @@ -302,7 +303,8 @@ uint16_t ECalSD::getRadiationLength(const G4StepPoint* hitPoint, const G4Logical #endif #ifdef EDM_ML_DEBUG G4ThreeVector localPoint = setToLocal(hitPoint->GetPosition(), hitPoint->GetTouchable()); - edm::LogVerbatim("EcalSim") << lv->GetName() << " " << DD4hep2DDDName::noNameSpace(static_cast(lv->GetName())) << " Global " + edm::LogVerbatim("EcalSim") << lv->GetName() << " " + << DD4hep2DDDName::noNameSpace(static_cast(lv->GetName())) << " Global " << hitPoint->GetPosition() << ":" << (hitPoint->GetPosition()).rho() << " Local " << localPoint << " Crystal Length " << crystalLength << " Radl " << radl << " crystalDepth " << crystalDepth << " Index " << thisX0 << " : " @@ -491,7 +493,8 @@ double ECalSD::getBirkL3(const G4Step* aStep) { weight = 1.; } #ifdef EDM_ML_DEBUG - edm::LogVerbatim("EcalSim") << "ECalSD::getBirkL3 in " << DD4hep2DDDName::noNameSpace(static_cast(mat->GetName())) << " Charge " + edm::LogVerbatim("EcalSim") << "ECalSD::getBirkL3 in " + << DD4hep2DDDName::noNameSpace(static_cast(mat->GetName())) << " Charge " << charge << " dE/dx " << dedx << " Birk Const " << rkb << " Weight = " << weight << " dE " << aStep->GetTotalEnergyDeposit(); #endif diff --git a/SimG4CMS/Calo/src/EcalDumpGeometry.cc b/SimG4CMS/Calo/src/EcalDumpGeometry.cc index f18795177e152..d4e8fee1cf6d0 100644 --- a/SimG4CMS/Calo/src/EcalDumpGeometry.cc +++ b/SimG4CMS/Calo/src/EcalDumpGeometry.cc @@ -72,8 +72,7 @@ void EcalDumpGeometry::dumpTouch(G4VPhysicalVolume* pv, unsigned int leafDepth) theBaseNumber.setSize(theSize + 1); std::stringstream ss; for (int ii = theSize; ii >= 0; --ii) { - std::string name = - DD4hep2DDDName::noNameSpace(static_cast(fHistory_.GetVolume(ii)->GetName())); + std::string name = DD4hep2DDDName::noNameSpace(static_cast(fHistory_.GetVolume(ii)->GetName())); theBaseNumber.addLevel(name, fHistory_.GetVolume(ii)->GetCopyNo()); ss << " " << ii << " " << name << ":" << fHistory_.GetVolume(ii)->GetCopyNo(); } From 7cd352e2ba552a24c6de49f5da97d5b0e31afd79 Mon Sep 17 00:00:00 2001 From: Shahzad Malik Muzaffar Date: Sun, 17 Dec 2023 15:12:52 +0100 Subject: [PATCH 126/281] Use likelihood fit instead of chi-square fit in PVValidation --- Alignment/OfflineValidation/src/PVValidationHelpers.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Alignment/OfflineValidation/src/PVValidationHelpers.cc b/Alignment/OfflineValidation/src/PVValidationHelpers.cc index f360fe02ee1a9..9724e822b2fd3 100644 --- a/Alignment/OfflineValidation/src/PVValidationHelpers.cc +++ b/Alignment/OfflineValidation/src/PVValidationHelpers.cc @@ -234,7 +234,7 @@ std::pair PVValHelper::fitResiduals(TH1* hist) float sigma = hist->GetRMS(); TF1 func("tmp", "gaus", mean - 1.5 * sigma, mean + 1.5 * sigma); - if (0 == hist->Fit(&func, "QNR")) { // N: do not blow up file by storing fit! + if (0 == hist->Fit(&func, "QNRL")) { // N: do not blow up file by storing fit! mean = func.GetParameter(1); sigma = func.GetParameter(2); // second fit: three sigma of first fit around mean of first fit From d7168ec4760e9e0b3577c3ac76c7715a21ec1e1b Mon Sep 17 00:00:00 2001 From: Sunanda Date: Mon, 18 Dec 2023 01:04:37 +0100 Subject: [PATCH 127/281] Cleanup in SimG4CMS/Muon against using codes directly from DD4hep --- SimG4CMS/Muon/BuildFile.xml | 3 ++- SimG4CMS/Muon/src/MuonG4Numbering.cc | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/SimG4CMS/Muon/BuildFile.xml b/SimG4CMS/Muon/BuildFile.xml index 8244c9f2db440..6940021ab5bbe 100644 --- a/SimG4CMS/Muon/BuildFile.xml +++ b/SimG4CMS/Muon/BuildFile.xml @@ -1,8 +1,9 @@ - + + diff --git a/SimG4CMS/Muon/src/MuonG4Numbering.cc b/SimG4CMS/Muon/src/MuonG4Numbering.cc index ba37228633706..46092903411f3 100644 --- a/SimG4CMS/Muon/src/MuonG4Numbering.cc +++ b/SimG4CMS/Muon/src/MuonG4Numbering.cc @@ -1,10 +1,10 @@ #include "SimG4CMS/Muon/interface/MuonG4Numbering.h" +#include "SimG4Core/Geometry/interface/DD4hep2DDDName.h" #include "CondFormats/GeometryObjects/interface/MuonOffsetMap.h" #include "Geometry/MuonNumbering/interface/MuonBaseNumber.h" #include "Geometry/MuonNumbering/interface/MuonGeometryConstants.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" -#include "DD4hep/Filter.h" #include "G4VPhysicalVolume.hh" #include "G4VTouchable.hh" #include "G4Step.hh" @@ -54,7 +54,7 @@ MuonBaseNumber MuonG4Numbering::PhysicalVolumeToBaseNumber(const G4Step* aStep) int copyno = vol->GetCopyNo(); int extra(0); if (dd4hep_ && (offMap_ != nullptr)) { - std::string namx = static_cast(dd4hep::dd::noNamespace(vol->GetName())); + std::string namx = DD4hep2DDDName::noNameSpace(static_cast(vol->GetName())); std::size_t last = namx.rfind('_'); std::string name = ((last == std::string::npos) ? namx : (namx.substr(0, last))); auto itr = offMap_->muonMap_.find(name); From 0fb6305cfe8c872c95407abecfe4a833b2da4c85 Mon Sep 17 00:00:00 2001 From: Malik Shahzad Muzaffar Date: Mon, 18 Dec 2023 10:16:23 +0100 Subject: [PATCH 128/281] Update runrest.sh --- DQMOffline/Configuration/test/runrest.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DQMOffline/Configuration/test/runrest.sh b/DQMOffline/Configuration/test/runrest.sh index bc8b32bbab409..83394ce77d5a8 100755 --- a/DQMOffline/Configuration/test/runrest.sh +++ b/DQMOffline/Configuration/test/runrest.sh @@ -6,7 +6,7 @@ seqs=$(grep 'Analyzing [0-9][0-9]* seqs' run.log | sed 's|.*Analyzing *||;s| .*| echo "Sequences run by final DQMOfflineConfiguration: $seqs" if [ "$seqs" -gt 0 ] ; then echo "Final DQMOfflineConfiguration should not run any sequences." - echo "Please update parameters for TestDQMOfflineConfiguration unittest run the extra sequences." + echo "Please update parameters for TestDQMOfflineConfiguration unittest to run the extra sequences." exit 1 fi exit $ERR From deb9ad2976d7047ee4334d26418824cc0dabbf18 Mon Sep 17 00:00:00 2001 From: Norraphat Date: Mon, 18 Dec 2023 10:58:10 +0100 Subject: [PATCH 129/281] bug fix --- Configuration/Applications/python/ConfigBuilder.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Configuration/Applications/python/ConfigBuilder.py b/Configuration/Applications/python/ConfigBuilder.py index d372c67de61c8..db4d521b111d8 100644 --- a/Configuration/Applications/python/ConfigBuilder.py +++ b/Configuration/Applications/python/ConfigBuilder.py @@ -1500,7 +1500,7 @@ def prepare_GEN(self, stepSpec = None): #register to the genstepfilter the name of the path (static right now, but might evolve) self.executeAndRemember('process.genstepfilter.triggerConditions=cms.vstring("generation_step")') - if 'reGEN' in self.stepMap: + if 'reGEN' in self.stepMap or stepSpec == 'pgen_smear': #stop here return From b53eab719b3fa69d7f5d027ff453c2ac723f722b Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Tue, 19 Dec 2023 16:04:31 +0100 Subject: [PATCH 130/281] Move gap length to configuration --- L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc | 4 ++-- L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc index 3e6fe0669b888..38e1d75601524 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1CTJetFileWriter.cc @@ -56,6 +56,7 @@ L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) : collections_(iConfig.getParameter>("collections")), nFramesPerBX_(iConfig.getParameter("nFramesPerBX")), ctl2BoardTMUX_(iConfig.getParameter("TMUX")), + gapLengthOutput_(iConfig.getParameter("gapLengthOutput")), maxLinesPerFile_(iConfig.getParameter("maxLinesPerFile")), channelSpecsOutputToGT_{{{"jets", 0}, {{ctl2BoardTMUX_, gapLengthOutput_}, {0}}}}, fileWriterOutputToGT_(l1t::demo::parseFileFormat(iConfig.getParameter("format")), @@ -84,8 +85,6 @@ L1CTJetFileWriter::L1CTJetFileWriter(const edm::ParameterSet& iConfig) tokens_.emplace_back(jetToken, mhtToken); tokensToWrite_.emplace_back(writeJetToken, writeMhtToken); } - gapLengthOutput_ = ctl2BoardTMUX_ * nFramesPerBX_ - 2 * std::accumulate(nJets_.begin(), nJets_.end(), 0) - - std::accumulate(nSums_.begin(), nSums_.end(), 0); } void L1CTJetFileWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { @@ -174,6 +173,7 @@ void L1CTJetFileWriter::fillDescriptions(edm::ConfigurationDescriptions& descrip desc.add("outputFileExtension", "txt"); desc.add("nJets", 12); desc.add("nFramesPerBX", 9); + desc.add("gapLengthOutput", 4); desc.add("TMUX", 6); desc.add("maxLinesPerFile", 1024); desc.add("format", "EMPv2"); diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py b/L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py index f26f6507efb13..e450e0c57e317 100644 --- a/L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py +++ b/L1Trigger/Phase2L1ParticleFlow/python/l1tJetFileWriter_cfi.py @@ -6,6 +6,7 @@ mht = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulatorMHT"), nSums = cms.uint32(1))), nFramesPerBX = cms.uint32(9), # 360 MHz clock or 25 Gb/s link + gapLengthOutput = cms.uint32(4), TMUX = cms.uint32(6), maxLinesPerFile = cms.uint32(1024), outputFilename = cms.string("L1CTSCJetsPatterns"), From 24d06ef24d2d79586cb81f16cd40839ff6087b58 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Tue, 19 Dec 2023 09:25:39 -0600 Subject: [PATCH 131/281] Fixed std::accumulate use in L1Trigger/TrackFindingTracklet C++20 requires the 1st argument of the operator passed to std::accumulate to be a copy, not a non-const reference. --- L1Trigger/TrackFindingTracklet/src/DR.cc | 6 +++--- L1Trigger/TrackFindingTracklet/src/KFin.cc | 4 ++-- L1Trigger/TrackFindingTracklet/test/AnalyzerDR.cc | 10 +++++----- L1Trigger/TrackFindingTracklet/test/AnalyzerDRin.cc | 10 +++++----- 4 files changed, 15 insertions(+), 15 deletions(-) diff --git a/L1Trigger/TrackFindingTracklet/src/DR.cc b/L1Trigger/TrackFindingTracklet/src/DR.cc index dc7b7204791c6..14afa089a247e 100644 --- a/L1Trigger/TrackFindingTracklet/src/DR.cc +++ b/L1Trigger/TrackFindingTracklet/src/DR.cc @@ -26,8 +26,8 @@ namespace trklet { // read in and organize input tracks and stubs void DR::consume(const StreamsTrack& streamsTrack, const StreamsStub& streamsStub) { const int offsetTrack = region_ * channelAssignment_->numNodesDR(); - auto nonNullTrack = [](int& sum, const FrameTrack& frame) { return sum += (frame.first.isNonnull() ? 1 : 0); }; - auto nonNullStub = [](int& sum, const FrameStub& frame) { return sum += (frame.first.isNonnull() ? 1 : 0); }; + auto nonNullTrack = [](int sum, const FrameTrack& frame) { return sum + (frame.first.isNonnull() ? 1 : 0); }; + auto nonNullStub = [](int sum, const FrameStub& frame) { return sum + (frame.first.isNonnull() ? 1 : 0); }; // count tracks and stubs and reserve corresponding vectors int sizeTracks(0); int sizeStubs(0); @@ -157,4 +157,4 @@ namespace trklet { return same >= channelAssignment_->minIdenticalStubs(); } -} // namespace trklet \ No newline at end of file +} // namespace trklet diff --git a/L1Trigger/TrackFindingTracklet/src/KFin.cc b/L1Trigger/TrackFindingTracklet/src/KFin.cc index d2b0bff2c6dfc..c5cbc3d469648 100644 --- a/L1Trigger/TrackFindingTracklet/src/KFin.cc +++ b/L1Trigger/TrackFindingTracklet/src/KFin.cc @@ -28,8 +28,8 @@ namespace trklet { // read in and organize input tracks and stubs void KFin::consume(const StreamsTrack& streamsTrack, const StreamsStub& streamsStub) { const int offsetTrack = region_ * channelAssignment_->numNodesDR(); - auto nonNullTrack = [](int& sum, const FrameTrack& frame) { return sum += (frame.first.isNonnull() ? 1 : 0); }; - auto nonNullStub = [](int& sum, const FrameStub& frame) { return sum += (frame.first.isNonnull() ? 1 : 0); }; + auto nonNullTrack = [](int sum, const FrameTrack& frame) { return sum + (frame.first.isNonnull() ? 1 : 0); }; + auto nonNullStub = [](int sum, const FrameStub& frame) { return sum + (frame.first.isNonnull() ? 1 : 0); }; // count tracks and stubs and reserve corresponding vectors int sizeTracks(0); int sizeStubs(0); diff --git a/L1Trigger/TrackFindingTracklet/test/AnalyzerDR.cc b/L1Trigger/TrackFindingTracklet/test/AnalyzerDR.cc index 7d7c90d68c78a..fc5e36f397075 100644 --- a/L1Trigger/TrackFindingTracklet/test/AnalyzerDR.cc +++ b/L1Trigger/TrackFindingTracklet/test/AnalyzerDR.cc @@ -200,8 +200,8 @@ namespace trklet { vector> lost; formTracks(lostTracks, lostStubs, lost, offset + channel); nTracks += tracks.size(); - nStubs += accumulate(tracks.begin(), tracks.end(), 0, [](int& sum, const vector& track) { - return sum += (int)track.size(); + nStubs += accumulate(tracks.begin(), tracks.end(), 0, [](int sum, const vector& track) { + return sum + static_cast(track.size()); }); nLost += lost.size(); allTracks += tracks.size(); @@ -289,8 +289,8 @@ namespace trklet { int channel) const { const int offset = channel * setup_->numLayers(); const StreamTrack& streamTrack = streamsTrack[channel]; - const int numTracks = accumulate(streamTrack.begin(), streamTrack.end(), 0, [](int& sum, const FrameTrack& frame) { - return sum += (frame.first.isNonnull() ? 1 : 0); + const int numTracks = accumulate(streamTrack.begin(), streamTrack.end(), 0, [](int sum, const FrameTrack& frame) { + return sum + (frame.first.isNonnull() ? 1 : 0); }); tracks.reserve(numTracks); for (int frame = 0; frame < (int)streamTrack.size(); frame++) { @@ -325,4 +325,4 @@ namespace trklet { } // namespace trklet -DEFINE_FWK_MODULE(trklet::AnalyzerDR); \ No newline at end of file +DEFINE_FWK_MODULE(trklet::AnalyzerDR); diff --git a/L1Trigger/TrackFindingTracklet/test/AnalyzerDRin.cc b/L1Trigger/TrackFindingTracklet/test/AnalyzerDRin.cc index e9f37ab9ec2c9..e91d45c0b06e2 100644 --- a/L1Trigger/TrackFindingTracklet/test/AnalyzerDRin.cc +++ b/L1Trigger/TrackFindingTracklet/test/AnalyzerDRin.cc @@ -201,8 +201,8 @@ namespace trklet { vector> lost; formTracks(lostTracks, lostStubs, lost, offset + channel); nTracks += tracks.size(); - nStubs += accumulate(tracks.begin(), tracks.end(), 0, [](int& sum, const vector& track) { - return sum += (int)track.size(); + nStubs += accumulate(tracks.begin(), tracks.end(), 0, [](int sum, const vector& track) { + return sum + (int)track.size(); }); nLost += lost.size(); allTracks += tracks.size(); @@ -290,8 +290,8 @@ namespace trklet { int channel) const { const int offset = channel * setup_->numLayers(); const StreamTrack& streamTrack = streamsTrack[channel]; - const int numTracks = accumulate(streamTrack.begin(), streamTrack.end(), 0, [](int& sum, const FrameTrack& frame) { - return sum += (frame.first.isNonnull() ? 1 : 0); + const int numTracks = accumulate(streamTrack.begin(), streamTrack.end(), 0, [](int sum, const FrameTrack& frame) { + return sum + (frame.first.isNonnull() ? 1 : 0); }); tracks.reserve(numTracks); for (int frame = 0; frame < (int)streamTrack.size(); frame++) { @@ -326,4 +326,4 @@ namespace trklet { } // namespace trklet -DEFINE_FWK_MODULE(trklet::AnalyzerDRin); \ No newline at end of file +DEFINE_FWK_MODULE(trklet::AnalyzerDRin); From c110fe526f291650ee1cb49434ac2bc44a12c181 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Tue, 19 Dec 2023 09:56:09 -0600 Subject: [PATCH 132/281] Removed std::unary_function from l1t::KeyGetter std::unary_function was deprecated in C++11 and removed in C++17 --- DataFormats/L1THGCal/interface/HGCalMulticluster.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DataFormats/L1THGCal/interface/HGCalMulticluster.h b/DataFormats/L1THGCal/interface/HGCalMulticluster.h index 3df4591998e7f..d0d58a6d1021d 100644 --- a/DataFormats/L1THGCal/interface/HGCalMulticluster.h +++ b/DataFormats/L1THGCal/interface/HGCalMulticluster.h @@ -53,7 +53,7 @@ namespace l1t { private: template - struct KeyGetter : std::unary_function { + struct KeyGetter { const typename Iter::value_type::first_type& operator()(const typename Iter::value_type& p) const { return p.first; } From 326d8e74a49a32840a9ff9ca8728f194e4a0399f Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Tue, 19 Dec 2023 10:39:36 -0600 Subject: [PATCH 133/281] Removed operator= from Phase2L1CaloJetEmulator helpers The default generated operator does the exact same work. --- .../interface/Phase2L1CaloJetEmulator.h | 26 ------------------- 1 file changed, 26 deletions(-) diff --git a/L1Trigger/L1CaloTrigger/interface/Phase2L1CaloJetEmulator.h b/L1Trigger/L1CaloTrigger/interface/Phase2L1CaloJetEmulator.h index 4ccf93df4efec..2ac5ec0399541 100644 --- a/L1Trigger/L1CaloTrigger/interface/Phase2L1CaloJetEmulator.h +++ b/L1Trigger/L1CaloTrigger/interface/Phase2L1CaloJetEmulator.h @@ -38,18 +38,6 @@ namespace gctobj { phiCenter = 0; etaCenter = 0; } - - towerMax& operator=(const towerMax& rhs) { - energy = rhs.energy; - phi = rhs.phi; - eta = rhs.eta; - energyMax = rhs.energyMax; - phiMax = rhs.phiMax; - etaMax = rhs.etaMax; - phiCenter = rhs.phiCenter; - etaCenter = rhs.etaCenter; - return *this; - } }; class jetInfo { @@ -77,20 +65,6 @@ namespace gctobj { phiCenter = 0; etaCenter = 0; } - - jetInfo& operator=(const jetInfo& rhs) { - seedEnergy = rhs.seedEnergy; - energy = rhs.energy; - tauEt = rhs.tauEt; - phi = rhs.phi; - eta = rhs.eta; - energyMax = rhs.energyMax; - phiMax = rhs.phiMax; - etaMax = rhs.etaMax; - phiCenter = rhs.phiCenter; - etaCenter = rhs.etaCenter; - return *this; - } }; typedef struct { From abec6d92e5efac5d6441f9bb638aeb40f82ecf4d Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Tue, 19 Dec 2023 11:07:40 -0600 Subject: [PATCH 134/281] Removed get_temporary_buffer from L1Trigger/L1TMuonEndCap The method was removed from C++ in 2020. --- L1Trigger/L1TMuonEndCap/src/helper.h | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/L1Trigger/L1TMuonEndCap/src/helper.h b/L1Trigger/L1TMuonEndCap/src/helper.h index 9dc44b3248691..3888e3e1c8e24 100644 --- a/L1Trigger/L1TMuonEndCap/src/helper.h +++ b/L1Trigger/L1TMuonEndCap/src/helper.h @@ -148,9 +148,9 @@ namespace { const std::ptrdiff_t len = std::distance(first, last); typedef typename std::iterator_traits::value_type value_type; typedef typename std::iterator_traits::pointer pointer; - std::pair p = std::get_temporary_buffer(len); - pointer buf = p.first; - pointer buf_end = std::next(p.first, p.second); + std::unique_ptr p{new value_type[len]}; + pointer buf = p.get(); + pointer buf_end = buf + len; RandomAccessIterator first1 = first; RandomAccessIterator last1 = middle; @@ -171,9 +171,8 @@ namespace { *buf++ = *first2++; } - buf = p.first; + buf = p.get(); std::copy(buf, buf_end, first); - std::return_temporary_buffer(p.first); } // See above @@ -201,9 +200,9 @@ namespace { const std::ptrdiff_t len = std::distance(first, last); typedef typename std::iterator_traits::value_type value_type; typedef typename std::iterator_traits::pointer pointer; - std::pair p = std::get_temporary_buffer(len); - pointer buf = p.first; - pointer buf_end = std::next(p.first, p.second); + std::unique_ptr p{new value_type[len]}; + pointer buf = p.get(); + const pointer buf_end = buf + len; RandomAccessIterator first1 = first; RandomAccessIterator last1 = one_third; @@ -249,9 +248,8 @@ namespace { *buf++ = *first2++; } - buf = p.first; + buf = p.get(); std::copy(buf, buf_end, first); - std::return_temporary_buffer(p.first); } // See above From eceea706f0e59d2e920d7f92a7b312e7df6a9053 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Tue, 19 Dec 2023 11:33:04 -0600 Subject: [PATCH 135/281] Removed std::unexpected from DTGeometryParserFromDDD The method was removed in C++17. --- .../DTCalibration/plugins/DTGeometryParserFromDDD.cc | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/CalibMuon/DTCalibration/plugins/DTGeometryParserFromDDD.cc b/CalibMuon/DTCalibration/plugins/DTGeometryParserFromDDD.cc index ab9c57624aac6..62462e6c70c59 100644 --- a/CalibMuon/DTCalibration/plugins/DTGeometryParserFromDDD.cc +++ b/CalibMuon/DTCalibration/plugins/DTGeometryParserFromDDD.cc @@ -24,16 +24,14 @@ DTGeometryParserFromDDD::DTGeometryParserFromDDD( } catch (const cms::Exception& e) { std::cerr << "DTGeometryParserFromDDD::build() : DDD Exception: something went wrong during XML parsing!" << std::endl - << " Message: " << e << std::endl - << " Terminating execution ... " << std::endl; + << " Message: " << e << std::endl; throw; } catch (const exception& e) { std::cerr << "DTGeometryParserFromDDD::build() : an unexpected exception occured: " << e.what() << std::endl; throw; } catch (...) { - std::cerr << "DTGeometryParserFromDDD::build() : An unexpected exception occured!" << std::endl - << " Terminating execution ... " << std::endl; - std::unexpected(); + std::cerr << "DTGeometryParserFromDDD::build() : An unexpected exception occured!" << std::endl; + throw; } } From 644914e161047c8b945421a22c2457a5435f6046 Mon Sep 17 00:00:00 2001 From: Claire Date: Mon, 20 Nov 2023 17:21:01 -0600 Subject: [PATCH 136/281] change track fast jets to take in track selected and vertex associated tracks --- .../plugins/L1TrackFastJetProducer.cc | 18 +++++++++--------- .../python/l1tTrackFastJets_cfi.py | 4 ++-- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/L1Trigger/L1TTrackMatch/plugins/L1TrackFastJetProducer.cc b/L1Trigger/L1TTrackMatch/plugins/L1TrackFastJetProducer.cc index b2c0cb4fa2eb5..0c7051bd05677 100644 --- a/L1Trigger/L1TTrackMatch/plugins/L1TrackFastJetProducer.cc +++ b/L1Trigger/L1TTrackMatch/plugins/L1TrackFastJetProducer.cc @@ -9,6 +9,7 @@ #include // user include files +#include "DataFormats/Common/interface/RefVector.h" #include "FWCore/Framework/interface/Frameworkfwd.h" #include "FWCore/Framework/interface/stream/EDProducer.h" #include "FWCore/Framework/interface/Event.h" @@ -52,6 +53,7 @@ class L1TrackFastJetProducer : public edm::stream::EDProducer<> { public: typedef TTTrack L1TTTrackType; typedef std::vector L1TTTrackCollectionType; + typedef edm::RefVector L1TTTrackRefCollectionType; explicit L1TrackFastJetProducer(const edm::ParameterSet&); ~L1TrackFastJetProducer() override; @@ -78,7 +80,7 @@ class L1TrackFastJetProducer : public edm::stream::EDProducer<> { const float trkChi2dofTightChi2_; const bool displaced_; //use prompt/displaced tracks - const edm::EDGetTokenT > > trackToken_; + const EDGetTokenT trackToken_; edm::EDGetTokenT pvToken_; edm::ESGetToken tTopoToken_; }; @@ -98,8 +100,7 @@ L1TrackFastJetProducer::L1TrackFastJetProducer(const edm::ParameterSet& iConfig) trkPtTightChi2_((float)iConfig.getParameter("trk_ptTightChi2")), trkChi2dofTightChi2_((float)iConfig.getParameter("trk_chi2dofTightChi2")), displaced_(iConfig.getParameter("displaced")), - trackToken_(consumes > >( - iConfig.getParameter("L1TrackInputTag"))), + trackToken_(consumes(iConfig.getParameter("L1TrackInputTag"))), pvToken_(consumes(iConfig.getParameter("L1PrimaryVertexTag"))), tTopoToken_(esConsumes(edm::ESInputTag("", ""))) { if (displaced_) @@ -116,9 +117,8 @@ void L1TrackFastJetProducer::produce(edm::Event& iEvent, const edm::EventSetup& std::unique_ptr L1TrackFastJets(new TkJetCollection); // L1 tracks - edm::Handle > > TTTrackHandle; + edm::Handle TTTrackHandle; iEvent.getByToken(trackToken_, TTTrackHandle); - std::vector >::const_iterator iterL1Track; // Tracker Topology const TrackerTopology& tTopo = iSetup.getData(tTopoToken_); @@ -130,9 +130,9 @@ void L1TrackFastJetProducer::produce(edm::Event& iEvent, const edm::EventSetup& std::vector JetInputs; float recoVtx = L1PrimaryVertexHandle->begin()->z0(); - unsigned int this_l1track = 0; - for (iterL1Track = TTTrackHandle->begin(); iterL1Track != TTTrackHandle->end(); iterL1Track++) { - this_l1track++; + for (unsigned int this_l1track = 0; this_l1track < TTTrackHandle->size(); this_l1track++) { + edm::Ptr iterL1Track(TTTrackHandle, this_l1track); + float trk_pt = iterL1Track->momentum().perp(); float trk_z0 = iterL1Track->z0(); float trk_chi2dof = iterL1Track->chi2Red(); @@ -179,7 +179,7 @@ void L1TrackFastJetProducer::produce(edm::Event& iEvent, const edm::EventSetup& iterL1Track->momentum().z(), iterL1Track->momentum().mag()); JetInputs.push_back(psuedoJet); // input tracks for clustering - JetInputs.back().set_user_index(this_l1track - 1); // save track index in the collection + JetInputs.back().set_user_index(this_l1track); // save track index in the collection } // end loop over tracks fastjet::ClusterSequence cs(JetInputs, jet_def); // define the output jet collection diff --git a/L1Trigger/L1TTrackMatch/python/l1tTrackFastJets_cfi.py b/L1Trigger/L1TTrackMatch/python/l1tTrackFastJets_cfi.py index 183244e7d0ad1..12a135003df92 100644 --- a/L1Trigger/L1TTrackMatch/python/l1tTrackFastJets_cfi.py +++ b/L1Trigger/L1TTrackMatch/python/l1tTrackFastJets_cfi.py @@ -1,7 +1,7 @@ import FWCore.ParameterSet.Config as cms l1tTrackFastJets = cms.EDProducer("L1TrackFastJetProducer", - L1TrackInputTag = cms.InputTag("l1tTTTracksFromTrackletEmulation", "Level1TTTracks"), + L1TrackInputTag = cms.InputTag("l1tTrackVertexAssociationProducerForJets", "Level1TTTracksSelectedAssociated"), L1PrimaryVertexTag=cms.InputTag("l1tVertexFinder", "L1Vertices"), trk_zMax = cms.double(15.), # max track z0 [cm] trk_chi2dofMax = cms.double(10.), # max track chi2/dof @@ -19,7 +19,7 @@ ) l1tTrackFastJetsExtended = cms.EDProducer("L1TrackFastJetProducer", - L1TrackInputTag = cms.InputTag("l1tTTTracksFromExtendedTrackletEmulation", "Level1TTTracks"), + L1TrackInputTag = cms.InputTag("l1tTrackVertexAssociationProducerExtendedForJets", "Level1TTTracksExtendedSelectedAssociated"), L1PrimaryVertexTag=cms.InputTag("l1tVertexFinder", "L1Vertices"), trk_zMax = cms.double(15.), # max track z0 [cm] trk_chi2dofMax = cms.double(40.), # max track chi2 for extended tracks From 37269685290e1d2697a810f90cf40f00ed1c61b6 Mon Sep 17 00:00:00 2001 From: Claire Date: Wed, 22 Nov 2023 11:15:17 -0600 Subject: [PATCH 137/281] move track selection from within jet producers with in track selection and vertex association modules --- .../plugins/L1TrackFastJetProducer.cc | 98 ++------------ .../plugins/L1TrackJetEmulatorProducer.cc | 94 +------------- .../plugins/L1TrackJetProducer.cc | 122 +++--------------- .../plugins/L1TrackSelectionProducer.cc | 30 ++++- .../python/l1tTrackFastJets_cfi.py | 24 ---- .../python/l1tTrackJetsEmulation_cfi.py | 18 --- .../L1TTrackMatch/python/l1tTrackJets_cfi.py | 17 --- .../python/l1tTrackSelectionProducer_cfi.py | 11 +- .../l1tTrackVertexAssociationProducer_cfi.py | 8 +- 9 files changed, 68 insertions(+), 354 deletions(-) diff --git a/L1Trigger/L1TTrackMatch/plugins/L1TrackFastJetProducer.cc b/L1Trigger/L1TTrackMatch/plugins/L1TrackFastJetProducer.cc index 0c7051bd05677..58e22c2190329 100644 --- a/L1Trigger/L1TTrackMatch/plugins/L1TrackFastJetProducer.cc +++ b/L1Trigger/L1TTrackMatch/plugins/L1TrackFastJetProducer.cc @@ -1,8 +1,10 @@ /////////////////////////////////////////////////////////////////////////// // // -// Producer of TkJet, // +// Producer of TrackFastJet, // // Cluster L1 tracks using fastjet // // // +// Updates: Claire Savard (claire.savard@colorado.edu), Nov. 2023 // +// // /////////////////////////////////////////////////////////////////////////// // system include files @@ -61,48 +63,20 @@ class L1TrackFastJetProducer : public edm::stream::EDProducer<> { static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - //virtual void beginJob(); void produce(edm::Event&, const edm::EventSetup&) override; - //virtual void endJob(); - - // track selection criteria - const float trkZMax_; // in [cm] - const float trkChi2dofMax_; // maximum track chi2dof - const double trkBendChi2Max_; // maximum track bendchi2 - const float trkPtMin_; // in [GeV] - const float trkEtaMax_; // in [rad] - const int trkNStubMin_; // minimum number of stubs - const int trkNPSStubMin_; // minimum number of PS stubs - const double deltaZ0Cut_; // save with |L1z-z0| < maxZ0 + + // jet configurations const double coneSize_; // Use anti-kt with this cone size - const bool doTightChi2_; - const float trkPtTightChi2_; - const float trkChi2dofTightChi2_; const bool displaced_; //use prompt/displaced tracks const EDGetTokenT trackToken_; - edm::EDGetTokenT pvToken_; - edm::ESGetToken tTopoToken_; }; // constructor L1TrackFastJetProducer::L1TrackFastJetProducer(const edm::ParameterSet& iConfig) - : trkZMax_((float)iConfig.getParameter("trk_zMax")), - trkChi2dofMax_((float)iConfig.getParameter("trk_chi2dofMax")), - trkBendChi2Max_(iConfig.getParameter("trk_bendChi2Max")), - trkPtMin_((float)iConfig.getParameter("trk_ptMin")), - trkEtaMax_((float)iConfig.getParameter("trk_etaMax")), - trkNStubMin_((int)iConfig.getParameter("trk_nStubMin")), - trkNPSStubMin_((int)iConfig.getParameter("trk_nPSStubMin")), - deltaZ0Cut_((float)iConfig.getParameter("deltaZ0Cut")), - coneSize_((float)iConfig.getParameter("coneSize")), - doTightChi2_(iConfig.getParameter("doTightChi2")), - trkPtTightChi2_((float)iConfig.getParameter("trk_ptTightChi2")), - trkChi2dofTightChi2_((float)iConfig.getParameter("trk_chi2dofTightChi2")), + : coneSize_((float)iConfig.getParameter("coneSize")), displaced_(iConfig.getParameter("displaced")), - trackToken_(consumes(iConfig.getParameter("L1TrackInputTag"))), - pvToken_(consumes(iConfig.getParameter("L1PrimaryVertexTag"))), - tTopoToken_(esConsumes(edm::ESInputTag("", ""))) { + trackToken_(consumes(iConfig.getParameter("L1TrackInputTag"))) { if (displaced_) produces("L1TrackFastJetsExtended"); else @@ -120,60 +94,12 @@ void L1TrackFastJetProducer::produce(edm::Event& iEvent, const edm::EventSetup& edm::Handle TTTrackHandle; iEvent.getByToken(trackToken_, TTTrackHandle); - // Tracker Topology - const TrackerTopology& tTopo = iSetup.getData(tTopoToken_); - - edm::Handle L1PrimaryVertexHandle; - iEvent.getByToken(pvToken_, L1PrimaryVertexHandle); - fastjet::JetDefinition jet_def(fastjet::antikt_algorithm, coneSize_); std::vector JetInputs; - float recoVtx = L1PrimaryVertexHandle->begin()->z0(); for (unsigned int this_l1track = 0; this_l1track < TTTrackHandle->size(); this_l1track++) { edm::Ptr iterL1Track(TTTrackHandle, this_l1track); - float trk_pt = iterL1Track->momentum().perp(); - float trk_z0 = iterL1Track->z0(); - float trk_chi2dof = iterL1Track->chi2Red(); - float trk_bendchi2 = iterL1Track->stubPtConsistency(); - std::vector >, TTStub > > - theStubs = iterL1Track->getStubRefs(); - int trk_nstub = (int)theStubs.size(); - - if (std::abs(trk_z0) > trkZMax_) - continue; - if (std::abs(iterL1Track->momentum().eta()) > trkEtaMax_) - continue; - if (trk_pt < trkPtMin_) - continue; - if (trk_nstub < trkNStubMin_) - continue; - if (trk_chi2dof > trkChi2dofMax_) - continue; - if (trk_bendchi2 > trkBendChi2Max_) - continue; - if (doTightChi2_ && (trk_pt > trkPtTightChi2_ && trk_chi2dof > trkChi2dofTightChi2_)) - continue; - - int trk_nPS = 0; - for (int istub = 0; istub < trk_nstub; istub++) { - DetId detId(theStubs.at(istub)->getDetId()); - bool tmp_isPS = false; - if (detId.det() == DetId::Detector::Tracker) { - if (detId.subdetId() == StripSubdetector::TOB && tTopo.tobLayer(detId) <= 3) - tmp_isPS = true; - else if (detId.subdetId() == StripSubdetector::TID && tTopo.tidRing(detId) <= 9) - tmp_isPS = true; - } - if (tmp_isPS) - trk_nPS++; - } - if (trk_nPS < trkNPSStubMin_) - continue; - if (std::abs(recoVtx - trk_z0) > deltaZ0Cut_) - continue; - fastjet::PseudoJet psuedoJet(iterL1Track->momentum().x(), iterL1Track->momentum().y(), iterL1Track->momentum().z(), @@ -213,16 +139,12 @@ void L1TrackFastJetProducer::produce(edm::Event& iEvent, const edm::EventSetup& iEvent.put(std::move(L1TrackFastJets), "L1TrackFastJets"); } -//void L1TrackFastJetProducer::beginJob() {} - -//void L1TrackFastJetProducer::endJob() {} - void L1TrackFastJetProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation - // Please change this to state exactly what you do use, even if it is no parameters edm::ParameterSetDescription desc; - desc.setUnknown(); - descriptions.addDefault(desc); + desc.add("L1PVertexInputTag", edm::InputTag("l1tTrackVertexAssociationProducerForJets", "Level1TTTracksSelectedAssociated")); + desc.add("coneSize", 0.5); + desc.add("displaced", false); } //define this as a plug-in diff --git a/L1Trigger/L1TTrackMatch/plugins/L1TrackJetEmulatorProducer.cc b/L1Trigger/L1TTrackMatch/plugins/L1TrackJetEmulatorProducer.cc index 02bd026bb97a0..7a1f581bfe08c 100644 --- a/L1Trigger/L1TTrackMatch/plugins/L1TrackJetEmulatorProducer.cc +++ b/L1Trigger/L1TTrackMatch/plugins/L1TrackJetEmulatorProducer.cc @@ -3,9 +3,10 @@ // // Rewritting/Improvements: George Karathanasis, // georgios.karathanasis@cern.ch, CU Boulder +// Claire Savard (claire.savard@colorado.edu) // // Created: Wed, 01 Aug 2018 14:01:41 GMT -// Latest update: Nov 2022 (by GK) +// Latest update: Nov 2023 (by CS) // // Track jets are clustered in a two-layer process, first by clustering in phi, // then by clustering in eta. The code proceeds as following: putting all tracks// in a grid of eta vs phi space, and then cluster them. Finally we merge the cl @@ -63,16 +64,9 @@ class L1TrackJetEmulatorProducer : public stream::EDProducer<> { // ----------member data --------------------------- std::vector> L1TrkPtrs_; - vector tdtrk_; const float trkZMax_; const float trkPtMax_; - const float trkPtMin_; const float trkEtaMax_; - const float nStubs4PromptChi2_; - const float nStubs5PromptChi2_; - const float nStubs4PromptBend_; - const float nStubs5PromptBend_; - const int trkNPSStubMin_; const int lowpTJetMinTrackMultiplicity_; const float lowpTJetThreshold_; const int highpTJetMinTrackMultiplicity_; @@ -84,36 +78,22 @@ class L1TrackJetEmulatorProducer : public stream::EDProducer<> { const bool displaced_; const float d0CutNStubs4_; const float d0CutNStubs5_; - const float nStubs4DisplacedChi2_; - const float nStubs5DisplacedChi2_; - const float nStubs4DisplacedBend_; - const float nStubs5DisplacedBend_; const int nDisplacedTracks_; - const float dzPVTrk_; - float PVz; float zStep_; glbeta_intern etaStep_; glbphi_intern phiStep_; TTTrack_TrackWord trackword; - edm::ESGetToken tTopoToken_; const EDGetTokenT trackToken_; - const EDGetTokenT PVtxToken_; }; //constructor L1TrackJetEmulatorProducer::L1TrackJetEmulatorProducer(const ParameterSet &iConfig) : trkZMax_(iConfig.getParameter("trk_zMax")), trkPtMax_(iConfig.getParameter("trk_ptMax")), - trkPtMin_(iConfig.getParameter("trk_ptMin")), trkEtaMax_(iConfig.getParameter("trk_etaMax")), - nStubs4PromptChi2_(iConfig.getParameter("nStubs4PromptChi2")), - nStubs5PromptChi2_(iConfig.getParameter("nStubs5PromptChi2")), - nStubs4PromptBend_(iConfig.getParameter("nStubs4PromptBend")), - nStubs5PromptBend_(iConfig.getParameter("nStubs5PromptBend")), - trkNPSStubMin_(iConfig.getParameter("trk_nPSStubMin")), lowpTJetMinTrackMultiplicity_(iConfig.getParameter("lowpTJetMinTrackMultiplicity")), lowpTJetThreshold_(iConfig.getParameter("lowpTJetThreshold")), highpTJetMinTrackMultiplicity_(iConfig.getParameter("highpTJetMinTrackMultiplicity")), @@ -125,15 +105,8 @@ L1TrackJetEmulatorProducer::L1TrackJetEmulatorProducer(const ParameterSet &iConf displaced_(iConfig.getParameter("displaced")), d0CutNStubs4_(iConfig.getParameter("d0_cutNStubs4")), d0CutNStubs5_(iConfig.getParameter("d0_cutNStubs5")), - nStubs4DisplacedChi2_(iConfig.getParameter("nStubs4DisplacedChi2")), - nStubs5DisplacedChi2_(iConfig.getParameter("nStubs5DisplacedChi2")), - nStubs4DisplacedBend_(iConfig.getParameter("nStubs4DisplacedBend")), - nStubs5DisplacedBend_(iConfig.getParameter("nStubs5DisplacedBend")), nDisplacedTracks_(iConfig.getParameter("nDisplacedTracks")), - dzPVTrk_(iConfig.getParameter("MaxDzTrackPV")), - tTopoToken_(esConsumes(edm::ESInputTag("", ""))), - trackToken_(consumes(iConfig.getParameter("L1TrackInputTag"))), - PVtxToken_(consumes(iConfig.getParameter("L1PVertexInputTag"))) { + trackToken_(consumes(iConfig.getParameter("L1TrackInputTag"))) { zStep_ = 2.0 * trkZMax_ / (zBins_ + 1); // added +1 in denom etaStep_ = glbeta_intern(2.0 * trkEtaMax_ / etaBins_); //etaStep is the width of an etabin phiStep_ = DoubleToBit(2.0 * (M_PI) / phiBins_, @@ -148,58 +121,15 @@ L1TrackJetEmulatorProducer::L1TrackJetEmulatorProducer(const ParameterSet &iConf void L1TrackJetEmulatorProducer::produce(Event &iEvent, const EventSetup &iSetup) { unique_ptr L1TrackJetContainer(new l1t::TkJetWordCollection); - // Read inputs - const TrackerTopology &tTopo = iSetup.getData(tTopoToken_); + // L1 tracks edm::Handle TTTrackHandle; iEvent.getByToken(trackToken_, TTTrackHandle); - edm::Handle PVtx; - iEvent.getByToken(PVtxToken_, PVtx); - float PVz = (PVtx->at(0)).z0(); - L1TrkPtrs_.clear(); - tdtrk_.clear(); // track selection for (unsigned int this_l1track = 0; this_l1track < TTTrackHandle->size(); this_l1track++) { edm::Ptr trkPtr(TTTrackHandle, this_l1track); - float trk_pt = trkPtr->momentum().perp(); - int trk_nstubs = (int)trkPtr->getStubRefs().size(); - float trk_chi2dof = trkPtr->chi2Red(); - float trk_bendchi2 = trkPtr->stubPtConsistency(); - int trk_nPS = 0; - for (int istub = 0; istub < trk_nstubs; istub++) { - DetId detId(trkPtr->getStubRefs().at(istub)->getDetId()); - if (detId.det() == DetId::Detector::Tracker) { - if ((detId.subdetId() == StripSubdetector::TOB && tTopo.tobLayer(detId) <= 3) || - (detId.subdetId() == StripSubdetector::TID && tTopo.tidRing(detId) <= 9)) - trk_nPS++; - } - } - // selection tracks - supposed to happen on seperate module (kept for legacy/debug reasons) - if (trk_nPS < trkNPSStubMin_) - continue; - if (!TrackQualitySelection(trk_nstubs, - trk_chi2dof, - trk_bendchi2, - nStubs4PromptBend_, - nStubs5PromptBend_, - nStubs4PromptChi2_, - nStubs5PromptChi2_, - nStubs4DisplacedBend_, - nStubs5DisplacedBend_, - nStubs4DisplacedChi2_, - nStubs5DisplacedChi2_, - displaced_)) - continue; - if (std::abs(PVz - trkPtr->z0()) > dzPVTrk_ && dzPVTrk_ > 0) - continue; - if (std::abs(trkPtr->z0()) > trkZMax_) - continue; - if (std::abs(trkPtr->momentum().eta()) > trkEtaMax_) - continue; - if (trk_pt < trkPtMin_) - continue; L1TrkPtrs_.push_back(trkPtr); } @@ -348,8 +278,6 @@ void L1TrackJetEmulatorProducer::produce(Event &iEvent, const EventSetup &iSetup vector> L1TrackAssocJet; for (unsigned int j = 0; j < mzb.clusters.size(); ++j) { - if (mzb.clusters[j].pTtot < pt_intern(trkPtMin_)) - continue; l1t::TkJetWord::glbeta_t jetEta = DoubleToBit(double(mzb.clusters[j].eta), TkJetWord::TkJetBitWidths::kGlbEtaSize, @@ -365,7 +293,7 @@ void L1TrackJetEmulatorProducer::produce(Event &iEvent, const EventSetup &iSetup l1t::TkJetWord::dispflag_t dispflag = 0; l1t::TkJetWord::tkjetunassigned_t unassigned = 0; - if (total_disptracks > nDisplacedTracks_ || total_disptracks == nDisplacedTracks_) + if (total_disptracks >= nDisplacedTracks_) dispflag = 1; L1TrackAssocJet.clear(); for (unsigned int itrk = 0; itrk < mzb.clusters[j].trackidx.size(); itrk++) @@ -388,17 +316,9 @@ void L1TrackJetEmulatorProducer::fillDescriptions(ConfigurationDescriptions &des // Please change this to state exactly what you do use, even if it is no parameters ParameterSetDescription desc; desc.add("L1TrackInputTag", edm::InputTag("l1tTTTracksFromTrackletEmulation", "Level1TTTracks")); - desc.add("L1PVertexInputTag", edm::InputTag("l1tVertexFinderEmulator", "L1VerticesEmulation")); - desc.add("MaxDzTrackPV", 1.0); desc.add("trk_zMax", 15.0); desc.add("trk_ptMax", 200.0); - desc.add("trk_ptMin", 3.0); desc.add("trk_etaMax", 2.4); - desc.add("nStubs4PromptChi2", 5.0); - desc.add("nStubs4PromptBend", 1.7); - desc.add("nStubs5PromptChi2", 2.75); - desc.add("nStubs5PromptBend", 3.5); - desc.add("trk_nPSStubMin", -1); desc.add("minTrkJetpT", -1.0); desc.add("etaBins", 24); desc.add("phiBins", 27); @@ -410,10 +330,6 @@ void L1TrackJetEmulatorProducer::fillDescriptions(ConfigurationDescriptions &des desc.add("highpTJetMinTrackMultiplicity", 3); desc.add("highpTJetThreshold", 100.0); desc.add("displaced", false); - desc.add("nStubs4DisplacedChi2", 5.0); - desc.add("nStubs4DisplacedBend", 1.7); - desc.add("nStubs5DisplacedChi2", 2.75); - desc.add("nStubs5DisplacedBend", 3.5); desc.add("nDisplacedTracks", 2); descriptions.add("l1tTrackJetsEmulator", desc); } diff --git a/L1Trigger/L1TTrackMatch/plugins/L1TrackJetProducer.cc b/L1Trigger/L1TTrackMatch/plugins/L1TrackJetProducer.cc index 80da20559d827..1b3da6b8ffe8d 100644 --- a/L1Trigger/L1TTrackMatch/plugins/L1TrackJetProducer.cc +++ b/L1Trigger/L1TTrackMatch/plugins/L1TrackJetProducer.cc @@ -2,9 +2,10 @@ // // Rewritting/improvements: George Karathanasis, // georgios.karathanasis@cern.ch, CU Boulder +// Claire Savard (claire.savard@colorado.edu) // // Created: Wed, 01 Aug 2018 14:01:41 GMT -// Latest update: Nov 2022 (by GK) +// Latest update: Nov 2023 (by CS) // // Track jets are clustered in a two-layer process, first by clustering in phi, // then by clustering in eta. The code proceeds as following: putting all tracks @@ -57,16 +58,9 @@ class L1TrackJetProducer : public stream::EDProducer<> { // ----------member data --------------------------- vector> L1TrkPtrs_; - vector tdtrk_; const float trkZMax_; const float trkPtMax_; - const float trkPtMin_; const float trkEtaMax_; - const float nStubs4PromptChi2_; - const float nStubs5PromptChi2_; - const float nStubs4PromptBend_; - const float nStubs5PromptBend_; - const int trkNPSStubMin_; const int lowpTJetMinTrackMultiplicity_; const float lowpTJetThreshold_; const int highpTJetMinTrackMultiplicity_; @@ -81,28 +75,15 @@ class L1TrackJetProducer : public stream::EDProducer<> { const bool displaced_; const float d0CutNStubs4_; const float d0CutNStubs5_; - const float nStubs4DisplacedChi2_; - const float nStubs5DisplacedChi2_; - const float nStubs4DisplacedBend_; - const float nStubs5DisplacedBend_; const int nDisplacedTracks_; - const float dzPVTrk_; - edm::ESGetToken tTopoToken_; const EDGetTokenT trackToken_; - const EDGetTokenT PVtxToken_; }; L1TrackJetProducer::L1TrackJetProducer(const ParameterSet &iConfig) : trkZMax_(iConfig.getParameter("trk_zMax")), trkPtMax_(iConfig.getParameter("trk_ptMax")), - trkPtMin_(iConfig.getParameter("trk_ptMin")), trkEtaMax_(iConfig.getParameter("trk_etaMax")), - nStubs4PromptChi2_(iConfig.getParameter("nStubs4PromptChi2")), - nStubs5PromptChi2_(iConfig.getParameter("nStubs5PromptChi2")), - nStubs4PromptBend_(iConfig.getParameter("nStubs4PromptBend")), - nStubs5PromptBend_(iConfig.getParameter("nStubs5PromptBend")), - trkNPSStubMin_(iConfig.getParameter("trk_nPSStubMin")), lowpTJetMinTrackMultiplicity_(iConfig.getParameter("lowpTJetMinTrackMultiplicity")), lowpTJetThreshold_(iConfig.getParameter("lowpTJetThreshold")), highpTJetMinTrackMultiplicity_(iConfig.getParameter("highpTJetMinTrackMultiplicity")), @@ -114,15 +95,8 @@ L1TrackJetProducer::L1TrackJetProducer(const ParameterSet &iConfig) displaced_(iConfig.getParameter("displaced")), d0CutNStubs4_(iConfig.getParameter("d0_cutNStubs4")), d0CutNStubs5_(iConfig.getParameter("d0_cutNStubs5")), - nStubs4DisplacedChi2_(iConfig.getParameter("nStubs4DisplacedChi2")), - nStubs5DisplacedChi2_(iConfig.getParameter("nStubs5DisplacedChi2")), - nStubs4DisplacedBend_(iConfig.getParameter("nStubs4DisplacedBend")), - nStubs5DisplacedBend_(iConfig.getParameter("nStubs5DisplacedBend")), nDisplacedTracks_(iConfig.getParameter("nDisplacedTracks")), - dzPVTrk_(iConfig.getParameter("MaxDzTrackPV")), - tTopoToken_(esConsumes(edm::ESInputTag("", ""))), - trackToken_(consumes(iConfig.getParameter("L1TrackInputTag"))), - PVtxToken_(consumes(iConfig.getParameter("L1PVertexInputTag"))) { + trackToken_(consumes(iConfig.getParameter("L1TrackInputTag"))) { zStep_ = 2.0 * trkZMax_ / (zBins_ + 1); // added +1 in denom etaStep_ = 2.0 * trkEtaMax_ / etaBins_; //etaStep is the width of an etabin phiStep_ = 2 * M_PI / phiBins_; ////phiStep is the width of a phibin @@ -134,78 +108,26 @@ L1TrackJetProducer::L1TrackJetProducer(const ParameterSet &iConfig) } void L1TrackJetProducer::produce(Event &iEvent, const EventSetup &iSetup) { - unique_ptr L1L1TrackJetProducer(new TkJetCollection); - - // Read inputs - const TrackerTopology &tTopo = iSetup.getData(tTopoToken_); + unique_ptr L1TrackJetProducer(new TkJetCollection); + // L1 tracks edm::Handle TTTrackHandle; iEvent.getByToken(trackToken_, TTTrackHandle); - edm::Handle PVtx; - iEvent.getByToken(PVtxToken_, PVtx); - float PVz = (PVtx->at(0)).z0(); - L1TrkPtrs_.clear(); - tdtrk_.clear(); // track selection for (unsigned int this_l1track = 0; this_l1track < TTTrackHandle->size(); this_l1track++) { edm::Ptr trkPtr(TTTrackHandle, this_l1track); - float trk_pt = trkPtr->momentum().perp(); - int trk_nstubs = (int)trkPtr->getStubRefs().size(); - float trk_chi2dof = trkPtr->chi2Red(); - float trk_d0 = trkPtr->d0(); - float trk_bendchi2 = trkPtr->stubPtConsistency(); - - int trk_nPS = 0; - for (int istub = 0; istub < trk_nstubs; istub++) { // loop over the stubs - DetId detId(trkPtr->getStubRefs().at(istub)->getDetId()); - if (detId.det() == DetId::Detector::Tracker) { - if ((detId.subdetId() == StripSubdetector::TOB && tTopo.tobLayer(detId) <= 3) || - (detId.subdetId() == StripSubdetector::TID && tTopo.tidRing(detId) <= 9)) - trk_nPS++; - } - } - // select tracks - if (trk_nPS < trkNPSStubMin_) - continue; - if (!TrackQualitySelection(trk_nstubs, - trk_chi2dof, - trk_bendchi2, - nStubs4PromptBend_, - nStubs5PromptBend_, - nStubs4PromptChi2_, - nStubs5PromptChi2_, - nStubs4DisplacedBend_, - nStubs5DisplacedBend_, - nStubs4DisplacedChi2_, - nStubs5DisplacedChi2_, - displaced_)) - continue; - if (std::abs(PVz - trkPtr->z0()) > dzPVTrk_ && dzPVTrk_ > 0) - continue; - if (std::abs(trkPtr->z0()) > trkZMax_) - continue; - if (std::abs(trkPtr->momentum().eta()) > trkEtaMax_) - continue; - if (trk_pt < trkPtMin_) - continue; L1TrkPtrs_.push_back(trkPtr); - - if ((std::abs(trk_d0) > d0CutNStubs5_ && trk_nstubs >= 5 && d0CutNStubs5_ >= 0) || - (trk_nstubs == 4 && std::abs(trk_d0) > d0CutNStubs4_ && d0CutNStubs4_ >= 0)) - tdtrk_.push_back(1); //displaced track - else - tdtrk_.push_back(0); // not displaced track } // if no tracks pass selection return empty containers if (L1TrkPtrs_.empty()) { if (displaced_) - iEvent.put(std::move(L1L1TrackJetProducer), "L1TrackJetsExtended"); + iEvent.put(std::move(L1TrackJetProducer), "L1TrackJetsExtended"); else - iEvent.put(std::move(L1L1TrackJetProducer), "L1TrackJets"); + iEvent.put(std::move(L1TrackJetProducer), "L1TrackJets"); return; } @@ -273,6 +195,8 @@ void L1TrackJetProducer::produce(Event &iEvent, const EventSetup &iSetup) { float trkpt = L1TrkPtrs_[k]->momentum().perp(); float trketa = L1TrkPtrs_[k]->momentum().eta(); float trkphi = L1TrkPtrs_[k]->momentum().phi(); + float trkd0 = L1TrkPtrs_[k]->d0(); + int trknstubs = (int)L1TrkPtrs_[k]->getStubRefs().size(); for (int i = 0; i < phiBins_; ++i) { for (int j = 0; j < etaBins_; ++j) { float eta_min = epbins[i][j].eta - etaStep_ / 2.0; //eta min @@ -287,7 +211,9 @@ void L1TrackJetProducer::produce(Event &iEvent, const EventSetup &iSetup) { epbins[i][j].pTtot += trkpt; else epbins[i][j].pTtot += trkPtMax_; - epbins[i][j].nxtracks += tdtrk_[k]; + if ((std::abs(trkd0) > d0CutNStubs5_ && trknstubs >= 5 && d0CutNStubs5_ >= 0) || + (trknstubs == 4 && std::abs(trkd0) > d0CutNStubs4_ && d0CutNStubs4_ >= 0)) + epbins[i][j].nxtracks += 1; epbins[i][j].trackidx.push_back(k); ++epbins[i][j].ntracks; } // for each etabin @@ -335,7 +261,7 @@ void L1TrackJetProducer::produce(Event &iEvent, const EventSetup &iSetup) { float jetPz = jetPt * sinh(jetEta); float jetP = jetPt * cosh(jetEta); int totalDisptrk = mzb.clusters[j].nxtracks; - bool isDispJet = (totalDisptrk > nDisplacedTracks_ || totalDisptrk == nDisplacedTracks_); + bool isDispJet = (totalDisptrk >= nDisplacedTracks_); math::XYZTLorentzVector jetP4(jetPx, jetPy, jetPz, jetP); L1TrackAssocJet.clear(); @@ -344,31 +270,23 @@ void L1TrackJetProducer::produce(Event &iEvent, const EventSetup &iSetup) { TkJet trkJet(jetP4, L1TrackAssocJet, mzb.zbincenter, mzb.clusters[j].ntracks, 0, totalDisptrk, 0, isDispJet); - L1L1TrackJetProducer->push_back(trkJet); + L1TrackJetProducer->push_back(trkJet); } std::sort( - L1L1TrackJetProducer->begin(), L1L1TrackJetProducer->end(), [](auto &a, auto &b) { return a.pt() > b.pt(); }); + L1TrackJetProducer->begin(), L1TrackJetProducer->end(), [](auto &a, auto &b) { return a.pt() > b.pt(); }); if (displaced_) - iEvent.put(std::move(L1L1TrackJetProducer), "L1TrackJetsExtended"); + iEvent.put(std::move(L1TrackJetProducer), "L1TrackJetsExtended"); else - iEvent.put(std::move(L1L1TrackJetProducer), "L1TrackJets"); + iEvent.put(std::move(L1TrackJetProducer), "L1TrackJets"); } void L1TrackJetProducer::fillDescriptions(ConfigurationDescriptions &descriptions) { ParameterSetDescription desc; - desc.add("L1TrackInputTag", edm::InputTag("l1tTTTracksFromTrackletEmulation", "Level1TTTracks")); - desc.add("L1PVertexInputTag", edm::InputTag("l1tVertexFinderEmulator", "L1VerticesEmulation")); - desc.add("MaxDzTrackPV", 1.0); + desc.add("L1TrackInputTag", edm::InputTag("l1tTrackVertexAssociationProducerForJets", "Level1TTTracksSelectedAssociated")); desc.add("trk_zMax", 15.0); desc.add("trk_ptMax", 200.0); - desc.add("trk_ptMin", 3.0); desc.add("trk_etaMax", 2.4); - desc.add("nStubs4PromptChi2", 5.0); - desc.add("nStubs4PromptBend", 1.7); - desc.add("nStubs5PromptChi2", 2.75); - desc.add("nStubs5PromptBend", 3.5); - desc.add("trk_nPSStubMin", -1); desc.add("minTrkJetpT", -1.0); desc.add("etaBins", 24); desc.add("phiBins", 27); @@ -380,10 +298,6 @@ void L1TrackJetProducer::fillDescriptions(ConfigurationDescriptions &description desc.add("highpTJetMinTrackMultiplicity", 3); desc.add("highpTJetThreshold", 100.0); desc.add("displaced", false); - desc.add("nStubs4DisplacedChi2", 5.0); - desc.add("nStubs4DisplacedBend", 1.7); - desc.add("nStubs5DisplacedChi2", 2.75); - desc.add("nStubs5DisplacedBend", 3.5); desc.add("nDisplacedTracks", 2); descriptions.add("l1tTrackJets", desc); } diff --git a/L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc b/L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc index aa8fcc97752f8..bb33bb29e9953 100644 --- a/L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc +++ b/L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc @@ -201,6 +201,24 @@ class L1TrackSelectionProducer : public edm::global::EDProducer<> { double nPSStubsMin_; const TrackerTopology& tTopo_; }; + struct TTTrackChi2MaxSelector { + TTTrackChi2MaxSelector(double reducedChi2Max) : reducedChi2Max_(reducedChi2Max) {} + TTTrackChi2MaxSelector(const edm::ParameterSet& cfg) + : reducedChi2Max_(cfg.template getParameter("reducedChi2Max")) {} + bool operator()(const L1Track& t) const { return t.chi2Red() < reducedChi2Max_; } + + private: + double reducedChi2Max_; + }; + struct TTTrackWordChi2MaxSelector { + TTTrackWordChi2MaxSelector(double reducedChi2Max) : reducedChi2Max_(reducedChi2Max) {} + TTTrackWordChi2MaxSelector(const edm::ParameterSet& cfg) + : reducedChi2Max_(cfg.template getParameter("reducedChi2Max")) {} + bool operator()(const L1Track& t) const { return t.chi2Red() < reducedChi2Max_; } + + private: + double reducedChi2Max_; + }; struct TTTrackBendChi2MaxSelector { TTTrackBendChi2MaxSelector(double bendChi2Max) : bendChi2Max_(bendChi2Max) {} TTTrackBendChi2MaxSelector(const edm::ParameterSet& cfg) @@ -263,9 +281,9 @@ class L1TrackSelectionProducer : public edm::global::EDProducer<> { TTTrackWordAbsZ0MaxSelector, TTTrackWordNStubsMinSelector> TTTrackWordPtMinEtaMaxZ0MaxNStubsMinSelector; - typedef AndSelector + typedef AndSelector TTTrackBendChi2Chi2RZChi2RPhiMaxSelector; - typedef AndSelector + typedef AndSelector TTTrackWordBendChi2Chi2RZChi2RPhiMaxSelector; // ----------member data --------------------------- @@ -273,7 +291,7 @@ class L1TrackSelectionProducer : public edm::global::EDProducer<> { edm::ESGetToken tTopoToken_; const std::string outputCollectionName_; const edm::ParameterSet cutSet_; - const double ptMin_, absEtaMax_, absZ0Max_, bendChi2Max_, reducedChi2RZMax_, reducedChi2RPhiMax_; + const double ptMin_, absEtaMax_, absZ0Max_, bendChi2Max_, reducedChi2Max_, reducedChi2RZMax_, reducedChi2RPhiMax_; const int nStubsMin_, nPSStubsMin_; bool processSimulatedTracks_, processEmulatedTracks_; int debug_; @@ -292,6 +310,7 @@ L1TrackSelectionProducer::L1TrackSelectionProducer(const edm::ParameterSet& iCon absEtaMax_(cutSet_.getParameter("absEtaMax")), absZ0Max_(cutSet_.getParameter("absZ0Max")), bendChi2Max_(cutSet_.getParameter("reducedBendChi2Max")), + reducedChi2Max_(cutSet_.getParameter("reducedChi2Max")), reducedChi2RZMax_(cutSet_.getParameter("reducedChi2RZMax")), reducedChi2RPhiMax_(cutSet_.getParameter("reducedChi2RPhiMax")), nStubsMin_(cutSet_.getParameter("nStubsMin")), @@ -414,8 +433,8 @@ void L1TrackSelectionProducer::produce(edm::StreamID, edm::Event& iEvent, const TTTrackPtMinEtaMaxZ0MaxNStubsMinSelector kinSel(ptMin_, absEtaMax_, absZ0Max_, nStubsMin_); TTTrackWordPtMinEtaMaxZ0MaxNStubsMinSelector kinSelEmu(ptMin_, absEtaMax_, absZ0Max_, nStubsMin_); - TTTrackBendChi2Chi2RZChi2RPhiMaxSelector chi2Sel(bendChi2Max_, reducedChi2RZMax_, reducedChi2RPhiMax_); - TTTrackWordBendChi2Chi2RZChi2RPhiMaxSelector chi2SelEmu(bendChi2Max_, reducedChi2RZMax_, reducedChi2RPhiMax_); + TTTrackBendChi2Chi2RZChi2RPhiMaxSelector chi2Sel(bendChi2Max_, reducedChi2RZMax_, reducedChi2RPhiMax_, reducedChi2Max_); + TTTrackWordBendChi2Chi2RZChi2RPhiMaxSelector chi2SelEmu(bendChi2Max_, reducedChi2RZMax_, reducedChi2RPhiMax_, reducedChi2Max_); TTTrackNPSStubsMinSelector nPSStubsSel(nPSStubsMin_, tTopo); for (size_t i = 0; i < nOutputApproximate; i++) { @@ -461,6 +480,7 @@ void L1TrackSelectionProducer::fillDescriptions(edm::ConfigurationDescriptions& ->setComment("number of stubs in the PS Modules must be greater than or equal to this value"); descCutSet.add("reducedBendChi2Max", 2.25)->setComment("bend chi2 must be less than this value"); + descCutSet.add("reducedChi2Max", 9999.0)->setComment("chi2/dof must be less than this value"); descCutSet.add("reducedChi2RZMax", 5.0)->setComment("chi2rz/dof must be less than this value"); descCutSet.add("reducedChi2RPhiMax", 20.0)->setComment("chi2rphi/dof must be less than this value"); diff --git a/L1Trigger/L1TTrackMatch/python/l1tTrackFastJets_cfi.py b/L1Trigger/L1TTrackMatch/python/l1tTrackFastJets_cfi.py index 12a135003df92..91cb409c84959 100644 --- a/L1Trigger/L1TTrackMatch/python/l1tTrackFastJets_cfi.py +++ b/L1Trigger/L1TTrackMatch/python/l1tTrackFastJets_cfi.py @@ -2,36 +2,12 @@ l1tTrackFastJets = cms.EDProducer("L1TrackFastJetProducer", L1TrackInputTag = cms.InputTag("l1tTrackVertexAssociationProducerForJets", "Level1TTTracksSelectedAssociated"), - L1PrimaryVertexTag=cms.InputTag("l1tVertexFinder", "L1Vertices"), - trk_zMax = cms.double(15.), # max track z0 [cm] - trk_chi2dofMax = cms.double(10.), # max track chi2/dof - trk_bendChi2Max = cms.double(2.2),# max bendChi2 cut - trk_ptMin = cms.double(2.0), # minimum track pt [GeV] - trk_etaMax = cms.double(2.5), # maximum track eta - trk_nStubMin = cms.int32(4), # minimum number of stubs in track - trk_nPSStubMin = cms.int32(-1), # minimum number of PS stubs in track - deltaZ0Cut=cms.double(0.5), # cluster tracks within |dz| 20 - trk_ptTightChi2 = cms.double(20.0), - trk_chi2dofTightChi2 = cms.double(5.0), coneSize=cms.double(0.4), #cone size for anti-kt fast jet displaced = cms.bool(False) # use prompt/displaced tracks ) l1tTrackFastJetsExtended = cms.EDProducer("L1TrackFastJetProducer", L1TrackInputTag = cms.InputTag("l1tTrackVertexAssociationProducerExtendedForJets", "Level1TTTracksExtendedSelectedAssociated"), - L1PrimaryVertexTag=cms.InputTag("l1tVertexFinder", "L1Vertices"), - trk_zMax = cms.double(15.), # max track z0 [cm] - trk_chi2dofMax = cms.double(40.), # max track chi2 for extended tracks - trk_bendChi2Max = cms.double(2.4),#Bendchi2 cut for extended tracks - trk_ptMin = cms.double(3.0), # minimum track pt [GeV] - trk_etaMax = cms.double(2.5), # maximum track eta - trk_nStubMin = cms.int32(4), # minimum number of stubs on track - trk_nPSStubMin = cms.int32(-1), # minimum number of stubs in PS modules on track - deltaZ0Cut=cms.double(3.0), #cluster tracks within |dz| 20 - trk_ptTightChi2 = cms.double(20.0), - trk_chi2dofTightChi2 = cms.double(5.0), coneSize=cms.double(0.4), #cone size for anti-kt fast jet displaced = cms.bool(True) # use prompt/displaced tracks ) diff --git a/L1Trigger/L1TTrackMatch/python/l1tTrackJetsEmulation_cfi.py b/L1Trigger/L1TTrackMatch/python/l1tTrackJetsEmulation_cfi.py index 9a227295a7257..f48ff4faaa28a 100644 --- a/L1Trigger/L1TTrackMatch/python/l1tTrackJetsEmulation_cfi.py +++ b/L1Trigger/L1TTrackMatch/python/l1tTrackJetsEmulation_cfi.py @@ -2,17 +2,9 @@ l1tTrackJetsEmulation = cms.EDProducer('L1TrackJetEmulatorProducer', L1TrackInputTag= cms.InputTag("l1tTrackVertexAssociationProducerForJets", "Level1TTTracksSelectedAssociatedEmulation"), - L1PVertexInputTag=cms.InputTag("l1tVertexFinderEmulator","L1VerticesEmulation"), - MaxDzTrackPV = cms.double(1.0), trk_zMax = cms.double (15.) , # maximum track z trk_ptMax = cms.double(200.), # maximumum track pT before saturation [GeV] - trk_ptMin = cms.double(2.0), # minimum track pt [GeV] trk_etaMax = cms.double(2.4), # maximum track eta - nStubs4PromptChi2=cms.double(10.0), #Prompt track quality flags for loose/tight - nStubs4PromptBend=cms.double(2.2), - nStubs5PromptChi2=cms.double(10.0), - nStubs5PromptBend=cms.double(2.2), - trk_nPSStubMin=cms.int32(-1), # minimum PS stubs, -1 means no cut minTrkJetpT=cms.double(-1.), # minimum track pt to be considered for track jet etaBins=cms.int32(24), phiBins=cms.int32(27), @@ -24,24 +16,14 @@ highpTJetMinTrackMultiplicity=cms.int32(3), highpTJetThreshold=cms.double(100.), displaced=cms.bool(False), #Flag for displaced tracks - nStubs4DisplacedChi2=cms.double(5.0), #Displaced track quality flags for loose/tight - nStubs4DisplacedBend=cms.double(1.7), - nStubs5DisplacedChi2=cms.double(2.75), - nStubs5DisplacedBend=cms.double(3.5), nDisplacedTracks=cms.int32(2) #Number of displaced tracks required per jet ) l1tTrackJetsExtendedEmulation = l1tTrackJetsEmulation.clone( L1TrackInputTag= cms.InputTag("l1tTrackVertexAssociationProducerExtendedForJets", "Level1TTTracksExtendedSelectedAssociatedEmulation"), - L1PVertexInputTag=cms.InputTag("l1tVertexFinderEmulator", "L1VerticesEmulation"), minTrkJetpT= 5.0, # minimum track pt to be considered for track jet - MaxDzTrackPV = 5.0, d0_cutNStubs4= -1, # -1 excludes nstub=4 from disp tag d0_cutNStubs5= 0.22, displaced= True, #Flag for displaced tracks - nStubs4DisplacedChi2= 3.3, #Disp tracks selection [trkcut excluded minTrkJetpT = 5., # min track jet pt to be considered for most energetic zbin finding d0_cutNStubs5 = 0.22, # -1 excludes nstub>4 from disp tag process displaced = True, #Flag for displaced tracks - nStubs4DisplacedChi2 = 3.3, #Disp tracks selection [trk Date: Wed, 22 Nov 2023 23:31:06 -0600 Subject: [PATCH 138/281] update track selection cuts and code formatting --- .../plugins/L1TrackFastJetProducer.cc | 12 +- .../plugins/L1TrackJetEmulatorProducer.cc | 1 - .../plugins/L1TrackJetProducer.cc | 10 +- .../plugins/L1TrackSelectionProducer.cc | 128 +++++++++++++++--- .../python/l1tTrackSelectionProducer_cfi.py | 31 ++++- .../l1tTrackVertexAssociationProducer_cfi.py | 2 +- 6 files changed, 145 insertions(+), 39 deletions(-) diff --git a/L1Trigger/L1TTrackMatch/plugins/L1TrackFastJetProducer.cc b/L1Trigger/L1TTrackMatch/plugins/L1TrackFastJetProducer.cc index 58e22c2190329..4aaf2602fdd8b 100644 --- a/L1Trigger/L1TTrackMatch/plugins/L1TrackFastJetProducer.cc +++ b/L1Trigger/L1TTrackMatch/plugins/L1TrackFastJetProducer.cc @@ -66,8 +66,8 @@ class L1TrackFastJetProducer : public edm::stream::EDProducer<> { void produce(edm::Event&, const edm::EventSetup&) override; // jet configurations - const double coneSize_; // Use anti-kt with this cone size - const bool displaced_; //use prompt/displaced tracks + const double coneSize_; // Use anti-kt with this cone size + const bool displaced_; //use prompt/displaced tracks const EDGetTokenT trackToken_; }; @@ -104,9 +104,9 @@ void L1TrackFastJetProducer::produce(edm::Event& iEvent, const edm::EventSetup& iterL1Track->momentum().y(), iterL1Track->momentum().z(), iterL1Track->momentum().mag()); - JetInputs.push_back(psuedoJet); // input tracks for clustering + JetInputs.push_back(psuedoJet); // input tracks for clustering JetInputs.back().set_user_index(this_l1track); // save track index in the collection - } // end loop over tracks + } // end loop over tracks fastjet::ClusterSequence cs(JetInputs, jet_def); // define the output jet collection std::vector JetOutputs = @@ -142,7 +142,9 @@ void L1TrackFastJetProducer::produce(edm::Event& iEvent, const edm::EventSetup& void L1TrackFastJetProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation edm::ParameterSetDescription desc; - desc.add("L1PVertexInputTag", edm::InputTag("l1tTrackVertexAssociationProducerForJets", "Level1TTTracksSelectedAssociated")); + desc.add( + "L1PVertexInputTag", + edm::InputTag("l1tTrackVertexAssociationProducerForJets", "Level1TTTracksSelectedAssociated")); desc.add("coneSize", 0.5); desc.add("displaced", false); } diff --git a/L1Trigger/L1TTrackMatch/plugins/L1TrackJetEmulatorProducer.cc b/L1Trigger/L1TTrackMatch/plugins/L1TrackJetEmulatorProducer.cc index 7a1f581bfe08c..63f052d264fc3 100644 --- a/L1Trigger/L1TTrackMatch/plugins/L1TrackJetEmulatorProducer.cc +++ b/L1Trigger/L1TTrackMatch/plugins/L1TrackJetEmulatorProducer.cc @@ -278,7 +278,6 @@ void L1TrackJetEmulatorProducer::produce(Event &iEvent, const EventSetup &iSetup vector> L1TrackAssocJet; for (unsigned int j = 0; j < mzb.clusters.size(); ++j) { - l1t::TkJetWord::glbeta_t jetEta = DoubleToBit(double(mzb.clusters[j].eta), TkJetWord::TkJetBitWidths::kGlbEtaSize, TkJetWord::MAX_ETA / (1 << TkJetWord::TkJetBitWidths::kGlbEtaSize)); diff --git a/L1Trigger/L1TTrackMatch/plugins/L1TrackJetProducer.cc b/L1Trigger/L1TTrackMatch/plugins/L1TrackJetProducer.cc index 1b3da6b8ffe8d..9b329eed1f6f6 100644 --- a/L1Trigger/L1TTrackMatch/plugins/L1TrackJetProducer.cc +++ b/L1Trigger/L1TTrackMatch/plugins/L1TrackJetProducer.cc @@ -212,8 +212,8 @@ void L1TrackJetProducer::produce(Event &iEvent, const EventSetup &iSetup) { else epbins[i][j].pTtot += trkPtMax_; if ((std::abs(trkd0) > d0CutNStubs5_ && trknstubs >= 5 && d0CutNStubs5_ >= 0) || - (trknstubs == 4 && std::abs(trkd0) > d0CutNStubs4_ && d0CutNStubs4_ >= 0)) - epbins[i][j].nxtracks += 1; + (trknstubs == 4 && std::abs(trkd0) > d0CutNStubs4_ && d0CutNStubs4_ >= 0)) + epbins[i][j].nxtracks += 1; epbins[i][j].trackidx.push_back(k); ++epbins[i][j].ntracks; } // for each etabin @@ -273,8 +273,7 @@ void L1TrackJetProducer::produce(Event &iEvent, const EventSetup &iSetup) { L1TrackJetProducer->push_back(trkJet); } - std::sort( - L1TrackJetProducer->begin(), L1TrackJetProducer->end(), [](auto &a, auto &b) { return a.pt() > b.pt(); }); + std::sort(L1TrackJetProducer->begin(), L1TrackJetProducer->end(), [](auto &a, auto &b) { return a.pt() > b.pt(); }); if (displaced_) iEvent.put(std::move(L1TrackJetProducer), "L1TrackJetsExtended"); else @@ -283,7 +282,8 @@ void L1TrackJetProducer::produce(Event &iEvent, const EventSetup &iSetup) { void L1TrackJetProducer::fillDescriptions(ConfigurationDescriptions &descriptions) { ParameterSetDescription desc; - desc.add("L1TrackInputTag", edm::InputTag("l1tTrackVertexAssociationProducerForJets", "Level1TTTracksSelectedAssociated")); + desc.add( + "L1TrackInputTag", edm::InputTag("l1tTrackVertexAssociationProducerForJets", "Level1TTTracksSelectedAssociated")); desc.add("trk_zMax", 15.0); desc.add("trk_ptMax", 200.0); desc.add("trk_etaMax", 2.4); diff --git a/L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc b/L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc index bb33bb29e9953..d44f96c4c186f 100644 --- a/L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc +++ b/L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc @@ -19,6 +19,7 @@ // Original Author: Alexx Perloff // Created: Thu, 16 Dec 2021 19:02:50 GMT // +// Updates: Claire Savard (claire.savard@colorado.edu), Nov. 2023 // // system include files @@ -201,23 +202,25 @@ class L1TrackSelectionProducer : public edm::global::EDProducer<> { double nPSStubsMin_; const TrackerTopology& tTopo_; }; - struct TTTrackChi2MaxSelector { - TTTrackChi2MaxSelector(double reducedChi2Max) : reducedChi2Max_(reducedChi2Max) {} - TTTrackChi2MaxSelector(const edm::ParameterSet& cfg) - : reducedChi2Max_(cfg.template getParameter("reducedChi2Max")) {} - bool operator()(const L1Track& t) const { return t.chi2Red() < reducedChi2Max_; } + struct TTTrackPromptMVAMinSelector { + TTTrackPromptMVAMinSelector(double promptMVAMin) : promptMVAMin_(promptMVAMin) {} + TTTrackPromptMVAMinSelector(const edm::ParameterSet& cfg) + : promptMVAMin_(cfg.template getParameter("promptMVAMin")) {} + bool operator()(const L1Track& t) const { return t.trkMVA1() > promptMVAMin_; } private: - double reducedChi2Max_; + double promptMVAMin_; }; - struct TTTrackWordChi2MaxSelector { - TTTrackWordChi2MaxSelector(double reducedChi2Max) : reducedChi2Max_(reducedChi2Max) {} - TTTrackWordChi2MaxSelector(const edm::ParameterSet& cfg) - : reducedChi2Max_(cfg.template getParameter("reducedChi2Max")) {} - bool operator()(const L1Track& t) const { return t.chi2Red() < reducedChi2Max_; } + struct TTTrackWordPromptMVAMinSelector { + TTTrackWordPromptMVAMinSelector(double promptMVAMin) : promptMVAMin_(promptMVAMin) {} + TTTrackWordPromptMVAMinSelector(const edm::ParameterSet& cfg) + : promptMVAMin_(cfg.template getParameter("promptMVAMin")) {} + bool operator()(const L1Track& t) const { + return t.trkMVA1() > promptMVAMin_; + } //change when mva bins in word are set private: - double reducedChi2Max_; + double promptMVAMin_; }; struct TTTrackBendChi2MaxSelector { TTTrackBendChi2MaxSelector(double bendChi2Max) : bendChi2Max_(bendChi2Max) {} @@ -273,6 +276,66 @@ class L1TrackSelectionProducer : public edm::global::EDProducer<> { private: double reducedChi2RPhiMax_; }; + struct TTTrackChi2MaxNstubSelector { + TTTrackChi2MaxNstubSelector(double reducedChi2MaxNstub4, double reducedChi2MaxNstub5) + : reducedChi2MaxNstub4_(reducedChi2MaxNstub4), reducedChi2MaxNstub5_(reducedChi2MaxNstub5) {} + TTTrackChi2MaxNstubSelector(const edm::ParameterSet& cfg) + : reducedChi2MaxNstub4_(cfg.template getParameter("reducedChi2MaxNstub4")), + reducedChi2MaxNstub5_(cfg.template getParameter("reducedChi2MaxNstub5")) {} + bool operator()(const L1Track& t) const { + return (((t.chi2Red() < reducedChi2MaxNstub4_) && (t.getStubRefs().size() == 4)) || + ((t.chi2Red() < reducedChi2MaxNstub5_) && (t.getStubRefs().size() > 4))); + } + + private: + double reducedChi2MaxNstub4_; + double reducedChi2MaxNstub5_; + }; + struct TTTrackWordChi2MaxNstubSelector { // using simulated chi2 since not implemented in track word, updates needed + TTTrackWordChi2MaxNstubSelector(double reducedChi2MaxNstub4, double reducedChi2MaxNstub5) + : reducedChi2MaxNstub4_(reducedChi2MaxNstub4), reducedChi2MaxNstub5_(reducedChi2MaxNstub5) {} + TTTrackWordChi2MaxNstubSelector(const edm::ParameterSet& cfg) + : reducedChi2MaxNstub4_(cfg.template getParameter("reducedChi2MaxNstub4")), + reducedChi2MaxNstub5_(cfg.template getParameter("reducedChi2MaxNstub5")) {} + bool operator()(const L1Track& t) const { + return (((t.chi2Red() < reducedChi2MaxNstub4_) && (t.getNStubs() == 4)) || + ((t.chi2Red() < reducedChi2MaxNstub5_) && (t.getNStubs() > 4))); + } + + private: + double reducedChi2MaxNstub4_; + double reducedChi2MaxNstub5_; + }; + struct TTTrackBendChi2MaxNstubSelector { + TTTrackBendChi2MaxNstubSelector(double reducedBendChi2MaxNstub4, double reducedBendChi2MaxNstub5) + : reducedBendChi2MaxNstub4_(reducedBendChi2MaxNstub4), reducedBendChi2MaxNstub5_(reducedBendChi2MaxNstub5) {} + TTTrackBendChi2MaxNstubSelector(const edm::ParameterSet& cfg) + : reducedBendChi2MaxNstub4_(cfg.template getParameter("reducedBendChi2MaxNstub4")), + reducedBendChi2MaxNstub5_(cfg.template getParameter("reducedBendChi2MaxNstub5")) {} + bool operator()(const L1Track& t) const { + return (((t.stubPtConsistency() < reducedBendChi2MaxNstub4_) && (t.getStubRefs().size() == 4)) || + ((t.stubPtConsistency() < reducedBendChi2MaxNstub5_) && (t.getStubRefs().size() > 4))); + } + + private: + double reducedBendChi2MaxNstub4_; + double reducedBendChi2MaxNstub5_; + }; + struct TTTrackWordBendChi2MaxNstubSelector { + TTTrackWordBendChi2MaxNstubSelector(double reducedBendChi2MaxNstub4, double reducedBendChi2MaxNstub5) + : reducedBendChi2MaxNstub4_(reducedBendChi2MaxNstub4), reducedBendChi2MaxNstub5_(reducedBendChi2MaxNstub5) {} + TTTrackWordBendChi2MaxNstubSelector(const edm::ParameterSet& cfg) + : reducedBendChi2MaxNstub4_(cfg.template getParameter("reducedBendChi2MaxNstub4")), + reducedBendChi2MaxNstub5_(cfg.template getParameter("reducedBendChi2MaxNstub5")) {} + bool operator()(const L1Track& t) const { + return (((t.getBendChi2() < reducedBendChi2MaxNstub4_) && (t.getNStubs() == 4)) || + ((t.getBendChi2() < reducedBendChi2MaxNstub5_) && (t.getNStubs() > 4))); + } + + private: + double reducedBendChi2MaxNstub4_; + double reducedBendChi2MaxNstub5_; + }; typedef AndSelector TTTrackPtMinEtaMaxZ0MaxNStubsMinSelector; @@ -281,17 +344,21 @@ class L1TrackSelectionProducer : public edm::global::EDProducer<> { TTTrackWordAbsZ0MaxSelector, TTTrackWordNStubsMinSelector> TTTrackWordPtMinEtaMaxZ0MaxNStubsMinSelector; - typedef AndSelector + typedef AndSelector TTTrackBendChi2Chi2RZChi2RPhiMaxSelector; - typedef AndSelector + typedef AndSelector TTTrackWordBendChi2Chi2RZChi2RPhiMaxSelector; + typedef AndSelector TTTrackChi2BendChi2MaxNstubSelector; + typedef AndSelector + TTTrackWordChi2BendChi2MaxNstubSelector; // ----------member data --------------------------- const edm::EDGetTokenT l1TracksToken_; edm::ESGetToken tTopoToken_; const std::string outputCollectionName_; const edm::ParameterSet cutSet_; - const double ptMin_, absEtaMax_, absZ0Max_, bendChi2Max_, reducedChi2Max_, reducedChi2RZMax_, reducedChi2RPhiMax_; + const double ptMin_, absEtaMax_, absZ0Max_, promptMVAMin_, bendChi2Max_, reducedChi2RZMax_, reducedChi2RPhiMax_; + const double reducedChi2MaxNstub4_, reducedChi2MaxNstub5_, reducedBendChi2MaxNstub4_, reducedBendChi2MaxNstub5_; const int nStubsMin_, nPSStubsMin_; bool processSimulatedTracks_, processEmulatedTracks_; int debug_; @@ -309,10 +376,14 @@ L1TrackSelectionProducer::L1TrackSelectionProducer(const edm::ParameterSet& iCon ptMin_(cutSet_.getParameter("ptMin")), absEtaMax_(cutSet_.getParameter("absEtaMax")), absZ0Max_(cutSet_.getParameter("absZ0Max")), + promptMVAMin_(cutSet_.getParameter("promptMVAMin")), bendChi2Max_(cutSet_.getParameter("reducedBendChi2Max")), - reducedChi2Max_(cutSet_.getParameter("reducedChi2Max")), reducedChi2RZMax_(cutSet_.getParameter("reducedChi2RZMax")), reducedChi2RPhiMax_(cutSet_.getParameter("reducedChi2RPhiMax")), + reducedChi2MaxNstub4_(cutSet_.getParameter("reducedChi2MaxNstub4")), + reducedChi2MaxNstub5_(cutSet_.getParameter("reducedChi2MaxNstub5")), + reducedBendChi2MaxNstub4_(cutSet_.getParameter("reducedBendChi2MaxNstub4")), + reducedBendChi2MaxNstub5_(cutSet_.getParameter("reducedBendChi2MaxNstub5")), nStubsMin_(cutSet_.getParameter("nStubsMin")), nPSStubsMin_(cutSet_.getParameter("nPSStubsMin")), processSimulatedTracks_(iConfig.getParameter("processSimulatedTracks")), @@ -433,20 +504,27 @@ void L1TrackSelectionProducer::produce(edm::StreamID, edm::Event& iEvent, const TTTrackPtMinEtaMaxZ0MaxNStubsMinSelector kinSel(ptMin_, absEtaMax_, absZ0Max_, nStubsMin_); TTTrackWordPtMinEtaMaxZ0MaxNStubsMinSelector kinSelEmu(ptMin_, absEtaMax_, absZ0Max_, nStubsMin_); - TTTrackBendChi2Chi2RZChi2RPhiMaxSelector chi2Sel(bendChi2Max_, reducedChi2RZMax_, reducedChi2RPhiMax_, reducedChi2Max_); - TTTrackWordBendChi2Chi2RZChi2RPhiMaxSelector chi2SelEmu(bendChi2Max_, reducedChi2RZMax_, reducedChi2RPhiMax_, reducedChi2Max_); + TTTrackBendChi2Chi2RZChi2RPhiMaxSelector chi2Sel(bendChi2Max_, reducedChi2RZMax_, reducedChi2RPhiMax_); + TTTrackWordBendChi2Chi2RZChi2RPhiMaxSelector chi2SelEmu(bendChi2Max_, reducedChi2RZMax_, reducedChi2RPhiMax_); TTTrackNPSStubsMinSelector nPSStubsSel(nPSStubsMin_, tTopo); + TTTrackPromptMVAMinSelector mvaSel(promptMVAMin_); + TTTrackWordPromptMVAMinSelector mvaSelEmu(promptMVAMin_); + TTTrackChi2BendChi2MaxNstubSelector chi2NstubSel({reducedChi2MaxNstub4_, reducedChi2MaxNstub5_}, + {reducedBendChi2MaxNstub4_, reducedBendChi2MaxNstub5_}); + TTTrackWordChi2BendChi2MaxNstubSelector chi2NstubSelEmu({reducedChi2MaxNstub4_, reducedChi2MaxNstub5_}, + {reducedBendChi2MaxNstub4_, reducedBendChi2MaxNstub5_}); for (size_t i = 0; i < nOutputApproximate; i++) { const auto& track = l1TracksHandle->at(i); // Select tracks based on the floating point TTTrack - if (processSimulatedTracks_ && kinSel(track) && nPSStubsSel(track) && chi2Sel(track)) { + if (processSimulatedTracks_ && kinSel(track) && nPSStubsSel(track) && chi2Sel(track) && mvaSel(track) && + chi2NstubSel(track)) { vTTTrackOutput->push_back(TTTrackRef(l1TracksHandle, i)); } // Select tracks based on the bitwise accurate TTTrack_TrackWord - if (processEmulatedTracks_ && kinSelEmu(track) && chi2SelEmu(track)) { + if (processEmulatedTracks_ && kinSelEmu(track) && chi2SelEmu(track) && mvaSelEmu(track) && chi2NstubSelEmu(track)) { vTTTrackEmulationOutput->push_back(TTTrackRef(l1TracksHandle, i)); } } @@ -479,10 +557,18 @@ void L1TrackSelectionProducer::fillDescriptions(edm::ConfigurationDescriptions& descCutSet.add("nPSStubsMin", 0) ->setComment("number of stubs in the PS Modules must be greater than or equal to this value"); + descCutSet.add("promptMVAMin", -1.0)->setComment("MVA must be greater than this value"); descCutSet.add("reducedBendChi2Max", 2.25)->setComment("bend chi2 must be less than this value"); - descCutSet.add("reducedChi2Max", 9999.0)->setComment("chi2/dof must be less than this value"); descCutSet.add("reducedChi2RZMax", 5.0)->setComment("chi2rz/dof must be less than this value"); descCutSet.add("reducedChi2RPhiMax", 20.0)->setComment("chi2rphi/dof must be less than this value"); + descCutSet.add("reducedChi2MaxNstub4", 999.9) + ->setComment("chi2/dof must be less than this value in nstub==4"); + descCutSet.add("reducedChi2MaxNstub5", 999.9) + ->setComment("chi2/dof must be less than this value in nstub>4"); + descCutSet.add("reducedBendChi2MaxNstub4", 999.9) + ->setComment("bend chi2 must be less than this value in nstub==4"); + descCutSet.add("reducedBendChi2MaxNstub5", 999.9) + ->setComment("bend chi2 must be less than this value in nstub>4"); desc.add("cutSet", descCutSet); } diff --git a/L1Trigger/L1TTrackMatch/python/l1tTrackSelectionProducer_cfi.py b/L1Trigger/L1TTrackMatch/python/l1tTrackSelectionProducer_cfi.py index 7d5f7a32e6efa..fd7e45c5aa2cc 100644 --- a/L1Trigger/L1TTrackMatch/python/l1tTrackSelectionProducer_cfi.py +++ b/L1Trigger/L1TTrackMatch/python/l1tTrackSelectionProducer_cfi.py @@ -10,9 +10,14 @@ nStubsMin = cms.int32(4), # number of stubs must be greater than or equal to this value nPSStubsMin = cms.int32(0), # the number of stubs in the PS Modules must be greater than or equal to this value + promptMVAMin = cms.double(-1.0), # MVA must be greater than this value reducedBendChi2Max = cms.double(2.25), # bend chi2 must be less than this value reducedChi2RZMax = cms.double(5.0), # chi2rz/dof must be less than this value reducedChi2RPhiMax = cms.double(20.0), # chi2rphi/dof must be less than this value + reducedChi2MaxNstub4 = cms.double(999.9), # chi2/dof with nstub==4 must be less than this value + reducedChi2MaxNstub5 = cms.double(999.9), # chi2/dof with nstub>4 must be less than this value + reducedBendChi2MaxNstub4 = cms.double(999.9), # bend chi2 with nstub==4 must be less than this value + reducedBendChi2MaxNstub5 = cms.double(999.9), # bend chi2 with nstub>4 must be less than this value ), processSimulatedTracks = cms.bool(True), # return selected tracks after cutting on the floating point values processEmulatedTracks = cms.bool(True), # return selected tracks after cutting on the bitwise emulated values @@ -29,9 +34,14 @@ nStubsMin = 4, # number of stubs must be greater than or equal to this value nPSStubsMin = 0, # the number of stubs in the PS Modules must be greater than or equal to this value + promptMVAMin = -1.0, # MVA must be greater than this value reducedBendChi2Max = 2.4, # bend chi2 must be less than this value reducedChi2RZMax = 10.0, # chi2rz/dof must be less than this value reducedChi2RPhiMax = 40.0, # chi2rphi/dof must be less than this value + reducedChi2MaxNstub4 = 999.9,# chi2/dof with nstub==4 must be less than this value + reducedChi2MaxNstub5 = 999.9,# chi2/dof with nstub>4 must be less than this value + reducedBendChi2MaxNstub4 = 999.9, # bend chi2 with nstub==4 must be less than this value + reducedBendChi2MaxNstub5 = 999.9, # bend chi2 with nstub>4 must be less than this value ), processSimulatedTracks = cms.bool(True), # return selected tracks after cutting on the floating point values processEmulatedTracks = cms.bool(True), # return selected tracks after cutting on the bitwise emulated values @@ -45,24 +55,33 @@ nStubsMin = 4, # number of stubs must be greater than or equal to this value nPSStubsMin = 0, # the number of stubs in the PS Modules must be greater than or equal to this value - reducedBendChi2Max = 2.2, # bend chi2 must be less than this value - reducedChi2Max = cms.double(10.0), + promptMVAMin = 0.1, # MVA must be greater than this value + reducedBendChi2Max = 999.9, # bend chi2 must be less than this value reducedChi2RZMax = 999.9, # chi2rz/dof must be less than this value reducedChi2RPhiMax = 999.9, # chi2rphi/dof must be less than this value + reducedChi2MaxNstub4 = 999.9, # chi2/dof with nstub==4 must be less than this value + reducedChi2MaxNstub5 = 999.9, # chi2/dof with nstub>4 must be less than this value + reducedBendChi2MaxNstub4 = 999.9, # bend chi2 with nstub==4 must be less than this value + reducedBendChi2MaxNstub5 = 999.9, # bend chi2 with nstub>4 must be less than this value ), ) l1tTrackSelectionProducerExtendedForJets = l1tTrackSelectionProducerExtended.clone( cutSet = dict( - ptMin = 0.0, # pt must be greater than this value, [GeV] - absEtaMax = 999.9, # absolute value of eta must be less than this value - absZ0Max = 999.9, # z0 must be less than this value, [cm] - nStubsMin = 0, # number of stubs must be greater than or equal to this value + ptMin = 2.0, # pt must be greater than this value, [GeV] + absEtaMax = 2.4, # absolute value of eta must be less than this value + absZ0Max = 15.0, # z0 must be less than this value, [cm] + nStubsMin = 4, # number of stubs must be greater than or equal to this value nPSStubsMin = 0, # the number of stubs in the PS Modules must be greater than or equal to this value + promptMVAMin = -1.0, # MVA must be greater than this value reducedBendChi2Max = 999.9, # bend chi2 must be less than this value reducedChi2RZMax = 999.9, # chi2rz/dof must be less than this value reducedChi2RPhiMax = 999.9, # chi2rphi/dof must be less than this value + reducedChi2MaxNstub4 = cms.double(3.3), # chi2/dof with nstub==4 must be less than this value + reducedChi2MaxNstub5 = cms.double(11.3), # chi2/dof with nstub>4 must be less than this value + reducedBendChi2MaxNstub4 = cms.double(2.3), # bend chi2 with nstub==4 must be less than this value + reducedBendChi2MaxNstub5 = cms.double(9.8), # bend chi2 with nstub>4 must be less than this value ), ) diff --git a/L1Trigger/L1TTrackMatch/python/l1tTrackVertexAssociationProducer_cfi.py b/L1Trigger/L1TTrackMatch/python/l1tTrackVertexAssociationProducer_cfi.py index 734e60a6f747f..04f1cd320b3da 100644 --- a/L1Trigger/L1TTrackMatch/python/l1tTrackVertexAssociationProducer_cfi.py +++ b/L1Trigger/L1TTrackMatch/python/l1tTrackVertexAssociationProducer_cfi.py @@ -42,7 +42,7 @@ #deltaZMaxEtaBounds = cms.vdouble(0.0, absEtaMax.value), # these values define the bin boundaries in |eta| #deltaZMax = cms.vdouble(0.5), # delta z must be less than these values, there will be one less value here than in deltaZMaxEtaBounds, [cm] deltaZMaxEtaBounds = cms.vdouble(0.0, 2.4), # these values define the bin boundaries in |eta| - deltaZMax = cms.vdouble(1.0), # delta z must be less than these values, there will be one less value here than in deltaZMaxEtaBounds, [cm] + deltaZMax = cms.vdouble(0.55), # delta z must be less than these values, there will be one less value here than in deltaZMaxEtaBounds, [cm] ), ) From fc8fe37e7a27125d1ff6a4208a4d053ccbfed401 Mon Sep 17 00:00:00 2001 From: Claire Date: Thu, 30 Nov 2023 13:52:57 -0600 Subject: [PATCH 139/281] make MVA cut inclusive --- L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc b/L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc index d44f96c4c186f..cf0f53e835c9f 100644 --- a/L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc +++ b/L1Trigger/L1TTrackMatch/plugins/L1TrackSelectionProducer.cc @@ -206,7 +206,7 @@ class L1TrackSelectionProducer : public edm::global::EDProducer<> { TTTrackPromptMVAMinSelector(double promptMVAMin) : promptMVAMin_(promptMVAMin) {} TTTrackPromptMVAMinSelector(const edm::ParameterSet& cfg) : promptMVAMin_(cfg.template getParameter("promptMVAMin")) {} - bool operator()(const L1Track& t) const { return t.trkMVA1() > promptMVAMin_; } + bool operator()(const L1Track& t) const { return t.trkMVA1() >= promptMVAMin_; } private: double promptMVAMin_; @@ -216,7 +216,7 @@ class L1TrackSelectionProducer : public edm::global::EDProducer<> { TTTrackWordPromptMVAMinSelector(const edm::ParameterSet& cfg) : promptMVAMin_(cfg.template getParameter("promptMVAMin")) {} bool operator()(const L1Track& t) const { - return t.trkMVA1() > promptMVAMin_; + return t.trkMVA1() >= promptMVAMin_; } //change when mva bins in word are set private: From 15ff94a6c39cb1d16695c3882d3ef3890edfe32d Mon Sep 17 00:00:00 2001 From: Claire Date: Thu, 30 Nov 2023 17:03:55 -0600 Subject: [PATCH 140/281] update config in firmware workflow --- .../test/gtt/createFirmwareInputFiles_cfg.py | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/L1Trigger/DemonstratorTools/test/gtt/createFirmwareInputFiles_cfg.py b/L1Trigger/DemonstratorTools/test/gtt/createFirmwareInputFiles_cfg.py index 0e12824e33e3b..293efb9de91e4 100644 --- a/L1Trigger/DemonstratorTools/test/gtt/createFirmwareInputFiles_cfg.py +++ b/L1Trigger/DemonstratorTools/test/gtt/createFirmwareInputFiles_cfg.py @@ -89,6 +89,7 @@ nStubsMin = cms.int32(4), # number of stubs must be greater than or equal to this value nPSStubsMin = cms.int32(0), # the number of stubs in the PS Modules must be greater than or equal to this value + promptMVAMin = cms.double(-1.0), # MVA must be greater than this value reducedBendChi2Max = cms.double(2.25), # bend chi2 must be less than this value reducedChi2RZMax = cms.double(5.0), # chi2rz/dof must be less than this value reducedChi2RPhiMax = cms.double(20.0), # chi2rphi/dof must be less than this value @@ -104,12 +105,7 @@ #Disable internal track selection #There is a problem with setting all of these (especially eta) to high numbers. -process.l1tTrackJetsEmulation.MaxDzTrackPV = cms.double(10000.0) process.l1tTrackJetsEmulation.trk_zMax = cms.double(20.46912512) # maximum track z from TrackWord -process.l1tTrackJetsEmulation.nStubs4PromptChi2=cms.double(10000.0) #Prompt track quality flags for loose/tight -process.l1tTrackJetsEmulation.nStubs4PromptBend=cms.double(10000.0) -process.l1tTrackJetsEmulation.nStubs5PromptChi2=cms.double(10000.0) -process.l1tTrackJetsEmulation.nStubs5PromptBend=cms.double(10000.0) if options.debug: process.MessageLogger.cerr.INFO.limit = cms.untracked.int32(1000000000) From 396d6524c3af0121819024331f2b3b20fe218cd2 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Tue, 19 Dec 2023 12:12:49 -0600 Subject: [PATCH 141/281] Explicit default methods for MESet iterators The implicit default compiler generated methods are now deprecated in C++11. --- DQM/EcalCommon/interface/MESet.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/DQM/EcalCommon/interface/MESet.h b/DQM/EcalCommon/interface/MESet.h index 2abd1ff9056e3..052f69bc7af27 100644 --- a/DQM/EcalCommon/interface/MESet.h +++ b/DQM/EcalCommon/interface/MESet.h @@ -275,11 +275,10 @@ namespace ecaldqm { const_iterator(EcalElectronicsMapping const *, MESet const &_meSet, unsigned _iME = 0, int _iBin = 1) : bin_(_meSet, _iME, _iBin) {} const_iterator(EcalElectronicsMapping const *, MESet const &, DetId const &); - const_iterator(const_iterator const &_orig) : bin_(_orig.bin_) {} - const_iterator &operator=(const_iterator const &_rhs) { - bin_ = _rhs.bin_; - return *this; - } + const_iterator(const_iterator const &_orig) = default; + const_iterator(const_iterator &&_orig) = default; + const_iterator &operator=(const_iterator const &_orig) = default; + const_iterator &operator=(const_iterator &&_orig) = default; bool operator==(const_iterator const &_rhs) const { return bin_ == _rhs.bin_; } bool operator!=(const_iterator const &_rhs) const { return !(bin_ == _rhs.bin_); } ConstBin const *operator->() const { return &bin_; } @@ -304,7 +303,8 @@ namespace ecaldqm { : const_iterator(electronicsMap, _meSet, _id), bin_(_meSet) { bin_.ConstBin::operator=(const_iterator::bin_); } - iterator(iterator const &_orig) : const_iterator(_orig), bin_(_orig.bin_) {} + iterator(iterator const &_orig) = default; + iterator &operator=(iterator const &) = default; iterator &operator=(const_iterator const &_rhs) { const_iterator::operator=(_rhs); bin_.ConstBin::operator=(const_iterator::bin_); From 2050f1f4be1ceaf578ef8be79af0daa57bf0132f Mon Sep 17 00:00:00 2001 From: swagata87 Date: Tue, 19 Dec 2023 19:21:48 +0100 Subject: [PATCH 142/281] phase out calotowers in PF --- .../modules/particleFlowBlock_cfi.py | 3 + .../python/Reconstruction_hiPF_cff.py | 4 +- .../plugins/importers/SuperClusterImporter.cc | 74 +++++++++++++++---- .../python/particleFlowBlock_cfi.py | 3 + 4 files changed, 70 insertions(+), 14 deletions(-) diff --git a/HLTrigger/Configuration/python/HLT_75e33/modules/particleFlowBlock_cfi.py b/HLTrigger/Configuration/python/HLT_75e33/modules/particleFlowBlock_cfi.py index 35330e8022a3b..a3896c66054e0 100644 --- a/HLTrigger/Configuration/python/HLT_75e33/modules/particleFlowBlock_cfi.py +++ b/HLTrigger/Configuration/python/HLT_75e33/modules/particleFlowBlock_cfi.py @@ -11,6 +11,9 @@ source_eb = cms.InputTag("particleFlowSuperClusterECAL","particleFlowSuperClusterECALBarrel"), source_ee = cms.InputTag("particleFlowSuperClusterECAL","particleFlowSuperClusterECALEndcapWithPreshower"), source_towers = cms.InputTag("towerMaker"), + hbheRecHitsTag = cms.InputTag("hltHbhereco"), + maxSeverityHB = cms.int32(9), + maxSeverityHE = cms.int32(9), superClustersArePF = cms.bool(True) ), cms.PSet( diff --git a/RecoHI/Configuration/python/Reconstruction_hiPF_cff.py b/RecoHI/Configuration/python/Reconstruction_hiPF_cff.py index 20c353ae16718..0747eb39b622a 100644 --- a/RecoHI/Configuration/python/Reconstruction_hiPF_cff.py +++ b/RecoHI/Configuration/python/Reconstruction_hiPF_cff.py @@ -48,10 +48,12 @@ cms.PSet( importerName = cms.string("SuperClusterImporter"), source_eb = cms.InputTag("particleFlowSuperClusterECAL:particleFlowSuperClusterECALBarrel"), source_ee = cms.InputTag("particleFlowSuperClusterECAL:particleFlowSuperClusterECALEndcapWithPreshower"), - source_towers = cms.InputTag("towerMaker"), maximumHoverE = cms.double(0.5), minSuperClusterPt = cms.double(10.0), minPTforBypass = cms.double(100.0), + hbheRecHitsTag = cms.InputTag("hbhereco"), + maxSeverityHB = cms.int32(9), + maxSeverityHE = cms.int32(9), superClustersArePF = cms.bool(True) ), # all secondary track importers cms.PSet( importerName = cms.string("GeneralTracksImporter"), diff --git a/RecoParticleFlow/PFProducer/plugins/importers/SuperClusterImporter.cc b/RecoParticleFlow/PFProducer/plugins/importers/SuperClusterImporter.cc index f4d2b9bcb4e80..555b27039ebd8 100644 --- a/RecoParticleFlow/PFProducer/plugins/importers/SuperClusterImporter.cc +++ b/RecoParticleFlow/PFProducer/plugins/importers/SuperClusterImporter.cc @@ -5,8 +5,16 @@ #include "DataFormats/EgammaReco/interface/SuperCluster.h" #include "RecoParticleFlow/PFProducer/interface/PFBlockElementSCEqual.h" #include "Geometry/Records/interface/CaloGeometryRecord.h" -// for single tower H/E -#include "RecoEgamma/EgammaIsolationAlgos/interface/EgammaHadTower.h" +#include "RecoEgamma/EgammaIsolationAlgos/interface/EgammaHcalIsolation.h" +#include "CondFormats/DataRecord/interface/HcalPFCutsRcd.h" +#include "CondTools/Hcal/interface/HcalPFCutsHandler.h" +#include "Geometry/CaloTopology/interface/HcalTopology.h" +#include "Geometry/CaloGeometry/interface/CaloGeometry.h" +#include "DataFormats/HcalRecHit/interface/HcalRecHitCollections.h" +#include "RecoLocalCalo/HcalRecAlgos/interface/HcalSeverityLevelComputer.h" +#include "RecoLocalCalo/HcalRecAlgos/interface/HcalSeverityLevelComputerRcd.h" +#include "CondFormats/HcalObjects/interface/HcalChannelQuality.h" +#include "CondFormats/DataRecord/interface/HcalChannelQualityRcd.h" //quick pT for superclusters inline double ptFast(const double energy, const math::XYZPoint& position, const math::XYZPoint& origin) { @@ -28,13 +36,25 @@ class SuperClusterImporter : public BlockElementImporterBase { private: edm::EDGetTokenT _srcEB, _srcEE; - edm::EDGetTokenT _srcTowers; const double _maxHoverE, _pTbyPass, _minSCPt; + const edm::EDGetTokenT hbheRecHitsTag_; + const int maxSeverityHB_; + const int maxSeverityHE_; CaloTowerConstituentsMap const* towerMap_; + CaloGeometry const* caloGeom_; + HcalTopology const* hcalTopo_; + HcalChannelQuality const* hcalChannelQual_; + HcalSeverityLevelComputer const* hcalSev_; bool _superClustersArePF; static const math::XYZPoint _zero; const edm::ESGetToken _ctmapToken; + const edm::ESGetToken caloGeometryToken_; + const edm::ESGetToken hcalTopologyToken_; + const edm::ESGetToken hcalChannelQualityToken_; + const edm::ESGetToken hcalSevLvlComputerToken_; + edm::ESGetToken hcalCutsToken_; + HcalPFCuts const *hcalCuts = nullptr; }; const math::XYZPoint SuperClusterImporter::_zero = math::XYZPoint(0, 0, 0); @@ -45,19 +65,33 @@ SuperClusterImporter::SuperClusterImporter(const edm::ParameterSet& conf, edm::C : BlockElementImporterBase(conf, cc), _srcEB(cc.consumes(conf.getParameter("source_eb"))), _srcEE(cc.consumes(conf.getParameter("source_ee"))), - _srcTowers(cc.consumes(conf.getParameter("source_towers"))), _maxHoverE(conf.getParameter("maximumHoverE")), _pTbyPass(conf.getParameter("minPTforBypass")), _minSCPt(conf.getParameter("minSuperClusterPt")), + hbheRecHitsTag_(cc.consumes(conf.getParameter("hbheRecHitsTag"))), + maxSeverityHB_(conf.getParameter("maxSeverityHB")), + maxSeverityHE_(conf.getParameter("maxSeverityHE")), _superClustersArePF(conf.getParameter("superClustersArePF")), - _ctmapToken(cc.esConsumes()) {} + _ctmapToken(cc.esConsumes()), + caloGeometryToken_{cc.esConsumes()}, + hcalTopologyToken_{cc.esConsumes()}, + hcalChannelQualityToken_{cc.esConsumes(edm::ESInputTag("", "withTopo"))}, + hcalSevLvlComputerToken_{cc.esConsumes()} { + hcalCutsToken_ = cc.esConsumes(edm::ESInputTag("", "withTopo")); + } -void SuperClusterImporter::updateEventSetup(const edm::EventSetup& es) { towerMap_ = &es.getData(_ctmapToken); } +void SuperClusterImporter::updateEventSetup(const edm::EventSetup& es) { + towerMap_ = &es.getData(_ctmapToken); + hcalCuts = &es.getData(hcalCutsToken_); + caloGeom_ = &es.getData(caloGeometryToken_); + hcalTopo_ = &es.getData(hcalTopologyToken_); + hcalChannelQual_ = &es.getData(hcalChannelQualityToken_); + hcalSev_ = &es.getData(hcalSevLvlComputerToken_); +} void SuperClusterImporter::importToBlock(const edm::Event& e, BlockElementImporterBase::ElementList& elems) const { auto eb_scs = e.getHandle(_srcEB); auto ee_scs = e.getHandle(_srcEE); - auto const& towers = e.get(_srcTowers); elems.reserve(elems.size() + eb_scs->size() + ee_scs->size()); // setup our elements so that all the SCs are grouped together auto SCs_end = @@ -67,14 +101,30 @@ void SuperClusterImporter::importToBlock(const edm::Event& e, BlockElementImport auto esc = eb_scs->cend(); reco::PFBlockElementSuperCluster* scbe = nullptr; reco::SuperClusterRef scref; + + EgammaHcalIsolation thisHcalVar_ = EgammaHcalIsolation(EgammaHcalIsolation::InclusionRule::isBehindClusterSeed, + 0, //outercone + EgammaHcalIsolation::InclusionRule::withinConeAroundCluster, + 0, //innercone + {{0, 0, 0, 0}}, + {{0, 0, 0, 0}}, + maxSeverityHB_, + {{0, 0, 0, 0, 0, 0, 0}}, + {{0, 0, 0, 0, 0, 0, 0}}, + maxSeverityHE_, + e.get(hbheRecHitsTag_), + caloGeom_, + hcalTopo_, + hcalChannelQual_, + hcalSev_, + towerMap_); + for (auto sc = bsc; sc != esc; ++sc) { scref = reco::SuperClusterRef(eb_scs, std::distance(bsc, sc)); PFBlockElementSCEqual myEqual(scref); auto sc_elem = std::find_if(elems.begin(), SCs_end, myEqual); const double scpT = ptFast(sc->energy(), sc->position(), _zero); - const auto towersBehindCluster = egamma::towersOf(*sc, *towerMap_); - const double H_tower = - (egamma::depth1HcalESum(towersBehindCluster, towers) + egamma::depth2HcalESum(towersBehindCluster, towers)); + const double H_tower = thisHcalVar_.getHcalESumBc(scref.get(), 0, hcalCuts); const double HoverE = H_tower / sc->energy(); if (sc_elem == SCs_end && scpT > _minSCPt && (scpT > _pTbyPass || HoverE < _maxHoverE)) { scbe = new reco::PFBlockElementSuperCluster(scref); @@ -91,9 +141,7 @@ void SuperClusterImporter::importToBlock(const edm::Event& e, BlockElementImport PFBlockElementSCEqual myEqual(scref); auto sc_elem = std::find_if(elems.begin(), SCs_end, myEqual); const double scpT = ptFast(sc->energy(), sc->position(), _zero); - const auto towersBehindCluster = egamma::towersOf(*sc, *towerMap_); - const double H_tower = - (egamma::depth1HcalESum(towersBehindCluster, towers) + egamma::depth2HcalESum(towersBehindCluster, towers)); + const double H_tower = thisHcalVar_.getHcalESumBc(scref.get(), 0, hcalCuts); const double HoverE = H_tower / sc->energy(); if (sc_elem == SCs_end && scpT > _minSCPt && (scpT > _pTbyPass || HoverE < _maxHoverE)) { scbe = new reco::PFBlockElementSuperCluster(scref); diff --git a/RecoParticleFlow/PFProducer/python/particleFlowBlock_cfi.py b/RecoParticleFlow/PFProducer/python/particleFlowBlock_cfi.py index b491a3ffbcc6e..3f2259af1f159 100644 --- a/RecoParticleFlow/PFProducer/python/particleFlowBlock_cfi.py +++ b/RecoParticleFlow/PFProducer/python/particleFlowBlock_cfi.py @@ -28,6 +28,9 @@ maximumHoverE = cms.double(0.5), minSuperClusterPt = cms.double(10.0), minPTforBypass = cms.double(100.0), + hbheRecHitsTag = cms.InputTag('hbhereco'), + maxSeverityHB = cms.int32(9), + maxSeverityHE = cms.int32(9), superClustersArePF = cms.bool(True) ), cms.PSet( importerName = cms.string("ConversionTrackImporter"), source = cms.InputTag("pfConversions"), From a32e10530b10b064138d3cc5255ba43573b1231a Mon Sep 17 00:00:00 2001 From: swagata87 Date: Tue, 19 Dec 2023 19:43:16 +0100 Subject: [PATCH 143/281] remove calotowers from pf --- .../modules/particleFlowBlock_cfi.py | 1 - .../plugins/importers/SuperClusterImporter.cc | 39 ++++++++++--------- .../python/particleFlowBlock_cfi.py | 1 - 3 files changed, 20 insertions(+), 21 deletions(-) diff --git a/HLTrigger/Configuration/python/HLT_75e33/modules/particleFlowBlock_cfi.py b/HLTrigger/Configuration/python/HLT_75e33/modules/particleFlowBlock_cfi.py index a3896c66054e0..f35ec030d875f 100644 --- a/HLTrigger/Configuration/python/HLT_75e33/modules/particleFlowBlock_cfi.py +++ b/HLTrigger/Configuration/python/HLT_75e33/modules/particleFlowBlock_cfi.py @@ -10,7 +10,6 @@ minSuperClusterPt = cms.double(10.0), source_eb = cms.InputTag("particleFlowSuperClusterECAL","particleFlowSuperClusterECALBarrel"), source_ee = cms.InputTag("particleFlowSuperClusterECAL","particleFlowSuperClusterECALEndcapWithPreshower"), - source_towers = cms.InputTag("towerMaker"), hbheRecHitsTag = cms.InputTag("hltHbhereco"), maxSeverityHB = cms.int32(9), maxSeverityHE = cms.int32(9), diff --git a/RecoParticleFlow/PFProducer/plugins/importers/SuperClusterImporter.cc b/RecoParticleFlow/PFProducer/plugins/importers/SuperClusterImporter.cc index 555b27039ebd8..a507cf937d873 100644 --- a/RecoParticleFlow/PFProducer/plugins/importers/SuperClusterImporter.cc +++ b/RecoParticleFlow/PFProducer/plugins/importers/SuperClusterImporter.cc @@ -54,7 +54,7 @@ class SuperClusterImporter : public BlockElementImporterBase { const edm::ESGetToken hcalChannelQualityToken_; const edm::ESGetToken hcalSevLvlComputerToken_; edm::ESGetToken hcalCutsToken_; - HcalPFCuts const *hcalCuts = nullptr; + HcalPFCuts const* hcalCuts = nullptr; }; const math::XYZPoint SuperClusterImporter::_zero = math::XYZPoint(0, 0, 0); @@ -77,8 +77,9 @@ SuperClusterImporter::SuperClusterImporter(const edm::ParameterSet& conf, edm::C hcalTopologyToken_{cc.esConsumes()}, hcalChannelQualityToken_{cc.esConsumes(edm::ESInputTag("", "withTopo"))}, hcalSevLvlComputerToken_{cc.esConsumes()} { - hcalCutsToken_ = cc.esConsumes(edm::ESInputTag("", "withTopo")); - } + hcalCutsToken_ = + cc.esConsumes(edm::ESInputTag("", "withTopo")); +} void SuperClusterImporter::updateEventSetup(const edm::EventSetup& es) { towerMap_ = &es.getData(_ctmapToken); @@ -103,22 +104,22 @@ void SuperClusterImporter::importToBlock(const edm::Event& e, BlockElementImport reco::SuperClusterRef scref; EgammaHcalIsolation thisHcalVar_ = EgammaHcalIsolation(EgammaHcalIsolation::InclusionRule::isBehindClusterSeed, - 0, //outercone - EgammaHcalIsolation::InclusionRule::withinConeAroundCluster, - 0, //innercone - {{0, 0, 0, 0}}, - {{0, 0, 0, 0}}, - maxSeverityHB_, - {{0, 0, 0, 0, 0, 0, 0}}, - {{0, 0, 0, 0, 0, 0, 0}}, - maxSeverityHE_, - e.get(hbheRecHitsTag_), - caloGeom_, - hcalTopo_, - hcalChannelQual_, - hcalSev_, - towerMap_); - + 0, //outercone + EgammaHcalIsolation::InclusionRule::withinConeAroundCluster, + 0, //innercone + {{0, 0, 0, 0}}, + {{0, 0, 0, 0}}, + maxSeverityHB_, + {{0, 0, 0, 0, 0, 0, 0}}, + {{0, 0, 0, 0, 0, 0, 0}}, + maxSeverityHE_, + e.get(hbheRecHitsTag_), + caloGeom_, + hcalTopo_, + hcalChannelQual_, + hcalSev_, + towerMap_); + for (auto sc = bsc; sc != esc; ++sc) { scref = reco::SuperClusterRef(eb_scs, std::distance(bsc, sc)); PFBlockElementSCEqual myEqual(scref); diff --git a/RecoParticleFlow/PFProducer/python/particleFlowBlock_cfi.py b/RecoParticleFlow/PFProducer/python/particleFlowBlock_cfi.py index 3f2259af1f159..0c91b1da8f977 100644 --- a/RecoParticleFlow/PFProducer/python/particleFlowBlock_cfi.py +++ b/RecoParticleFlow/PFProducer/python/particleFlowBlock_cfi.py @@ -24,7 +24,6 @@ cms.PSet( importerName = cms.string("SuperClusterImporter"), source_eb = cms.InputTag("particleFlowSuperClusterECAL:particleFlowSuperClusterECALBarrel"), source_ee = cms.InputTag("particleFlowSuperClusterECAL:particleFlowSuperClusterECALEndcapWithPreshower"), - source_towers = cms.InputTag("towerMaker"), maximumHoverE = cms.double(0.5), minSuperClusterPt = cms.double(10.0), minPTforBypass = cms.double(100.0), From ad16d15973a1575cfb14710f97cbe632bea46831 Mon Sep 17 00:00:00 2001 From: aandvalenzuela Date: Wed, 20 Dec 2023 11:51:04 +0100 Subject: [PATCH 144/281] [HETEROGENEOUS] Fix devel compiler warnings --- DataFormats/SoATemplate/test/SoALayoutAndView_t.hip.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/DataFormats/SoATemplate/test/SoALayoutAndView_t.hip.cc b/DataFormats/SoATemplate/test/SoALayoutAndView_t.hip.cc index d156e9000c518..1965d0757d358 100644 --- a/DataFormats/SoATemplate/test/SoALayoutAndView_t.hip.cc +++ b/DataFormats/SoATemplate/test/SoALayoutAndView_t.hip.cc @@ -125,7 +125,7 @@ int main(void) { // Allocate buffer and store on host size_t hostDeviceSize = SoAHostDeviceLayout::computeDataSize(numElements); std::byte* h_buf = nullptr; - hipCheck(hipMallocHost((void**)&h_buf, hostDeviceSize)); + hipCheck(hipHostMalloc((void**)&h_buf, hostDeviceSize)); SoAHostDeviceLayout h_soahdLayout(h_buf, numElements); SoAHostDeviceView h_soahd(h_soahdLayout); SoAHostDeviceConstView h_soahd_c(h_soahdLayout); @@ -133,7 +133,7 @@ int main(void) { // Alocate buffer, stores and views on the device (single, shared buffer). size_t deviceOnlySize = SoADeviceOnlyLayout::computeDataSize(numElements); std::byte* d_buf = nullptr; - hipCheck(hipMallocHost((void**)&d_buf, hostDeviceSize + deviceOnlySize)); + hipCheck(hipHostMalloc((void**)&d_buf, hostDeviceSize + deviceOnlySize)); SoAHostDeviceLayout d_soahdLayout(d_buf, numElements); SoADeviceOnlyLayout d_soadoLayout(d_soahdLayout.metadata().nextByte(), numElements); SoAHostDeviceView d_soahdView(d_soahdLayout); From b91cbe3eb828b423a9c047e90eb0bcc7ee7924cc Mon Sep 17 00:00:00 2001 From: aandvalenzuela Date: Wed, 20 Dec 2023 11:51:34 +0100 Subject: [PATCH 145/281] [RECONSTRUCTION] Fix devel compiler warnings --- RecoTracker/MkFitCore/src/Matriplex/MatriplexSym.h | 2 ++ TrackingTools/PatternTools/interface/bqueue.h | 1 + 2 files changed, 3 insertions(+) diff --git a/RecoTracker/MkFitCore/src/Matriplex/MatriplexSym.h b/RecoTracker/MkFitCore/src/Matriplex/MatriplexSym.h index 4a746d2c972c4..e3b1a133f0daf 100644 --- a/RecoTracker/MkFitCore/src/Matriplex/MatriplexSym.h +++ b/RecoTracker/MkFitCore/src/Matriplex/MatriplexSym.h @@ -78,6 +78,8 @@ namespace Matriplex { return *this; } + MatriplexSym(const MatriplexSym& m) = default; + void copySlot(idx_t n, const MatriplexSym& m) { for (idx_t i = n; i < kTotSize; i += N) { fArray[i] = m.fArray[i]; diff --git a/TrackingTools/PatternTools/interface/bqueue.h b/TrackingTools/PatternTools/interface/bqueue.h index 79e155c60ecd0..373cb1a5bcc93 100644 --- a/TrackingTools/PatternTools/interface/bqueue.h +++ b/TrackingTools/PatternTools/interface/bqueue.h @@ -110,6 +110,7 @@ namespace cmsutils { it = t2.it; return *this; } + _bqueue_itr(const _bqueue_itr &t2) = default; friend class bqueue; private: From 4bb375031dd1b64cf23f5e2109e7d60915de02fc Mon Sep 17 00:00:00 2001 From: Sioni Summers <14807534+thesps@users.noreply.github.com> Date: Wed, 20 Dec 2023 12:25:38 +0100 Subject: [PATCH 146/281] Update SC Jets consumers to SC4/SC8 naming --- .../Configuration/python/L1Trigger_EventContent_cff.py | 8 ++++---- L1Trigger/Phase2L1GT/python/l1tGTProducer_cff.py | 4 ++-- .../Phase2L1ParticleFlow/python/L1BJetProducer_cff.py | 4 ++-- .../Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/L1Trigger/Configuration/python/L1Trigger_EventContent_cff.py b/L1Trigger/Configuration/python/L1Trigger_EventContent_cff.py index 6399f341f7984..80ad9390f2292 100644 --- a/L1Trigger/Configuration/python/L1Trigger_EventContent_cff.py +++ b/L1Trigger/Configuration/python/L1Trigger_EventContent_cff.py @@ -197,10 +197,10 @@ def _appendPhase2Digis(obj): 'keep *_l1tPFClustersFromHGC3DClusters_*_*', 'keep *_l1tPFTracksFromL1TracksBarrel_*_*', 'keep *_l1tPFTracksFromL1TracksHGCal_*_*', - 'keep *_l1tSCPFL1PuppiCorrectedEmulator_*_*', - 'keep *_l1tSCPFL1PuppiCorrectedEmulatorMHT_*_*', - 'keep *_l1tSCPFL1PuppiExtendedCorrectedEmulator_*_*', - 'keep *_l1tSCPFL1PuppiExtendedCorrectedEmulatorMHT_*_*', + 'keep *_l1tSC4PFL1PuppiCorrectedEmulator_*_*', + 'keep *_l1tSC4PFL1PuppiCorrectedEmulatorMHT_*_*', + 'keep *_l1tSC4PFL1PuppiExtendedCorrectedEmulator_*_*', + 'keep *_l1tSC4PFL1PuppiExtendedCorrectedEmulatorMHT_*_*', 'keep *_l1tPhase1JetProducer9x9_*_*', 'keep *_l1tPhase1JetCalibrator9x9_*_*', 'keep *_l1tPhase1JetSumsProducer9x9_*_*', diff --git a/L1Trigger/Phase2L1GT/python/l1tGTProducer_cff.py b/L1Trigger/Phase2L1GT/python/l1tGTProducer_cff.py index 7566ac3cd6862..6160eaf3b8493 100644 --- a/L1Trigger/Phase2L1GT/python/l1tGTProducer_cff.py +++ b/L1Trigger/Phase2L1GT/python/l1tGTProducer_cff.py @@ -10,10 +10,10 @@ GMTSaPromptMuons = cms.InputTag("l1tSAMuonsGmt", "promptSAMuons"), GMTSaDisplacedMuons = cms.InputTag("l1tSAMuonsGmt", "displacedSAMuons"), GMTTkMuons = cms.InputTag("l1tTkMuonsGmtLowPtFix", "l1tTkMuonsGmtLowPtFix"), - CL2Jets = cms.InputTag("l1tSCPFL1PuppiCorrectedEmulator"), + CL2Jets = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulator"), CL2Electrons = cms.InputTag("l1tLayer2EG", "L1CtTkElectron"), CL2Photons = cms.InputTag("l1tLayer2EG", "L1CtTkEm"), CL2Taus = cms.InputTag("l1tNNTauProducerPuppi", "L1PFTausNN"), CL2EtSum = cms.InputTag("l1tMETPFProducer"), - CL2HtSum = cms.InputTag("l1tSCPFL1PuppiCorrectedEmulatorMHT") + CL2HtSum = cms.InputTag("l1tSC4PFL1PuppiCorrectedEmulatorMHT") ) diff --git a/L1Trigger/Phase2L1ParticleFlow/python/L1BJetProducer_cff.py b/L1Trigger/Phase2L1ParticleFlow/python/L1BJetProducer_cff.py index 731d661cfd6c1..75904f145c4c2 100644 --- a/L1Trigger/Phase2L1ParticleFlow/python/L1BJetProducer_cff.py +++ b/L1Trigger/Phase2L1ParticleFlow/python/L1BJetProducer_cff.py @@ -4,7 +4,7 @@ from L1Trigger.Phase2L1ParticleFlow.L1BJetProducer_cfi import L1BJetProducer l1tBJetProducerPuppi = L1BJetProducer.clone( - jets = ("l1tSCPFL1PuppiExtended", ""), + jets = ("l1tSC4PFL1PuppiExtended", ""), maxJets = 6, minPt = 10, vtx = ("l1tVertexFinderEmulator","L1VerticesEmulation") @@ -12,7 +12,7 @@ l1tBJetProducerPuppiCorrectedEmulator = l1tBJetProducerPuppi.clone( - jets = ("l1tSCPFL1PuppiExtendedCorrectedEmulator", "") + jets = ("l1tSC4PFL1PuppiExtendedCorrectedEmulator", "") ) L1TBJetsTask = cms.Task( diff --git a/L1Trigger/Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py b/L1Trigger/Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py index 31e3f57591c9e..e51ca85feafb4 100644 --- a/L1Trigger/Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py +++ b/L1Trigger/Phase2L1ParticleFlow/python/l1tMHTPFProducer_cfi.py @@ -1,7 +1,7 @@ import FWCore.ParameterSet.Config as cms l1tMHTPFProducer = cms.EDProducer("L1MhtPfProducer", - jets = cms.InputTag("l1tSCPFL1PuppiEmulator"), + jets = cms.InputTag("l1tSC4PFL1PuppiEmulator"), minJetPt = cms.double(30.0), maxJetEta = cms.double(2.4) ) From c6bb8c053aaf84bb8138b54155e0d903660d3909 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Wed, 20 Dec 2023 13:21:53 +0100 Subject: [PATCH 147/281] Cleanup in SimG4CMS/Tracker against using codes directly from DD4hep --- .../src/TrackerG4SimHitNumberingScheme.cc | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/SimG4CMS/Tracker/src/TrackerG4SimHitNumberingScheme.cc b/SimG4CMS/Tracker/src/TrackerG4SimHitNumberingScheme.cc index 20aba434b730d..8429b4730f09a 100644 --- a/SimG4CMS/Tracker/src/TrackerG4SimHitNumberingScheme.cc +++ b/SimG4CMS/Tracker/src/TrackerG4SimHitNumberingScheme.cc @@ -1,8 +1,8 @@ #include "SimG4CMS/Tracker/interface/TrackerG4SimHitNumberingScheme.h" #include "Geometry/TrackerNumberingBuilder/interface/GeometricDet.h" - +#include "SimG4Core/Geometry/interface/DD4hep2DDDName.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" -#include "DD4hep/Filter.h" + #include "G4TransportationManager.hh" #include "G4Navigator.hh" #include "G4VTouchable.hh" @@ -62,9 +62,8 @@ void TrackerG4SimHitNumberingScheme::touchToNavStory(const G4VTouchable* v, int levels = v->GetHistoryDepth(); for (int k = 0; k <= levels; ++k) { - if (dd4hep::dd::noNamespace(v->GetVolume(k)->GetLogicalVolume()->GetName()) != "TOBInactive") { - st.emplace_back( - std::pair(v->GetVolume(k)->GetCopyNo(), v->GetVolume(k)->GetLogicalVolume()->GetName())); + if (DD4hep2DDDName::noNameSpace(static_cast(v->GetVolume(k)->GetLogicalVolume()->GetName())) != "TOBInactive") { + st.emplace_back(std::pair(v->GetVolume(k)->GetCopyNo(), DD4hep2DDDName::noNameSpace(static_cast(v->GetVolume(k)->GetLogicalVolume()->GetName())))); #ifdef EDM_ML_DEBUG debugint.emplace_back(v->GetVolume(k)->GetCopyNo()); debugstring.emplace_back(v->GetVolume(k)->GetLogicalVolume()->GetName()); @@ -72,9 +71,9 @@ void TrackerG4SimHitNumberingScheme::touchToNavStory(const G4VTouchable* v, } } #ifdef EDM_ML_DEBUG - LogDebug("TrackerSimDebugNumbering") << " G4 TrackerG4SimHitNumberingScheme " << debugint.size(); + edm::LogVerbatim("TrackerSimDebugNumbering") << " G4 TrackerG4SimHitNumberingScheme " << debugint.size(); for (u_int32_t jj = 0; jj < debugstring.size(); jj++) - LogDebug("TrackerSimDebugNumbering") << " " << debugstring[jj]; + edm::LogVerbatim("TrackerSimDebugNumbering") << " " << debugstring[jj]; #endif } @@ -87,7 +86,7 @@ unsigned int TrackerG4SimHitNumberingScheme::g4ToNumberingScheme(const G4VToucha #ifdef EDM_ML_DEBUG dumpG4VPV(v); - LogDebug("TrackerSimDebugNumbering") << " Returning: " << directMap_[st]; + edm::LogVerbatim("TrackerSimDebugNumbering") << " Returning: " << directMap_[st]; #endif return directMap_[st]; @@ -96,9 +95,9 @@ unsigned int TrackerG4SimHitNumberingScheme::g4ToNumberingScheme(const G4VToucha void TrackerG4SimHitNumberingScheme::dumpG4VPV(const G4VTouchable* v) { int levels = v->GetHistoryDepth(); - LogDebug("TrackerSimDebugNumbering") << " NAME : " << v->GetVolume()->GetLogicalVolume()->GetName(); + edm::LogVerbatim("TrackerSimDebugNumbering") << " NAME : " << v->GetVolume()->GetLogicalVolume()->GetName(); for (int k = 0; k <= levels; k++) { - LogDebug("TrackerSimInfoNumbering") << " Hist: " << v->GetVolume(k)->GetLogicalVolume()->GetName() << " Copy " + edm::LogVerbatim("TrackerSimInfoNumbering") << " Hist: " << v->GetVolume(k)->GetLogicalVolume()->GetName() << " Copy " << v->GetVolume(k)->GetCopyNo(); } } From 4c554698c8a2ede968ea3fbe9f0dd344560baefe Mon Sep 17 00:00:00 2001 From: Sunanda Date: Wed, 20 Dec 2023 13:34:04 +0100 Subject: [PATCH 148/281] Code check --- .../Tracker/src/TrackerG4SimHitNumberingScheme.cc | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/SimG4CMS/Tracker/src/TrackerG4SimHitNumberingScheme.cc b/SimG4CMS/Tracker/src/TrackerG4SimHitNumberingScheme.cc index 8429b4730f09a..7ea0c220b4d9e 100644 --- a/SimG4CMS/Tracker/src/TrackerG4SimHitNumberingScheme.cc +++ b/SimG4CMS/Tracker/src/TrackerG4SimHitNumberingScheme.cc @@ -62,8 +62,11 @@ void TrackerG4SimHitNumberingScheme::touchToNavStory(const G4VTouchable* v, int levels = v->GetHistoryDepth(); for (int k = 0; k <= levels; ++k) { - if (DD4hep2DDDName::noNameSpace(static_cast(v->GetVolume(k)->GetLogicalVolume()->GetName())) != "TOBInactive") { - st.emplace_back(std::pair(v->GetVolume(k)->GetCopyNo(), DD4hep2DDDName::noNameSpace(static_cast(v->GetVolume(k)->GetLogicalVolume()->GetName())))); + if (DD4hep2DDDName::noNameSpace(static_cast(v->GetVolume(k)->GetLogicalVolume()->GetName())) != + "TOBInactive") { + st.emplace_back(std::pair( + v->GetVolume(k)->GetCopyNo(), + DD4hep2DDDName::noNameSpace(static_cast(v->GetVolume(k)->GetLogicalVolume()->GetName())))); #ifdef EDM_ML_DEBUG debugint.emplace_back(v->GetVolume(k)->GetCopyNo()); debugstring.emplace_back(v->GetVolume(k)->GetLogicalVolume()->GetName()); @@ -97,7 +100,7 @@ void TrackerG4SimHitNumberingScheme::dumpG4VPV(const G4VTouchable* v) { edm::LogVerbatim("TrackerSimDebugNumbering") << " NAME : " << v->GetVolume()->GetLogicalVolume()->GetName(); for (int k = 0; k <= levels; k++) { - edm::LogVerbatim("TrackerSimInfoNumbering") << " Hist: " << v->GetVolume(k)->GetLogicalVolume()->GetName() << " Copy " - << v->GetVolume(k)->GetCopyNo(); + edm::LogVerbatim("TrackerSimInfoNumbering") + << " Hist: " << v->GetVolume(k)->GetLogicalVolume()->GetName() << " Copy " << v->GetVolume(k)->GetCopyNo(); } } From e25884b43f605969fc985be2e81614ec741d237d Mon Sep 17 00:00:00 2001 From: Andrea Bocci Date: Tue, 19 Dec 2023 21:37:18 +0100 Subject: [PATCH 149/281] Add uniform_groups and uniform_group_elements type aliases --- .../AlpakaInterface/interface/workdivision.h | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/HeterogeneousCore/AlpakaInterface/interface/workdivision.h b/HeterogeneousCore/AlpakaInterface/interface/workdivision.h index 39f19fe463745..7e181363b1290 100644 --- a/HeterogeneousCore/AlpakaInterface/interface/workdivision.h +++ b/HeterogeneousCore/AlpakaInterface/interface/workdivision.h @@ -496,6 +496,46 @@ namespace cms::alpakatools { const Idx range_; }; + /* uniform_groups + * + * `uniform_groups(acc, elements)` returns a range than spans the group indices required to cover the given problem + * size, in units of the block size: + * - the `elements` argument indicates the total number of elements, across all groups. + * + * `uniform_groups` should be called consistently by all the threads in a block. All threads in a block see the same + * loop iterations, while threads in different blocks may see a different number of iterations. + * + * For example, if `size` is 1000 and the block size is 16, + * + * for (auto group: uniform_groups(acc, 1000) + * + * will return the range from 0 to 62, split across all blocks in the work division. + * + * If the work division has more than 63 blocks, the first 63 will perform one iteration of the loop, while the other + * blocks will exit immediately. + * If the work division has less than 63 blocks, some of the blocks will perform more than one iteration, in order to + * cover then whole problem space. + */ + + template and alpaka::Dim::value == 1>> + using uniform_groups = blocks_with_stride; + + /* uniform_group_elements + * + * `uniform_group_elements(acc, group, elements)` returns a range that spans all the elements within the given group: + * - the `group` argument indicates the id of the current group, for example as obtained from `uniform_groups`; + * - the `elements` argument indicates the total number of elements, across all groups. + * + * Iterating over the range yields values of type `ElementIndex`, that contain the `.global` and `.local` indices of + * the corresponding element. + * + * The loop will perform a number of iterations up to the number of elements per thread, stopping earlier when the + * element index reaches `size`. + */ + + template and alpaka::Dim::value == 1>> + using uniform_group_elements = elements_in_block; + /* once_per_grid * * `once_per_grid(acc)` returns true for a single thread within the kernel execution grid. From 6844aadf7892fe598a43fa8a31c99e1c5605edcd Mon Sep 17 00:00:00 2001 From: Andrea Bocci Date: Thu, 21 Dec 2023 00:55:38 +0100 Subject: [PATCH 150/281] Add independent_groups and independent_group_elements helper classes - `independent_groups(acc, groups)` returns a range than spans the group indices from 0 to `groups`, with one group per block; - `independent_group_elements(acc, elements)` returns a range that spans all the elements within the given group, from 0 to `elements`. --- .../AlpakaInterface/interface/workdivision.h | 173 ++++++++++++++++++ 1 file changed, 173 insertions(+) diff --git a/HeterogeneousCore/AlpakaInterface/interface/workdivision.h b/HeterogeneousCore/AlpakaInterface/interface/workdivision.h index 7e181363b1290..220abe46b1925 100644 --- a/HeterogeneousCore/AlpakaInterface/interface/workdivision.h +++ b/HeterogeneousCore/AlpakaInterface/interface/workdivision.h @@ -536,6 +536,179 @@ namespace cms::alpakatools { template and alpaka::Dim::value == 1>> using uniform_group_elements = elements_in_block; + /* independent_groups + * + * `independent_groups(acc, groups)` returns a range than spans the group indices from 0 to `groups`, with one group + * per block: + * - the `groups` argument indicates the total number of groups. + * + * If the work division has more blocks than `groups`, only the first `groups` blocks will perform one iteration of + * the loop, while the other blocks will exit immediately. + * If the work division has less blocks than `groups`, some of the blocks will perform more than one iteration, in + * order to cover then whole problem space. + */ + + template and alpaka::Dim::value == 1>> + class independent_groups { + public: + ALPAKA_FN_ACC inline independent_groups(TAcc const& acc) + : first_{alpaka::getIdx(acc)[0u]}, + stride_{alpaka::getWorkDiv(acc)[0u]}, + extent_{stride_} {} + + // extent is the total number of elements (not blocks) + ALPAKA_FN_ACC inline independent_groups(TAcc const& acc, Idx groups) + : first_{alpaka::getIdx(acc)[0u]}, + stride_{alpaka::getWorkDiv(acc)[0u]}, + extent_{groups} {} + + class iterator { + friend class independent_groups; + + ALPAKA_FN_ACC inline iterator(Idx stride, Idx extent, Idx first) + : stride_{stride}, extent_{extent}, first_{std::min(first, extent)} {} + + public: + ALPAKA_FN_ACC inline Idx operator*() const { return first_; } + + // pre-increment the iterator + ALPAKA_FN_ACC inline iterator& operator++() { + // increment the first-element-in-block index by the grid stride + first_ += stride_; + if (first_ < extent_) + return *this; + + // the iterator has reached or passed the end of the extent, clamp it to the extent + first_ = extent_; + return *this; + } + + // post-increment the iterator + ALPAKA_FN_ACC inline iterator operator++(int) { + iterator old = *this; + ++(*this); + return old; + } + + ALPAKA_FN_ACC inline bool operator==(iterator const& other) const { return (first_ == other.first_); } + + ALPAKA_FN_ACC inline bool operator!=(iterator const& other) const { return not(*this == other); } + + private: + // non-const to support iterator copy and assignment + Idx stride_; + Idx extent_; + // modified by the pre/post-increment operator + Idx first_; + }; + + ALPAKA_FN_ACC inline iterator begin() const { return iterator(stride_, extent_, first_); } + + ALPAKA_FN_ACC inline iterator end() const { return iterator(stride_, extent_, extent_); } + + private: + const Idx first_; + const Idx stride_; + const Idx extent_; + }; + + /* independent_group_elements + * + * `independent_group_elements(acc, elements)` returns a range that spans all the elements within the given group: + * - the `elements` argument indicates the number of elements in the current group. + * + * Iterating over the range yields the local element index, between `0` and `elements - 1`. The threads in the block + * will perform one or more iterations, depending on the number of elements per thread, and on the number of threads + * per block, ocmpared with the total number of elements. + */ + + template and alpaka::Dim::value == 1>> + class independent_group_elements { + public: + ALPAKA_FN_ACC inline independent_group_elements(TAcc const& acc) + : elements_{alpaka::getWorkDiv(acc)[0u]}, + thread_{alpaka::getIdx(acc)[0u] * elements_}, + stride_{alpaka::getWorkDiv(acc)[0u] * elements_}, + extent_{stride_} {} + + ALPAKA_FN_ACC inline independent_group_elements(TAcc const& acc, Idx extent) + : elements_{alpaka::getWorkDiv(acc)[0u]}, + thread_{alpaka::getIdx(acc)[0u] * elements_}, + stride_{alpaka::getWorkDiv(acc)[0u] * elements_}, + extent_{extent} {} + + class iterator { + friend class independent_group_elements; + + ALPAKA_FN_ACC inline iterator(Idx elements, Idx stride, Idx extent, Idx first) + : elements_{elements}, + stride_{stride}, + extent_{extent}, + first_{std::min(first, extent)}, + index_{first_}, + range_{std::min(first + elements, extent)} {} + + public: + ALPAKA_FN_ACC inline Idx operator*() const { return index_; } + + // pre-increment the iterator + ALPAKA_FN_ACC inline iterator& operator++() { + if constexpr (requires_single_thread_per_block_v) { + // increment the index along the elements processed by the current thread + ++index_; + if (index_ < range_) + return *this; + } + + // increment the thread index with the block stride + first_ += stride_; + index_ = first_; + range_ = std::min(first_ + elements_, extent_); + if (index_ < extent_) + return *this; + + // the iterator has reached or passed the end of the extent, clamp it to the extent + first_ = extent_; + index_ = extent_; + range_ = extent_; + return *this; + } + + // post-increment the iterator + ALPAKA_FN_ACC inline iterator operator++(int) { + iterator old = *this; + ++(*this); + return old; + } + + ALPAKA_FN_ACC inline bool operator==(iterator const& other) const { + return (index_ == other.index_) and (first_ == other.first_); + } + + ALPAKA_FN_ACC inline bool operator!=(iterator const& other) const { return not(*this == other); } + + private: + // non-const to support iterator copy and assignment + Idx elements_; + Idx stride_; + Idx extent_; + // modified by the pre/post-increment operator + Idx first_; + Idx index_; + Idx range_; + }; + + ALPAKA_FN_ACC inline iterator begin() const { return iterator(elements_, stride_, extent_, thread_); } + + ALPAKA_FN_ACC inline iterator end() const { return iterator(elements_, stride_, extent_, extent_); } + + private: + const Idx elements_; + const Idx thread_; + const Idx stride_; + const Idx extent_; + }; + /* once_per_grid * * `once_per_grid(acc)` returns true for a single thread within the kernel execution grid. From 3dfb1a9f97c149aea43cd6206626ad188a0b1e06 Mon Sep 17 00:00:00 2001 From: Andrea Bocci Date: Thu, 21 Dec 2023 00:58:05 +0100 Subject: [PATCH 151/281] Add a test for independent_groups and independent_group_elements --- .../AlpakaInterface/test/BuildFile.xml | 7 + .../test/alpaka/testIndependentKernel.dev.cc | 144 ++++++++++++++++++ 2 files changed, 151 insertions(+) create mode 100644 HeterogeneousCore/AlpakaInterface/test/alpaka/testIndependentKernel.dev.cc diff --git a/HeterogeneousCore/AlpakaInterface/test/BuildFile.xml b/HeterogeneousCore/AlpakaInterface/test/BuildFile.xml index 5f9c5fe81981f..2d204819d740b 100644 --- a/HeterogeneousCore/AlpakaInterface/test/BuildFile.xml +++ b/HeterogeneousCore/AlpakaInterface/test/BuildFile.xml @@ -12,6 +12,13 @@ + + + + + + + diff --git a/HeterogeneousCore/AlpakaInterface/test/alpaka/testIndependentKernel.dev.cc b/HeterogeneousCore/AlpakaInterface/test/alpaka/testIndependentKernel.dev.cc new file mode 100644 index 0000000000000..bd98efcfa32d6 --- /dev/null +++ b/HeterogeneousCore/AlpakaInterface/test/alpaka/testIndependentKernel.dev.cc @@ -0,0 +1,144 @@ +#include +#include + +#include + +#define CATCH_CONFIG_MAIN +#include + +#include "HeterogeneousCore/AlpakaInterface/interface/config.h" +#include "HeterogeneousCore/AlpakaInterface/interface/memory.h" +#include "HeterogeneousCore/AlpakaInterface/interface/workdivision.h" + +// each test binary is built for a single Alpaka backend +using namespace ALPAKA_ACCELERATOR_NAMESPACE; + +/* Add the group id to te value of each element in the group. + * Each group is composed by the elements first[group]..first[group+1]-1 . + */ +struct IndependentWorkKernel { + template + ALPAKA_FN_ACC void operator()(TAcc const& acc, + T const* __restrict__ in, + T* __restrict__ out, + size_t const* __restrict__ indices, + size_t groups) const { + for (auto group : cms::alpakatools::independent_groups(acc, groups)) { + size_t first = indices[group]; + size_t last = indices[group + 1]; + size_t size = last - first; + for (auto index : cms::alpakatools::independent_group_elements(acc, size)) { + out[first + index] = in[first + index] + group; + } + } + } +}; + +/* Test the IndependentWorkKernel kernel on all devices + */ +template +void testIndependentWorkKernel(size_t groups, size_t grid_size, size_t block_size, TKernel kernel) { + // random number generator with a gaussian distribution + std::random_device rd{}; + std::default_random_engine engine{rd()}; + + // uniform distribution + std::uniform_int_distribution random_size{100, 201}; + + // gaussian distribution + std::normal_distribution dist{0., 1.}; + + // build the groups + std::vector sizes(groups); + auto indices_h = cms::alpakatools::make_host_buffer(groups + 1); + indices_h[0] = 0; + for (size_t i = 0; i < groups; ++i) { + auto size = random_size(engine); + sizes[i] = size; + indices_h[i + 1] = indices_h[i] + size; + } + + // tolerance + constexpr float epsilon = 0.000001; + + // buffer size + const size_t size = indices_h[groups]; + + // allocate the input and output host buffer in pinned memory accessible by the Platform devices + auto in_h = cms::alpakatools::make_host_buffer(size); + auto out_h = cms::alpakatools::make_host_buffer(size); + + // fill the input buffers with random data, and the output buffer with zeros + for (size_t i = 0; i < size; ++i) { + in_h[i] = dist(engine); + out_h[i] = 0; + } + + // run the test on each device + for (auto const& device : cms::alpakatools::devices()) { + std::cout << "Test IndependentWorkKernel on " << alpaka::getName(device) << " over " << size << " elements in " + << groups << " independent groups with " << grid_size << " blocks of " << block_size << " elements\n"; + auto queue = Queue(device); + + // allocate input and output buffers on the device + auto indices_d = cms::alpakatools::make_device_buffer(queue, groups + 1); + auto in_d = cms::alpakatools::make_device_buffer(queue, size); + auto out_d = cms::alpakatools::make_device_buffer(queue, size); + + // copy the input data to the device; the size is known from the buffer objects + alpaka::memcpy(queue, indices_d, indices_h); + alpaka::memcpy(queue, in_d, in_h); + + // fill the output buffer with zeros; the size is known from the buffer objects + alpaka::memset(queue, out_d, 0.); + + // launch the 1-dimensional kernel with independent work groups + auto div = cms::alpakatools::make_workdiv(grid_size, block_size); + alpaka::exec(queue, div, kernel, in_d.data(), out_d.data(), indices_d.data(), groups); + + // copy the results from the device to the host + alpaka::memcpy(queue, out_h, out_d); + + // wait for all the operations to complete + alpaka::wait(queue); + + // check the results + for (size_t g = 0; g < groups; ++g) { + size_t first = indices_h[g]; + size_t last = indices_h[g + 1]; + for (size_t i = first; i < last; ++i) { + float sum = in_h[i] + g; + float delta = std::max(std::fabs(sum) * epsilon, epsilon); + REQUIRE(out_h[i] < sum + delta); + REQUIRE(out_h[i] > sum - delta); + } + } + } +} + +TEST_CASE("Test alpaka kernels for the " EDM_STRINGIZE(ALPAKA_ACCELERATOR_NAMESPACE) " backend", + "[" EDM_STRINGIZE(ALPAKA_ACCELERATOR_NAMESPACE) "]") { + SECTION("Independent work groups") { + // get the list of devices on the current platform + auto const& devices = cms::alpakatools::devices(); + if (devices.empty()) { + INFO("No devices available on the platform " EDM_STRINGIZE(ALPAKA_ACCELERATOR_NAMESPACE)); + REQUIRE(not devices.empty()); + } + + // launch the independent work kernel with a small block size and a small number of blocks; + // this relies on the kernel to loop over the "problem space" and do more work per block + std::cout << "Test independent work kernel with small block size, using scalar dimensions\n"; + testIndependentWorkKernel(100, 32, 32, IndependentWorkKernel{}); + + // launch the independent work kernel with a large block size and a single block; + // this relies on the kernel to check the size of the "problem space" and avoid accessing out-of-bounds data + std::cout << "Test independent work kernel with large block size, using scalar dimensions\n"; + testIndependentWorkKernel(100, 1, 1024, IndependentWorkKernel{}); + + // launch the independent work kernel with a large block size and a large number of blocks; + // this relies on the kernel to check the size of the "problem space" and avoid accessing out-of-bounds data + std::cout << "Test independent work kernel with large block size, using scalar dimensions\n"; + testIndependentWorkKernel(100, 1024, 1024, IndependentWorkKernel{}); + } +} From c20f5fe91ddf87e81ef0e2245797386ded33a684 Mon Sep 17 00:00:00 2001 From: llunerti Date: Mon, 16 Oct 2023 13:05:23 +0200 Subject: [PATCH 152/281] fixed dimuon invariant mass plots range --- DQMOffline/Muon/src/DiMuonHistograms.cc | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/DQMOffline/Muon/src/DiMuonHistograms.cc b/DQMOffline/Muon/src/DiMuonHistograms.cc index 35e1ae21cf9d1..35b834a317564 100644 --- a/DQMOffline/Muon/src/DiMuonHistograms.cc +++ b/DQMOffline/Muon/src/DiMuonHistograms.cc @@ -111,18 +111,18 @@ void DiMuonHistograms::bookHistograms(DQMStore::IBooker& ibooker, TightTightMuon.push_back(ibooker.book1D("TightTightMuon" + EtaName[iEtaRegion], "InvMass_{Tight,Tight}" + EtaName[iEtaRegion], nBin[iEtaRegion], - LowMassMin, - LowMassMax)); + HighMassMin, + HighMassMax)); MediumMediumMuon.push_back(ibooker.book1D("MediumMediumMuon" + EtaName[iEtaRegion], "InvMass_{Medium,Medium}" + EtaName[iEtaRegion], nBin[iEtaRegion], - LowMassMin, - LowMassMax)); + HighMassMin, + HighMassMax)); LooseLooseMuon.push_back(ibooker.book1D("LooseLooseMuon" + EtaName[iEtaRegion], "InvMass_{Loose,Loose}" + EtaName[iEtaRegion], nBin[iEtaRegion], - LowMassMin, - LowMassMax)); + HighMassMin, + HighMassMax)); //Fraction of bad hits in the tracker track to the total TightTightMuonBadFrac.push_back(ibooker.book1D( "TightTightMuonBadFrac" + EtaName[iEtaRegion], "BadFrac_{Tight,Tight}" + EtaName[iEtaRegion], 10, 0, 0.4)); From a1a5aa049dbda21a61cb078a0031dffcd9c3730c Mon Sep 17 00:00:00 2001 From: llunerti Date: Mon, 11 Dec 2023 10:09:37 +0100 Subject: [PATCH 153/281] variables name fix --- DQMOffline/Muon/interface/DiMuonHistograms.h | 8 +-- DQMOffline/Muon/src/DiMuonHistograms.cc | 60 ++++++++++---------- 2 files changed, 34 insertions(+), 34 deletions(-) diff --git a/DQMOffline/Muon/interface/DiMuonHistograms.h b/DQMOffline/Muon/interface/DiMuonHistograms.h index 94feb93bde699..ae8c762494a17 100644 --- a/DQMOffline/Muon/interface/DiMuonHistograms.h +++ b/DQMOffline/Muon/interface/DiMuonHistograms.h @@ -64,10 +64,10 @@ class DiMuonHistograms : public DQMEDAnalyzer { double etaECMax; //Defining the relevant invariant mass regions - double LowMassMin; - double LowMassMax; - double HighMassMin; - double HighMassMax; + double lowMassMin; + double lowMassMax; + double highMassMin; + double highMassMax; std::vector GlbGlbMuon_LM; std::vector GlbGlbMuon_HM; diff --git a/DQMOffline/Muon/src/DiMuonHistograms.cc b/DQMOffline/Muon/src/DiMuonHistograms.cc index 35b834a317564..f89cacabf8e9e 100644 --- a/DQMOffline/Muon/src/DiMuonHistograms.cc +++ b/DQMOffline/Muon/src/DiMuonHistograms.cc @@ -53,10 +53,10 @@ DiMuonHistograms::DiMuonHistograms(const edm::ParameterSet& pSet) { etaECMin = parameters.getParameter("etaECMin"); etaECMax = parameters.getParameter("etaECMax"); - LowMassMin = parameters.getParameter("LowMassMin"); - LowMassMax = parameters.getParameter("LowMassMax"); - HighMassMin = parameters.getParameter("HighMassMin"); - HighMassMax = parameters.getParameter("HighMassMax"); + lowMassMin = parameters.getParameter("lowMassMin"); + lowMassMax = parameters.getParameter("lowMassMax"); + highMassMin = parameters.getParameter("highMassMin"); + highMassMax = parameters.getParameter("highMassMax"); theFolder = parameters.getParameter("folder"); } @@ -78,51 +78,51 @@ void DiMuonHistograms::bookHistograms(DQMStore::IBooker& ibooker, GlbGlbMuon_LM.push_back(ibooker.book1D("GlbGlbMuon_LM" + EtaName[iEtaRegion], "InvMass_{GLB,GLB}" + EtaName[iEtaRegion], nBin[iEtaRegion], - LowMassMin, - LowMassMax)); + lowMassMin, + lowMassMax)); TrkTrkMuon_LM.push_back(ibooker.book1D("TrkTrkMuon_LM" + EtaName[iEtaRegion], "InvMass_{TRK,TRK}" + EtaName[iEtaRegion], nBin[iEtaRegion], - LowMassMin, - LowMassMax)); + lowMassMin, + lowMassMax)); StaTrkMuon_LM.push_back(ibooker.book1D("StaTrkMuon_LM" + EtaName[iEtaRegion], "InvMass_{STA,TRK}" + EtaName[iEtaRegion], nBin[iEtaRegion], - LowMassMin, - LowMassMax)); + lowMassMin, + lowMassMax)); GlbGlbMuon_HM.push_back(ibooker.book1D("GlbGlbMuon_HM" + EtaName[iEtaRegion], "InvMass_{GLB,GLB}" + EtaName[iEtaRegion], nBin[iEtaRegion], - HighMassMin, - HighMassMax)); + highMassMin, + highMassMax)); TrkTrkMuon_HM.push_back(ibooker.book1D("TrkTrkMuon_HM" + EtaName[iEtaRegion], "InvMass_{TRK,TRK}" + EtaName[iEtaRegion], nBin[iEtaRegion], - HighMassMin, - HighMassMax)); + highMassMin, + highMassMax)); StaTrkMuon_HM.push_back(ibooker.book1D("StaTrkMuon_HM" + EtaName[iEtaRegion], "InvMass_{STA,TRK}" + EtaName[iEtaRegion], nBin[iEtaRegion], - HighMassMin, - HighMassMax)); + highMassMin, + highMassMax)); // arround the Z peak TightTightMuon.push_back(ibooker.book1D("TightTightMuon" + EtaName[iEtaRegion], "InvMass_{Tight,Tight}" + EtaName[iEtaRegion], nBin[iEtaRegion], - HighMassMin, - HighMassMax)); + highMassMin, + highMassMax)); MediumMediumMuon.push_back(ibooker.book1D("MediumMediumMuon" + EtaName[iEtaRegion], "InvMass_{Medium,Medium}" + EtaName[iEtaRegion], nBin[iEtaRegion], - HighMassMin, - HighMassMax)); + highMassMin, + highMassMax)); LooseLooseMuon.push_back(ibooker.book1D("LooseLooseMuon" + EtaName[iEtaRegion], "InvMass_{Loose,Loose}" + EtaName[iEtaRegion], nBin[iEtaRegion], - HighMassMin, - HighMassMax)); + highMassMin, + highMassMax)); //Fraction of bad hits in the tracker track to the total TightTightMuonBadFrac.push_back(ibooker.book1D( "TightTightMuonBadFrac" + EtaName[iEtaRegion], "BadFrac_{Tight,Tight}" + EtaName[iEtaRegion], 10, 0, 0.4)); @@ -222,9 +222,9 @@ void DiMuonHistograms::analyze(const edm::Event& iEvent, const edm::EventSetup& fabs(recoCombinedGlbTrack1->eta()) < EtaCutMax[iEtaRegion] && fabs(recoCombinedGlbTrack2->eta()) > EtaCutMin[iEtaRegion] && fabs(recoCombinedGlbTrack2->eta()) < EtaCutMax[iEtaRegion]) { - if (InvMass < LowMassMax) + if (InvMass < lowMassMax) GlbGlbMuon_LM[iEtaRegion]->Fill(InvMass); - if (InvMass > HighMassMin) + if (InvMass > highMassMin) GlbGlbMuon_HM[iEtaRegion]->Fill(InvMass); } } @@ -300,9 +300,9 @@ void DiMuonHistograms::analyze(const edm::Event& iEvent, const edm::EventSetup& if (fabs(recoStaTrack->eta()) > EtaCutMin[iEtaRegion] && fabs(recoStaTrack->eta()) < EtaCutMax[iEtaRegion] && fabs(recoTrack->eta()) > EtaCutMin[iEtaRegion] && fabs(recoTrack->eta()) < EtaCutMax[iEtaRegion]) { - if (InvMass < LowMassMax) + if (InvMass < lowMassMax) StaTrkMuon_LM[iEtaRegion]->Fill(InvMass); - if (InvMass > HighMassMin) + if (InvMass > highMassMin) StaTrkMuon_HM[iEtaRegion]->Fill(InvMass); } } @@ -322,9 +322,9 @@ void DiMuonHistograms::analyze(const edm::Event& iEvent, const edm::EventSetup& if (fabs(recoStaTrack->eta()) > EtaCutMin[iEtaRegion] && fabs(recoStaTrack->eta()) < EtaCutMax[iEtaRegion] && fabs(recoTrack->eta()) > EtaCutMin[iEtaRegion] && fabs(recoTrack->eta()) < EtaCutMax[iEtaRegion]) { - if (InvMass < LowMassMax) + if (InvMass < lowMassMax) StaTrkMuon_LM[iEtaRegion]->Fill(InvMass); - if (InvMass > HighMassMin) + if (InvMass > highMassMin) StaTrkMuon_HM[iEtaRegion]->Fill(InvMass); } } @@ -345,9 +345,9 @@ void DiMuonHistograms::analyze(const edm::Event& iEvent, const edm::EventSetup& for (unsigned int iEtaRegion = 0; iEtaRegion < 3; iEtaRegion++) { if (fabs(recoTrack1->eta()) > EtaCutMin[iEtaRegion] && fabs(recoTrack1->eta()) < EtaCutMax[iEtaRegion] && fabs(recoTrack2->eta()) > EtaCutMin[iEtaRegion] && fabs(recoTrack2->eta()) < EtaCutMax[iEtaRegion]) { - if (InvMass < LowMassMax) + if (InvMass < lowMassMax) TrkTrkMuon_LM[iEtaRegion]->Fill(InvMass); - if (InvMass > HighMassMin) + if (InvMass > highMassMin) TrkTrkMuon_HM[iEtaRegion]->Fill(InvMass); } } From 9ab5100d7befe67d0a55a9e295286d3b6e0cb63f Mon Sep 17 00:00:00 2001 From: llunerti Date: Mon, 11 Dec 2023 10:15:15 +0100 Subject: [PATCH 154/281] missing fix on cfg file --- .../Muon/python/diMuonHistograms_cfi.py | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/DQMOffline/Muon/python/diMuonHistograms_cfi.py b/DQMOffline/Muon/python/diMuonHistograms_cfi.py index f0fcb59ddc4d0..70431269e6baf 100644 --- a/DQMOffline/Muon/python/diMuonHistograms_cfi.py +++ b/DQMOffline/Muon/python/diMuonHistograms_cfi.py @@ -17,10 +17,10 @@ etaECMin = cms.double(0.9), etaECMax = cms.double(2.4), - LowMassMin = cms.double(2.0), - LowMassMax = cms.double(12.0), - HighMassMin = cms.double(70.0), - HighMassMax = cms.double(110.0), + lowMassMin = cms.double(2.0), + lowMassMax = cms.double(12.0), + highMassMin = cms.double(70.0), + highMassMax = cms.double(110.0), folder = cms.string("Muons/diMuonHistograms") ) diMuonHistos_miniAOD = DQMEDAnalyzer('DiMuonHistograms', @@ -37,10 +37,10 @@ etaECMin = cms.double(0.9), etaECMax = cms.double(2.4), - LowMassMin = cms.double(2.0), - LowMassMax = cms.double(12.0), - HighMassMin = cms.double(70.0), - HighMassMax = cms.double(110.0), + lowMassMin = cms.double(2.0), + lowMassMax = cms.double(12.0), + highMassMin = cms.double(70.0), + highMassMax = cms.double(110.0), folder = cms.string("Muons_miniAOD/diMuonHistograms") ) @@ -50,8 +50,8 @@ etaBBin = 350, etaEBin = 350, - LowMassMin = 2.0, - LowMassMax = 51.0, - HighMassMin = 55.0, - HighMassMax = 125.0 + lowMassMin = 2.0, + lowMassMax = 51.0, + highMassMin = 55.0, + highMassMax = 125.0 ) From 42497ee5da0f3d1f41219ba4748166fae0bfb581 Mon Sep 17 00:00:00 2001 From: Fabio Cossutti Date: Thu, 21 Dec 2023 11:01:24 +0100 Subject: [PATCH 155/281] Add test code to print and graphically display BTL pulse shape for difference amplitudes --- .../FastTimingCommon/test/BuildFile.xml | 4 + .../FastTimingCommon/test/testBTLShape.cpp | 73 +++++++++++++++++++ 2 files changed, 77 insertions(+) create mode 100644 SimFastTiming/FastTimingCommon/test/testBTLShape.cpp diff --git a/SimFastTiming/FastTimingCommon/test/BuildFile.xml b/SimFastTiming/FastTimingCommon/test/BuildFile.xml index 93c8000877b1b..fa121a85b0c0a 100644 --- a/SimFastTiming/FastTimingCommon/test/BuildFile.xml +++ b/SimFastTiming/FastTimingCommon/test/BuildFile.xml @@ -1,6 +1,10 @@ + + + + diff --git a/SimFastTiming/FastTimingCommon/test/testBTLShape.cpp b/SimFastTiming/FastTimingCommon/test/testBTLShape.cpp new file mode 100644 index 0000000000000..21dea544b97f0 --- /dev/null +++ b/SimFastTiming/FastTimingCommon/test/testBTLShape.cpp @@ -0,0 +1,73 @@ +#include "SimFastTiming/FastTimingCommon/interface/BTLPulseShape.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include +#include +#include + +#include "TROOT.h" +#include "TStyle.h" +#include "TH1F.h" +#include "TCanvas.h" +#include "TF1.h" + +int main() { + edm::MessageDrop::instance()->debugEnabled = false; + + const unsigned int histsiz(BTLPulseShape::k1NSecBinsTotal); + + // shape constants and input amplitude + + const double ReferencePulseNpe_ = 100.; + const double TimeThreshold1_ = 20.; + const double TimeThreshold2_ = 50.; + const double Npe_to_V_ = 0.0064; + + const BTLPulseShape theShape; + + const size_t nampli(5); + const std::array npe{{8000., 4000., 3500., 1000., 100.}}; + std::vector histVect; + + // standard display of the implemented shape function + const int csize = 500; + TCanvas* showShape = new TCanvas("showShape", "showShape", csize, 2 * csize); + + for (size_t index = 0; index < nampli; index++) { + const double scale = npe[index] / ReferencePulseNpe_; + const std::array tATt( + theShape.timeAtThr(scale, TimeThreshold1_ * Npe_to_V_, TimeThreshold2_ * Npe_to_V_)); + + TString name = "BTLShape_" + std::to_string(index); + histVect.emplace_back(new TH1F(name, "Tabulated BTL shape", histsiz, 0., (float)(histsiz))); + + std::cout << "Tabulated BTL shape, scale vs reference = " << std::fixed << std::setw(6) << std::setprecision(2) + << scale << " maximum at [" << std::fixed << std::setw(6) << std::setprecision(2) << theShape.indexOfMax() + << " ] = " << std::fixed << std::setw(6) << std::setprecision(2) << theShape.timeOfMax() << std::endl; + std::cout << "Time at thresholds:\n" + << std::fixed << std::setw(8) << std::setprecision(3) << TimeThreshold1_ * Npe_to_V_ << " --> " << tATt[0] + << "\n" + << std::fixed << std::setw(8) << std::setprecision(3) << TimeThreshold2_ * Npe_to_V_ << " --> " << tATt[1] + << "\n" + << std::fixed << std::setw(8) << std::setprecision(3) << TimeThreshold1_ * Npe_to_V_ << " --> " << tATt[2] + << "\n" + << std::endl; + + for (unsigned int i = 0; i <= histsiz; ++i) { + const double time((i + 0.5) / BTLPulseShape::kNBinsPerNSec); + const double myShape(theShape(time)); + histVect[index]->SetBinContent(i, myShape * scale); + histVect[index]->SetBinError(i, 0.001); + std::cout << " bin = " << std::fixed << std::setw(4) << i << " time (ns) = " << std::fixed << std::setw(6) + << std::setprecision(3) << time << " shape = " << std::setw(11) << std::setprecision(8) + << myShape * scale << std::endl; + } + + showShape->cd(); + histVect[index]->SetStats(kFALSE); + histVect[index]->Draw("SAME"); + } + + showShape->SaveAs("BTLShape.pdf"); + + return 0; +} From ce64e0a4583ff6d9660861d2cd83ea1355d6fd4c Mon Sep 17 00:00:00 2001 From: Eric Cano Date: Thu, 21 Dec 2023 11:44:38 +0100 Subject: [PATCH 156/281] Add support for shifted elements_with_stride loop in range for --- .../AlpakaInterface/interface/workdivision.h | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/HeterogeneousCore/AlpakaInterface/interface/workdivision.h b/HeterogeneousCore/AlpakaInterface/interface/workdivision.h index 220abe46b1925..0433980e7c6d6 100644 --- a/HeterogeneousCore/AlpakaInterface/interface/workdivision.h +++ b/HeterogeneousCore/AlpakaInterface/interface/workdivision.h @@ -86,6 +86,11 @@ namespace cms::alpakatools { }; /* elements_with_stride + * + * `elements_with_stride(acc, [first, ]extent)` returns an iteratable range that spans the element indices required to + * cover the given problem size: + * - `first` (optional) is index to the first element; if not specified, the loop starts from 0; + * - `extent` is the total size of the problem, including any elements that may come before `first`. */ template and alpaka::Dim::value == 1>> @@ -93,13 +98,19 @@ namespace cms::alpakatools { public: ALPAKA_FN_ACC inline elements_with_stride(TAcc const& acc) : elements_{alpaka::getWorkDiv(acc)[0u]}, - thread_{alpaka::getIdx(acc)[0u] * elements_}, + first_{alpaka::getIdx(acc)[0u] * elements_}, stride_{alpaka::getWorkDiv(acc)[0u] * elements_}, extent_{stride_} {} ALPAKA_FN_ACC inline elements_with_stride(TAcc const& acc, Idx extent) : elements_{alpaka::getWorkDiv(acc)[0u]}, - thread_{alpaka::getIdx(acc)[0u] * elements_}, + first_{alpaka::getIdx(acc)[0u] * elements_}, + stride_{alpaka::getWorkDiv(acc)[0u] * elements_}, + extent_{extent} {} + + ALPAKA_FN_ACC inline elements_with_stride(TAcc const& acc, Idx first, Idx extent) + : elements_{alpaka::getWorkDiv(acc)[0u]}, + first_{alpaka::getIdx(acc)[0u] * elements_ + first}, stride_{alpaka::getWorkDiv(acc)[0u] * elements_}, extent_{extent} {} @@ -164,13 +175,13 @@ namespace cms::alpakatools { Idx range_; }; - ALPAKA_FN_ACC inline iterator begin() const { return iterator(elements_, stride_, extent_, thread_); } + ALPAKA_FN_ACC inline iterator begin() const { return iterator(elements_, stride_, extent_, first_); } ALPAKA_FN_ACC inline iterator end() const { return iterator(elements_, stride_, extent_, extent_); } private: const Idx elements_; - const Idx thread_; + const Idx first_; const Idx stride_; const Idx extent_; }; From d5e466bc9428bdb2c33f8df1b6ddfb52dc220788 Mon Sep 17 00:00:00 2001 From: Andrea Bocci Date: Thu, 21 Dec 2023 12:08:33 +0100 Subject: [PATCH 157/281] Add tests for the shifted elements_with_stride --- .../test/alpaka/testKernel.dev.cc | 94 +++++++++++++++++++ 1 file changed, 94 insertions(+) diff --git a/HeterogeneousCore/AlpakaInterface/test/alpaka/testKernel.dev.cc b/HeterogeneousCore/AlpakaInterface/test/alpaka/testKernel.dev.cc index 300f139b0c6e3..a730e4b515a76 100644 --- a/HeterogeneousCore/AlpakaInterface/test/alpaka/testKernel.dev.cc +++ b/HeterogeneousCore/AlpakaInterface/test/alpaka/testKernel.dev.cc @@ -23,6 +23,20 @@ struct VectorAddKernel { } }; +struct VectorAddKernelSkip { + template + ALPAKA_FN_ACC void operator()(TAcc const& acc, + T const* __restrict__ in1, + T const* __restrict__ in2, + T* __restrict__ out, + size_t first, + size_t size) const { + for (auto index : cms::alpakatools::elements_with_stride(acc, first, size)) { + out[index] = in1[index] + in2[index]; + } + } +}; + struct VectorAddKernel1D { template ALPAKA_FN_ACC void operator()( @@ -224,6 +238,76 @@ void testVectorAddKernel(std::size_t problem_size, std::size_t grid_size, std::s } } +// test the 1-dimensional kernel on all devices, potentially skipping some elements +template +void testVectorAddKernelSkip(std::size_t skip_elements, + std::size_t problem_size, + std::size_t grid_size, + std::size_t block_size, + TKernel kernel) { + // random number generator with a gaussian distribution + std::random_device rd{}; + std::default_random_engine rand{rd()}; + std::normal_distribution dist{0., 1.}; + + // tolerance + constexpr float epsilon = 0.000001; + + // buffer size + const size_t size = problem_size; + + // allocate input and output host buffers in pinned memory accessible by the Platform devices + auto in1_h = cms::alpakatools::make_host_buffer(size); + auto in2_h = cms::alpakatools::make_host_buffer(size); + auto out_h = cms::alpakatools::make_host_buffer(size); + + // fill the input buffers with random data, and the output buffer with zeros + for (size_t i = 0; i < size; ++i) { + in1_h[i] = dist(rand); + in2_h[i] = dist(rand); + out_h[i] = 0.; + } + + // run the test on each device + for (auto const& device : cms::alpakatools::devices()) { + std::cout << "Test 1D vector addition on " << alpaka::getName(device) << " skipping " << skip_elements << " over " + << problem_size << " values with " << grid_size << " blocks of " << block_size << " elements\n"; + auto queue = Queue(device); + + // allocate input and output buffers on the device + auto in1_d = cms::alpakatools::make_device_buffer(queue, size); + auto in2_d = cms::alpakatools::make_device_buffer(queue, size); + auto out_d = cms::alpakatools::make_device_buffer(queue, size); + + // copy the input data to the device; the size is known from the buffer objects + alpaka::memcpy(queue, in1_d, in1_h); + alpaka::memcpy(queue, in2_d, in2_h); + + // fill the output buffer with zeros; the size is known from the buffer objects + alpaka::memset(queue, out_d, 0.); + + // launch the 1-dimensional kernel with scalar size + auto div = cms::alpakatools::make_workdiv(grid_size, block_size); + alpaka::exec(queue, div, kernel, in1_d.data(), in2_d.data(), out_d.data(), skip_elements, size); + + // copy the results from the device to the host + alpaka::memcpy(queue, out_h, out_d); + + // wait for all the operations to complete + alpaka::wait(queue); + + // check the results + for (size_t i = 0; i < skip_elements; ++i) { + REQUIRE(out_h[i] == 0); + } + for (size_t i = skip_elements; i < size; ++i) { + float sum = in1_h[i] + in2_h[i]; + REQUIRE(out_h[i] < sum + epsilon); + REQUIRE(out_h[i] > sum - epsilon); + } + } +} + // test the N-dimensional kernels on all devices template void testVectorAddKernelND(Vec problem_size, Vec grid_size, Vec block_size, TKernel kernel) { @@ -367,5 +451,15 @@ TEST_CASE("Test alpaka kernels for the " EDM_STRINGIZE(ALPAKA_ACCELERATOR_NAMESP // this relies on the kernel to check the size of the "problem space" and avoid accessing out-of-bounds data std::cout << "Test 1D vector block-level serial addition with large block size, using scalar dimensions\n"; testVectorAddKernel(100, 1, 1024, VectorAddKernelBlockSerial{}); + + // launch the 1-dimensional kernel with a small block size and a small number of blocks; + // this relies on the kernel to loop over the "problem space" and do more work per block + std::cout << "Test 1D vector addition with small block size, using scalar dimensions\n"; + testVectorAddKernelSkip(20, 10000, 32, 32, VectorAddKernelSkip{}); + + // launch the 1-dimensional kernel with a large block size and a single block; + // this relies on the kernel to check the size of the "problem space" and avoid accessing out-of-bounds data + std::cout << "Test 1D vector addition with large block size, using scalar dimensions\n"; + testVectorAddKernelSkip(20, 100, 1, 1024, VectorAddKernelSkip{}); } } From 369608cdf81b8ef698c32f16c4795ca4f1be2a52 Mon Sep 17 00:00:00 2001 From: Jaime Leon Date: Thu, 21 Dec 2023 13:41:26 +0100 Subject: [PATCH 158/281] Added new triplejet and muondoublejet Ov.Rm. filter to be used in the PNet transition --- HLTrigger/HLTfilters/plugins/plugins.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/HLTrigger/HLTfilters/plugins/plugins.cc b/HLTrigger/HLTfilters/plugins/plugins.cc index 4fc9c1c75cc95..c1b7f2fe695bc 100644 --- a/HLTrigger/HLTfilters/plugins/plugins.cc +++ b/HLTrigger/HLTfilters/plugins/plugins.cc @@ -130,6 +130,8 @@ typedef HLTDoublet HLT2PhotonPFMET; #include "HLTDoubletSinglet.h" typedef HLTDoubletSinglet HLT3DoublePFTauPFJet; typedef HLTDoubletSinglet HLT3MuonPFTauPFJet; +typedef HLTDoubletSinglet HLT3TriplePFJet; +typedef HLTDoubletSinglet HLT3MuonDoublePFJet; typedef HLTDoubletSinglet HLT3DoublePFJetPhoton; DEFINE_FWK_MODULE(HLTBool); @@ -163,6 +165,8 @@ DEFINE_FWK_MODULE(HLT2PFTauPFTau); DEFINE_FWK_MODULE(HLT3DoublePFTauPFJet); DEFINE_FWK_MODULE(HLT3MuonPFTauPFJet); +DEFINE_FWK_MODULE(HLT3TriplePFJet); +DEFINE_FWK_MODULE(HLT3MuonDoublePFJet); DEFINE_FWK_MODULE(HLT3DoublePFJetPhoton); DEFINE_FWK_MODULE(HLT1Electron); From 2bab42adf406e92c65d9102b5bef036142759204 Mon Sep 17 00:00:00 2001 From: Braden Date: Thu, 21 Dec 2023 19:04:24 +0100 Subject: [PATCH 159/281] Added new filter type HLT2MuonPFJet to plugins for ETau Pnet HLT path --- HLTrigger/HLTfilters/plugins/plugins.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/HLTrigger/HLTfilters/plugins/plugins.cc b/HLTrigger/HLTfilters/plugins/plugins.cc index 4fc9c1c75cc95..976dacd59efef 100644 --- a/HLTrigger/HLTfilters/plugins/plugins.cc +++ b/HLTrigger/HLTfilters/plugins/plugins.cc @@ -114,6 +114,7 @@ typedef HLTDoublet HLT2ElectronHLTTau; typedef HLTDoublet HLT2MuonHLTTau; typedef HLTDoublet HLT2ElectronPFTau; typedef HLTDoublet HLT2PhotonPFTau; +typedef HLTDoublet HLT2PhotonPFJet; typedef HLTDoublet HLT2MuonPFTau; typedef HLTDoublet HLT2ElectronPFJet; typedef HLTDoublet HLT2MuonPFJet; @@ -148,6 +149,7 @@ DEFINE_FWK_MODULE(HLT2PhotonTau); DEFINE_FWK_MODULE(HLT2MuonTau); DEFINE_FWK_MODULE(HLT2ElectronPFTau); DEFINE_FWK_MODULE(HLT2PhotonPFTau); +DEFINE_FWK_MODULE(HLT2PhotonPFJet); DEFINE_FWK_MODULE(HLT2MuonPFTau); DEFINE_FWK_MODULE(HLT2ElectronPFJet); DEFINE_FWK_MODULE(HLT2MuonPFJet); From 06a002f2e6529231f9d4ec65d7b16af5c42bf9f7 Mon Sep 17 00:00:00 2001 From: Breno Orzari Date: Thu, 21 Sep 2023 18:54:55 +0200 Subject: [PATCH 160/281] Adding short track resolution to DQM tracking sequence Co-authored-by: mmusich --- .../plugins/ShortenedTrackResolution.cc | 130 +++++++++++ .../python/TrackingSourceConfig_Tier0_cff.py | 4 + .../python/shortTrackResolution_cff.py | 65 ++++++ .../plugins/SingleLongTrackProducer.cc | 217 ++++++++++++++++++ .../plugins/TrackerTrackHitFilter.cc | 87 ++++++- .../python/SingleLongTrackProducer_cfi.py | 16 ++ 6 files changed, 518 insertions(+), 1 deletion(-) create mode 100644 DQM/TrackingMonitorSource/plugins/ShortenedTrackResolution.cc create mode 100644 DQM/TrackingMonitorSource/python/shortTrackResolution_cff.py create mode 100644 RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc create mode 100644 RecoTracker/FinalTrackSelectors/python/SingleLongTrackProducer_cfi.py diff --git a/DQM/TrackingMonitorSource/plugins/ShortenedTrackResolution.cc b/DQM/TrackingMonitorSource/plugins/ShortenedTrackResolution.cc new file mode 100644 index 0000000000000..cfdc15789c633 --- /dev/null +++ b/DQM/TrackingMonitorSource/plugins/ShortenedTrackResolution.cc @@ -0,0 +1,130 @@ +// user includes +#include "DQMServices/Core/interface/DQMEDAnalyzer.h" +#include "DQMServices/Core/interface/DQMStore.h" +#include "DQMServices/Core/interface/MonitorElement.h" +#include "DataFormats/TrackReco/interface/Track.h" +#include "DataFormats/VertexReco/interface/Vertex.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/Utilities/interface/transform.h" // for edm::vector_transform + +// ROOT includes +#include "TLorentzVector.h" + +class ShortenedTrackResolution : public DQMEDAnalyzer { +public: + ShortenedTrackResolution(const edm::ParameterSet &); + static void fillDescriptions(edm::ConfigurationDescriptions &descriptions); + +protected: + void analyze(edm::Event const &iEvent, edm::EventSetup const &iSetup) override; + void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override; + +private: + const std::string folderName_; + const std::vector hitsRemain_; + const double minTracksEta_; + const double maxTracksEta_; + const double minTracksPt_; + const double maxTracksPt_; + + const double maxDr_; + const edm::InputTag tracksTag_; + const std::vector tracksRerecoTag_; + const edm::EDGetTokenT> tracksToken_; + const std::vector>> tracksRerecoToken_; + + std::vector histsPtAll_; +}; + +// ----------------------------- +// constructors and destructor +// ----------------------------- +ShortenedTrackResolution::ShortenedTrackResolution(const edm::ParameterSet &ps) + : folderName_(ps.getUntrackedParameter("folderName", "TrackRefitting")), + hitsRemain_(ps.getUntrackedParameter>("hitsRemainInput")), + minTracksEta_(ps.getUntrackedParameter("minTracksEtaInput", 0.0)), + maxTracksEta_(ps.getUntrackedParameter("maxTracksEtaInput", 2.2)), + minTracksPt_(ps.getUntrackedParameter("minTracksPtInput", 15.0)), + maxTracksPt_(ps.getUntrackedParameter("maxTracksPtInput", 99999.9)), + maxDr_(ps.getUntrackedParameter("maxDrInput", 0.01)), + tracksTag_(ps.getUntrackedParameter("tracksInputTag", edm::InputTag("generalTracks", "", "DQM"))), + tracksRerecoTag_(ps.getUntrackedParameter>("tracksRerecoInputTag")), + tracksToken_(consumes>(tracksTag_)), + tracksRerecoToken_(edm::vector_transform( + tracksRerecoTag_, [this](edm::InputTag const &tag) { return consumes>(tag); })) { + histsPtAll_.clear(); +} + +//__________________________________________________________________________________ +void ShortenedTrackResolution::bookHistograms(DQMStore::IBooker &iBook, + edm::Run const &iRun, + edm::EventSetup const &iSetup) { + std::string currentFolder = folderName_ + "/"; + iBook.setCurrentFolder(currentFolder); + + for (int i = 0; i < int(hitsRemain_.size()); ++i) { + histsPtAll_.push_back(iBook.book1D( + "trackPt" + hitsRemain_[i] + "lAllPt", "Track p_{T} - " + hitsRemain_[i] + " layers", 41, 0.0, 2.0)); + } +} + +//__________________________________________________________________________________ +void ShortenedTrackResolution::analyze(edm::Event const &iEvent, edm::EventSetup const &iSetup) { + const auto &tracks = iEvent.getHandle(tracksToken_); + + if (!tracks.isValid()) { + edm::LogError("ShortenedTrackResolution") << "Missing input track collection " << tracksTag_.encode() << std::endl; + return; + } + + for (const auto &track : *tracks) { + const reco::HitPattern &hp = track.hitPattern(); + if (int(int(hp.numberOfValidHits()) - int(hp.numberOfAllHits(reco::HitPattern::TRACK_HITS))) != 0) { + break; + } + + TLorentzVector tvec; + tvec.SetPtEtaPhiM(track.pt(), track.eta(), track.phi(), 0.0); + + int i = 0; // token index + for (const auto &token : tracksRerecoToken_) { + const auto &tracks_rereco = iEvent.getHandle(token); + + for (const auto &track_rereco : *tracks_rereco) { + TLorentzVector trerecovec; + trerecovec.SetPtEtaPhiM(track_rereco.pt(), track_rereco.eta(), track_rereco.phi(), 0.0); + double deltaR = tvec.DeltaR(trerecovec); + + if (deltaR < maxDr_) { + if (track_rereco.pt() >= minTracksPt_ && track_rereco.pt() <= maxTracksPt_ && + std::abs(track_rereco.eta()) >= minTracksEta_ && std::abs(track_rereco.eta()) <= maxTracksEta_) { + histsPtAll_[i]->Fill(1.0 * track_rereco.pt() / track.pt()); + } + } + } + ++i; + } + } +} + +//__________________________________________________________________________________ +void ShortenedTrackResolution::fillDescriptions(edm::ConfigurationDescriptions &descriptions) { + edm::ParameterSetDescription desc; + desc.addUntracked("folderName", "TrackRefitting"); + desc.addUntracked>("hitsRemainInput", {}); + desc.addUntracked("minTracksEtaInput", 0.0); + desc.addUntracked("maxTracksEtaInput", 2.2); + desc.addUntracked("minTracksPtInput", 15.0); + desc.addUntracked("maxTracksPtInput", 99999.9); + desc.addUntracked("maxDrInput", 0.01); + desc.addUntracked("tracksInputTag", edm::InputTag("generalTracks", "", "DQM")); + desc.addUntracked>("tracksRerecoInputTag", {}); + descriptions.addWithDefaultLabel(desc); +} + +// Define this as a plug-in +#include "FWCore/Framework/interface/MakerMacros.h" +DEFINE_FWK_MODULE(ShortenedTrackResolution); diff --git a/DQM/TrackingMonitorSource/python/TrackingSourceConfig_Tier0_cff.py b/DQM/TrackingMonitorSource/python/TrackingSourceConfig_Tier0_cff.py index 02d3da248a109..faef9e465b492 100644 --- a/DQM/TrackingMonitorSource/python/TrackingSourceConfig_Tier0_cff.py +++ b/DQM/TrackingMonitorSource/python/TrackingSourceConfig_Tier0_cff.py @@ -397,6 +397,8 @@ def _copyIfExists(mod, pset, name): TrackingDQMSourceTier0 += TrackSeedMonSequence +from DQM.TrackingMonitorSource.shortTrackResolution_cff import * + # MessageLog for module in selectedModules : label = str(module)+'LogMessageMonCommon' @@ -404,6 +406,7 @@ def _copyIfExists(mod, pset, name): TrackingDQMSourceTier0 += voMonitoringSequence TrackingDQMSourceTier0 += voWcutMonitoringSequence TrackingDQMSourceTier0 += primaryVertexResolution +TrackingDQMSourceTier0 += shortTrackResolution3to8 TrackingDQMSourceTier0 += dqmInfoTracking @@ -426,6 +429,7 @@ def _copyIfExists(mod, pset, name): TrackingDQMSourceTier0Common += voMonitoringCommonSequence TrackingDQMSourceTier0Common += voWcutMonitoringCommonSequence TrackingDQMSourceTier0Common += primaryVertexResolution +TrackingDQMSourceTier0Common += shortTrackResolution3to8 TrackingDQMSourceTier0Common += dqmInfoTracking TrackingDQMSourceTier0MinBias = cms.Sequence(cms.ignore(trackingDQMgoodOfflinePrimaryVertices)) diff --git a/DQM/TrackingMonitorSource/python/shortTrackResolution_cff.py b/DQM/TrackingMonitorSource/python/shortTrackResolution_cff.py new file mode 100644 index 0000000000000..7c7047c6bfa75 --- /dev/null +++ b/DQM/TrackingMonitorSource/python/shortTrackResolution_cff.py @@ -0,0 +1,65 @@ +import FWCore.ParameterSet.Config as cms +from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer + +from RecoTracker.FinalTrackSelectors.SingleLongTrackProducer_cfi import * + +from RecoTracker.FinalTrackSelectors.trackerTrackHitFilter_cfi import trackerTrackHitFilter as _trackerTrackHitFilter +TrackerTrackHitFilter = _trackerTrackHitFilter.clone(src = "SingleLongTrackProducer", + truncateTracks = True, + replaceWithInactiveHits = True, + rejectBadStoNHits = True, + usePixelQualityFlag = True) + +TrackerTrackHitFilter3 = TrackerTrackHitFilter.clone(minimumHits = 3, + layersRemaining = 3) + +TrackerTrackHitFilter4 = TrackerTrackHitFilter.clone(minimumHits = 4, + layersRemaining = 4) + +TrackerTrackHitFilter5 = TrackerTrackHitFilter.clone(minimumHits = 5, + layersRemaining = 5) + +TrackerTrackHitFilter6 = TrackerTrackHitFilter.clone(minimumHits = 6, + layersRemaining = 6) + +TrackerTrackHitFilter7 = TrackerTrackHitFilter.clone(minimumHits = 7, + layersRemaining = 7) + +TrackerTrackHitFilter8 = TrackerTrackHitFilter.clone(minimumHits = 8, + layersRemaining = 8) + +import RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cff +HitFilteredTracks = RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cff.ctfWithMaterialTracks.clone(src = 'TrackerTrackHitFilter') + +HitFilteredTracks3 = HitFilteredTracks.clone(src = 'TrackerTrackHitFilter3') +HitFilteredTracks4 = HitFilteredTracks.clone(src = 'TrackerTrackHitFilter4') +HitFilteredTracks5 = HitFilteredTracks.clone(src = 'TrackerTrackHitFilter5') +HitFilteredTracks6 = HitFilteredTracks.clone(src = 'TrackerTrackHitFilter6') +HitFilteredTracks7 = HitFilteredTracks.clone(src = 'TrackerTrackHitFilter7') +HitFilteredTracks8 = HitFilteredTracks.clone(src = 'TrackerTrackHitFilter8') + +from DQM.TrackingMonitorSource.shortenedTrackResolution_cfi import shortenedTrackResolution as _shortenedTrackResolution +trackingResolution = _shortenedTrackResolution.clone(folderName = "Tracking/ShortTrackResolution", + hitsRemainInput = ["3","4","5","6","7","8"], + minTracksEtaInput = 0.0, + maxTracksEtaInput = 2.2, + minTracksPtInput = 15.0, + maxTracksPtInput = 99999.9, + maxDrInput = 0.01, + tracksInputTag = "SingleLongTrackProducer", + tracksRerecoInputTag = ["HitFilteredTracks3","HitFilteredTracks4","HitFilteredTracks5","HitFilteredTracks6","HitFilteredTracks7","HitFilteredTracks8"]) + +shortTrackResolution3to8 = cms.Sequence(SingleLongTrackProducer * + TrackerTrackHitFilter3 * + TrackerTrackHitFilter4 * + TrackerTrackHitFilter5 * + TrackerTrackHitFilter6 * + TrackerTrackHitFilter7 * + TrackerTrackHitFilter8 * + HitFilteredTracks3 * + HitFilteredTracks4 * + HitFilteredTracks5 * + HitFilteredTracks6 * + HitFilteredTracks7 * + HitFilteredTracks8 * + trackingResolution) diff --git a/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc b/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc new file mode 100644 index 0000000000000..7af6c8c97145b --- /dev/null +++ b/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc @@ -0,0 +1,217 @@ +// user includes +#include "DataFormats/MuonReco/interface/Muon.h" +#include "DataFormats/TrackReco/interface/Track.h" +#include "DataFormats/VertexReco/interface/Vertex.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" + +// ROOT includes +#include "TLorentzVector.h" + +class SingleLongTrackProducer : public edm::stream::EDProducer<> { +public: + explicit SingleLongTrackProducer(const edm::ParameterSet &); + ~SingleLongTrackProducer() override = default; + + static void fillDescriptions(edm::ConfigurationDescriptions &descriptions); + +private: + void produce(edm::Event &, const edm::EventSetup &) override; + + const edm::EDGetTokenT> tracksToken; + const edm::EDGetTokenT> muonsToken; + const edm::EDGetTokenT PrimVtxToken; + + const int minNumberOfLayers; + const double matchInDr; + const bool onlyValidHits; + const bool debug; + const double minPt; + const double maxEta; + const double maxDxy; + const double maxDz; +}; + +SingleLongTrackProducer::SingleLongTrackProducer(const edm::ParameterSet &iConfig) + : tracksToken{consumes(iConfig.getParameter("allTracks"))}, + muonsToken{consumes>(iConfig.getParameter("matchMuons"))}, + PrimVtxToken{consumes(iConfig.getParameter("PrimaryVertex"))}, + minNumberOfLayers{iConfig.getParameter("minNumberOfLayers")}, + matchInDr{iConfig.getParameter("requiredDr")}, + onlyValidHits{iConfig.getParameter("onlyValidHits")}, + debug{iConfig.getParameter("debug")}, + minPt{iConfig.getParameter("minPt")}, + maxEta{iConfig.getParameter("maxEta")}, + maxDxy{iConfig.getParameter("maxDxy")}, + maxDz{iConfig.getParameter("maxDz")} { + produces("").setBranchAlias(""); +} + +void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup &iSetup) { + using namespace edm; + + // register input collections: + const auto &tracks = iEvent.getHandle(tracksToken); + const auto &muons = iEvent.getHandle(muonsToken); + + const auto &vtx_h = iEvent.getHandle(PrimVtxToken); + const reco::Vertex vtx = vtx_h->at(0); + + // register output collection: + std::unique_ptr goodTracks(new reco::TrackCollection); + + // Preselection of long quality tracks + std::vector selTracks; + reco::Track bestTrack; + unsigned int tMuon = 0; + double fitProb = 100; + + for (const auto &track : *tracks) { + const reco::HitPattern &hitpattern = track.hitPattern(); + double dRmin = 10; + double chiNdof = track.normalizedChi2(); + double dxy = std::abs(track.dxy(vtx.position())); + double dz = std::abs(track.dz(vtx.position())); + + if (track.pt() < minPt) + continue; + + if (abs(track.eta()) > maxEta) + continue; + + if (hitpattern.trackerLayersWithMeasurement() < minNumberOfLayers) + continue; + + TLorentzVector pTrack(track.px(), track.py(), track.pz(), track.pt()); + + // Long track needs to be close to a good muon + for (const auto &m : *muons) { + if (m.isTrackerMuon()) { + tMuon++; + reco::Track matchedTrack = *(m.innerTrack()); + TLorentzVector pMatched(matchedTrack.px(), matchedTrack.py(), matchedTrack.pz(), matchedTrack.pt()); + // match to general track in deltaR + double dr = pTrack.DeltaR(pMatched); + if (dr < dRmin) + dRmin = dr; + } + } + + if (dRmin >= matchInDr) + continue; + // do vertex consistency: + bool vertex_match = dxy < maxDxy && dz < maxDz; + if (!(vertex_match)) + continue; + if (track.validFraction() < 1.0) + continue; + // only save the track with the smallest chiNdof + if (chiNdof < fitProb) { + fitProb = chiNdof; + bestTrack = track; + bestTrack.setExtra(track.extra()); + } + if (debug) + edm::LogPrint("SingleLongTrackProducer") << " deltaR (general) track to matched Track: " << dRmin << std::endl; + if (debug) + edm::LogPrint("SingleLongTrackProducer") << "chi2Ndof:" << chiNdof << " best Track: " << fitProb << std::endl; + } + + selTracks.push_back(bestTrack); + + if (debug) + edm::LogPrint("SingleLongTrackProducer") << " number of Tracker Muons: " << tMuon << ", thereof " + << selTracks.size() << " tracks passed preselection." << std::endl; + + // check hits validity in preselected tracks + bool hitIsNotValid{false}; + + for (const auto &track : selTracks) { + reco::HitPattern hitpattern = track.hitPattern(); + int deref{0}; + + // this checks track recHits + try { // (Un)Comment this line with /* to (not) allow for events with not valid hits + auto hb = track.recHitsBegin(); + + for (unsigned int h = 0; h < track.recHitsSize(); h++) { + auto recHit = *(hb + h); + auto const &hit = *recHit; + + if (onlyValidHits && !hit.isValid()) { + hitIsNotValid = true; + continue; + } + } + } catch (cms::Exception const &e) { + deref += 1; + if (debug) + std::cerr << e.explainSelf() << std::endl; + } + + if (hitIsNotValid == true) + break; // (Un)Comment this line with */ to (not) allow for events with not valid hits + + int deref2{0}; + + // this checks track hitPattern hits + try { + auto hb = track.recHitsBegin(); + + for (unsigned int h = 0; h < track.recHitsSize(); h++) { + uint32_t pHit = hitpattern.getHitPattern(reco::HitPattern::TRACK_HITS, h); + + auto recHit = *(hb + h); + auto const &hit = *recHit; + + if (onlyValidHits && !hit.isValid()) { + if (debug) + edm::LogPrint("SingleLongTrackProducer") << "hit not valid: " << h << std::endl; + continue; + } + + // loop over the hits of the track. + if (onlyValidHits && !(hitpattern.validHitFilter(pHit))) { + if (debug) + edm::LogPrint("SingleLongTrackProducer") << "hit not valid: " << h << std::endl; + continue; + } + } + goodTracks->push_back(track); + } catch (cms::Exception const &e) { + deref2 += 1; + if (debug) + std::cerr << e.explainSelf() << std::endl; + } + + if (debug) + edm::LogPrint("SingleLongTrackProducer") + << "found tracks with " << deref << "missing valid hits and " << deref2 << " missing hit pattern"; + } + + // save track collection in event: + iEvent.put(std::move(goodTracks), ""); +} + +void SingleLongTrackProducer::fillDescriptions(edm::ConfigurationDescriptions &descriptions) { + edm::ParameterSetDescription desc; + desc.add("allTracks", edm::InputTag("generalTracks")); + desc.add("matchMuons", edm::InputTag("muons")); + desc.add("PrimaryVertex", edm::InputTag("offlinePrimaryVertices")); + desc.add("minNumberOfLayers", 10); + desc.add("requiredDr", 0.01); + desc.add("onlyValidHits", true); + desc.add("debug", false); + desc.add("minPt", 15.0); + desc.add("maxEta", 2.2); + desc.add("maxDxy", 0.02); + desc.add("maxDz", 0.5); + descriptions.addWithDefaultLabel(desc); +} + +#include "FWCore/Framework/interface/MakerMacros.h" +DEFINE_FWK_MODULE(SingleLongTrackProducer); diff --git a/RecoTracker/FinalTrackSelectors/plugins/TrackerTrackHitFilter.cc b/RecoTracker/FinalTrackSelectors/plugins/TrackerTrackHitFilter.cc index c6341cd9d19a2..c03ecb6c92ebb 100644 --- a/RecoTracker/FinalTrackSelectors/plugins/TrackerTrackHitFilter.cc +++ b/RecoTracker/FinalTrackSelectors/plugins/TrackerTrackHitFilter.cc @@ -62,6 +62,9 @@ * minimumHits = Minimum hits that the output TrackCandidate must have to be saved * replaceWithInactiveHits = instead of discarding hits, replace them with a invalid "inactive" hits, * so multiple scattering is accounted for correctly. + * truncateTracks = determines if recHits collection is to be truncated to provide tracks with + * layersRemaining number of layers after refitting + * layersRemaining = number of tracker layers with measurement remaining after truncating track * stripFrontInvalidHits = strip invalid hits at the beginning of the track * stripBackInvalidHits = strip invalid hits at the end of the track * stripAllInvalidHits = remove ALL invald hits (might be a problem for multiple scattering, use with care!) @@ -87,6 +90,8 @@ namespace reco { const Trajectory *itt, std::vector &hits); void produceFromTrack(const edm::EventSetup &iSetup, const Track *itt, std::vector &hits); + unsigned int getSequLayer(const reco::Track &tk, unsigned int prevSequLayers, std::vector isNotValidVec); + bool isFirstValidHitInLayer(const reco::Track &tk, std::vector isNotValidVec); static void fillDescriptions(edm::ConfigurationDescriptions &descriptions); @@ -125,6 +130,9 @@ namespace reco { size_t minimumHits_; + unsigned int layersRemaining_; + bool truncateTracks_; + bool replaceWithInactiveHits_; bool stripFrontInvalidHits_; bool stripBackInvalidHits_; @@ -301,6 +309,8 @@ namespace reco { TrackerTrackHitFilter::TrackerTrackHitFilter(const edm::ParameterSet &iConfig) : src_(iConfig.getParameter("src")), minimumHits_(iConfig.getParameter("minimumHits")), + layersRemaining_(iConfig.getParameter("layersRemaining")), + truncateTracks_(iConfig.getParameter("truncateTracks")), replaceWithInactiveHits_(iConfig.getParameter("replaceWithInactiveHits")), stripFrontInvalidHits_(iConfig.getParameter("stripFrontInvalidHits")), stripBackInvalidHits_(iConfig.getParameter("stripBackInvalidHits")), @@ -561,6 +571,54 @@ namespace reco { iEvent.put(std::move(output)); } + bool TrackerTrackHitFilter::isFirstValidHitInLayer(const reco::Track &tk, std::vector isNotValidVec) { + reco::HitPattern hp = tk.hitPattern(); + + int vecSize = static_cast(isNotValidVec.size()); + // If hit is not valid, it will not count as a tracker layer with measurement -> don't increase sequLayers + if (isNotValidVec[vecSize - 1]) + return false; + + // If very first valid layer -> increase sequLayers + if (vecSize == 1) + return true; + + uint32_t pHit = hp.getHitPattern(reco::HitPattern::TRACK_HITS, vecSize - 1); + uint32_t thisLayer = hp.getLayer(pHit); + uint32_t thisSubStruct = hp.getSubStructure(pHit); + + // This loop compares the previous hits substructure and layer with current hit. If hits in the same layer + // and substructure and previous hit is valid, skip layer. If previous hit is not valid, even if in same layer + // and substructure, check the previous previous hit. Repeat process for every previous hit until reaching + // a valid hit or different layer/substructure + for (int j = 0; j < vecSize; ++j) { + if (vecSize > (j + 1)) { + uint32_t nHit = hp.getHitPattern(reco::HitPattern::TRACK_HITS, vecSize - (j + 2)); + uint32_t prevLayer = hp.getLayer(nHit); + uint32_t prevSubStruct = hp.getSubStructure(nHit); + if ((thisLayer == prevLayer) && (thisSubStruct == prevSubStruct)) { + if (isNotValidVec[vecSize - (j + 2)] == false) { + return false; + } + } else { + return true; + } + } else { + return true; + } + } + return false; + } + + unsigned int TrackerTrackHitFilter::getSequLayer(const reco::Track &tk, + unsigned int prevSequLayers, + std::vector isNotValidVec) { + unsigned int sequLayers = 0; + sequLayers = isFirstValidHitInLayer(tk, isNotValidVec) ? prevSequLayers + 1 : prevSequLayers; + + return sequLayers; + } + TrackCandidate TrackerTrackHitFilter::makeCandidate(const reco::Track &tk, std::vector::iterator hitsBegin, std::vector::iterator hitsEnd) { @@ -586,8 +644,29 @@ namespace reco { TrajectorySeed seed(state, TrackCandidate::RecHitContainer(), pdir); TrackCandidate::RecHitContainer ownHits; ownHits.reserve(hitsEnd - hitsBegin); + const reco::HitPattern &hp = tk.hitPattern(); + unsigned int sequLayers = 0; + std::vector isNotValidVec; + isNotValidVec.clear(); + bool breakHitLoop = false; + if (int(int(hp.numberOfValidHits()) - int(hp.numberOfAllHits(reco::HitPattern::TRACK_HITS))) != 0) { + breakHitLoop = true; + } for (; hitsBegin != hitsEnd; ++hitsBegin) { - //if(! (*hitsBegin)->isValid() ) std::cout<<"Putting in the trackcandidate an INVALID HIT !"<isValid()) { + isNotValidVec.push_back(true); + } else { + isNotValidVec.push_back(false); + } + sequLayers = getSequLayer(tk, sequLayers, isNotValidVec); + if (sequLayers > layersRemaining_) + break; + } ownHits.push_back(*hitsBegin); } @@ -1040,6 +1119,12 @@ namespace reco { ->setComment( " instead of removing hits replace them with inactive hits, so you still consider the multiple " "scattering"); + desc.add("truncateTracks", false) + ->setComment( + "determines if recHits collection is to be truncated to provide tracks with layersRemaining number of " + "layers after refitting"); + desc.add("layersRemaining", 8) + ->setComment("number of tracker layers with measurement remaining after truncating track"); desc.add("stripFrontInvalidHits", false) ->setComment("strip invalid & inactive hits from any end of the track"); desc.add("stripBackInvalidHits", false) diff --git a/RecoTracker/FinalTrackSelectors/python/SingleLongTrackProducer_cfi.py b/RecoTracker/FinalTrackSelectors/python/SingleLongTrackProducer_cfi.py new file mode 100644 index 0000000000000..181a536038cfe --- /dev/null +++ b/RecoTracker/FinalTrackSelectors/python/SingleLongTrackProducer_cfi.py @@ -0,0 +1,16 @@ +import FWCore.ParameterSet.Config as cms + +from RecoTracker.FinalTrackSelectors.singleLongTrackProducer_cfi import singleLongTrackProducer + +SingleLongTrackProducer = singleLongTrackProducer.clone( + allTracks = "generalTracks", + matchMuons = "muons", + requiredDr= 0.01, + minNumberOfLayers = 10, + onlyValidHits = True, + debug = False, + minPt = 15.0, + maxEta = 2.2, + maxDxy = 0.02, + maxDz = 0.5, + PrimaryVertex = "offlinePrimaryVertices") From 75562ebd46fc08bbd89647642751ad2aa1262b62 Mon Sep 17 00:00:00 2001 From: Chris Jones Date: Thu, 21 Dec 2023 09:48:16 -0600 Subject: [PATCH 161/281] Handle negative lumiSectionInterval_ in StreamerOutputModuleCommon Avoid potential uninitialized value by handling negative values of lumiSectionInterval_ by using abs. This fixes a possible uninitialized value warning in gcc. --- IOPool/Streamer/src/StreamerOutputModuleCommon.cc | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/IOPool/Streamer/src/StreamerOutputModuleCommon.cc b/IOPool/Streamer/src/StreamerOutputModuleCommon.cc index 76ae5e72ed480..bc79452fcc75e 100644 --- a/IOPool/Streamer/src/StreamerOutputModuleCommon.cc +++ b/IOPool/Streamer/src/StreamerOutputModuleCommon.cc @@ -227,18 +227,15 @@ namespace edm { std::vector hltbits; setHltMask(e, triggerResults, hltbits); - uint32 lumi; - if (lumiSectionInterval_ == 0) { - lumi = e.luminosityBlock(); - } else { + uint32 lumi = e.luminosityBlock(); + if (lumiSectionInterval_ != 0) { struct timeval now; struct timezone dummyTZ; gettimeofday(&now, &dummyTZ); double timeInSec = static_cast(now.tv_sec) + (static_cast(now.tv_usec) / 1000000.0) - timeInSecSinceUTC; // what about overflows? - if (lumiSectionInterval_ > 0) - lumi = static_cast(timeInSec / lumiSectionInterval_) + 1; + lumi = static_cast(timeInSec / std::abs(lumiSectionInterval_)) + 1; } serializer_.serializeEvent(sbuf, e, selectorCfg, compressionAlgo_, compressionLevel_, reserve_size); From ae78e0494a1346009542598d72f9ded2e865861c Mon Sep 17 00:00:00 2001 From: Andrea Bocci Date: Thu, 21 Dec 2023 23:43:17 +0100 Subject: [PATCH 162/281] Improve the description of the range-loop types --- .../AlpakaInterface/interface/workdivision.h | 37 ++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/HeterogeneousCore/AlpakaInterface/interface/workdivision.h b/HeterogeneousCore/AlpakaInterface/interface/workdivision.h index 0433980e7c6d6..f924ce4c7e863 100644 --- a/HeterogeneousCore/AlpakaInterface/interface/workdivision.h +++ b/HeterogeneousCore/AlpakaInterface/interface/workdivision.h @@ -91,6 +91,24 @@ namespace cms::alpakatools { * cover the given problem size: * - `first` (optional) is index to the first element; if not specified, the loop starts from 0; * - `extent` is the total size of the problem, including any elements that may come before `first`. + * + * To cover the problem space, different threads may execute a different number of iterations. As a result, it is not + * safe to call alpaka::syncBlockThreads() within this loop. If a block synchronisation is needed, one should split + * the loop into an outer loop on the blocks and an inner loop on the threads, and call the syncronisation only in the + * outer loop: + * + * for (auto group : uniform_groups(acc, extent) { + * for (auto element : uniform_group_elements(acc, group, extent) { + * // no synchronisations here + * ... + * } + * alpaka::syncBlockThreads(); + * for (auto element : uniform_group_elements(acc, group, extent) { + * // no synchronisations here + * ... + * } + * alpaka::syncBlockThreads(); + * } */ template and alpaka::Dim::value == 1>> @@ -438,6 +456,10 @@ namespace cms::alpakatools { * If the work division has only one element per thread, the loop will perform at most one iteration. * If the work division has more than one elements per thread, the loop will perform that number of iterations, * or less if it reaches size. + * + * If the problem size is not a multiple of the block size, different threads may execute a different number of + * iterations. As a result, it is not safe to call alpaka::syncBlockThreads() within this loop. If a block + * synchronisation is needed, one should split the loop, and synchronise the threads between the loops. */ template and alpaka::Dim::value == 1>> @@ -526,6 +548,11 @@ namespace cms::alpakatools { * blocks will exit immediately. * If the work division has less than 63 blocks, some of the blocks will perform more than one iteration, in order to * cover then whole problem space. + * + * If the problem size is not a multiple of the block size, the last group will process a number of elements smaller + * than the block size. Also in this case all threads in the block will execute the same number of iterations of this + * loop: this makes it safe to use block-level synchronisations in the loop body. It is left to the inner loop (or the + * user) to ensure that only the correct number of threads process any data. */ template and alpaka::Dim::value == 1>> @@ -542,6 +569,10 @@ namespace cms::alpakatools { * * The loop will perform a number of iterations up to the number of elements per thread, stopping earlier when the * element index reaches `size`. + * + * If the problem size is not a multiple of the block size, different threads may execute a different number of + * iterations. As a result, it is not safe to call alpaka::syncBlockThreads() within this loop. If a block + * synchronisation is needed, one should split the loop, and synchronise the threads between the loops. */ template and alpaka::Dim::value == 1>> @@ -630,7 +661,11 @@ namespace cms::alpakatools { * * Iterating over the range yields the local element index, between `0` and `elements - 1`. The threads in the block * will perform one or more iterations, depending on the number of elements per thread, and on the number of threads - * per block, ocmpared with the total number of elements. + * per block, compared with the total number of elements. + * + * If the problem size is not a multiple of the block size, different threads may execute a different number of + * iterations. As a result, it is not safe to call alpaka::syncBlockThreads() within this loop. If a block + * synchronisation is needed, one should split the loop, and synchronise the threads between the loops. */ template and alpaka::Dim::value == 1>> From 9286027ac7eec8e1c9461358d0e833c27963535f Mon Sep 17 00:00:00 2001 From: Andrea Bocci Date: Thu, 21 Dec 2023 23:50:15 +0100 Subject: [PATCH 163/281] Rename iterator to const_iterator --- .../AlpakaInterface/interface/workdivision.h | 119 +++++++++--------- 1 file changed, 61 insertions(+), 58 deletions(-) diff --git a/HeterogeneousCore/AlpakaInterface/interface/workdivision.h b/HeterogeneousCore/AlpakaInterface/interface/workdivision.h index f924ce4c7e863..31406d711c1d1 100644 --- a/HeterogeneousCore/AlpakaInterface/interface/workdivision.h +++ b/HeterogeneousCore/AlpakaInterface/interface/workdivision.h @@ -132,10 +132,10 @@ namespace cms::alpakatools { stride_{alpaka::getWorkDiv(acc)[0u] * elements_}, extent_{extent} {} - class iterator { + class const_iterator { friend class elements_with_stride; - ALPAKA_FN_ACC inline iterator(Idx elements, Idx stride, Idx extent, Idx first) + ALPAKA_FN_ACC inline const_iterator(Idx elements, Idx stride, Idx extent, Idx first) : elements_{elements}, stride_{stride}, extent_{extent}, @@ -147,7 +147,7 @@ namespace cms::alpakatools { ALPAKA_FN_ACC inline Idx operator*() const { return index_; } // pre-increment the iterator - ALPAKA_FN_ACC inline iterator& operator++() { + ALPAKA_FN_ACC inline const_iterator& operator++() { if constexpr (requires_single_thread_per_block_v) { // increment the index along the elements processed by the current thread ++index_; @@ -170,17 +170,17 @@ namespace cms::alpakatools { } // post-increment the iterator - ALPAKA_FN_ACC inline iterator operator++(int) { - iterator old = *this; + ALPAKA_FN_ACC inline const_iterator operator++(int) { + const_iterator old = *this; ++(*this); return old; } - ALPAKA_FN_ACC inline bool operator==(iterator const& other) const { + ALPAKA_FN_ACC inline bool operator==(const_iterator const& other) const { return (index_ == other.index_) and (first_ == other.first_); } - ALPAKA_FN_ACC inline bool operator!=(iterator const& other) const { return not(*this == other); } + ALPAKA_FN_ACC inline bool operator!=(const_iterator const& other) const { return not(*this == other); } private: // non-const to support iterator copy and assignment @@ -193,9 +193,9 @@ namespace cms::alpakatools { Idx range_; }; - ALPAKA_FN_ACC inline iterator begin() const { return iterator(elements_, stride_, extent_, first_); } + ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(elements_, stride_, extent_, first_); } - ALPAKA_FN_ACC inline iterator end() const { return iterator(elements_, stride_, extent_, extent_); } + ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(elements_, stride_, extent_, extent_); } private: const Idx elements_; @@ -225,39 +225,41 @@ namespace cms::alpakatools { // tag used to construct an end iterator struct at_end_t {}; - class iterator { + class const_iterator { friend class elements_with_stride_nd; public: ALPAKA_FN_ACC inline Vec operator*() const { return index_; } // pre-increment the iterator - ALPAKA_FN_ACC constexpr inline iterator operator++() { + ALPAKA_FN_ACC constexpr inline const_iterator operator++() { increment(); return *this; } // post-increment the iterator - ALPAKA_FN_ACC constexpr inline iterator operator++(int) { - iterator old = *this; + ALPAKA_FN_ACC constexpr inline const_iterator operator++(int) { + const_iterator old = *this; increment(); return old; } - ALPAKA_FN_ACC constexpr inline bool operator==(iterator const& other) const { return (index_ == other.index_); } + ALPAKA_FN_ACC constexpr inline bool operator==(const_iterator const& other) const { + return (index_ == other.index_); + } - ALPAKA_FN_ACC constexpr inline bool operator!=(iterator const& other) const { return not(*this == other); } + ALPAKA_FN_ACC constexpr inline bool operator!=(const_iterator const& other) const { return not(*this == other); } private: // construct an iterator pointing to the first element to be processed by the current thread - ALPAKA_FN_ACC inline iterator(elements_with_stride_nd const* loop, Vec first) + ALPAKA_FN_ACC inline const_iterator(elements_with_stride_nd const* loop, Vec first) : loop_{loop}, first_{alpaka::elementwise_min(first, loop->extent_)}, range_{alpaka::elementwise_min(first + loop->elements_, loop->extent_)}, index_{first_} {} // construct an end iterator, pointing post the end of the extent - ALPAKA_FN_ACC inline iterator(elements_with_stride_nd const* loop, at_end_t const&) + ALPAKA_FN_ACC inline const_iterator(elements_with_stride_nd const* loop, at_end_t const&) : loop_{loop}, first_{loop_->extent_}, range_{loop_->extent_}, index_{loop_->extent_} {} template @@ -345,20 +347,20 @@ namespace cms::alpakatools { Vec index_; // current element processed by this thread }; - ALPAKA_FN_ACC inline iterator begin() const { + ALPAKA_FN_ACC inline const_iterator begin() const { // check that all dimensions of the current thread index are within the extent if ((thread_ < extent_).all()) { // construct an iterator pointing to the first element to be processed by the current thread - return iterator{this, thread_}; + return const_iterator{this, thread_}; } else { // construct an end iterator, pointing post the end of the extent - return iterator{this, at_end_t{}}; + return const_iterator{this, at_end_t{}}; } } - ALPAKA_FN_ACC inline iterator end() const { + ALPAKA_FN_ACC inline const_iterator end() const { // construct an end iterator, pointing post the end of the extent - return iterator{this, at_end_t{}}; + return const_iterator{this, at_end_t{}}; } private: @@ -397,17 +399,17 @@ namespace cms::alpakatools { stride_{alpaka::getWorkDiv(acc)[0u]}, extent_{divide_up_by(extent, alpaka::getWorkDiv(acc)[0u])} {} - class iterator { + class const_iterator { friend class blocks_with_stride; - ALPAKA_FN_ACC inline iterator(Idx stride, Idx extent, Idx first) + ALPAKA_FN_ACC inline const_iterator(Idx stride, Idx extent, Idx first) : stride_{stride}, extent_{extent}, first_{std::min(first, extent)} {} public: ALPAKA_FN_ACC inline Idx operator*() const { return first_; } // pre-increment the iterator - ALPAKA_FN_ACC inline iterator& operator++() { + ALPAKA_FN_ACC inline const_iterator& operator++() { // increment the first-element-in-block index by the grid stride first_ += stride_; if (first_ < extent_) @@ -419,15 +421,15 @@ namespace cms::alpakatools { } // post-increment the iterator - ALPAKA_FN_ACC inline iterator operator++(int) { - iterator old = *this; + ALPAKA_FN_ACC inline const_iterator operator++(int) { + const_iterator old = *this; ++(*this); return old; } - ALPAKA_FN_ACC inline bool operator==(iterator const& other) const { return (first_ == other.first_); } + ALPAKA_FN_ACC inline bool operator==(const_iterator const& other) const { return (first_ == other.first_); } - ALPAKA_FN_ACC inline bool operator!=(iterator const& other) const { return not(*this == other); } + ALPAKA_FN_ACC inline bool operator!=(const_iterator const& other) const { return not(*this == other); } private: // non-const to support iterator copy and assignment @@ -437,9 +439,9 @@ namespace cms::alpakatools { Idx first_; }; - ALPAKA_FN_ACC inline iterator begin() const { return iterator(stride_, extent_, first_); } + ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(stride_, extent_, first_); } - ALPAKA_FN_ACC inline iterator end() const { return iterator(stride_, extent_, extent_); } + ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(stride_, extent_, extent_); } private: const Idx first_; @@ -478,16 +480,17 @@ namespace cms::alpakatools { alpaka::getWorkDiv(acc)[0u])}, range_{std::min(extent - first_, local_ + alpaka::getWorkDiv(acc)[0u])} {} - class iterator { + class const_iterator { friend class elements_in_block; - ALPAKA_FN_ACC inline iterator(Idx local, Idx first, Idx range) : index_{local}, first_{first}, range_{range} {} + ALPAKA_FN_ACC inline const_iterator(Idx local, Idx first, Idx range) + : index_{local}, first_{first}, range_{range} {} public: ALPAKA_FN_ACC inline ElementIndex operator*() const { return ElementIndex{index_ + first_, index_}; } // pre-increment the iterator - ALPAKA_FN_ACC inline iterator& operator++() { + ALPAKA_FN_ACC inline const_iterator& operator++() { if constexpr (requires_single_thread_per_block_v) { // increment the index along the elements processed by the current thread ++index_; @@ -501,15 +504,15 @@ namespace cms::alpakatools { } // post-increment the iterator - ALPAKA_FN_ACC inline iterator operator++(int) { - iterator old = *this; + ALPAKA_FN_ACC inline const_iterator operator++(int) { + const_iterator old = *this; ++(*this); return old; } - ALPAKA_FN_ACC inline bool operator==(iterator const& other) const { return (index_ == other.index_); } + ALPAKA_FN_ACC inline bool operator==(const_iterator const& other) const { return (index_ == other.index_); } - ALPAKA_FN_ACC inline bool operator!=(iterator const& other) const { return not(*this == other); } + ALPAKA_FN_ACC inline bool operator!=(const_iterator const& other) const { return not(*this == other); } private: // modified by the pre/post-increment operator @@ -519,9 +522,9 @@ namespace cms::alpakatools { Idx range_; }; - ALPAKA_FN_ACC inline iterator begin() const { return iterator(local_, first_, range_); } + ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(local_, first_, range_); } - ALPAKA_FN_ACC inline iterator end() const { return iterator(range_, first_, range_); } + ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(range_, first_, range_); } private: const Idx first_; @@ -604,17 +607,17 @@ namespace cms::alpakatools { stride_{alpaka::getWorkDiv(acc)[0u]}, extent_{groups} {} - class iterator { + class const_iterator { friend class independent_groups; - ALPAKA_FN_ACC inline iterator(Idx stride, Idx extent, Idx first) + ALPAKA_FN_ACC inline const_iterator(Idx stride, Idx extent, Idx first) : stride_{stride}, extent_{extent}, first_{std::min(first, extent)} {} public: ALPAKA_FN_ACC inline Idx operator*() const { return first_; } // pre-increment the iterator - ALPAKA_FN_ACC inline iterator& operator++() { + ALPAKA_FN_ACC inline const_iterator& operator++() { // increment the first-element-in-block index by the grid stride first_ += stride_; if (first_ < extent_) @@ -626,15 +629,15 @@ namespace cms::alpakatools { } // post-increment the iterator - ALPAKA_FN_ACC inline iterator operator++(int) { - iterator old = *this; + ALPAKA_FN_ACC inline const_iterator operator++(int) { + const_iterator old = *this; ++(*this); return old; } - ALPAKA_FN_ACC inline bool operator==(iterator const& other) const { return (first_ == other.first_); } + ALPAKA_FN_ACC inline bool operator==(const_iterator const& other) const { return (first_ == other.first_); } - ALPAKA_FN_ACC inline bool operator!=(iterator const& other) const { return not(*this == other); } + ALPAKA_FN_ACC inline bool operator!=(const_iterator const& other) const { return not(*this == other); } private: // non-const to support iterator copy and assignment @@ -644,9 +647,9 @@ namespace cms::alpakatools { Idx first_; }; - ALPAKA_FN_ACC inline iterator begin() const { return iterator(stride_, extent_, first_); } + ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(stride_, extent_, first_); } - ALPAKA_FN_ACC inline iterator end() const { return iterator(stride_, extent_, extent_); } + ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(stride_, extent_, extent_); } private: const Idx first_; @@ -683,10 +686,10 @@ namespace cms::alpakatools { stride_{alpaka::getWorkDiv(acc)[0u] * elements_}, extent_{extent} {} - class iterator { + class const_iterator { friend class independent_group_elements; - ALPAKA_FN_ACC inline iterator(Idx elements, Idx stride, Idx extent, Idx first) + ALPAKA_FN_ACC inline const_iterator(Idx elements, Idx stride, Idx extent, Idx first) : elements_{elements}, stride_{stride}, extent_{extent}, @@ -698,7 +701,7 @@ namespace cms::alpakatools { ALPAKA_FN_ACC inline Idx operator*() const { return index_; } // pre-increment the iterator - ALPAKA_FN_ACC inline iterator& operator++() { + ALPAKA_FN_ACC inline const_iterator& operator++() { if constexpr (requires_single_thread_per_block_v) { // increment the index along the elements processed by the current thread ++index_; @@ -721,17 +724,17 @@ namespace cms::alpakatools { } // post-increment the iterator - ALPAKA_FN_ACC inline iterator operator++(int) { - iterator old = *this; + ALPAKA_FN_ACC inline const_iterator operator++(int) { + const_iterator old = *this; ++(*this); return old; } - ALPAKA_FN_ACC inline bool operator==(iterator const& other) const { + ALPAKA_FN_ACC inline bool operator==(const_iterator const& other) const { return (index_ == other.index_) and (first_ == other.first_); } - ALPAKA_FN_ACC inline bool operator!=(iterator const& other) const { return not(*this == other); } + ALPAKA_FN_ACC inline bool operator!=(const_iterator const& other) const { return not(*this == other); } private: // non-const to support iterator copy and assignment @@ -744,9 +747,9 @@ namespace cms::alpakatools { Idx range_; }; - ALPAKA_FN_ACC inline iterator begin() const { return iterator(elements_, stride_, extent_, thread_); } + ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(elements_, stride_, extent_, thread_); } - ALPAKA_FN_ACC inline iterator end() const { return iterator(elements_, stride_, extent_, extent_); } + ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(elements_, stride_, extent_, extent_); } private: const Idx elements_; From 711ad9e528664222886695d916d00f738e8f1f76 Mon Sep 17 00:00:00 2001 From: Andrea Bocci Date: Fri, 22 Dec 2023 00:15:33 +0100 Subject: [PATCH 164/281] Add forward declaration and type alias for const_iterator --- .../AlpakaInterface/interface/workdivision.h | 90 +++++++++++-------- 1 file changed, 54 insertions(+), 36 deletions(-) diff --git a/HeterogeneousCore/AlpakaInterface/interface/workdivision.h b/HeterogeneousCore/AlpakaInterface/interface/workdivision.h index 31406d711c1d1..4c0aa9fe5f2b9 100644 --- a/HeterogeneousCore/AlpakaInterface/interface/workdivision.h +++ b/HeterogeneousCore/AlpakaInterface/interface/workdivision.h @@ -132,6 +132,13 @@ namespace cms::alpakatools { stride_{alpaka::getWorkDiv(acc)[0u] * elements_}, extent_{extent} {} + class const_iterator; + using iterator = const_iterator; + + ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(elements_, stride_, extent_, first_); } + + ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(elements_, stride_, extent_, extent_); } + class const_iterator { friend class elements_with_stride; @@ -193,10 +200,6 @@ namespace cms::alpakatools { Idx range_; }; - ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(elements_, stride_, extent_, first_); } - - ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(elements_, stride_, extent_, extent_); } - private: const Idx elements_; const Idx first_; @@ -225,6 +228,25 @@ namespace cms::alpakatools { // tag used to construct an end iterator struct at_end_t {}; + class const_iterator; + using iterator = const_iterator; + + ALPAKA_FN_ACC inline const_iterator begin() const { + // check that all dimensions of the current thread index are within the extent + if ((thread_ < extent_).all()) { + // construct an iterator pointing to the first element to be processed by the current thread + return const_iterator{this, thread_}; + } else { + // construct an end iterator, pointing post the end of the extent + return const_iterator{this, at_end_t{}}; + } + } + + ALPAKA_FN_ACC inline const_iterator end() const { + // construct an end iterator, pointing post the end of the extent + return const_iterator{this, at_end_t{}}; + } + class const_iterator { friend class elements_with_stride_nd; @@ -347,22 +369,6 @@ namespace cms::alpakatools { Vec index_; // current element processed by this thread }; - ALPAKA_FN_ACC inline const_iterator begin() const { - // check that all dimensions of the current thread index are within the extent - if ((thread_ < extent_).all()) { - // construct an iterator pointing to the first element to be processed by the current thread - return const_iterator{this, thread_}; - } else { - // construct an end iterator, pointing post the end of the extent - return const_iterator{this, at_end_t{}}; - } - } - - ALPAKA_FN_ACC inline const_iterator end() const { - // construct an end iterator, pointing post the end of the extent - return const_iterator{this, at_end_t{}}; - } - private: const Vec elements_; const Vec thread_; @@ -399,6 +405,13 @@ namespace cms::alpakatools { stride_{alpaka::getWorkDiv(acc)[0u]}, extent_{divide_up_by(extent, alpaka::getWorkDiv(acc)[0u])} {} + class const_iterator; + using iterator = const_iterator; + + ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(stride_, extent_, first_); } + + ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(stride_, extent_, extent_); } + class const_iterator { friend class blocks_with_stride; @@ -439,10 +452,6 @@ namespace cms::alpakatools { Idx first_; }; - ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(stride_, extent_, first_); } - - ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(stride_, extent_, extent_); } - private: const Idx first_; const Idx stride_; @@ -480,6 +489,13 @@ namespace cms::alpakatools { alpaka::getWorkDiv(acc)[0u])}, range_{std::min(extent - first_, local_ + alpaka::getWorkDiv(acc)[0u])} {} + class const_iterator; + using iterator = const_iterator; + + ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(local_, first_, range_); } + + ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(range_, first_, range_); } + class const_iterator { friend class elements_in_block; @@ -522,10 +538,6 @@ namespace cms::alpakatools { Idx range_; }; - ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(local_, first_, range_); } - - ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(range_, first_, range_); } - private: const Idx first_; const Idx local_; @@ -607,6 +619,13 @@ namespace cms::alpakatools { stride_{alpaka::getWorkDiv(acc)[0u]}, extent_{groups} {} + class const_iterator; + using iterator = const_iterator; + + ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(stride_, extent_, first_); } + + ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(stride_, extent_, extent_); } + class const_iterator { friend class independent_groups; @@ -647,10 +666,6 @@ namespace cms::alpakatools { Idx first_; }; - ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(stride_, extent_, first_); } - - ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(stride_, extent_, extent_); } - private: const Idx first_; const Idx stride_; @@ -686,6 +701,13 @@ namespace cms::alpakatools { stride_{alpaka::getWorkDiv(acc)[0u] * elements_}, extent_{extent} {} + class const_iterator; + using iterator = const_iterator; + + ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(elements_, stride_, extent_, thread_); } + + ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(elements_, stride_, extent_, extent_); } + class const_iterator { friend class independent_group_elements; @@ -747,10 +769,6 @@ namespace cms::alpakatools { Idx range_; }; - ALPAKA_FN_ACC inline const_iterator begin() const { return const_iterator(elements_, stride_, extent_, thread_); } - - ALPAKA_FN_ACC inline const_iterator end() const { return const_iterator(elements_, stride_, extent_, extent_); } - private: const Idx elements_; const Idx thread_; From 3fa895ec3772b34a78d21bf736d59c39afd5947f Mon Sep 17 00:00:00 2001 From: Breno Orzari Date: Fri, 22 Dec 2023 16:30:37 +0100 Subject: [PATCH 165/281] Renaming and fix for phase2 --- .../python/shortTrackResolution_cff.py | 58 ++++++++++--------- 1 file changed, 31 insertions(+), 27 deletions(-) diff --git a/DQM/TrackingMonitorSource/python/shortTrackResolution_cff.py b/DQM/TrackingMonitorSource/python/shortTrackResolution_cff.py index 7c7047c6bfa75..e38489adb17f9 100644 --- a/DQM/TrackingMonitorSource/python/shortTrackResolution_cff.py +++ b/DQM/TrackingMonitorSource/python/shortTrackResolution_cff.py @@ -4,39 +4,43 @@ from RecoTracker.FinalTrackSelectors.SingleLongTrackProducer_cfi import * from RecoTracker.FinalTrackSelectors.trackerTrackHitFilter_cfi import trackerTrackHitFilter as _trackerTrackHitFilter -TrackerTrackHitFilter = _trackerTrackHitFilter.clone(src = "SingleLongTrackProducer", +ShortTrackCandidates = _trackerTrackHitFilter.clone(src = "SingleLongTrackProducer", truncateTracks = True, replaceWithInactiveHits = True, rejectBadStoNHits = True, usePixelQualityFlag = True) -TrackerTrackHitFilter3 = TrackerTrackHitFilter.clone(minimumHits = 3, +from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker +phase2_tracker.toModify(ShortTrackCandidates, + isPhase2 = True) + +ShortTrackCandidates3 = ShortTrackCandidates.clone(minimumHits = 3, layersRemaining = 3) -TrackerTrackHitFilter4 = TrackerTrackHitFilter.clone(minimumHits = 4, +ShortTrackCandidates4 = ShortTrackCandidates.clone(minimumHits = 4, layersRemaining = 4) -TrackerTrackHitFilter5 = TrackerTrackHitFilter.clone(minimumHits = 5, +ShortTrackCandidates5 = ShortTrackCandidates.clone(minimumHits = 5, layersRemaining = 5) -TrackerTrackHitFilter6 = TrackerTrackHitFilter.clone(minimumHits = 6, +ShortTrackCandidates6 = ShortTrackCandidates.clone(minimumHits = 6, layersRemaining = 6) -TrackerTrackHitFilter7 = TrackerTrackHitFilter.clone(minimumHits = 7, +ShortTrackCandidates7 = ShortTrackCandidates.clone(minimumHits = 7, layersRemaining = 7) -TrackerTrackHitFilter8 = TrackerTrackHitFilter.clone(minimumHits = 8, +ShortTrackCandidates8 = ShortTrackCandidates.clone(minimumHits = 8, layersRemaining = 8) import RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cff -HitFilteredTracks = RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cff.ctfWithMaterialTracks.clone(src = 'TrackerTrackHitFilter') +RefittedShortTracks = RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cff.ctfWithMaterialTracks.clone(src = 'ShortTrackCandidates') -HitFilteredTracks3 = HitFilteredTracks.clone(src = 'TrackerTrackHitFilter3') -HitFilteredTracks4 = HitFilteredTracks.clone(src = 'TrackerTrackHitFilter4') -HitFilteredTracks5 = HitFilteredTracks.clone(src = 'TrackerTrackHitFilter5') -HitFilteredTracks6 = HitFilteredTracks.clone(src = 'TrackerTrackHitFilter6') -HitFilteredTracks7 = HitFilteredTracks.clone(src = 'TrackerTrackHitFilter7') -HitFilteredTracks8 = HitFilteredTracks.clone(src = 'TrackerTrackHitFilter8') +RefittedShortTracks3 = RefittedShortTracks.clone(src = 'ShortTrackCandidates3') +RefittedShortTracks4 = RefittedShortTracks.clone(src = 'ShortTrackCandidates4') +RefittedShortTracks5 = RefittedShortTracks.clone(src = 'ShortTrackCandidates5') +RefittedShortTracks6 = RefittedShortTracks.clone(src = 'ShortTrackCandidates6') +RefittedShortTracks7 = RefittedShortTracks.clone(src = 'ShortTrackCandidates7') +RefittedShortTracks8 = RefittedShortTracks.clone(src = 'ShortTrackCandidates8') from DQM.TrackingMonitorSource.shortenedTrackResolution_cfi import shortenedTrackResolution as _shortenedTrackResolution trackingResolution = _shortenedTrackResolution.clone(folderName = "Tracking/ShortTrackResolution", @@ -47,19 +51,19 @@ maxTracksPtInput = 99999.9, maxDrInput = 0.01, tracksInputTag = "SingleLongTrackProducer", - tracksRerecoInputTag = ["HitFilteredTracks3","HitFilteredTracks4","HitFilteredTracks5","HitFilteredTracks6","HitFilteredTracks7","HitFilteredTracks8"]) + tracksRerecoInputTag = ["RefittedShortTracks3","RefittedShortTracks4","RefittedShortTracks5","RefittedShortTracks6","RefittedShortTracks7","RefittedShortTracks8"]) shortTrackResolution3to8 = cms.Sequence(SingleLongTrackProducer * - TrackerTrackHitFilter3 * - TrackerTrackHitFilter4 * - TrackerTrackHitFilter5 * - TrackerTrackHitFilter6 * - TrackerTrackHitFilter7 * - TrackerTrackHitFilter8 * - HitFilteredTracks3 * - HitFilteredTracks4 * - HitFilteredTracks5 * - HitFilteredTracks6 * - HitFilteredTracks7 * - HitFilteredTracks8 * + ShortTrackCandidates3 * + ShortTrackCandidates4 * + ShortTrackCandidates5 * + ShortTrackCandidates6 * + ShortTrackCandidates7 * + ShortTrackCandidates8 * + RefittedShortTracks3 * + RefittedShortTracks4 * + RefittedShortTracks5 * + RefittedShortTracks6 * + RefittedShortTracks7 * + RefittedShortTracks8 * trackingResolution) From 3e8c08849988fcf931eabf20291d36b14f69ad30 Mon Sep 17 00:00:00 2001 From: Norraphat Date: Fri, 22 Dec 2023 18:35:02 +0100 Subject: [PATCH 166/281] add workflow --- Configuration/PyReleaseValidation/README.md | 3 ++ .../python/upgradeWorkflowComponents.py | 53 +++++++++++++++++-- 2 files changed, 53 insertions(+), 3 deletions(-) diff --git a/Configuration/PyReleaseValidation/README.md b/Configuration/PyReleaseValidation/README.md index 9c9cb96cd7792..f89ae6370f102 100644 --- a/Configuration/PyReleaseValidation/README.md +++ b/Configuration/PyReleaseValidation/README.md @@ -69,6 +69,9 @@ The offsets currently in use are: * 0.612: ECAL `phase2_ecal_devel` era, with automatic offload to GPU if available * 0.631: ECAL component-method based digis * 0.632: ECAL component-method based finely-sampled waveforms +* 0.633: ECAL phase2 Trigger Primitive +* 0.634: ECAL phase2 Trigger Primitive + component-method based digis +* 0.635: ECAL phase2 Trigger Primitive + component-method based finely-sampled waveforms * 0.75: Phase-2 HLT * 0.91: Track DNN modifier * 0.97: Premixing stage1 diff --git a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py index ea6041c9d2822..0080cedce6c75 100644 --- a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py +++ b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py @@ -1884,7 +1884,7 @@ def condition(self, fragment, stepList, key, hasHarvest): # ECAL component class UpgradeWorkflow_ECalComponent(UpgradeWorkflow): - def __init__(self, suffix, offset, ecalMod, + def __init__(self, suffix, offset, ecalTPPh2, ecalMod, steps = [ 'GenSim', 'GenSimHLBeamSpot', @@ -1892,6 +1892,9 @@ def __init__(self, suffix, offset, ecalMod, 'GenSimHLBeamSpotHGCALCloseBy', 'Digi', 'DigiTrigger', + 'RecoGlobal', + 'HARVESTGlobal', + 'ALCAPhase2', ], PU = [ 'GenSim', @@ -1900,14 +1903,35 @@ def __init__(self, suffix, offset, ecalMod, 'GenSimHLBeamSpotHGCALCloseBy', 'Digi', 'DigiTrigger', + 'RecoGlobal', + 'HARVESTGlobal', + 'ALCAPhase2', ]): super(UpgradeWorkflow_ECalComponent, self).__init__(steps, PU, suffix, offset) + self.__ecalTPPh2 = ecalTPPh2 self.__ecalMod = ecalMod - + def setup_(self, step, stepName, stepDict, k, properties): - if 'Sim' in step or 'Digi' in step: + stepDict[stepName][k] = deepcopy(stepDict[step][k]) + if 'Sim' in step: + if self.__ecalMod is not None: + stepDict[stepName][k] = merge([{'--procModifiers':self.__ecalMod},stepDict[step][k]]) + if 'Digi' in step: if self.__ecalMod is not None: stepDict[stepName][k] = merge([{'--procModifiers':self.__ecalMod},stepDict[step][k]]) + if self.__ecalTPPh2 is not None: + mods = {'--era': stepDict[step][k]['--era']+',phase2_ecal_devel,phase2_ecalTP_devel'} + mods['-s'] = 'DIGI:pdigi_valid,DIGI2RAW,HLT:@fake2' + stepDict[stepName][k] = merge([mods, stepDict[step][k]]) + if 'RecoGlobal' in step: + stepDict[stepName][k] = merge([{'-s': 'RAW2DIGI,RECO,RECOSIM,PAT', + '--datatier':'GEN-SIM-RECO', + '--eventcontent':'FEVTDEBUGHLT', + }, stepDict[step][k]]) + if 'HARVESTGlobal' in step: + stepDict[stepName][k] = None + if 'ALCAPhase2' in step: + stepDict[stepName][k] = None def condition(self, fragment, stepList, key, hasHarvest): return ('2021' in key or '2023' in key or '2026' in key) @@ -1915,12 +1939,35 @@ def condition(self, fragment, stepList, key, hasHarvest): upgradeWFs['ECALComponent'] = UpgradeWorkflow_ECalComponent( suffix = '_ecalComponent', offset = 0.631, + ecalTPPh2 = None, ecalMod = 'ecal_component', ) upgradeWFs['ECALComponentFSW'] = UpgradeWorkflow_ECalComponent( suffix = '_ecalComponentFSW', offset = 0.632, + ecalTPPh2 = None, + ecalMod = 'ecal_component_finely_sampled_waveforms', +) + +upgradeWFs['ECALTPPh2'] = UpgradeWorkflow_ECalComponent( + suffix = '_ecalTPPh2', + offset = 0.633, + ecalTPPh2 = 'phase2_ecal_devel,phase2_ecalTP_devel', + ecalMod = None, +) + +upgradeWFs['ECALTPPh2Component'] = UpgradeWorkflow_ECalComponent( + suffix = '_ecalTPPh2Component', + offset = 0.634, + ecalTPPh2 = 'phase2_ecal_devel,phase2_ecalTP_devel', + ecalMod = 'ecal_component', +) + +upgradeWFs['ECALTPPh2ComponentFSW'] = UpgradeWorkflow_ECalComponent( + suffix = '_ecalTPPh2ComponentFSW', + offset = 0.635, + ecalTPPh2 = 'phase2_ecal_devel,phase2_ecalTP_devel', ecalMod = 'ecal_component_finely_sampled_waveforms', ) From c607f8ad4a64b6bf09ea42cf07510370a5573ad8 Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Thu, 9 Nov 2023 17:11:13 +0100 Subject: [PATCH 167/281] Allow Portable{Collection,Object} to be used also independently of ALPAKA_ACCELERATOR_NAMESPACE --- .../Portable/interface/PortableCollection.h | 4 ++- .../interface/PortableHostCollection.h | 10 ++++++++ .../Portable/interface/PortableHostObject.h | 10 ++++++++ .../Portable/interface/PortableObject.h | 4 +-- .../interface/alpaka/PortableCollection.h | 5 +++- .../interface/alpaka/PortableObject.h | 5 +++- DataFormats/Portable/test/BuildFile.xml | 5 ++++ .../Portable/test/portableCollectionOnHost.cc | 25 +++++++++++++++++++ .../Portable/test/portableObjectOnHost.cc | 23 +++++++++++++++++ DataFormats/Portable/test/test_catch2_main.cc | 2 ++ 10 files changed, 88 insertions(+), 5 deletions(-) create mode 100644 DataFormats/Portable/test/BuildFile.xml create mode 100644 DataFormats/Portable/test/portableCollectionOnHost.cc create mode 100644 DataFormats/Portable/test/portableObjectOnHost.cc create mode 100644 DataFormats/Portable/test/test_catch2_main.cc diff --git a/DataFormats/Portable/interface/PortableCollection.h b/DataFormats/Portable/interface/PortableCollection.h index 86d117c02c81d..9a0498944688d 100644 --- a/DataFormats/Portable/interface/PortableCollection.h +++ b/DataFormats/Portable/interface/PortableCollection.h @@ -1,13 +1,15 @@ #ifndef DataFormats_Portable_interface_PortableCollection_h #define DataFormats_Portable_interface_PortableCollection_h +#include + #include "HeterogeneousCore/AlpakaInterface/interface/traits.h" namespace traits { // trait for a generic SoA-based product template >> - class PortableCollectionTrait; + struct PortableCollectionTrait; } // namespace traits diff --git a/DataFormats/Portable/interface/PortableHostCollection.h b/DataFormats/Portable/interface/PortableHostCollection.h index 8b098688455e8..e73e70e724bb6 100644 --- a/DataFormats/Portable/interface/PortableHostCollection.h +++ b/DataFormats/Portable/interface/PortableHostCollection.h @@ -6,6 +6,7 @@ #include +#include "DataFormats/Portable/interface/PortableCollection.h" #include "HeterogeneousCore/AlpakaInterface/interface/config.h" #include "HeterogeneousCore/AlpakaInterface/interface/host.h" #include "HeterogeneousCore/AlpakaInterface/interface/memory.h" @@ -86,4 +87,13 @@ class PortableHostCollection { View view_; //! }; +// Make PortableCollection alias template to work also +// independently of ALPAKA_ACCELERATOR_NAMESPACE +namespace traits { + template + struct PortableCollectionTrait { + using CollectionType = PortableHostCollection; + }; +} // namespace traits + #endif // DataFormats_Portable_interface_PortableHostCollection_h diff --git a/DataFormats/Portable/interface/PortableHostObject.h b/DataFormats/Portable/interface/PortableHostObject.h index 348da4f8c505d..c0f476d2f2d2a 100644 --- a/DataFormats/Portable/interface/PortableHostObject.h +++ b/DataFormats/Portable/interface/PortableHostObject.h @@ -7,6 +7,7 @@ #include +#include "DataFormats/Portable/interface/PortableObject.h" #include "HeterogeneousCore/AlpakaInterface/interface/config.h" #include "HeterogeneousCore/AlpakaInterface/interface/host.h" #include "HeterogeneousCore/AlpakaInterface/interface/memory.h" @@ -78,4 +79,13 @@ class PortableHostObject { Product* product_; }; +// Make PortableObject alias template to work also +// independently of ALPAKA_ACCELERATOR_NAMESPACE +namespace traits { + template + struct PortableObjectTrait { + using ProductType = PortableHostObject; + }; +} // namespace traits + #endif // DataFormats_Portable_interface_PortableHostObject_h diff --git a/DataFormats/Portable/interface/PortableObject.h b/DataFormats/Portable/interface/PortableObject.h index 90a33b49d0f0a..a4737e67e7dd7 100644 --- a/DataFormats/Portable/interface/PortableObject.h +++ b/DataFormats/Portable/interface/PortableObject.h @@ -3,13 +3,13 @@ #include -#include "HeterogeneousCore/AlpakaInterface/interface/traits.h" +#include namespace traits { // trait for a generic SoA-based product template >> - class PortableObjectTrait; + struct PortableObjectTrait; } // namespace traits diff --git a/DataFormats/Portable/interface/alpaka/PortableCollection.h b/DataFormats/Portable/interface/alpaka/PortableCollection.h index 0a6abad96dfaf..232f0eefdd038 100644 --- a/DataFormats/Portable/interface/alpaka/PortableCollection.h +++ b/DataFormats/Portable/interface/alpaka/PortableCollection.h @@ -33,15 +33,18 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { } // namespace ALPAKA_ACCELERATOR_NAMESPACE +// For DevHost the specialisation is already done in the PortableHostCollection.h +#ifndef ALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLED namespace traits { // specialise the trait for the device provided by the ALPAKA_ACCELERATOR_NAMESPACE template - class PortableCollectionTrait { + struct PortableCollectionTrait { using CollectionType = ALPAKA_ACCELERATOR_NAMESPACE::PortableCollection; }; } // namespace traits +#endif namespace cms::alpakatools { template diff --git a/DataFormats/Portable/interface/alpaka/PortableObject.h b/DataFormats/Portable/interface/alpaka/PortableObject.h index 9b7ba65f8a460..f58c487be7dd9 100644 --- a/DataFormats/Portable/interface/alpaka/PortableObject.h +++ b/DataFormats/Portable/interface/alpaka/PortableObject.h @@ -33,15 +33,18 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { } // namespace ALPAKA_ACCELERATOR_NAMESPACE +// For DevHost the specialisation is already done in the PortableHostCollection.h +#ifndef ALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLED namespace traits { // specialise the trait for the device provided by the ALPAKA_ACCELERATOR_NAMESPACE template - class PortableObjectTrait { + struct PortableObjectTrait { using ProductType = ALPAKA_ACCELERATOR_NAMESPACE::PortableObject; }; } // namespace traits +#endif namespace cms::alpakatools { template diff --git a/DataFormats/Portable/test/BuildFile.xml b/DataFormats/Portable/test/BuildFile.xml new file mode 100644 index 0000000000000..ef2f6603f62cc --- /dev/null +++ b/DataFormats/Portable/test/BuildFile.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/DataFormats/Portable/test/portableCollectionOnHost.cc b/DataFormats/Portable/test/portableCollectionOnHost.cc new file mode 100644 index 0000000000000..aa3d56f9d0539 --- /dev/null +++ b/DataFormats/Portable/test/portableCollectionOnHost.cc @@ -0,0 +1,25 @@ +#include + +#include "DataFormats/Portable/interface/PortableCollection.h" +#include "DataFormats/Portable/interface/PortableHostCollection.h" +#include "DataFormats/SoATemplate/interface/SoACommon.h" +#include "DataFormats/SoATemplate/interface/SoALayout.h" +#include "DataFormats/SoATemplate/interface/SoAView.h" + +namespace { + GENERATE_SOA_LAYOUT(TestLayout, SOA_COLUMN(double, x), SOA_COLUMN(int32_t, id)) + + using TestSoA = TestLayout<>; + + constexpr auto s_tag = "[PortableCollection]"; +} // namespace + +// This test is currently mostly about the code compiling +TEST_CASE("Use of PortableCollection on host code", s_tag) { + auto const size = 10; + PortableCollection coll(size, cms::alpakatools::host()); + + SECTION("Tests") { REQUIRE(coll->metadata().size() == size); } + + static_assert(std::is_same_v, PortableHostCollection>); +} diff --git a/DataFormats/Portable/test/portableObjectOnHost.cc b/DataFormats/Portable/test/portableObjectOnHost.cc new file mode 100644 index 0000000000000..698605b57f465 --- /dev/null +++ b/DataFormats/Portable/test/portableObjectOnHost.cc @@ -0,0 +1,23 @@ +#include + +#include "DataFormats/Portable/interface/PortableObject.h" +#include "DataFormats/Portable/interface/PortableHostObject.h" + +namespace { + struct Test { + int a; + float b; + }; + + constexpr auto s_tag = "[PortableObject]"; +} // namespace + +// This test is currently mostly about the code compiling +TEST_CASE("Use of PortableObject on host code", s_tag) { + PortableObject obj(cms::alpakatools::host()); + obj->a = 42; + + SECTION("Tests") { REQUIRE(obj->a == 42); } + + static_assert(std::is_same_v, PortableHostObject>); +} diff --git a/DataFormats/Portable/test/test_catch2_main.cc b/DataFormats/Portable/test/test_catch2_main.cc new file mode 100644 index 0000000000000..b3143fbb1788b --- /dev/null +++ b/DataFormats/Portable/test/test_catch2_main.cc @@ -0,0 +1,2 @@ +#define CATCH_CONFIG_MAIN +#include From 1143991b0e5c92f27219d93f011059b7dc947ce6 Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Wed, 8 Nov 2023 18:57:12 +0100 Subject: [PATCH 168/281] Simplify the definition of Portable{Collection,Object} alias templates Also move the CopyTo{Host,Device} specialisations to interface/ as they are independent from ALPAKA_ACCELERATOR_NAMESPACE. --- .../Portable/interface/PortableCollection.h | 39 ++++++++++++- .../interface/PortableHostCollection.h | 10 ---- .../Portable/interface/PortableHostObject.h | 10 ---- .../Portable/interface/PortableObject.h | 43 ++++++++++++++- .../interface/alpaka/PortableCollection.h | 55 +------------------ .../interface/alpaka/PortableObject.h | 55 +------------------ 6 files changed, 81 insertions(+), 131 deletions(-) diff --git a/DataFormats/Portable/interface/PortableCollection.h b/DataFormats/Portable/interface/PortableCollection.h index 9a0498944688d..abc64b99cb0d3 100644 --- a/DataFormats/Portable/interface/PortableCollection.h +++ b/DataFormats/Portable/interface/PortableCollection.h @@ -3,13 +3,24 @@ #include -#include "HeterogeneousCore/AlpakaInterface/interface/traits.h" +#include "DataFormats/Portable/interface/PortableHostCollection.h" +#include "DataFormats/Portable/interface/PortableDeviceCollection.h" +#include "HeterogeneousCore/AlpakaInterface/interface/CopyToDevice.h" +#include "HeterogeneousCore/AlpakaInterface/interface/CopyToHost.h" namespace traits { // trait for a generic SoA-based product template >> - struct PortableCollectionTrait; + struct PortableCollectionTrait { + using CollectionType = PortableDeviceCollection; + }; + + // specialise for host device + template + struct PortableCollectionTrait { + using CollectionType = PortableHostCollection; + }; } // namespace traits @@ -17,4 +28,28 @@ namespace traits { template >> using PortableCollection = typename traits::PortableCollectionTrait::CollectionType; +// define how to copy PortableCollection between host and device +namespace cms::alpakatools { + template + struct CopyToHost> { + template + static auto copyAsync(TQueue& queue, PortableDeviceCollection const& srcData) { + PortableHostCollection dstData(srcData->metadata().size(), queue); + alpaka::memcpy(queue, dstData.buffer(), srcData.buffer()); + return dstData; + } + }; + + template + struct CopyToDevice> { + template + static auto copyAsync(TQueue& queue, PortableHostCollection const& srcData) { + using TDevice = typename alpaka::trait::DevType::type; + PortableDeviceCollection dstData(srcData->metadata().size(), queue); + alpaka::memcpy(queue, dstData.buffer(), srcData.buffer()); + return dstData; + } + }; +} // namespace cms::alpakatools + #endif // DataFormats_Portable_interface_PortableCollection_h diff --git a/DataFormats/Portable/interface/PortableHostCollection.h b/DataFormats/Portable/interface/PortableHostCollection.h index e73e70e724bb6..8b098688455e8 100644 --- a/DataFormats/Portable/interface/PortableHostCollection.h +++ b/DataFormats/Portable/interface/PortableHostCollection.h @@ -6,7 +6,6 @@ #include -#include "DataFormats/Portable/interface/PortableCollection.h" #include "HeterogeneousCore/AlpakaInterface/interface/config.h" #include "HeterogeneousCore/AlpakaInterface/interface/host.h" #include "HeterogeneousCore/AlpakaInterface/interface/memory.h" @@ -87,13 +86,4 @@ class PortableHostCollection { View view_; //! }; -// Make PortableCollection alias template to work also -// independently of ALPAKA_ACCELERATOR_NAMESPACE -namespace traits { - template - struct PortableCollectionTrait { - using CollectionType = PortableHostCollection; - }; -} // namespace traits - #endif // DataFormats_Portable_interface_PortableHostCollection_h diff --git a/DataFormats/Portable/interface/PortableHostObject.h b/DataFormats/Portable/interface/PortableHostObject.h index c0f476d2f2d2a..348da4f8c505d 100644 --- a/DataFormats/Portable/interface/PortableHostObject.h +++ b/DataFormats/Portable/interface/PortableHostObject.h @@ -7,7 +7,6 @@ #include -#include "DataFormats/Portable/interface/PortableObject.h" #include "HeterogeneousCore/AlpakaInterface/interface/config.h" #include "HeterogeneousCore/AlpakaInterface/interface/host.h" #include "HeterogeneousCore/AlpakaInterface/interface/memory.h" @@ -79,13 +78,4 @@ class PortableHostObject { Product* product_; }; -// Make PortableObject alias template to work also -// independently of ALPAKA_ACCELERATOR_NAMESPACE -namespace traits { - template - struct PortableObjectTrait { - using ProductType = PortableHostObject; - }; -} // namespace traits - #endif // DataFormats_Portable_interface_PortableHostObject_h diff --git a/DataFormats/Portable/interface/PortableObject.h b/DataFormats/Portable/interface/PortableObject.h index a4737e67e7dd7..c9aadb160bb05 100644 --- a/DataFormats/Portable/interface/PortableObject.h +++ b/DataFormats/Portable/interface/PortableObject.h @@ -5,16 +5,53 @@ #include +#include "DataFormats/Portable/interface/PortableHostObject.h" +#include "DataFormats/Portable/interface/PortableDeviceObject.h" +#include "HeterogeneousCore/AlpakaInterface/interface/CopyToDevice.h" +#include "HeterogeneousCore/AlpakaInterface/interface/CopyToHost.h" + namespace traits { - // trait for a generic SoA-based product + // trait for a generic struct-based product template >> - struct PortableObjectTrait; + struct PortableObjectTrait { + using ProductType = PortableDeviceObject; + }; + + // specialise for host device + template + struct PortableObjectTrait { + using ProductType = PortableHostObject; + }; } // namespace traits -// type alias for a generic SoA-based product +// type alias for a generic struct-based product template >> using PortableObject = typename traits::PortableObjectTrait::ProductType; +// define how to copy PortableObject between host and device +namespace cms::alpakatools { + template + struct CopyToHost> { + template + static auto copyAsync(TQueue& queue, PortableDeviceObject const& srcData) { + PortableHostObject dstData(queue); + alpaka::memcpy(queue, dstData.buffer(), srcData.buffer()); + return dstData; + } + }; + + template + struct CopyToDevice> { + template + static auto copyAsync(TQueue& queue, PortableHostObject const& srcData) { + using TDevice = typename alpaka::trait::DevType::type; + PortableDeviceObject dstData(queue); + alpaka::memcpy(queue, dstData.buffer(), srcData.buffer()); + return dstData; + } + }; +} // namespace cms::alpakatools + #endif // DataFormats_Portable_interface_PortableObject_h diff --git a/DataFormats/Portable/interface/alpaka/PortableCollection.h b/DataFormats/Portable/interface/alpaka/PortableCollection.h index 232f0eefdd038..1f9fa22e49cd8 100644 --- a/DataFormats/Portable/interface/alpaka/PortableCollection.h +++ b/DataFormats/Portable/interface/alpaka/PortableCollection.h @@ -4,11 +4,7 @@ #include #include "DataFormats/Portable/interface/PortableCollection.h" -#include "DataFormats/Portable/interface/PortableHostCollection.h" -#include "DataFormats/Portable/interface/PortableDeviceCollection.h" #include "HeterogeneousCore/AlpakaInterface/interface/config.h" -#include "HeterogeneousCore/AlpakaInterface/interface/CopyToDevice.h" -#include "HeterogeneousCore/AlpakaInterface/interface/CopyToHost.h" // This header is not used by PortableCollection, but is included here to automatically // provide its content to users of ALPAKA_ACCELERATOR_NAMESPACE::PortableCollection. @@ -16,57 +12,10 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { -#if defined ALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLED - // ... or any other CPU-based accelerators - - // generic SoA-based product in host memory - template - using PortableCollection = ::PortableHostCollection; - -#else - - // generic SoA-based product in device memory + // generic SoA-based product in the device (that may be host) memory template - using PortableCollection = ::PortableDeviceCollection; - -#endif // ALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLED + using PortableCollection = ::PortableCollection; } // namespace ALPAKA_ACCELERATOR_NAMESPACE -// For DevHost the specialisation is already done in the PortableHostCollection.h -#ifndef ALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLED -namespace traits { - - // specialise the trait for the device provided by the ALPAKA_ACCELERATOR_NAMESPACE - template - struct PortableCollectionTrait { - using CollectionType = ALPAKA_ACCELERATOR_NAMESPACE::PortableCollection; - }; - -} // namespace traits -#endif - -namespace cms::alpakatools { - template - struct CopyToHost> { - template - static auto copyAsync(TQueue& queue, PortableDeviceCollection const& srcData) { - PortableHostCollection dstData(srcData->metadata().size(), queue); - alpaka::memcpy(queue, dstData.buffer(), srcData.buffer()); - return dstData; - } - }; - - template - struct CopyToDevice> { - template - static auto copyAsync(TQueue& queue, PortableHostCollection const& srcData) { - using TDevice = typename alpaka::trait::DevType::type; - PortableDeviceCollection dstData(srcData->metadata().size(), queue); - alpaka::memcpy(queue, dstData.buffer(), srcData.buffer()); - return dstData; - } - }; -} // namespace cms::alpakatools - #endif // DataFormats_Portable_interface_alpaka_PortableCollection_h diff --git a/DataFormats/Portable/interface/alpaka/PortableObject.h b/DataFormats/Portable/interface/alpaka/PortableObject.h index f58c487be7dd9..417173176b203 100644 --- a/DataFormats/Portable/interface/alpaka/PortableObject.h +++ b/DataFormats/Portable/interface/alpaka/PortableObject.h @@ -4,11 +4,7 @@ #include #include "DataFormats/Portable/interface/PortableObject.h" -#include "DataFormats/Portable/interface/PortableHostObject.h" -#include "DataFormats/Portable/interface/PortableDeviceObject.h" #include "HeterogeneousCore/AlpakaInterface/interface/config.h" -#include "HeterogeneousCore/AlpakaInterface/interface/CopyToDevice.h" -#include "HeterogeneousCore/AlpakaInterface/interface/CopyToHost.h" // This header is not used by PortableObject, but is included here to automatically // provide its content to users of ALPAKA_ACCELERATOR_NAMESPACE::PortableObject. @@ -16,57 +12,10 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { -#if defined ALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLED - // ... or any other CPU-based accelerators - - // generic SoA-based product in host memory - template - using PortableObject = ::PortableHostObject; - -#else - - // generic SoA-based product in device memory + // generic struct-based product in the device (that may be host) memory template - using PortableObject = ::PortableDeviceObject; - -#endif // ALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLED + using PortableObject = ::PortableObject; } // namespace ALPAKA_ACCELERATOR_NAMESPACE -// For DevHost the specialisation is already done in the PortableHostCollection.h -#ifndef ALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLED -namespace traits { - - // specialise the trait for the device provided by the ALPAKA_ACCELERATOR_NAMESPACE - template - struct PortableObjectTrait { - using ProductType = ALPAKA_ACCELERATOR_NAMESPACE::PortableObject; - }; - -} // namespace traits -#endif - -namespace cms::alpakatools { - template - struct CopyToHost> { - template - static auto copyAsync(TQueue& queue, PortableDeviceObject const& srcData) { - PortableHostObject dstData(queue); - alpaka::memcpy(queue, dstData.buffer(), srcData.buffer()); - return dstData; - } - }; - - template - struct CopyToDevice> { - template - static auto copyAsync(TQueue& queue, PortableHostObject const& srcData) { - using TDevice = typename alpaka::trait::DevType::type; - PortableDeviceObject dstData(queue); - alpaka::memcpy(queue, dstData.buffer(), srcData.buffer()); - return dstData; - } - }; -} // namespace cms::alpakatools - #endif // DataFormats_Portable_interface_alpaka_PortableObject_h From 8ede666c5d9be917158fc14608bba7b299f8546d Mon Sep 17 00:00:00 2001 From: Chris Jones Date: Fri, 22 Dec 2023 13:20:13 -0600 Subject: [PATCH 169/281] Start work for stream modules to explicitly request Run/Lumis Added edm::stream::WatchRuns/WatchLuminosityBlocks as template arguments for stream modules. This will later be required to use Run/LuminosityBlock transition calls. Added all the additional classes that will ultimately be needed though for now the base class still has the needed virtual functions. --- .../Framework/interface/moduleAbilityEnums.h | 40 +----------------- .../interface/stream/AbilityChecker.h | 13 ++++++ .../interface/stream/AbilityToImplementor.h | 12 ++++++ .../interface/stream/EDAnalyzerAdaptor.h | 2 + .../interface/stream/EDAnalyzerAdaptorBase.h | 4 +- .../interface/stream/ProducingModuleAdaptor.h | 3 ++ .../stream/ProducingModuleAdaptorBase.h | 4 +- .../Framework/interface/stream/implementors.h | 21 ++++++++++ .../interface/stream/moduleAbilities.h | 42 +++++++++++++++++++ .../test/stubs/TestStreamAnalyzers.cc | 13 +++--- .../Framework/test/stubs/TestStreamFilters.cc | 13 +++--- .../test/stubs/TestStreamProducers.cc | 13 +++--- FWCore/Modules/src/LogErrorFilter.cc | 2 +- 13 files changed, 124 insertions(+), 58 deletions(-) create mode 100644 FWCore/Framework/interface/stream/moduleAbilities.h diff --git a/FWCore/Framework/interface/moduleAbilityEnums.h b/FWCore/Framework/interface/moduleAbilityEnums.h index 9b2c2a4488c9b..323702643b34b 100644 --- a/FWCore/Framework/interface/moduleAbilityEnums.h +++ b/FWCore/Framework/interface/moduleAbilityEnums.h @@ -45,49 +45,13 @@ namespace edm { kOneSharedResources, kOneWatchRuns, kOneWatchLuminosityBlocks, + kStreamWatchRuns, + kStreamWatchLuminosityBlocks, kWatchInputFiles, kExternalWork, kAccumulator, kTransformer }; - - namespace AbilityBits { - enum Bits { - kGlobalCache = 1, - kStreamCache = 2, - kRunCache = 4, - kLuminosityBlockCache = 8, - kRunSummaryCache = 16, - kLuminosityBlockSummaryCache = 32, - kBeginRunProducer = 64, - kEndRunProducer = 128, - kOneSharedResources = 256, - kOneWatchRuns = 512, - kOneWatchLuminosityBlocks = 1024, - kWatchInputFiles = 2048 - }; - } - - namespace AbilityToTransitions { - enum Bits { - kBeginStream = AbilityBits::kStreamCache, - kEndStream = AbilityBits::kStreamCache, - - kGlobalBeginRun = AbilityBits::kRunCache | AbilityBits::kRunSummaryCache | AbilityBits::kOneWatchRuns, - kGlobalEndRun = AbilityBits::kRunCache | AbilityBits::kRunSummaryCache | AbilityBits::kEndRunProducer | - AbilityBits::kOneWatchRuns, - kStreamBeginRun = AbilityBits::kStreamCache, - kStreamEndRun = AbilityBits::kStreamCache | AbilityBits::kRunSummaryCache, - - kGlobalBeginLuminosityBlock = AbilityBits::kLuminosityBlockCache | AbilityBits::kLuminosityBlockSummaryCache | - AbilityBits::kOneWatchLuminosityBlocks, - kGlobalEndLuminosityBlock = AbilityBits::kLuminosityBlockCache | AbilityBits::kLuminosityBlockSummaryCache | - AbilityBits::kOneWatchLuminosityBlocks, - kStreamBeginLuminosityBlock = AbilityBits::kStreamCache | AbilityBits::kLuminosityBlockSummaryCache, - kStreamEndLuminosityBlock = AbilityBits::kStreamCache | AbilityBits::kLuminosityBlockSummaryCache - - }; - } } // namespace module } // namespace edm diff --git a/FWCore/Framework/interface/stream/AbilityChecker.h b/FWCore/Framework/interface/stream/AbilityChecker.h index 7b74ba896fe02..58a58fc800436 100644 --- a/FWCore/Framework/interface/stream/AbilityChecker.h +++ b/FWCore/Framework/interface/stream/AbilityChecker.h @@ -22,6 +22,7 @@ // user include files #include "FWCore/Framework/interface/moduleAbilities.h" +#include "FWCore/Framework/interface/stream/moduleAbilities.h" // forward declarations namespace edm { @@ -112,6 +113,16 @@ namespace edm { static constexpr bool kAccumulator = true; }; + template + struct HasAbility : public HasAbility { + static constexpr bool kWatchLuminosityBlocks = true; + }; + + template + struct HasAbility : public HasAbility { + static constexpr bool kWatchRuns = true; + }; + template <> struct HasAbility { static constexpr bool kGlobalCache = false; @@ -130,6 +141,8 @@ namespace edm { static constexpr bool kExternalWork = false; static constexpr bool kAccumulator = false; static constexpr bool kTransformer = false; + static constexpr bool kWatchLuminosityBlocks = true; + static constexpr bool kWatchRuns = true; }; } // namespace impl template diff --git a/FWCore/Framework/interface/stream/AbilityToImplementor.h b/FWCore/Framework/interface/stream/AbilityToImplementor.h index bf63478c0fa5c..c956caec1ed33 100644 --- a/FWCore/Framework/interface/stream/AbilityToImplementor.h +++ b/FWCore/Framework/interface/stream/AbilityToImplementor.h @@ -22,6 +22,7 @@ // user include files #include "FWCore/Framework/interface/moduleAbilities.h" +#include "FWCore/Framework/interface/stream/moduleAbilities.h" #include "FWCore/Framework/interface/stream/implementors.h" // forward declarations @@ -113,6 +114,17 @@ namespace edm { struct AbilityToImplementor { using Type = edm::stream::impl::Accumulator; }; + + template <> + struct AbilityToImplementor { + using Type = edm::stream::impl::WatchRuns; + }; + + template <> + struct AbilityToImplementor { + using Type = edm::stream::impl::WatchLuminosityBlocks; + }; + } // namespace stream } // namespace edm diff --git a/FWCore/Framework/interface/stream/EDAnalyzerAdaptor.h b/FWCore/Framework/interface/stream/EDAnalyzerAdaptor.h index 2a4e28760f961..d13a364889d88 100644 --- a/FWCore/Framework/interface/stream/EDAnalyzerAdaptor.h +++ b/FWCore/Framework/interface/stream/EDAnalyzerAdaptor.h @@ -73,9 +73,11 @@ namespace edm { bool wantsProcessBlocks() const final { return T::HasAbility::kWatchProcessBlock; } bool wantsInputProcessBlocks() const final { return T::HasAbility::kInputProcessBlockCache; } bool wantsGlobalRuns() const final { return T::HasAbility::kRunCache or T::HasAbility::kRunSummaryCache; } + bool wantsStreamRuns() const final { return T::HasAbility::kWatchRuns; } bool wantsGlobalLuminosityBlocks() const final { return T::HasAbility::kLuminosityBlockCache or T::HasAbility::kLuminosityBlockSummaryCache; } + bool wantsStreamLuminosityBlocks() const final { return T::HasAbility::kWatchLuminosityBlocks; } private: using MyGlobal = CallGlobal; diff --git a/FWCore/Framework/interface/stream/EDAnalyzerAdaptorBase.h b/FWCore/Framework/interface/stream/EDAnalyzerAdaptorBase.h index ceaa19ea4b43f..b2cdea8816e8e 100644 --- a/FWCore/Framework/interface/stream/EDAnalyzerAdaptorBase.h +++ b/FWCore/Framework/interface/stream/EDAnalyzerAdaptorBase.h @@ -86,8 +86,8 @@ namespace edm { virtual bool wantsInputProcessBlocks() const = 0; virtual bool wantsGlobalRuns() const = 0; virtual bool wantsGlobalLuminosityBlocks() const = 0; - bool wantsStreamRuns() const { return true; } - bool wantsStreamLuminosityBlocks() const { return true; } + virtual bool wantsStreamRuns() const = 0; + virtual bool wantsStreamLuminosityBlocks() const = 0; std::string workerType() const { return "WorkerT"; } void registerProductsAndCallbacks(EDAnalyzerAdaptorBase const*, ProductRegistry* reg); diff --git a/FWCore/Framework/interface/stream/ProducingModuleAdaptor.h b/FWCore/Framework/interface/stream/ProducingModuleAdaptor.h index afef036dfbcb2..545c125638750 100644 --- a/FWCore/Framework/interface/stream/ProducingModuleAdaptor.h +++ b/FWCore/Framework/interface/stream/ProducingModuleAdaptor.h @@ -67,10 +67,13 @@ namespace edm { return T::HasAbility::kRunCache or T::HasAbility::kRunSummaryCache or T::HasAbility::kBeginRunProducer or T::HasAbility::kEndRunProducer; } + bool wantsStreamRuns() const final { return T::HasAbility::kWatchRuns; } + bool wantsGlobalLuminosityBlocks() const final { return T::HasAbility::kLuminosityBlockCache or T::HasAbility::kLuminosityBlockSummaryCache or T::HasAbility::kBeginLuminosityBlockProducer or T::HasAbility::kEndLuminosityBlockProducer; } + bool wantsStreamLuminosityBlocks() const final { return T::HasAbility::kWatchLuminosityBlocks; } bool hasAcquire() const final { return T::HasAbility::kExternalWork; } diff --git a/FWCore/Framework/interface/stream/ProducingModuleAdaptorBase.h b/FWCore/Framework/interface/stream/ProducingModuleAdaptorBase.h index b68806dcab1dc..99c2581fbf288 100644 --- a/FWCore/Framework/interface/stream/ProducingModuleAdaptorBase.h +++ b/FWCore/Framework/interface/stream/ProducingModuleAdaptorBase.h @@ -93,8 +93,8 @@ namespace edm { virtual bool wantsGlobalLuminosityBlocks() const = 0; virtual bool hasAcquire() const = 0; virtual bool hasAccumulator() const = 0; - bool wantsStreamRuns() const { return true; } - bool wantsStreamLuminosityBlocks() const { return true; } + virtual bool wantsStreamRuns() const = 0; + virtual bool wantsStreamLuminosityBlocks() const = 0; void registerProductsAndCallbacks(ProducingModuleAdaptorBase const*, ProductRegistry* reg); diff --git a/FWCore/Framework/interface/stream/implementors.h b/FWCore/Framework/interface/stream/implementors.h index a49a4132c34f6..64ffe5acc87cc 100644 --- a/FWCore/Framework/interface/stream/implementors.h +++ b/FWCore/Framework/interface/stream/implementors.h @@ -291,6 +291,27 @@ namespace edm { virtual void acquire(Event const&, edm::EventSetup const&, WaitingTaskWithArenaHolder) = 0; }; + class WatchLuminosityBlocks { + public: + WatchLuminosityBlocks() = default; + WatchLuminosityBlocks(WatchLuminosityBlocks const&) = delete; + WatchLuminosityBlocks& operator=(WatchLuminosityBlocks const&) = delete; + virtual ~WatchLuminosityBlocks() noexcept(false){}; + + // virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) = 0; + // virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) {} + }; + + class WatchRuns { + public: + WatchRuns() = default; + WatchRuns(WatchRuns const&) = delete; + WatchRuns& operator=(WatchRuns const&) = delete; + virtual ~WatchRuns() noexcept(false){}; + + // virtual void beginRun(edm::Run const&, edm::EventSetup const&) = 0; + // virtual void endRun(edm::Run const&, edm::EventSetup const&) {} + }; class Transformer : private TransformerBase, public EDProducerBase { public: Transformer() = default; diff --git a/FWCore/Framework/interface/stream/moduleAbilities.h b/FWCore/Framework/interface/stream/moduleAbilities.h new file mode 100644 index 0000000000000..0d1a56408a53d --- /dev/null +++ b/FWCore/Framework/interface/stream/moduleAbilities.h @@ -0,0 +1,42 @@ +#ifndef FWCore_Framework_stream_moduleAbilities_h +#define FWCore_Framework_stream_moduleAbilities_h +// -*- C++ -*- +// +// Package: FWCore/Framework +// Class : moduleAbilities +// +/**\file moduleAbilities moduleAbilities.h "FWCore/Framework/interface/one/moduleAbilities.h" + + Description: Template arguments which only apply to stream::{Module} classes + + Usage: + + +*/ +// +// Original Author: Chris Jones +// Created: Fri, 22 Dec 2023 19:38:53 GMT +// + +// system include files + +// user include files +#include "FWCore/Framework/interface/moduleAbilities.h" + +// forward declarations + +namespace edm { + namespace stream { + struct WatchRuns { + static constexpr module::Abilities kAbilities = module::Abilities::kStreamWatchRuns; + using Type = module::Empty; + }; + + struct WatchLuminosityBlocks { + static constexpr module::Abilities kAbilities = module::Abilities::kStreamWatchLuminosityBlocks; + using Type = module::Empty; + }; + } // namespace stream +} // namespace edm + +#endif diff --git a/FWCore/Framework/test/stubs/TestStreamAnalyzers.cc b/FWCore/Framework/test/stubs/TestStreamAnalyzers.cc index 71f84e4469ea6..ae6a0f6357751 100644 --- a/FWCore/Framework/test/stubs/TestStreamAnalyzers.cc +++ b/FWCore/Framework/test/stubs/TestStreamAnalyzers.cc @@ -105,7 +105,7 @@ namespace edmtest { } }; - class RunIntAnalyzer : public edm::stream::EDAnalyzer> { + class RunIntAnalyzer : public edm::stream::EDAnalyzer, edm::stream::WatchRuns> { public: static std::atomic m_count; unsigned int trans_; @@ -163,7 +163,8 @@ namespace edmtest { } }; - class LumiIntAnalyzer : public edm::stream::EDAnalyzer> { + class LumiIntAnalyzer + : public edm::stream::EDAnalyzer, edm::stream::WatchLuminosityBlocks> { public: static std::atomic m_count; unsigned int trans_; @@ -236,8 +237,9 @@ namespace edmtest { } }; - class RunSummaryIntAnalyzer - : public edm::stream::EDAnalyzer, edm::RunSummaryCache> { + class RunSummaryIntAnalyzer : public edm::stream::EDAnalyzer, + edm::RunSummaryCache, + edm::stream::WatchRuns> { public: static std::atomic m_count; unsigned int trans_; @@ -321,7 +323,8 @@ namespace edmtest { }; class LumiSummaryIntAnalyzer : public edm::stream::EDAnalyzer, - edm::LuminosityBlockSummaryCache> { + edm::LuminosityBlockSummaryCache, + edm::stream::WatchLuminosityBlocks> { public: static std::atomic m_count; unsigned int trans_; diff --git a/FWCore/Framework/test/stubs/TestStreamFilters.cc b/FWCore/Framework/test/stubs/TestStreamFilters.cc index 6f773b8dc8cd8..3d8122fb9a567 100644 --- a/FWCore/Framework/test/stubs/TestStreamFilters.cc +++ b/FWCore/Framework/test/stubs/TestStreamFilters.cc @@ -106,7 +106,7 @@ namespace edmtest { } }; - class RunIntFilter : public edm::stream::EDFilter> { + class RunIntFilter : public edm::stream::EDFilter, edm::stream::WatchRuns> { public: static std::atomic m_count; unsigned int trans_; @@ -163,7 +163,8 @@ namespace edmtest { } }; - class LumiIntFilter : public edm::stream::EDFilter> { + class LumiIntFilter + : public edm::stream::EDFilter, edm::stream::WatchLuminosityBlocks> { public: static std::atomic m_count; unsigned int trans_; @@ -235,7 +236,8 @@ namespace edmtest { } }; - class RunSummaryIntFilter : public edm::stream::EDFilter, edm::RunSummaryCache> { + class RunSummaryIntFilter + : public edm::stream::EDFilter, edm::RunSummaryCache, edm::stream::WatchRuns> { public: static std::atomic m_count; unsigned int trans_; @@ -321,8 +323,9 @@ namespace edmtest { } }; - class LumiSummaryIntFilter - : public edm::stream::EDFilter, edm::LuminosityBlockSummaryCache> { + class LumiSummaryIntFilter : public edm::stream::EDFilter, + edm::LuminosityBlockSummaryCache, + edm::stream::WatchLuminosityBlocks> { public: static std::atomic m_count; unsigned int trans_; diff --git a/FWCore/Framework/test/stubs/TestStreamProducers.cc b/FWCore/Framework/test/stubs/TestStreamProducers.cc index 148b4abeec2fd..254ebfe2ed048 100644 --- a/FWCore/Framework/test/stubs/TestStreamProducers.cc +++ b/FWCore/Framework/test/stubs/TestStreamProducers.cc @@ -105,7 +105,7 @@ namespace edmtest { } }; - class RunIntProducer : public edm::stream::EDProducer> { + class RunIntProducer : public edm::stream::EDProducer, edm::stream::WatchRuns> { public: static std::atomic m_count; unsigned int trans_; @@ -160,7 +160,8 @@ namespace edmtest { } }; - class LumiIntProducer : public edm::stream::EDProducer> { + class LumiIntProducer + : public edm::stream::EDProducer, edm::stream::WatchLuminosityBlocks> { public: static std::atomic m_count; unsigned int trans_; @@ -229,8 +230,9 @@ namespace edmtest { } }; - class RunSummaryIntProducer - : public edm::stream::EDProducer, edm::RunSummaryCache> { + class RunSummaryIntProducer : public edm::stream::EDProducer, + edm::RunSummaryCache, + edm::stream::WatchRuns> { public: static std::atomic m_count; unsigned int trans_; @@ -315,7 +317,8 @@ namespace edmtest { }; class LumiSummaryIntProducer : public edm::stream::EDProducer, - edm::LuminosityBlockSummaryCache> { + edm::LuminosityBlockSummaryCache, + edm::stream::WatchLuminosityBlocks> { public: static std::atomic m_count; unsigned int trans_; diff --git a/FWCore/Modules/src/LogErrorFilter.cc b/FWCore/Modules/src/LogErrorFilter.cc index ddeafbc807fb3..04c9e76e84669 100644 --- a/FWCore/Modules/src/LogErrorFilter.cc +++ b/FWCore/Modules/src/LogErrorFilter.cc @@ -32,7 +32,7 @@ // class declaration // -class LogErrorFilter : public edm::stream::EDFilter<> { +class LogErrorFilter : public edm::stream::EDFilter { public: explicit LogErrorFilter(edm::ParameterSet const&); ~LogErrorFilter() override; From d48b4999a4da55686f11529d4e4fe0fe3aa897dd Mon Sep 17 00:00:00 2001 From: Duc Hoang Date: Sat, 23 Dec 2023 05:43:49 +0100 Subject: [PATCH 170/281] add update for tauNN with pT calibration --- .../interface/taus/TauNNIdHW.h | 30 +- .../interface/taus/defines.h | 72 ++++ .../taus/nnet_utils/nnet_activation.h | 91 +++++ .../interface/taus/nnet_utils/nnet_common.h | 55 +++ .../interface/taus/nnet_utils/nnet_dense.h | 46 +++ .../taus/nnet_utils/nnet_dense_latency.h | 51 +++ .../interface/taus/nnet_utils/nnet_helpers.h | 20 ++ .../interface/taus/nnet_utils/nnet_mult.h | 104 ++++++ .../interface/taus/nnet_utils/nnet_types.h | 36 ++ .../interface/taus/tau_parameters.h | 323 +++++++++++++----- .../interface/taus/weights/b1.h | 14 - .../interface/taus/weights/b11.h | 11 + .../interface/taus/weights/b14.h | 11 + .../interface/taus/weights/b17.h | 11 + .../interface/taus/weights/b2.h | 17 +- .../interface/taus/weights/b20.h | 11 + .../interface/taus/weights/b3.h | 20 -- .../interface/taus/weights/b4.h | 11 - .../interface/taus/weights/b5.h | 11 + .../interface/taus/weights/b8.h | 11 + .../interface/taus/weights/w1.h | 234 ------------- .../interface/taus/weights/w11.h | 11 + .../interface/taus/weights/w14.h | 11 + .../interface/taus/weights/w17.h | 11 + .../interface/taus/weights/w2.h | 38 +-- .../interface/taus/weights/w20.h | 11 + .../interface/taus/weights/w3.h | 23 -- .../interface/taus/weights/w4.h | 20 -- .../interface/taus/weights/w5.h | 11 + .../interface/taus/weights/w8.h | 11 + .../plugins/L1NNTauProducer.cc | 16 +- .../src/taus/TauNNIdHW.cc | 88 +++-- 32 files changed, 940 insertions(+), 501 deletions(-) create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/defines.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_activation.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_common.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense_latency.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_helpers.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_mult.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_types.h delete mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b1.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b11.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b14.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b17.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b20.h delete mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b3.h delete mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b4.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b5.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b8.h delete mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w1.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w11.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w14.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w17.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w20.h delete mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w3.h delete mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w4.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w5.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w8.h diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/TauNNIdHW.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/TauNNIdHW.h index cee3fa5f2c11c..cf8302dcbf74c 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/TauNNIdHW.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/TauNNIdHW.h @@ -1,32 +1,24 @@ #ifndef L1Trigger_Phase2L1ParticleFlow_TAUNNIDHW_H_ #define L1Trigger_Phase2L1ParticleFlow_TAUNNIDHW_H_ -#include "DataFormats/L1TParticleFlow/interface/layer1_emulator.h" - #include #include -#include "ap_int.h" -#include "ap_fixed.h" + #include "L1Trigger/Phase2L1ParticleFlow/interface/taus/tau_parameters.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/defines.h" +#include "DataFormats/L1TParticleFlow/interface/layer1_emulator.h" #include "DataFormats/L1TParticleFlow/interface/PFCandidate.h" -#include "L1Trigger/Phase2L1ParticleFlow/interface/common/nnet_layer.h" -#include "L1Trigger/Phase2L1ParticleFlow/interface/common/nnet_activation.h" - -//hls-fpga-machine-learning insert weights -#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w1.h" -#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b1.h" -#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w2.h" -#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b2.h" -#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w3.h" -#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b3.h" -#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w4.h" -#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b4.h" - typedef ap_ufixed<16, 14> pt_t; typedef ap_fixed<10, 4> etaphi_t; +// Tau NN returns two values +struct Tau_NN_Result { + result_t nn_pt_correction; + result_t nn_id; +}; + namespace L1TauEmu { // Data types and constants used in the FPGA and FPGA-optimized functions //etaphi_base maps physical eta phi units onto bits @@ -148,8 +140,8 @@ class TauNNIdHW { void initialize(const std::string &iName, int iNParticles); void SetNNVectorVar(); input_t *NNVectorVar() { return NNvectorVar_.data(); } - result_t EvaluateNN(); - result_t compute(const l1t::PFCandidate &iSeed, std::vector &iParts); + Tau_NN_Result EvaluateNN(); + Tau_NN_Result compute(const l1t::PFCandidate &iSeed, std::vector &iParts); //void print(); std::string fInput_; diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/defines.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/defines.h new file mode 100644 index 0000000000000..35690ff867be3 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/defines.h @@ -0,0 +1,72 @@ +#ifndef DEFINES_H_ +#define DEFINES_H_ + +#include "ap_fixed.h" +#include "ap_int.h" + +#include +#include + +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_types.h" + +// hls-fpga-machine-learning insert numbers +#define N_INPUT_1_1 80 +#define N_LAYER_2 25 +#define N_LAYER_2 25 +#define N_LAYER_5 25 +#define N_LAYER_5 25 +#define N_LAYER_8 15 +#define N_LAYER_8 15 +#define N_LAYER_11 15 +#define N_LAYER_11 15 +#define N_LAYER_14 10 +#define N_LAYER_14 10 +#define N_LAYER_17 1 +#define N_LAYER_17 1 +#define N_LAYER_20 1 + +// hls-fpga-machine-learning insert layer-precision +typedef ap_fixed<16,6> input_t; +typedef ap_fixed<24, 12> input2_t; +typedef ap_fixed<16,6> model_default_t; +typedef ap_fixed<16,6> layer2_t; +typedef ap_fixed<9,3> weight2_t; +typedef ap_fixed<9,3> bias2_t; +typedef ap_uint<1> layer2_index; +typedef ap_ufixed<9,0,AP_RND_CONV,AP_SAT> layer4_t; +typedef ap_fixed<18,8> relu_1_table_t; +typedef ap_fixed<16,6> layer5_t; +typedef ap_fixed<9,3> weight5_t; +typedef ap_fixed<9,3> bias5_t; +typedef ap_uint<1> layer5_index; +typedef ap_ufixed<9,0,AP_RND_CONV,AP_SAT> layer7_t; +typedef ap_fixed<18,8> relu_2_table_t; +typedef ap_fixed<16,6> layer8_t; +typedef ap_fixed<9,3> weight8_t; +typedef ap_fixed<9,3> bias8_t; +typedef ap_uint<1> layer8_index; +typedef ap_ufixed<9,0,AP_RND_CONV,AP_SAT> layer10_t; +typedef ap_fixed<18,8> relu_3_table_t; +typedef ap_fixed<16,6> layer11_t; +typedef ap_fixed<9,3> weight11_t; +typedef ap_fixed<9,3> bias11_t; +typedef ap_uint<1> layer11_index; +typedef ap_ufixed<9,0,AP_RND_CONV,AP_SAT> layer13_t; +typedef ap_fixed<18,8> relu_4_table_t; +typedef ap_fixed<16,6> layer14_t; +typedef ap_fixed<9,3> weight14_t; +typedef ap_fixed<9,3> bias14_t; +typedef ap_uint<1> layer14_index; +typedef ap_ufixed<9,0,AP_RND_CONV,AP_SAT> layer16_t; +typedef ap_fixed<18,8> relu_5_table_t; +typedef ap_fixed<16,6> layer17_t; +typedef ap_fixed<16,7> weight17_t; +typedef ap_fixed<16,7> bias17_t; +typedef ap_uint<1> layer17_index; +typedef ap_fixed<16,6> result_t; +typedef ap_fixed<18,8> jetID_output_table_t; +typedef ap_fixed<16,7> weight20_t; +typedef ap_fixed<16,7> bias20_t; +typedef ap_uint<1> layer20_index; + +#endif \ No newline at end of file diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_activation.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_activation.h new file mode 100644 index 0000000000000..302db5f032aeb --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_activation.h @@ -0,0 +1,91 @@ +#ifndef NNET_ACTIVATION_H_ +#define NNET_ACTIVATION_H_ + +#include "ap_fixed.h" +#include "nnet_common.h" +#include + +namespace nnet { + +struct activ_config { + // IO size + static int n_in; + + // Internal info + static const int table_size=1024; + + // Resource reuse info + int io_type = io_parallel; + int reuse_factor = 1; + + // Internal data type definitions + typedef ap_fixed<18, 8> table_t; +}; + +int activ_config::n_in=10; + +// ************************************************* +// RELU Activation +// ************************************************* +template void relu(data_T data[CONFIG_T::n_in], res_T res[CONFIG_T::n_in]) { + + data_T datareg; + for (int ii = 0; ii < CONFIG_T::n_in; ii++) { + datareg = data[ii]; + if (datareg > 0) + res[ii] = datareg; + else + res[ii] = 0; + } +} + +// ************************************************* +// Sigmoid Activation +// ************************************************* +inline float sigmoid_fcn_float(float input) { return 1.0 / (1 + std::exp(-input)); } + +template void init_sigmoid_table(typename CONFIG_T::table_t table_out[N_TABLE]) { + // Default logistic sigmoid function: + // result = 1/(1+e^(-x)) + for (int ii = 0; ii < N_TABLE; ii++) { + // First, convert from table index to X-value (signed 8-bit, range -8 to +8) + float in_val = 2 * 8.0 * (ii - float(N_TABLE) / 2.0) / float(N_TABLE); + // Next, compute lookup table function + typename CONFIG_T::table_t real_val = sigmoid_fcn_float(in_val); + // std::cout << "Lookup table In Value: " << in_val << " Result: " << real_val << std::endl; + table_out[ii] = real_val; + } +} + +template +void sigmoid(data_T data[CONFIG_T::n_in], res_T res[CONFIG_T::n_in]) { + // Initialize the lookup table +#ifdef __HLS_SYN__ + bool initialized = false; + typename CONFIG_T::table_t sigmoid_table[CONFIG_T::table_size]; +#else + static bool initialized = false; + static typename CONFIG_T::table_t sigmoid_table[CONFIG_T::table_size]; +#endif + if (!initialized) { + init_sigmoid_table(sigmoid_table); + initialized = true; + } + + // Index into the lookup table based on data + int data_round; + int index; + for (int ii = 0; ii < CONFIG_T::n_in; ii++) { + data_round = data[ii] * CONFIG_T::table_size / 16; + index = data_round + 8 * CONFIG_T::table_size / 16; + if (index < 0) + index = 0; + if (index > CONFIG_T::table_size - 1) + index = CONFIG_T::table_size - 1; + res[ii] = (res_T)sigmoid_table[index]; + } +} + +} // namespace nnet + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_common.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_common.h new file mode 100644 index 0000000000000..6393623d87ad9 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_common.h @@ -0,0 +1,55 @@ +#ifndef NNET_COMMON_H_ +#define NNET_COMMON_H_ + +#include "ap_fixed.h" + +// This is a substitute for "ceil(n/(float)d)". +#define DIV_ROUNDUP(n, d) ((n + d - 1) / d) +#define MIN(n, d) (n > d ? d : n) +#define MAX(n, d) (n > d ? n : d) + +#define STRINGIFY(x) #x +#define EXPAND_STRING(x) STRINGIFY(x) + +#ifndef __VITIS_HLS__ +#define DATA_PACK_TXT HLS DATA_PACK variable = +#define DATA_PACK_PRAGMA(variable) DATA_PACK_TXT variable +#define PRAGMA_DATA_PACK(variable) _Pragma(EXPAND_STRING(DATA_PACK_PRAGMA(variable))) +#else +#define PRAGMA_DATA_PACK(variable) +#endif + +namespace nnet { + +// Common type definitions +enum io_type { io_parallel = 0, io_stream }; +enum strategy { latency, resource }; + +template class Op_add { + public: + T operator()(T a, T b) { return a + b; } +}; + +template class Op_and { + public: + T operator()(T a, T b) { return a && b; } +}; + +template class Op_or { + public: + T operator()(T a, T b) { return a || b; } +}; + +template class Op_max { + public: + T operator()(T a, T b) { return a >= b ? a : b; } +}; + +template class Op_min { + public: + T operator()(T a, T b) { return a <= b ? a : b; } +}; + +} // namespace nnet + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense.h new file mode 100644 index 0000000000000..9a6f7c7108c3c --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense.h @@ -0,0 +1,46 @@ +#ifndef NNET_DENSE_H_ +#define NNET_DENSE_H_ + + +#include "nnet_common.h" +#include "nnet_dense_latency.h" +#include "nnet_helpers.h" +#include "nnet_mult.h" +#include + +namespace nnet { + +struct dense_config { + // Internal data type definitions + typedef float bias_t; + typedef float weight_t; + typedef float accum_t; + + // Layer Sizes + static int n_in; + static int n_out; + + // Resource reuse info + int io_type = io_parallel; + int strategy = latency; + int reuse_factor = 1; + static const bool store_weights_in_bram = false; + int n_zeros = 0; + // partitioning arrays cyclically to go with roll factors? + // Product function to use + template using product = nnet::product::mult; +}; + +int dense_config::n_in=10; +int dense_config::n_out=10; + +template +void dense(data_T data[CONFIG_T::n_in], res_T res[CONFIG_T::n_out], + typename CONFIG_T::weight_t weights[CONFIG_T::n_in * CONFIG_T::n_out], + typename CONFIG_T::bias_t biases[CONFIG_T::n_out]) { + dense_latency(data, res, weights, biases); +} + +} // namespace nnet + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense_latency.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense_latency.h new file mode 100644 index 0000000000000..04b4b1ea28ff1 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense_latency.h @@ -0,0 +1,51 @@ +#ifndef NNET_DENSE_LATENCY_H_ +#define NNET_DENSE_LATENCY_H_ + + +#include "nnet_common.h" +#include "nnet_helpers.h" +#include "nnet_mult.h" +#include + +namespace nnet { + +template +void dense_latency(data_T data[CONFIG_T::n_in], res_T res[CONFIG_T::n_out], + typename CONFIG_T::weight_t weights[CONFIG_T::n_in * CONFIG_T::n_out], + typename CONFIG_T::bias_t biases[CONFIG_T::n_out]) { + data_T cache; + typename CONFIG_T::accum_t mult[CONFIG_T::n_in * CONFIG_T::n_out]; + typename CONFIG_T::accum_t acc[CONFIG_T::n_out]; + +// Do the matrix-multiply + for (int ii = 0; ii < CONFIG_T::n_in; ii++) { + cache = data[ii]; + for (int jj = 0; jj < CONFIG_T::n_out; jj++) { + int index = ii * CONFIG_T::n_out + jj; + mult[index] = CONFIG_T::template product::product(cache, weights[index]); + } + } + +// Initialize accumulator with input biases + for (int iacc = 0; iacc < CONFIG_T::n_out; iacc++) { + acc[iacc] = (typename CONFIG_T::accum_t)biases[iacc]; + } + +// Accumulate multiplication result + for (int ii = 0; ii < CONFIG_T::n_in; ii++) { + for (int jj = 0; jj < CONFIG_T::n_out; jj++) { + int index = ii * CONFIG_T::n_out + jj; + acc[jj] += mult[index]; + } + } + +// Cast to "res_t" type + for (int ires = 0; ires < CONFIG_T::n_out; ires++) { + // res[ires] = (res_T) (acc[ires]); + res[ires] = cast(acc[ires]); + } +} + +} // namespace nnet + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_helpers.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_helpers.h new file mode 100644 index 0000000000000..62ae98185e4fc --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_helpers.h @@ -0,0 +1,20 @@ +#ifndef NNET_HELPERS_H +#define NNET_HELPERS_H + + +#include +#include +#include +#include +#include +#include +#include +#include + +namespace nnet { + +constexpr int ceillog2(int x) { return (x <= 2) ? 1 : 1 + ceillog2((x + 1) / 2); } + +} // namespace nnet + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_mult.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_mult.h new file mode 100644 index 0000000000000..996a9942a86a5 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_mult.h @@ -0,0 +1,104 @@ +#ifndef NNET_MULT_H_ +#define NNET_MULT_H_ + + +#include "nnet_common.h" +#include "nnet_helpers.h" +#include +#include + +namespace nnet { + +namespace product { + +/* --- + * different methods to perform the product of input and weight, depending on the + * types of each. + * --- */ + +class Product {}; + +template class both_binary : public Product { + public: + static x_T product(x_T a, w_T w) { + return a == w; + } +}; + +template class weight_binary : public Product { + public: + static auto product(x_T a, w_T w) -> decltype(-a) { + if (w == 0) + return -a; + else + return a; + } +}; + +template class data_binary : public Product { + public: + static auto product(x_T a, w_T w) -> decltype(-w) { + if (a == 0) + return -w; + else + return w; + } +}; + +template class weight_ternary : public Product { + public: + static auto product(x_T a, w_T w) -> decltype(-a) { + if (w == 0) + return 0; + else if (w == -1) + return -a; + else + return a; // if(w == 1) + } +}; + +template class mult : public Product { + public: + static auto product(x_T a, w_T w) -> decltype(a * w) { + return a * w; + } +}; + +template class weight_exponential : public Product { + public: + using r_T = ap_fixed<2 * (decltype(w_T::weight)::width + x_T::width), (decltype(w_T::weight)::width + x_T::width)>; + static r_T product(x_T a, w_T w) { + + // Shift by the exponent. Negative weights shift right + r_T y = static_cast(a) << w.weight; + + // Negate or not depending on weight sign + return w.sign == 1 ? y : static_cast(-y); + } +}; + +} // namespace product + +template +inline typename std::enable_if>::value && + std::is_same>::value, + ap_int>::type +cast(typename CONFIG_T::accum_t x) { + return (ap_int)(x - CONFIG_T::n_in / 2) * 2; +} + +template +inline typename std::enable_if< + std::is_same>::value && !std::is_same>::value, res_T>::type +cast(typename CONFIG_T::accum_t x) { + return (res_T)x; +} + +template +inline typename std::enable_if<(!std::is_same>::value), res_T>::type cast(typename CONFIG_T::accum_t x) { + return (res_T)x; +} + +} // namespace nnet + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_types.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_types.h new file mode 100644 index 0000000000000..e8be84b6af4d0 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_types.h @@ -0,0 +1,36 @@ +#ifndef NNET_TYPES_H_ +#define NNET_TYPES_H_ + +#include +#include +#include + +namespace nnet { + +// Fixed-size array +template struct array { + typedef T value_type; + int size = N; + + T data[N]; + + T &operator[](size_t pos) { return data[pos]; } + + const T &operator[](size_t pos) const { return data[pos]; } + + array &operator=(const array &other) { + if (&other == this) + return *this; + + assert(N == other.size && "Array sizes must match."); + + for (unsigned i = 0; i < N; i++) { + data[i] = other[i]; + } + return *this; + } +}; + +} // namespace nnet + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/tau_parameters.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/tau_parameters.h index c6344e19f7c52..427db48de91f4 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/tau_parameters.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/tau_parameters.h @@ -1,100 +1,249 @@ #ifndef PARAMETERS_H_ #define PARAMETERS_H_ -#include -#include "ap_int.h" #include "ap_fixed.h" -#include "L1Trigger/Phase2L1ParticleFlow/interface/common/nnet_layer.h" -#include "L1Trigger/Phase2L1ParticleFlow/interface/common/nnet_activation.h" -#include "L1Trigger/Phase2L1ParticleFlow/interface/common/nnet_common.h" - -//hls-fpga-machine-learning insert numbers -#define N_INPUTS 80 -#define N_LAYER_1 25 -#define N_LAYER_2 10 -#define N_LAYER_3 10 -#define N_OUTPUTS 1 - -//hls-fpga-machine-learning insert layer-precision - -typedef ap_fixed<24, 12> input2_t; -typedef ap_fixed<16, 8> input_t; -typedef ap_fixed<16, 8> layer1_t; -typedef ap_fixed<16, 8> layer2_t; -typedef ap_fixed<16, 8> layer3_t; -typedef ap_fixed<16, 8> result_t; -typedef ap_fixed<16, 8> accum_default_t; -typedef ap_fixed<16, 8> weight_default_t; -typedef ap_fixed<16, 8> bias_default_t; - -//hls-fpga-machine-learning insert layer-config -struct config1 : nnet::layer_config { - static const unsigned n_in = N_INPUTS; - static const unsigned n_out = N_LAYER_1; - static const unsigned io_type = nnet::io_parallel; - static const unsigned reuse_factor = 1; - //static const unsigned reuse_factor = 6; - static const unsigned n_zeros = 0; - static const bool store_weights_in_bram = false; - typedef accum_default_t accum_t; - typedef bias_default_t bias_t; - typedef weight_default_t weight_t; +#include "ap_int.h" + +#include + +// Tau NN components +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_activation.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/defines.h" + +// Load the NN weights +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w2.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b2.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w5.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b5.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w8.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b8.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w11.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b11.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w14.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b14.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w17.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b17.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w20.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b20.h" + +// hls-fpga-machine-learning insert layer-config +// Dense_1 +struct config2 : nnet::dense_config { + static int n_in; + static int n_out; + int io_type = nnet::io_parallel; + int strategy = nnet::latency; + int reuse_factor = 1; + int n_zeros = 1205; + int n_nonzeros = 795; + int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias2_t bias_t; + typedef weight2_t weight_t; + typedef layer2_index index_t; + template + using product = nnet::product::mult; +}; + +int config2::n_in = 80; +int config2::n_out = 25; + +// relu_1 +struct relu_config4 : nnet::activ_config { + static int n_in; + static const int table_size = 1024; + int io_type = nnet::io_parallel; + int reuse_factor = 1; + typedef relu_1_table_t table_t; +}; +int relu_config4::n_in = 25; + +// Dense_2 +struct config5 : nnet::dense_config { + static int n_in; + static int n_out; + int io_type = nnet::io_parallel; + int strategy = nnet::latency; + int reuse_factor = 1; + int n_zeros = 375; + int n_nonzeros = 250; + int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias5_t bias_t; + typedef weight5_t weight_t; + typedef layer5_index index_t; + template + using product = nnet::product::mult; +}; + +int config5::n_in = 25; +int config5::n_out = 25; + +// relu_2 +struct relu_config7 : nnet::activ_config { + static int n_in; + static const int table_size = 1024; + int io_type = nnet::io_parallel; + int reuse_factor = 1; + typedef relu_2_table_t table_t; +}; + +int relu_config7::n_in = 25; + +// Dense_3 +struct config8 : nnet::dense_config { + static int n_in; + static int n_out; + int io_type = nnet::io_parallel; + int strategy = nnet::latency; + int reuse_factor = 1; + int n_zeros = 225; + int n_nonzeros = 150; + int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias8_t bias_t; + typedef weight8_t weight_t; + typedef layer8_index index_t; + template + using product = nnet::product::mult; }; -struct relu_config1 : nnet::activ_config { - static const unsigned n_in = N_LAYER_1; - static const unsigned table_size = 1024; - static const unsigned io_type = nnet::io_parallel; + +int config8::n_in = 25; +int config8::n_out = 15; + +// relu_3 +struct relu_config10 : nnet::activ_config { + static int n_in; + static const int table_size = 1024; + int io_type = nnet::io_parallel; + int reuse_factor = 1; + typedef relu_3_table_t table_t; }; -struct config2 : nnet::layer_config { - static const unsigned n_in = N_LAYER_1; - static const unsigned n_out = N_LAYER_2; - static const unsigned io_type = nnet::io_parallel; - static const unsigned reuse_factor = 1; - //static const unsigned reuse_factor = 6; - static const unsigned n_zeros = 0; - static const bool store_weights_in_bram = false; - typedef accum_default_t accum_t; - typedef bias_default_t bias_t; - typedef weight_default_t weight_t; + +int relu_config10::n_in = 15; + +// Dense_4 +struct config11 : nnet::dense_config { + static int n_in; + static int n_out; + int io_type = nnet::io_parallel; + int strategy = nnet::latency; + int reuse_factor = 1; + int n_zeros = 135; + int n_nonzeros = 90; + int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias11_t bias_t; + typedef weight11_t weight_t; + typedef layer11_index index_t; + template + using product = nnet::product::mult; }; -struct relu_config2 : nnet::activ_config { - static const unsigned n_in = N_LAYER_2; - static const unsigned table_size = 1024; - static const unsigned io_type = nnet::io_parallel; + +int config11::n_in = 15; +int config11::n_out = 15; + +// relu_4 +struct relu_config13 : nnet::activ_config { + static int n_in; + static const int table_size = 1024; + int io_type = nnet::io_parallel; + int reuse_factor = 1; + typedef relu_4_table_t table_t; +}; + +int relu_config13::n_in = 15; + +// Dense_5 +struct config14 : nnet::dense_config { + static int n_in; + static int n_out; + int io_type = nnet::io_parallel; + int strategy = nnet::latency; + int reuse_factor = 1; + int n_zeros = 90; + int n_nonzeros = 60; + int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias14_t bias_t; + typedef weight14_t weight_t; + typedef layer14_index index_t; + template + using product = nnet::product::mult; }; -struct config3 : nnet::layer_config { - static const unsigned n_in = N_LAYER_2; - static const unsigned n_out = N_LAYER_3; - static const unsigned io_type = nnet::io_parallel; - static const unsigned reuse_factor = 1; - //static const unsigned reuse_factor = 6; - static const unsigned n_zeros = 0; - static const bool store_weights_in_bram = false; - typedef accum_default_t accum_t; - typedef bias_default_t bias_t; - typedef weight_default_t weight_t; + +int config14::n_in=15; +int config14::n_out=10; + +// relu_5 +struct relu_config16 : nnet::activ_config { + static int n_in; + static const int table_size=1024; + int io_type = nnet::io_parallel; + int reuse_factor = 1; + typedef relu_5_table_t table_t; }; -struct relu_config3 : nnet::activ_config { - static const unsigned n_in = N_LAYER_3; - static const unsigned table_size = 1024; - static const unsigned io_type = nnet::io_parallel; + +int relu_config16::n_in=10; + +// Dense_6 +struct config17 : nnet::dense_config { + static int n_in; + static int n_out; + int io_type = nnet::io_parallel; + int strategy = nnet::latency; + int reuse_factor = 1; + int n_zeros = 6; + int n_nonzeros = 4; + int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias17_t bias_t; + typedef weight17_t weight_t; + typedef layer17_index index_t; + template + using product = nnet::product::mult; }; -struct config4 : nnet::layer_config { - static const unsigned n_in = N_LAYER_3; - static const unsigned n_out = N_OUTPUTS; - static const unsigned io_type = nnet::io_parallel; - static const unsigned reuse_factor = 1; - //static const unsigned reuse_factor = 6; - static const unsigned n_zeros = 0; - static const bool store_weights_in_bram = false; - typedef accum_default_t accum_t; - typedef bias_default_t bias_t; - typedef weight_default_t weight_t; +int config17::n_in=10; +int config17::n_out=1; + +// jetID_output +struct sigmoid_config19 : nnet::activ_config { + static int n_in; + static const int table_sizetable_size=1024; + int io_type = nnet::io_parallel; + int reuse_factor = 1; + typedef jetID_output_table_t table_t; }; -struct sigmoid_config4 : nnet::activ_config { - static const unsigned n_in = N_OUTPUTS; - static const unsigned table_size = 1024; - static const unsigned io_type = nnet::io_parallel; + +int sigmoid_config19::n_in=1; + +// pT_output +struct config20 : nnet::dense_config { + static int n_in; + static int n_out; + int io_type = nnet::io_parallel; + int strategy = nnet::latency; + int reuse_factor = 1; + int n_zeros = 6; + int n_nonzeros = 4; + int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias20_t bias_t; + typedef weight20_t weight_t; + typedef layer20_index index_t; + template + using product = nnet::product::mult; }; -#endif +int config20::n_in = 10; +int config20::n_out = 1; + +#endif \ No newline at end of file diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b1.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b1.h deleted file mode 100644 index cc14299dc03eb..0000000000000 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b1.h +++ /dev/null @@ -1,14 +0,0 @@ -//Numpy array shape [25] -//Min -0.734825849533 -//Max 1.288661003113 -//Number of zeros 0 - -#ifndef B1_H_ -#define B1_H_ - -weight_default_t b1[25] = {-0.12057505, -0.05409636, 0.27422485, 0.49775919, -0.73482585, 0.44995615, 0.52624124, - -0.71328187, -0.43596983, 0.10772870, -0.68372047, 0.22197038, -0.53673136, -0.00771000, - 0.06140821, 1.28866100, -0.12453079, 0.16897179, 0.18858922, -0.17255782, -0.24242370, - -0.21922758, 0.40799412, 0.46138164, 0.85911417}; - -#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b11.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b11.h new file mode 100644 index 0000000000000..a71cb5d464eef --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b11.h @@ -0,0 +1,11 @@ +//Numpy array shape [15] +//Min -0.062500000000 +//Max 0.250000000000 +//Number of zeros 3 + +#ifndef B11_H_ +#define B11_H_ + +bias11_t b11[15] = {0.031250, 0.000000, 0.000000, 0.078125, 0.234375, -0.062500, 0.093750, 0.000000, 0.062500, 0.109375, -0.062500, -0.015625, 0.250000, 0.109375, -0.046875}; + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b14.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b14.h new file mode 100644 index 0000000000000..1a178dc0e781a --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b14.h @@ -0,0 +1,11 @@ +//Numpy array shape [10] +//Min -0.031250000000 +//Max 0.250000000000 +//Number of zeros 0 + +#ifndef B14_H_ +#define B14_H_ + +bias14_t b14[10] = {0.031250, 0.015625, 0.046875, -0.015625, -0.031250, 0.046875, 0.203125, 0.015625, 0.250000, -0.015625}; + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b17.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b17.h new file mode 100644 index 0000000000000..540e383f1cdf0 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b17.h @@ -0,0 +1,11 @@ +//Numpy array shape [1] +//Min -0.714843750000 +//Max -0.714843750000 +//Number of zeros 0 + +#ifndef B17_H_ +#define B17_H_ + +bias17_t b17[1] = {-0.714844}; + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b2.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b2.h index 8a0d269df26f1..d2bbfa88524a6 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b2.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b2.h @@ -1,20 +1,11 @@ -//Numpy array shape [10] -//Min -0.380347400904 -//Max 0.551839828491 +//Numpy array shape [25] +//Min -0.640625000000 +//Max 1.328125000000 //Number of zeros 0 #ifndef B2_H_ #define B2_H_ -weight_default_t b2[10] = {0.55183983, - 0.36323273, - -0.13108490, - -0.38034740, - 0.08559006, - 0.01700789, - 0.13562575, - -0.32752651, - 0.48282012, - -0.15096320}; +bias2_t b2[25] = {-0.312500, -0.281250, 0.687500, -0.250000, -0.640625, 0.656250, 0.500000, 0.265625, 0.171875, -0.046875, -0.093750, 0.156250, -0.156250, -0.093750, -0.171875, 0.234375, 0.046875, 0.125000, -0.140625, 0.187500, 0.937500, -0.046875, -0.250000, -0.250000, 1.328125}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b20.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b20.h new file mode 100644 index 0000000000000..e54d04a7561dc --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b20.h @@ -0,0 +1,11 @@ +//Numpy array shape [1] +//Min 0.238281250000 +//Max 0.238281250000 +//Number of zeros 0 + +#ifndef B20_H_ +#define B20_H_ + +bias20_t b20[1] = { 0.238281}; + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b3.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b3.h deleted file mode 100644 index 740a1482c32e2..0000000000000 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b3.h +++ /dev/null @@ -1,20 +0,0 @@ -//Numpy array shape [10] -//Min -0.936354994774 -//Max 0.407682240009 -//Number of zeros 0 - -#ifndef B3_H_ -#define B3_H_ - -weight_default_t b3[10] = {-0.58549309, - -0.06117089, - -0.24173595, - 0.17925857, - -0.93635499, - 0.18813914, - 0.13134949, - 0.04132507, - 0.40768224, - 0.29987794}; - -#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b4.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b4.h deleted file mode 100644 index 07d968b7f0a5a..0000000000000 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b4.h +++ /dev/null @@ -1,11 +0,0 @@ -//Numpy array shape [1] -//Min 0.023343238980 -//Max 0.023343238980 -//Number of zeros 0 - -#ifndef B4_H_ -#define B4_H_ - -weight_default_t b4[1] = {0.02334324}; - -#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b5.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b5.h new file mode 100644 index 0000000000000..768de0ca54695 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b5.h @@ -0,0 +1,11 @@ +//Numpy array shape [25] +//Min -0.125000000000 +//Max 0.265625000000 +//Number of zeros 1 + +#ifndef B5_H_ +#define B5_H_ + +bias5_t b5[25] = {-0.015625, 0.046875, -0.109375, 0.078125, 0.171875, 0.156250, 0.062500, 0.171875, 0.109375, 0.265625, 0.234375, 0.125000, -0.046875, -0.062500, 0.015625, -0.062500, 0.156250, 0.093750, 0.078125, -0.109375, 0.109375, 0.093750, 0.000000, -0.125000, 0.140625}; + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b8.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b8.h new file mode 100644 index 0000000000000..7f9f91ad5287a --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b8.h @@ -0,0 +1,11 @@ +//Numpy array shape [15] +//Min -0.109375000000 +//Max 0.265625000000 +//Number of zeros 0 + +#ifndef B8_H_ +#define B8_H_ + +bias8_t b8[15] = {0.093750, 0.046875, -0.015625, 0.265625, 0.046875, -0.078125, 0.031250, -0.062500, -0.015625, 0.015625, 0.062500, 0.062500, -0.109375, -0.046875, 0.140625}; + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w1.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w1.h deleted file mode 100644 index 34e95d5f9469b..0000000000000 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w1.h +++ /dev/null @@ -1,234 +0,0 @@ -//Numpy array shape [80, 25] -//Min -2.676796197891 -//Max 3.172224998474 -//Number of zeros 0 - -#ifndef W1_H_ -#define W1_H_ - -weight_default_t w1[2000] = { - -0.24994563, -0.01592130, 0.02984710, -0.03246316, -0.19607241, -0.02163565, -0.00572438, 0.01376110, 0.06863546, - -0.21986796, -0.05606571, 0.06991967, 0.07118288, -0.00832175, -0.03974251, -0.12646708, 0.01565769, 0.02143256, - 0.04822187, -0.01806841, -0.00104700, 0.08732048, -0.19190465, -0.00814264, -0.15155232, 1.28681350, 0.13748017, - 0.39079481, -0.31852159, -0.28351930, 0.04033466, -0.42634365, -0.13127394, -0.20465094, -0.26889697, 0.70893532, - 0.43394735, 0.70848930, 0.04386011, 0.51139277, 0.40600044, -0.50317824, -0.25791675, 0.66503000, -0.40065920, - 0.65473962, -0.00253041, -0.33962274, -0.08765265, -0.11767972, 0.06714126, -0.60412002, -0.38466910, 0.15584932, - -0.06518575, -0.71045715, 0.46661234, 0.24567224, 0.29929164, 0.07424527, 0.00885416, 0.34313247, -0.40707770, - 0.49099818, -0.74588889, -0.10123775, 0.53515995, -0.42928374, -0.12010060, 0.12295905, -0.69315630, 0.38088876, - 0.01870272, 0.10997168, 0.26679659, 0.93503916, 1.01998508, -0.10151886, 0.15381983, 0.08079384, 0.12287367, - -0.29244336, 0.00544387, -0.31489906, -0.21896380, -0.07303306, 0.38462871, -0.88183403, 0.03077884, 0.05728795, - 1.33863544, 0.30312559, 0.28246397, -0.04266880, -0.50959545, 0.60257953, 0.41271350, 0.17042276, 0.60114610, - 0.22945273, 0.73635733, 0.20843484, 0.33445162, -1.11147344, -0.30075341, 0.51580977, -0.18865807, -0.91119158, - -0.39129823, 0.03684294, -0.68891215, -0.59370238, 0.65122741, -0.17603758, 0.66590655, 1.25159955, -0.37625167, - 0.32980818, 0.77502394, -1.58798909, 0.22748075, -0.95392829, -0.37276012, -0.61004913, 0.92332447, -0.09721770, - -0.72238702, -0.34178290, 1.19741392, -0.44719616, -0.75276721, 0.17758735, 0.02224001, -0.08087371, 0.25889483, - 0.03444218, 0.33437315, -0.78717542, 0.07385066, -1.37520838, -0.00982160, 0.42453086, 0.38150313, 0.19821575, - 0.93540424, -1.05033779, 0.57981151, 0.33810690, 0.24172245, -0.02910789, -2.12628174, -0.63280356, 0.29773250, - 3.17222500, -0.49264374, 0.29331800, 1.39211619, -0.76175922, -0.45130953, 0.42933312, -1.54781485, 0.02419901, - -2.16194177, -0.48207095, -0.31510717, -2.11770678, 0.76639241, 1.87467754, -0.52695322, 1.70596778, -2.33492446, - 0.41794685, 1.27378273, -0.10234303, -0.49648684, 1.86050689, -0.50189257, -0.16991651, -0.46694538, -0.00889901, - 0.58299482, 0.08892005, -0.20688151, 0.31415370, -0.20101114, -0.33977607, 0.07279664, 0.60349727, -0.34133548, - -0.48008150, 1.27710438, -0.29224181, -0.02558731, 0.86315304, 0.27016857, 0.12425910, -0.73576742, -0.41963914, - 0.04202708, 0.95604628, 0.15431352, 0.01539763, -0.01423682, 0.10296305, -0.08639759, 0.11045294, -0.03732327, - 0.13618803, 0.10233897, 0.21258777, 0.09800927, -0.05657235, -0.05041919, -0.16974531, 0.12601873, -0.14161462, - 0.12978475, -0.18991150, 0.07589593, 0.06911660, 0.10042754, -0.24628711, -0.28696042, -0.25114185, 0.07191065, - 0.36939719, 0.20196825, 0.19622889, 0.01961792, -0.52867746, 0.02060650, 0.32239082, 0.21925712, -0.29252347, - -0.07450268, 0.07430969, 0.19808058, -0.08999527, -0.41864324, 0.12763937, 0.10551479, 0.13380286, 0.26029557, - -0.09461474, 0.01125190, -0.01001714, 0.38791370, -0.59581864, -0.31798267, 0.13044289, -0.29599217, 0.06823352, - -0.13354187, -0.04749685, 0.44879583, -0.51446730, 0.37497100, -0.19995253, 0.11865021, -0.35735917, 0.28974858, - 0.12435340, 0.00421873, 0.08717419, -0.20247488, -0.05830143, -0.04514945, 0.03859331, -0.02609805, -0.22617900, - 0.09613950, -0.33556163, 0.23096344, 0.06258421, -0.05920995, -0.81900448, -0.61287695, 0.12958381, 0.79978222, - -0.32717428, 0.23371933, -0.11298512, 0.06942000, 0.52603680, 0.06176474, -1.15612555, 0.38241693, 0.13082752, - -0.69803941, -0.44519529, 0.24077913, -0.18162382, -0.41263813, 0.00626828, -0.56472856, -0.09948663, -0.18302669, - 0.95950598, -0.30670726, 0.02000829, 1.03344405, 0.48644996, 0.34142539, -0.14057057, -0.08406556, 0.58438534, - -0.22699004, -1.44362915, -0.95808500, 0.35579941, 0.29348719, -0.11956982, 0.27683857, 0.57247722, 1.37406516, - 0.18090977, -0.48121765, 0.06628983, -0.17082840, -0.86288124, -0.12994859, -0.10934682, -0.44934374, 0.64140421, - 0.43463030, -0.40653625, -0.92759031, -0.26878390, 0.47970986, -0.45654160, -0.31465080, 0.94702774, -0.16918387, - -0.42442611, 0.00438548, 0.00923580, 0.90002447, -0.55483723, -0.11998936, -0.24002072, 0.48533896, 0.11834613, - -0.07799944, -0.42383757, -0.16936988, -0.90337831, 0.50523067, 0.72644299, 0.32532176, 0.05432085, 0.68847007, - -0.60442829, 0.80158204, 0.99259549, -0.30103669, 0.05667507, 0.36611405, -0.94233608, 0.23696357, -0.61583829, - 0.52145499, 0.14344153, 0.00328588, 0.36766458, -0.71754855, 0.42685041, -0.52480674, -0.41898140, 0.29636848, - -0.70113719, -0.20197862, -0.37344661, -0.17589939, -0.54375410, -0.72718179, -1.11110735, 0.32055253, -0.25643155, - -0.30023971, -0.58632553, 0.50699002, 0.73423439, 0.04769143, -0.69287294, 0.71418941, -0.98707741, -0.48756132, - 0.14591850, -0.00972518, -0.18280549, 0.33020869, 0.07739078, -0.27737662, 0.32508579, 0.52724129, -0.13557516, - 0.27238563, 0.73315942, 0.99855763, 0.84088510, 0.08538753, 0.13155562, -0.14930172, 0.02797297, 0.10585469, - 0.02903437, -0.30760777, -0.08591483, -0.16532275, -0.04133916, 0.12315685, 0.08694953, 0.12440344, -0.39931026, - -0.06502170, -0.07466459, 0.25206035, -0.11492801, 0.01234671, 0.02252278, 0.10730736, 0.00707526, -0.04144976, - 0.16572779, -0.06111651, -0.05090914, 0.22255808, 0.21892326, 0.02140033, -0.26701146, -0.09199855, -0.34320089, - 0.04647652, 0.24066357, 0.00315903, -0.14013545, 0.20657861, 0.19460022, 0.13409390, -0.12650517, -0.00711635, - -0.36546883, -0.27223793, 0.22557122, 0.15888590, -0.19231611, -0.01208463, -0.42694032, 0.00924643, -0.04871246, - 0.14489457, 0.19934957, 0.03268532, -0.26802376, -0.06917346, -0.08818764, -0.06936200, -0.00991716, -0.14875649, - 0.20260695, -0.03016085, -0.11772685, -0.06528303, 0.33984911, -0.42861041, 0.04678998, 0.24468878, -0.26212654, - 0.05760178, -0.01277140, 0.25944546, 0.21451963, -0.22919317, 0.08311309, 0.01015522, -0.07370505, -0.28775448, - 0.28065524, 0.80104679, -0.69237137, 0.09623399, 0.04745018, -0.11536954, 0.21645974, -0.17521553, -0.12839432, - -0.32616171, -0.19263010, -0.05076053, -0.32757092, 0.14068608, -0.31371123, -0.36700678, 1.02383471, 0.41596910, - -0.39243886, -0.39699236, -0.18623418, 0.23590773, 0.44462955, -0.01158825, 0.15543512, 0.36914709, -0.19606984, - 0.04083448, 0.11609410, 0.10854912, -0.93667829, -0.59664226, -0.10577209, -0.03770705, -0.82973319, 0.07100462, - 0.46515539, 0.70493704, 0.11769867, -0.09642658, 0.19184169, -0.60267162, -0.15556012, -0.06323973, 0.25728056, - 0.32714555, 0.37354282, 0.64966816, -0.85379928, -0.52891093, -0.53338081, 0.00071357, -0.80146301, -0.23014045, - 0.31370798, 0.19652064, -0.30330509, 0.59732527, -0.61618036, 0.43174049, -0.33461112, -0.09222537, -0.57418764, - 0.31234556, -0.06441883, -0.29923901, 0.04574157, 0.00199618, -0.07604899, 0.18836573, 0.22399814, 0.11964659, - 0.27587023, 0.54073912, -0.07070547, 1.09669447, 0.60586989, -0.56627184, 0.73163223, -0.06587803, -0.95469141, - 0.05797904, -0.32544577, 0.46618402, -0.42818251, -0.15697184, -0.07984095, -0.06863761, 0.27211952, -0.63966370, - -0.85368210, 1.04474986, -0.03273144, 0.04721467, -0.57129002, -0.51463783, -0.01716019, 0.41848388, -0.92354447, - -0.02085111, -0.35023081, -0.28929639, -0.12352847, -0.06491212, 0.62791741, 0.52128577, -0.08786132, 0.50663567, - -0.85222739, -0.67956436, -0.07901944, -0.20291066, -0.12427756, 0.21070847, 0.36405188, 0.01811016, -0.35558707, - -0.07505420, -0.51016599, 0.08317504, 0.78687006, 0.26184845, 0.32996735, -0.11742579, 0.13708171, 0.09675904, - 0.00351471, 0.17156938, 0.04663955, -0.01313619, 0.07353903, 0.11845510, -0.03040916, -0.11860044, -0.05890951, - 0.13578244, -0.27024615, 0.12044270, -0.06773756, 0.26196989, 0.03754797, -0.69103962, 0.11767364, 0.08418153, - -0.07073509, -0.08945126, -0.04465364, -0.01228451, 0.61217988, 0.36905605, -0.06841971, 0.01820075, 0.22142294, - 0.20999679, -0.00854848, -0.21310976, -0.48690179, -0.06172886, 0.09083650, 0.47623742, -0.38875908, 0.29984316, - 0.35164335, 0.07724196, 0.25907773, -0.03366175, 0.00794181, -0.16796382, 0.12707716, 0.67827290, -0.46863237, - 0.40221474, -0.01072991, -0.01881496, -0.22039062, -0.00463564, -0.20179020, 0.14899430, 0.09645735, 0.08785056, - 0.05667125, -0.08783643, -0.57045329, -0.27956113, 0.32969514, -0.32422251, 0.03947007, 0.04782788, 0.12597121, - 0.12803499, 0.24237561, 0.03641291, 0.02941555, -0.13378389, 0.71286631, 0.13059177, -0.11221728, -0.04303265, - 0.32258469, 0.03121127, 0.19749436, 0.80445844, -0.83933711, 0.40717539, -0.08058111, 0.18654235, 0.58147413, - -0.22004756, -0.21094175, -0.49914742, -0.07245248, 0.21281776, -0.72978270, 0.11609764, -0.12739497, -0.49795446, - 0.91565651, 0.71345496, -0.19992878, 0.12728572, -0.34958413, 0.51537168, 0.36229423, -0.20545541, -0.04014085, - -0.15503673, 0.46182132, -0.18324539, -0.02288571, -0.12150281, -0.35487393, -0.25479561, 0.34288880, 0.01429710, - 0.03762121, 0.01153337, 0.11537866, -0.11222634, -0.04343228, 0.09371492, 0.24208696, 0.02680596, 0.08744393, - -0.01195653, -0.02051427, 0.46111181, 0.34674245, 0.17142926, -0.32360074, -0.30470049, -0.08778754, 0.56703365, - -0.39670938, 0.01970642, -0.24996454, 0.59148031, -0.04976763, 0.42775628, -0.51978588, 0.74823248, -0.24332942, - -0.10120203, -0.71067011, -0.05833459, 0.24460207, 0.12378100, 0.39883280, 0.15179272, -0.45821238, -0.26472330, - -0.11036454, 0.47337988, -0.19236894, 0.44863826, 0.19078662, 0.46045646, 0.55434424, -1.23575699, 0.89674824, - 0.14763579, -0.29703000, 0.11096095, -0.23884353, 0.32712832, -0.55054861, 0.67220551, -0.28248659, -0.10569336, - 0.04621894, -0.49375376, -0.12733379, 0.67400223, -0.12935409, 0.09695239, -0.28661168, -0.36145869, 0.06896356, - 0.46334738, -0.83616781, -0.68781477, -0.22872619, -0.02656318, -0.46397430, -0.16735579, 0.57318032, -0.05219025, - -0.06242780, 0.30701312, -0.43937260, -0.05616235, -0.35246953, 0.47527167, -0.36845928, 0.13797158, 0.46169606, - 0.03073783, -0.16647297, 0.35587814, -0.52273571, 0.22240485, 0.32394350, 0.29325587, 0.38622752, -0.12588513, - 0.21903162, -0.03870760, -0.07586532, 0.09732155, -0.44541699, 0.01353051, 0.07500879, -0.22210084, -0.02879842, - -0.02839135, 0.02233995, 0.01847041, -0.22886260, 0.09602077, -0.10249722, 0.02895709, -0.11213382, -0.32242554, - 0.21315952, 0.13921122, -0.05876900, -0.14110731, 0.17718993, 0.06612965, -0.03701587, 0.34920025, -0.22553837, - -0.25041988, 0.16762421, -0.04839466, -0.57936865, 0.20034809, 0.28770819, 0.07073146, 0.06286270, -0.14398633, - 0.08881986, -0.26472491, 0.27725342, 0.22914961, 0.32062715, 0.15277733, -0.33009961, 0.21074554, -0.15565939, - 0.47236079, 0.03225322, 0.06781324, -0.16307135, 0.73327172, -0.11553932, -0.13312288, -0.30246657, -0.04846320, - -0.39416528, 0.15607847, 0.08472254, -0.12179766, 0.23342557, -0.02313556, -0.16107082, 0.19552790, -0.05060831, - 0.08372914, 0.37613615, -0.26624736, 0.05994382, 0.57154304, -0.03778595, 0.15102805, 0.26144159, -0.64846903, - -0.11667332, 0.64444566, 0.53041399, -0.37275234, 0.12701584, 0.25457710, -0.91777927, 0.63840097, -0.04469256, - -0.01554284, 0.52316505, -0.07778227, -0.11871518, 0.13643374, -0.16263111, 0.12193766, -0.43915382, 0.17769964, - 0.06158905, -0.40595376, 0.36887977, 0.21324196, -0.16621692, 0.07623006, -0.07362154, 0.53180701, 0.40119246, - -0.41867191, -0.17060547, 0.11066595, 0.33041847, -0.30610490, -0.01155049, 0.06596804, 0.06266157, 0.11539320, - 0.53958863, -0.19265023, 0.19687888, -0.32241911, 0.17509246, 0.06316098, 0.22965759, -0.10924519, 0.13696006, - 0.34725070, 0.05508206, -0.31879237, -0.07152238, 0.30400902, 0.47540823, 0.05332027, -1.34034514, -0.63157010, - -0.20077212, 0.82977784, -0.83980680, 0.05455742, 0.23470649, 0.15096639, -0.02279334, 0.74177665, -0.51908326, - 0.57153726, -0.20008761, -0.44515362, -0.52133244, -0.53501129, 0.30665237, 0.03230446, -0.27042213, 0.69568527, - -0.53271943, 0.12585282, 0.84569460, 1.16614997, 0.30099568, 1.01664233, -0.04021535, 0.35936305, 0.12363404, - -0.44788554, 0.65720278, 0.14622304, -0.57894391, -0.17871566, -0.13646793, 0.06899100, -0.13851331, 0.07404158, - -0.32255191, 0.22225420, 0.05467210, -0.22595364, -0.09422892, 0.08064129, -0.14696676, 0.24685700, -0.36180913, - -0.50487852, 0.09818821, 0.23832101, -1.06369340, -0.94318706, 0.00698828, 0.28264612, -0.01870376, -0.69367069, - 0.32556781, 0.29627222, 0.17554468, 0.22879148, -0.32052159, 0.18480402, -0.76028723, 0.17409454, -0.52946806, - -1.31131041, 0.72142994, -0.21024033, 0.65006751, 0.28911707, -0.45603541, 0.30260912, 0.22917707, 0.76010191, - 0.50517660, -0.43544480, 0.01703142, 0.15579990, -0.06952365, 0.26123571, -0.32477272, -0.07388589, 0.23853466, - 0.02649050, -0.04410565, 0.35238847, 0.10454764, -0.21788062, -0.05252795, 0.12990016, -0.20476976, 0.02988371, - -0.20392458, 0.07077907, 0.07255822, 0.03174250, 0.19428524, -0.27959460, 0.17289197, -0.06749524, 0.07314484, - 0.04101936, 0.00711376, 0.39040637, -0.09693181, -0.13249642, 0.06778622, -0.20384689, -0.08403887, -0.06206702, - 0.39903295, 0.01676942, 0.16174519, -0.24540325, -0.15171684, 0.36854738, -0.04578711, -0.20637585, -0.58331889, - 0.23066565, -0.40027916, -0.33852276, 0.22725138, -0.22780336, -0.45288083, 0.05498514, -0.15462326, -0.01167145, - 0.14075157, -0.23809917, -0.04884083, -0.15133418, 0.16887660, 0.08024041, -0.26719818, -0.08086196, 0.27881959, - 0.03904902, -0.05400108, -0.14138514, 0.16911660, -0.10002459, 0.31475541, 0.20939967, 0.07277112, 0.10095973, - 0.33317840, -0.23609909, 0.10387685, 0.08162952, 0.30970895, -0.19202805, 0.11137805, -0.08374452, -0.64609599, - 0.49284625, -0.02431013, 0.22352953, 0.35399213, -0.04173037, 0.01117679, -0.26933041, -0.07039601, 0.30380678, - -0.05741419, 0.47689995, 0.20879868, -0.06093958, -0.08551129, -0.07670606, -0.23868953, -0.26600242, -0.24509941, - 0.40901592, 0.42221358, -0.76004744, 0.13680586, -0.25070697, 0.08168428, -0.19393569, -0.23131981, -0.35523322, - 0.31124046, -0.02291389, 0.52390915, -0.46724460, 0.13923384, -0.12886441, -0.03299529, -0.27032244, -1.19288146, - 0.24336755, -0.20915434, -0.14846808, 0.10754984, 0.02535326, 0.28236297, 0.90321386, 0.28560060, 0.31486535, - -0.78192097, -0.21997991, -0.19503053, 0.71680617, -0.23815078, -0.38749680, 0.09747923, -0.11504970, 0.19734858, - 0.98412722, -0.13073727, 0.75299066, -0.85745215, -0.40456349, -0.51684064, -0.47700635, 0.39638016, 0.17537507, - 0.52784997, 0.63105047, -0.69734496, -0.28434739, 0.58557647, 0.96909130, 0.17804323, 0.09428761, 0.17061329, - 0.33784506, -0.14671242, -0.48270255, 0.31931961, 0.04116327, -0.46874690, -0.45884821, -0.19885214, -0.39863971, - -0.41624883, 0.43567199, -0.28685057, 0.40880397, 0.18431477, -0.15750097, -0.56084317, -0.13018279, 0.18903515, - 0.30848095, -0.34719062, -0.19633505, -0.02658261, 0.24495831, -0.78052413, -0.85096359, -0.37101209, 0.22163752, - -0.14013411, -0.24140479, 0.23052573, 0.54393709, 0.13316275, 0.12203635, 0.20220585, 0.49100202, -0.62808341, - 0.16586047, -0.38358831, -1.00215280, 0.77456385, -0.27937427, 0.11909273, 0.50655580, -0.87544155, 0.59288806, - 0.01167453, 0.57931119, -0.02249480, -0.12532967, -0.25048557, -0.28306130, 0.06188992, 0.48368040, -0.36783400, - -0.21773575, 0.14827894, 0.13848552, 0.04230130, -0.04214389, -0.07091486, -0.04140090, -0.30136281, 0.00464335, - -0.21866782, -0.02765239, -0.17025313, 0.08577426, 0.06893988, 0.11575132, 0.07546596, 0.02867554, 0.19112501, - 0.27582642, 0.12627265, 0.10898180, -0.18745209, 0.23613420, 0.23121634, 0.28491151, 0.02902788, 0.15380767, - 0.03966511, -0.01862929, -0.00648489, 0.01908036, -0.19008325, -0.18426324, -0.07000075, -0.29073888, -0.22639032, - -0.11762336, 0.33500755, -0.21507888, -0.07346634, -0.03355709, -0.04096937, -0.33768243, -0.19027354, -0.18297306, - -0.50098300, -0.02807480, 0.23949267, -0.15996224, -0.07754000, -0.17378184, 0.00657926, 0.39929193, 0.45185298, - -0.34957576, -0.24467568, 0.21933684, -0.10674803, -0.35011348, 0.35258722, -0.14792293, 0.02977267, 0.63623291, - 0.01652745, 0.28561106, -0.24670583, 0.39176771, 0.05463742, 0.32333028, 0.14167164, -0.06670932, 0.23938650, - 0.31829852, -0.41095898, 0.35032102, 0.03883050, 0.14073621, 0.64508480, 0.25743634, -0.24900754, 0.26631746, - -0.12656187, 0.01745303, -0.18157384, 0.34143060, 0.32021353, 0.30565801, -0.26965511, 0.23778385, -0.02008655, - -0.08103817, -0.07159230, 0.32048982, 0.06949183, -2.33522058, 0.02816298, -0.10037031, 0.37423018, -0.22492132, - -0.36854437, 0.40015242, 0.28485346, 0.22778602, 0.19501299, -0.93215930, 0.07858350, -0.40451255, -0.27547240, - -0.02443204, -1.41666114, 0.05133143, -0.06660908, 0.50325763, 0.31695950, -0.18681468, -0.12560664, 2.13244534, - 0.22775133, 0.42665431, -1.29449880, -0.23370074, 0.01759187, 0.25374168, 0.06429626, -0.52347112, 0.34470561, - -0.26376522, -0.04219850, -0.01756793, -0.43413332, -0.22707182, 0.05281873, -0.45199049, 0.04030637, -0.54730064, - -0.13315515, 0.10807105, -0.34840381, -0.12949815, -0.38297817, -0.13845149, 0.97675931, 0.20487542, 0.41703507, - 0.23882188, 0.23847181, 0.40595204, 0.22122343, -0.59291810, 0.16200593, -0.23582739, -0.33778340, -0.05766481, - -0.25944924, -0.28257781, -0.02519164, 0.15628809, 0.22581941, 0.29877603, 0.11747632, -0.13611910, -0.68844485, - 0.10147709, -0.19454663, 0.21278845, 0.02120594, 0.12139316, -0.17088807, 0.38014871, -0.78083509, -0.60448849, - 0.05090213, 0.61401623, -0.32977888, -0.38970327, 0.26832360, 0.53781092, 0.20194471, 0.82220250, 0.23819874, - 0.49616402, -0.43314114, -0.50223577, -0.46702045, -1.17008650, 0.48856854, -0.03626145, 0.75825346, 0.49573380, - -0.68196982, 0.29390180, 0.22509925, 0.79214412, 0.17140889, -0.22514503, 0.10945672, -0.20663217, -0.00440216, - 0.21418120, -0.34781390, -0.11805713, 0.12930803, -0.02661256, -0.16583513, 0.50446808, 0.12406299, -0.18522657, - -0.42358905, 0.14963409, -1.34551275, 0.13522045, 0.17906164, 0.25551242, 0.31629464, -0.21916427, -0.00383488, - -0.16207457, 0.18151720, -0.08251988, 0.89760458, 0.44453332, -0.27497387, 0.29844183, 0.01738336, 0.12566963, - 0.00516657, -0.15164798, -0.07898259, -0.25138238, 0.47278392, 0.46358061, 0.20548722, 0.38698843, -0.07769089, - 0.21403231, -0.12140352, 0.01454621, 0.27465621, -0.04136071, -0.18499696, -0.33877471, -0.52207792, -0.06982010, - -0.67964226, -0.37841988, -0.05654239, -0.44023779, -0.34978950, -0.11707290, 0.43336329, 0.23595251, 0.51182544, - 0.45589104, 0.46062201, -0.28254399, 0.04058569, 0.35703275, 0.09476561, -0.19271792, -0.85225898, 0.18226382, - 0.07547066, -0.23841362, 0.07214766, 0.05686964, -0.64615160, 0.89725614, -0.09489815, -0.24773495, 0.18898845, - -0.05227394, -0.04989563, -0.04141004, -0.68845397, 0.44256380, 0.15174553, 0.16641839, 0.20559123, 0.18821712, - -0.18444933, 0.75212121, 0.04695220, -0.14553900, -0.25279966, -0.78429103, 0.21485479, 0.24854848, -0.34898055, - 0.12131061, -0.01442323, 0.31166860, -0.03168157, 0.23537874, -0.04150987, -0.73491955, 0.30445504, 0.01360191, - 0.11793279, -0.01071012, -0.86158031, -0.44057927, -0.11391853, -0.08041152, 0.30659840, -0.07929188, 0.14337794, - -0.16240485, -0.37871391, -0.12544847, -0.75813878, 0.07463507, 0.30250356, -0.08979524, -0.05500457, -0.00572075, - -0.15594503, 0.03389021, 0.33084431, 0.39045012, -0.42743438, -0.61926889, -1.01879334, 0.43193951, 0.11156862, - -0.76947951, -0.20159762, 0.24022132, 0.20872289, 0.69780248, -0.16525456, 0.63648707, -1.59807694, -0.14674914, - -0.52725124, -0.42184243, 0.85394889, 0.03816247, -0.73201150, 0.72350580, -0.94382733, 0.30476892, 0.62137985, - 0.76275116, 0.58395672, 0.12438627, 0.09742960, 0.15616673, -0.26625797, 0.15280285, 0.40855104, -0.06499965, - 0.07652657, -0.03907230, -0.03445091, -0.13297464, 0.12203576, 0.49042386, -0.46612582, 0.23596950, -0.60011405, - 0.01329148, -0.40629655, 0.34626818, 0.00672128, 0.21219759, 0.12195532, -0.24550790, 0.25495195, 0.50089574, - -0.69004655, -0.82626939, -0.04906785, 0.22566023, -0.19735636, -0.32598498, -0.23328499, 0.59350103, 0.50138974, - 0.03376095, -0.21038638, 0.23230115, -0.67481101, -0.46950540, -0.53264731, -1.31645954, 0.43338448, -0.07359013, - 0.19401260, 0.85574108, -0.58386785, 0.27350774, 0.94151503, 0.99626285, 0.16530964, -0.52822798, 0.02781926, - 0.19514728, 0.02097620, 0.00889074, -0.16201399, -0.07028764, 0.22292475, -0.00996018, 0.11951973, -0.02360463, - 0.18132643, 0.03626538, -0.40536785, -0.24706507, -1.10316157, 0.23488073, -0.11203269, -0.26491979, 0.32530117, - -0.07893114, -0.00744999, 0.26029640, 0.33739540, 0.02217237, 0.02589254, -0.42112139, 0.24534294, 0.70596570, - -0.23823494, -0.01574550, -0.57523948, -0.01305772, -0.10088185, 0.27640396, -0.16561478, 0.15046248, -0.04703883, - 0.12256249, -0.13618535, -0.25345358, 0.13640152, 0.11063136, 0.76222241, 0.26646805, -0.26234278, 0.19928859, - 0.05528985, -0.14719652, 0.09461970, -0.29426023, -0.11857925, -0.33014619, -0.16937710, 0.49556774, 0.09860725, - -0.08043962, 0.60073936, -0.16133121, 0.60515904, 0.05304303, 0.21871525, 0.45007041, -0.18452203, -0.23329300, - 0.15948120, 0.03171407, 0.05523947, -0.19391575, -0.06312876, 0.05657719, -0.01570622, 0.34798819, 0.35875756, - 0.64115590, -0.12868474, -0.21662687, -0.07916048, -0.02071994, -0.39688477, 0.34791452, -0.01536988, -0.01980658, - 0.20821385, 0.32254547, 0.03658571, 0.53079057, 0.11581320, -0.52330321, 0.08113370, -0.35415897, -0.01983317, - 0.34641969, -0.06101644, -0.00271639, -0.19201282, -0.43245769, -0.21427184, 0.11255077, -0.15757668, -1.97429311, - 0.25491333, 0.18619338, -0.13669698, -0.33716843, -1.20977962, -0.06677102, 0.12260284, 0.31985071, 0.98761481, - -0.66411626, -0.41700807, -0.00110240, -0.32249039, 0.21490636, -0.67965972, -0.16568908, -0.11263562, -1.06136537, - -0.06080189, 0.00003523, -0.27638850, 0.54172385, 0.15916675, 0.66536385, -0.61083424, -1.17721260, -0.79620224, - 1.62779248, -1.29850137, -0.40923908, -0.21678016, 1.11565304, 1.38857508, 1.67485464, -0.48776993, 1.54490137, - -0.99453592, -0.23702216, -1.28989625, -0.32184783, 1.73645914, 0.50596559, -0.42633674, 2.06059289, -1.31561661, - 0.09407058, 0.71311694, 1.60583699, 0.67549241, -0.75638843, -0.11993816, 0.25794804, -0.30944440, -0.43204123, - 0.36899459, 0.19363843, -0.08060863, -0.05935695, 0.27492559, -0.16506658, -0.00417477, 0.57574582, -0.39738783, - 0.30795437, -1.27800059, -0.36806244, 0.00201544, 0.41062146, -0.01292078, 0.33908349, 0.05562977, 0.15150607, - 0.33948043, -0.19380097, -0.34239587, -0.26843691, 0.14322159, 0.16285747, -0.12242185, -0.39411676, -0.39972457, - 0.32914063, -0.14964050, 0.18657172, -0.32965264, 0.50208765, -0.61841202, -0.96437931, -0.19447599, -1.48685813, - 0.36768064, -0.19042422, -0.14381048, 0.16720532, -0.38585469, 0.28041863, 1.07230306, 0.34857085, 0.56100559, - -0.60621732, -0.27094939, 0.03308203, 0.28440759, -0.05372868, -0.37450859, -0.23122661, 0.14196907, -0.08391851, - 0.58788222, 0.06581475, 0.12165748, -0.56094503, -0.62536222, -0.32290021, -1.14628315, 0.28745806, 0.09321925, - -0.11868286, 0.73546922, -0.14506210, 0.10030940, 0.65942341, 0.56377023, 0.38628533, -0.42766783, -0.12002008, - -0.27770182, 0.38072130, -0.41092056, 0.07260298, 0.32786149, -0.18012661, -0.02678201, 0.29315698, -0.62710303, - 0.16001518, -0.31741443, -0.36174574, -0.17293620, -0.11350867, 0.18780905, 0.17321175, 0.81462449, 0.27337193, - -0.34306210, -0.12359867, 0.26058146, 0.48336327, 0.48286983, 0.00497185, -0.08108788, -0.37280399, -0.07095718, - 0.07272183, 0.25405398, -0.01350151, 0.19333066, 0.50434202, 0.30863705, 0.23423783, 0.27947450, -0.35671273, - 0.39509684, -0.28312561, 0.13625887, 0.05653338, 0.26617846, 0.24114241, 0.22899513, -0.34379941, 0.14200218, - 0.16892987, 0.41087806, 0.25089607, -0.16019906, 0.13426897, -0.13074127, -0.23068653, -0.45294666, 0.30708107, - -0.05777374, -0.03524012, -0.18545437, 0.26572716, 0.34135580, -0.10212494, 0.15759155, -0.29985228, 0.00604882, - -1.35232568, 0.02671386, -0.18605591, 0.28203139, 0.06673647, 0.21136442, 0.02198954, -0.02589645, -0.13472135, - -0.33945116, -1.36670744, 0.26497167, -0.01333835, 0.35838512, -0.00214932, -0.67533672, -0.01949281, -0.15939406, - -0.17611854, 0.62018734, -1.11697268, 0.25882152, -0.40646151, -0.21743414, -0.35022104, -0.48264894, 0.15348732, - 0.32525846, -0.62968028, -0.14668293, 0.04142878, -0.18443897, 1.67367685, 0.29640922, 0.54300213, -0.38739282, - -1.12135983, -0.95634991, 1.56781328, -0.78718096, -0.65814853, -0.09405752, 1.45496094, 1.55392945, 1.32255197, - -0.49480981, 1.84735644, -1.09742570, 0.03602623, -1.19865084, 0.01194180, 1.76398528, 0.22691993, -0.24130857, - 2.00458288, -1.63459969, 0.28926355, 0.26902235, 1.57351863, 0.59064698, -2.67679620, 0.40217704, 0.49060968, - 0.01024920, -0.21290652, 0.01566074, -0.11393169, -0.32448450, -0.27194211, 0.21742176, -0.57667369, -0.03412761, - 0.36706647, -0.42090943, 0.39278191, -0.02046515, -0.30790815, -0.07676671, 0.48708537, -0.19606759, 0.39258122, - 0.11010294, 1.56427002, -0.23800702, 0.70309281, -1.84958696, -0.04740064, 0.06504993, 0.21830852, -0.09291255, - -1.47656202, -0.76586556, -0.02407140, -0.12262835, 0.55286926, -0.37243509, -0.11549302, -0.16901262, -0.81201553, - -0.16746910, -1.11338747, -0.03933520, 0.25118551, -0.27406788, 0.25855088, -0.24614365, -0.05488263, 0.42877647, - 0.41920695, 0.49124199}; - -#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w11.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w11.h new file mode 100644 index 0000000000000..c5ce2544821b1 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w11.h @@ -0,0 +1,11 @@ +//Numpy array shape [15, 15] +//Min -0.984375000000 +//Max 1.203125000000 +//Number of zeros 135 + +#ifndef W11_H_ +#define W11_H_ + +weight11_t w11[225] = {0.734375, 0.000000, 0.000000, 1.015625, -0.781250, 0.000000, 1.203125, 0.687500, 0.000000, 0.000000, 0.593750, 0.281250, 0.843750, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, -0.937500, 0.531250, 0.000000, 0.000000, 0.000000, -0.453125, 0.000000, 0.484375, 0.000000, 0.546875, -0.671875, -0.296875, 0.000000, 0.000000, 0.375000, -0.625000, 0.203125, 0.000000, -0.734375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.515625, 0.000000, 0.000000, 0.500000, -0.453125, 0.000000, 0.000000, 0.500000, -0.359375, 0.000000, 0.000000, 0.000000, 0.468750, 0.000000, 0.000000, 0.000000, 0.328125, -0.406250, 0.000000, 0.359375, 0.359375, -0.375000, 0.000000, 0.000000, -0.296875, 0.406250, 0.000000, 0.000000, 0.406250, 0.328125, -0.515625, 0.421875, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, -0.453125, 0.000000, 0.000000, 0.000000, -0.375000, 0.000000, -0.453125, -0.984375, 0.000000, -0.406250, 0.000000, 0.421875, -0.343750, 0.000000, 0.000000, 0.000000, -0.437500, 0.000000, 0.343750, 0.000000, 0.375000, -0.453125, 0.000000, -0.343750, 0.000000, -0.421875, 0.000000, 0.406250, 0.000000, 0.328125, 0.343750, 0.375000, 0.000000, -0.343750, 0.000000, 0.328125, 0.000000, -0.359375, 0.000000, 0.000000, -0.453125, 0.000000, 0.000000, 0.000000, 0.000000, 0.328125, 0.000000, 0.468750, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, 0.000000, 0.531250, -0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.671875, 0.000000, 0.000000, 0.000000, 0.437500, 0.000000, 0.000000, 0.000000, -0.765625, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, 0.343750, 0.000000, -0.437500, -0.375000, 0.000000, 0.000000, 0.375000, 0.296875, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.562500, 0.000000, -0.421875, 0.000000, 0.000000, 0.312500, -0.140625, 0.359375, -0.390625, -0.359375, 0.406250, 0.625000, -0.484375, 0.000000, 0.000000, 0.687500, -0.406250}; + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w14.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w14.h new file mode 100644 index 0000000000000..6348b92de90d2 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w14.h @@ -0,0 +1,11 @@ +//Numpy array shape [15, 10] +//Min -0.921875000000 +//Max 1.031250000000 +//Number of zeros 90 + +#ifndef W14_H_ +#define W14_H_ + +weight14_t w14[150] = {-0.296875, -0.843750, 0.000000, 0.000000, -0.406250, 0.000000, -0.281250, 1.031250, 0.000000, 0.000000, 0.453125, 0.000000, 0.359375, 0.375000, 0.406250, -0.421875, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, 0.828125, 0.000000, 0.000000, 0.000000, 0.000000, -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.406250, 0.796875, 0.421875, 0.640625, 0.546875, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, -0.328125, -0.890625, 0.000000, 0.859375, 0.750000, 0.000000, 0.453125, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.000000, -0.328125, -0.359375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.750000, 0.640625, 0.000000, 0.000000, 0.000000, -0.484375, 0.000000, 0.000000, -0.421875, 0.000000, -0.421875, 0.781250, 0.000000, 0.000000, 0.437500, 0.000000, 0.328125, 0.000000, 0.359375, 0.000000, 0.000000, 0.000000, -0.546875, 0.000000, 0.484375, 0.640625, 0.531250, 0.000000, 0.000000, 0.000000, 0.625000, -0.296875, 0.000000, -0.437500, 0.000000, 0.000000, 0.000000, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, 0.000000, -0.296875, -0.390625, 0.375000, 0.000000, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, -0.671875, 0.000000, -0.921875, 0.000000, -0.875000, 0.000000, 0.000000, 0.000000, 0.468750, 0.718750, 0.484375, 0.812500, 0.000000, 0.375000, 0.000000, 0.000000, -0.390625, 0.000000, -0.390625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.390625, 0.000000}; + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w17.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w17.h new file mode 100644 index 0000000000000..50bb1a4d51058 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w17.h @@ -0,0 +1,11 @@ +//Numpy array shape [10, 1] +//Min -2.798828125000 +//Max 1.773437500000 +//Number of zeros 6 + +#ifndef W17_H_ +#define W17_H_ + +weight17_t w17[10] = { 0.000000, 1.773438, 1.755859, 0.000000, 0.000000, 0.000000, 1.603516, 0.000000, -2.798828, 0.000000}; + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w2.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w2.h index 592ab44151bbc..73e2a1ac748dd 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w2.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w2.h @@ -1,39 +1,11 @@ -//Numpy array shape [25, 10] -//Min -1.512127518654 -//Max 2.787853240967 -//Number of zeros 0 +//Numpy array shape [80, 25] +//Min -1.515625000000 +//Max 1.312500000000 +//Number of zeros 1205 #ifndef W2_H_ #define W2_H_ -weight_default_t w2[250] = { - 0.20997065, 0.23109458, 0.56466961, 0.22711204, -0.20132071, -0.27363914, 0.14927717, -0.16103272, -0.83456266, - -0.16359854, 0.42116061, 0.25756207, 0.04047282, 0.21591994, -0.26583776, -0.55054820, 0.41611665, -0.02321975, - 0.07042803, 0.50135452, 0.00703545, -0.20829202, -0.33702660, -0.12396229, -0.11880612, -0.27329573, -0.11452802, - -0.31897750, 0.21264470, 0.13742544, -0.28871939, 0.41868410, -0.63091415, -0.19237195, -0.65478534, 0.38763866, - -0.24744406, -0.16881032, 0.39083633, -0.50035834, -0.19310105, -0.31465644, 0.00439816, 0.10827218, -0.49906382, - -0.32572702, -0.91848624, 0.37550700, -0.71738565, -0.34755468, 0.06423171, 0.32547599, 0.02474762, 0.03221778, - 0.48550412, -0.33728692, -0.32770881, 0.17164232, 0.55661368, 0.11896797, 0.36957362, 0.47705862, -0.49895954, - 0.33941826, 0.19965869, 0.01562935, 0.11520918, -0.64897013, 0.09584811, -0.06691046, -0.22340138, -0.28523839, - 0.47164100, 0.39281282, -0.27396747, 0.23841321, -0.16906965, 0.23569225, -0.15681265, 0.18717216, -0.60413569, - -0.08125137, 0.03988006, -0.21231870, -0.22519483, 0.12118224, 0.16755132, 0.12627158, 0.01710406, 0.12804474, - 0.15039428, -0.44942543, -0.31897655, 0.23188710, 0.18285972, 0.19390795, -1.01665187, 0.21815108, -0.29137248, - -0.33327803, -0.59519506, 0.28375888, -0.21275434, 0.20035347, 0.24234673, -0.23726320, 0.13105272, -0.11671171, - -1.04230368, -0.01892293, 0.24302486, -0.11491518, 0.00009525, 0.16215059, -0.33812979, 0.25157502, 0.08174099, - 0.02176141, 0.21500087, 0.09077536, -0.76118916, 0.10925286, 0.29795000, 0.12469041, 0.37909570, -0.20281483, - 0.27489746, 0.37251407, 0.22438200, 0.38048640, 0.05875695, -0.26088551, -0.21821247, -0.16538695, 0.41207287, - -0.16648161, -0.84085250, -0.41789296, -0.34957457, -0.61002076, 0.31845343, 0.14742102, 0.19950806, 0.16061406, - 0.06558945, -0.37494221, -0.08883159, -0.04767518, -0.01558618, -0.38022742, -1.51212752, 0.86078125, 0.19461697, - 0.17105880, -0.30809617, -0.31512862, 2.78785324, -0.00088534, 1.45783448, 1.60251164, 0.00830983, -0.11042736, - -0.09234238, -0.63981187, -0.12528154, 0.26517308, -0.64378422, 0.26114368, -0.03288542, -0.30414325, 0.06316128, - 0.20465648, 0.13085699, -0.47638854, -0.23346442, 0.28762946, 0.11337498, -0.16003485, -0.03085457, -0.34413737, - -0.20898604, 0.25293669, 0.12700504, -0.57297736, 0.37069905, -0.10958206, -0.02782927, -0.04480676, 0.37059775, - 0.22780053, -0.46436781, 0.21395527, -0.12828122, 0.25643846, 0.42216083, 0.38164839, -0.21980932, 0.36473754, - 0.07016987, -0.35408738, -0.16640140, -0.25358951, 0.39250490, -0.54550570, -0.19580491, -0.40004924, 0.17290805, - 0.03295039, 0.15710174, 0.38565248, 0.17310381, -0.26752374, -0.01243732, 0.19979088, -0.15178865, 0.05851814, - -0.30287826, -0.22805928, 0.13903613, -0.17035685, 0.42811340, -0.32098049, 0.01897480, 0.19527332, 0.15685958, - 0.24155772, -1.29652667, 0.23406981, -0.14959824, 0.22470856, 0.06737669, -0.17472392, -0.07033237, 0.12923102, - -0.45487776, 0.28186423, -0.08404353, 0.05938773, -0.14591871, -0.37163615, -0.11934289, 0.09545202, 0.20201178, - 0.15774842, 0.09092412, 0.54094648, 0.01843318, -0.20180281, -1.01475310, -0.02641589}; +weight2_t w2[2000] = {0.000000, 0.000000, 0.000000, 0.109375, 0.046875, 0.078125, 0.000000, 0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.046875, -0.125000, 0.000000, 0.703125, 0.031250, 0.000000, 0.000000, -0.203125, 0.000000, -1.296875, -0.656250, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.203125, 0.125000, 0.000000, 0.000000, 0.000000, 0.234375, -0.343750, 0.000000, 0.203125, 0.000000, 0.359375, -1.515625, 1.312500, 0.546875, 0.000000, -0.046875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.156250, -0.125000, -0.250000, 0.000000, 0.187500, 0.000000, -0.906250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.718750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.578125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.093750, 0.000000, 0.390625, 0.406250, 0.625000, 0.000000, 0.000000, -0.140625, 0.000000, -0.125000, 0.000000, 0.000000, 0.000000, -0.546875, -0.109375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.218750, 0.000000, 0.000000, 0.000000, 0.390625, -0.265625, -0.234375, 0.000000, -0.265625, 0.000000, 0.000000, 0.562500, 0.000000, 0.140625, 0.000000, 0.000000, 0.296875, 0.000000, -0.812500, 0.000000, -0.375000, 0.000000, 0.000000, 0.062500, 0.234375, 0.000000, 0.000000, 0.062500, 0.000000, 0.000000, 0.062500, -0.140625, -0.078125, 0.187500, -0.906250, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.718750, 0.296875, -0.937500, -0.937500, 0.000000, 0.000000, 0.000000, -0.062500, 0.843750, 0.031250, 0.000000, 0.468750, 0.000000, 0.000000, -0.484375, 0.000000, -0.656250, 0.875000, 0.000000, -0.109375, -0.015625, 0.000000, 0.000000, 0.140625, -0.343750, -0.421875, 0.343750, 0.078125, 0.000000, 0.000000, 0.171875, 0.000000, 0.000000, -0.531250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.375000, 0.000000, 0.000000, 0.000000, 0.218750, 0.546875, 0.015625, -0.109375, 0.000000, 0.000000, -0.125000, 0.000000, 0.000000, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.046875, 0.578125, 0.000000, 0.000000, 0.000000, -0.093750, 0.000000, 0.000000, 0.000000, 0.000000, 0.093750, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, 0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.031250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.171875, 0.000000, -0.031250, 0.000000, 0.453125, 0.000000, 0.000000, 0.000000, 0.703125, 0.125000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.265625, 0.000000, 0.000000, -0.484375, 0.000000, -0.031250, 0.000000, 0.000000, -0.156250, 0.000000, 0.187500, 0.484375, 0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.015625, 0.000000, 0.000000, 0.156250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, 0.000000, -0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, -0.125000, -0.156250, 0.000000, 0.000000, 0.000000, -0.062500, 0.000000, 0.218750, -0.671875, 0.000000, 0.281250, 0.000000, 0.000000, 0.000000, 0.125000, -0.125000, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, 0.593750, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, -0.140625, -0.171875, -0.265625, 0.000000, 0.437500, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, 0.000000, 0.000000, -0.281250, -0.125000, 0.000000, 1.234375, -0.171875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.234375, 0.078125, 0.000000, -0.546875, 0.421875, 0.000000, -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.250000, -0.375000, 0.000000, 0.000000, 0.515625, 0.000000, 0.000000, 0.000000, -0.171875, 0.000000, -0.515625, -0.156250, 0.000000, 0.171875, -0.453125, 0.000000, 0.000000, -0.500000, 0.000000, 0.171875, -0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.296875, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.156250, 0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.156250, 0.187500, 0.000000, 0.000000, 0.000000, -0.421875, 0.000000, -0.281250, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.359375, 0.000000, 0.000000, 0.187500, -0.093750, 0.000000, 0.000000, 0.046875, -0.250000, 0.000000, 0.000000, 0.156250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.031250, 0.000000, 0.000000, -0.250000, 0.000000, 0.000000, -0.125000, 0.000000, 0.000000, 0.000000, 0.000000, -0.078125, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.015625, 0.000000, 0.000000, -0.406250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.109375, 0.000000, 0.000000, -0.218750, -0.359375, 0.000000, 0.421875, 0.000000, 0.062500, 0.000000, -0.421875, -0.046875, 0.000000, 0.093750, 0.000000, 0.000000, 0.000000, -0.515625, 0.000000, 0.000000, 0.015625, 0.000000, 0.000000, -0.218750, 0.281250, 0.000000, 0.281250, -0.156250, 0.250000, 0.000000, 0.000000, 0.109375, 0.015625, 0.000000, 0.000000, 0.187500, 0.000000, 0.406250, -0.062500, -0.281250, -0.078125, 0.000000, 0.000000, 0.000000, -0.250000, -0.453125, -0.046875, 0.421875, 0.000000, -0.109375, 0.109375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.656250, 0.000000, 0.000000, 0.000000, 0.046875, 0.000000, 0.484375, -0.546875, -0.031250, -0.421875, 0.000000, -0.781250, 0.000000, 0.000000, -0.546875, 0.265625, 0.171875, -0.203125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.171875, 0.125000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.140625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.062500, 0.171875, 0.000000, 0.015625, 0.000000, 0.000000, 0.000000, 0.000000, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.093750, 0.203125, -0.140625, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.359375, 0.000000, 0.187500, -0.171875, -0.187500, 0.000000, 0.031250, 0.000000, 0.000000, 0.125000, 0.015625, 0.000000, 0.000000, 0.000000, 0.000000, -0.109375, 0.000000, -0.296875, 0.000000, -0.187500, 0.250000, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.078125, 0.000000, 0.000000, -0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.093750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, -0.109375, -0.296875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.234375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.125000, 0.000000, 0.109375, -0.750000, 0.125000, 0.000000, -0.187500, 0.156250, 0.000000, 0.109375, 0.000000, 0.109375, 0.000000, -0.265625, -0.031250, 0.000000, 0.125000, 0.000000, 0.203125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, -0.203125, 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.062500, 0.031250, 0.015625, 0.000000, 0.078125, -0.328125, -0.031250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.015625, 0.000000, -0.468750, -0.031250, 0.000000, 0.000000, -0.046875, 0.703125, 0.000000, -0.093750, 0.265625, 0.312500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.328125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, -0.187500, 0.109375, 0.000000, 0.000000, 0.125000, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, -0.250000, -0.156250, 0.000000, 0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.109375, 0.000000, 0.031250, 0.031250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.234375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.171875, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, -0.265625, 0.000000, 0.125000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, -0.031250, 0.000000, 0.390625, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, -0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.046875, -0.109375, 0.171875, -0.031250, 0.125000, 0.000000, 0.000000, -0.359375, -0.171875, -0.328125, 0.000000, 0.000000, 0.218750, 0.281250, -0.437500, 0.000000, 0.000000, 0.109375, -0.093750, 0.000000, -0.125000, 0.000000, 0.000000, 0.140625, 0.156250, 0.000000, 0.000000, 0.375000, 0.000000, 0.156250, 0.000000, 0.000000, 0.265625, 0.000000, 0.000000, 0.296875, 0.000000, 0.000000, -0.140625, 0.000000, -0.250000, 0.000000, -0.187500, 0.296875, 0.000000, -0.218750, 0.000000, 0.218750, 0.000000, -0.171875, -0.218750, 0.000000, -0.328125, 0.000000, 0.062500, 0.000000, 0.234375, 0.000000, 0.000000, 0.000000, -0.062500, 0.000000, 0.000000, 0.265625, 0.000000, 0.000000, 0.000000, 0.046875, 0.000000, 0.000000, 0.093750, -0.265625, 0.000000, 0.265625, -0.359375, 0.000000, 0.000000, 0.062500, 0.000000, 0.140625, 0.000000, 0.046875, 0.000000, 0.000000, 0.000000, 0.156250, 0.000000, 0.203125, 0.000000, 0.000000, -0.203125, 0.000000, 0.000000, 0.328125, 0.000000, -0.484375, 0.000000, 0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.000000, 0.000000, -0.031250, 0.000000, -0.375000, -0.156250, 0.000000, -0.015625, 0.000000, -0.421875, 0.000000, 0.093750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, 0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.125000, 0.046875, 0.000000, 0.000000, 0.000000, -0.296875, 0.000000, 0.000000, 0.000000, 0.078125, 0.000000, 0.000000, 0.281250, 0.156250, 0.000000, 0.000000, -0.156250, 0.218750, 0.375000, 0.000000, 0.000000, 0.000000, -0.015625, -0.125000, 0.015625, 0.359375, 0.171875, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.031250, 0.000000, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.171875, 0.000000, 0.171875, 0.000000, -0.078125, -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, -0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.031250, 0.000000, 0.296875, 0.000000, 0.000000, -0.265625, 0.000000, 0.000000, 0.343750, 0.250000, 0.000000, -0.265625, 0.000000, 0.000000, 0.000000, 0.000000, -0.109375, 0.000000, 0.078125, 0.000000, -0.140625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.187500, 0.000000, 0.078125, -0.156250, 0.234375, -0.031250, 0.000000, 0.234375, 0.000000, 0.109375, 0.031250, 0.000000, -0.187500, 0.000000, 0.093750, 0.343750, -0.062500, 0.000000, -0.015625, 0.093750, 0.000000, 0.000000, 0.000000, 0.015625, 0.015625, 0.000000, 0.140625, 0.234375, 0.156250, 0.000000, 0.000000, -0.062500, 0.187500, 0.000000, 0.000000, 0.000000, 0.015625, -0.125000, 0.000000, 0.234375, -0.234375, -0.171875, 0.171875, 0.015625, 0.000000, 0.375000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.171875, -0.218750, 0.000000, 0.171875, 0.000000, 0.000000, -0.718750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.218750, -0.265625, 0.000000, 0.000000, 0.000000, 0.187500, 0.000000, 0.109375, 0.000000, -0.171875, 0.062500, 0.000000, 0.000000, 0.093750, 0.000000, 0.000000, -0.078125, 0.000000, -0.328125, 0.000000, 0.000000, 0.187500, 0.000000, -0.359375, -0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, -0.093750, 0.000000, 0.078125, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, 0.000000, -0.109375, 0.000000, 0.312500, 0.187500, 0.000000, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, -0.171875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.140625, 0.156250, 0.187500, 0.000000, 0.109375, 0.000000, 0.000000, 0.000000, 0.000000, 0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, -0.156250, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, 0.000000, 0.031250, -0.031250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.046875, 0.062500, 0.000000, 0.000000, 0.000000, -0.015625, -0.125000, 0.000000, 0.000000, 0.000000, -0.156250, -0.015625, 0.250000, -0.109375, -0.171875, 0.000000, 0.000000, 0.000000, 0.000000, 0.343750, 0.437500, -0.031250, 0.093750, 0.000000, -0.250000, 0.031250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.078125, 0.031250, 0.000000, 0.000000, 0.437500, 0.000000, 0.140625, 0.296875, 0.125000, 0.000000, -0.078125, -0.156250, 0.000000, 0.000000, -0.109375, 0.000000, -0.156250, -0.062500, 0.203125, -0.062500, 0.000000, 0.140625, -0.125000, 0.218750, 0.000000, 0.000000, -0.421875, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.234375, 0.250000, 0.000000, 0.000000, 0.000000, 0.406250, 0.000000, -0.062500, 0.000000, 0.015625, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.515625, 0.000000, 0.000000, 0.484375, 0.187500, 0.000000, -0.218750, 0.000000, 0.312500, 0.000000, 0.125000, 0.062500, 0.125000, 0.000000, 0.468750, -0.578125, 0.000000, -0.546875, -0.265625, 0.000000, 0.000000, 0.000000, -0.328125, 0.234375, 0.296875, -0.468750, 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.046875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.093750, 0.000000, 0.640625, -0.421875, 0.000000, -0.296875, 0.000000, 0.000000, 0.093750, 0.000000, -0.234375, 0.000000, 0.000000, -0.281250, -0.265625, 0.000000, -0.250000, 0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.046875, 0.015625, 0.000000, 0.000000, 0.156250, 0.000000, 0.000000, 0.250000, -0.062500, 0.000000, 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, -0.140625, -0.125000, 0.000000, 0.250000, 0.000000, 0.000000, -0.343750, 0.000000, 0.343750, 0.000000, 0.000000, -0.140625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, 0.234375, 0.000000, 0.078125, -0.515625, 0.000000, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, -0.046875, 0.000000, 0.296875, 0.296875, 0.000000, 0.109375, 0.312500, 0.000000, -0.281250, 0.000000, 0.109375, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, -0.109375, 0.000000, 0.203125, 0.000000, -0.046875, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, -0.234375, 0.515625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.109375, 0.109375, 0.000000, -0.031250, -0.156250, -0.296875, 0.000000, -0.390625, 0.000000, 0.171875, -0.093750, 0.000000, 0.312500, 0.312500, 0.000000, -0.125000, 0.000000, 0.171875, -0.093750, 0.125000, 0.000000, 0.000000, 0.000000, 0.203125, 0.000000, 0.046875, 0.000000, -0.281250, -0.281250, -0.265625, 0.000000, 0.000000, 0.000000, 0.343750, 0.000000, 0.000000, 0.000000, -0.140625, 0.000000, 0.359375, 0.203125, 0.000000, -0.125000, 0.000000, 0.000000, -0.140625, -0.046875, 0.171875, 0.421875, -0.078125, 0.187500, 0.000000, 0.000000, 0.250000, 0.156250, 0.000000, -0.234375, -0.500000, 0.031250, 0.265625, 0.390625, -0.453125, 0.000000, 0.000000, 0.000000, -0.296875, -0.109375, -0.390625, 0.000000, -0.250000, 0.000000, 0.000000, -0.203125, 0.000000, 0.250000, -0.234375, 0.000000, -0.078125, 0.265625, 0.140625, -0.140625, 0.000000, 0.000000, 0.000000, 0.281250, 0.546875, 0.000000, 0.000000, 0.000000, 0.000000, -0.359375, 0.000000, -0.328125, 0.156250, -0.296875, 0.171875, 0.000000, 0.000000, 0.171875, 0.000000, -0.625000, 0.000000, 0.000000, 0.000000, 0.000000, 0.171875, -0.140625, 0.000000, -0.187500, 0.000000, 0.078125, -0.281250, 0.187500, 0.000000, 0.125000, -0.093750, 0.000000, 0.203125, -0.203125, 0.000000, -0.187500, 0.031250, 0.000000, -0.156250, -0.078125, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, 0.078125, 0.000000, 0.296875, 0.000000, 0.000000, -0.234375, 0.000000, -0.015625, 0.000000, 0.078125, 0.281250, 0.000000, 0.171875, 0.109375, 0.000000, 0.203125, -0.406250, -0.187500, 0.000000, 0.000000, 0.000000, -0.328125, 0.046875, 0.000000, 0.296875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.234375, 0.265625, -0.156250, -0.203125, 0.000000, -0.281250, 0.171875, 0.000000, 0.000000, 0.375000, -0.062500, 0.000000, 0.406250, 0.000000, 0.296875, -0.031250, -0.046875, 0.000000, 0.328125, 0.000000, 0.000000, 0.000000, 0.218750, -0.109375, 0.000000, 0.000000, 0.125000, -0.093750, -0.125000, 0.000000, -0.171875, 0.234375, -0.140625, 0.000000, 0.062500, -0.015625, 0.000000, 0.156250, -0.453125, 0.000000, 0.000000, 0.109375, -0.140625, 0.109375, 0.000000, 0.312500, 0.000000, -0.171875, 0.125000, -0.250000, 0.000000, 0.187500, -0.078125, 0.156250, 0.000000, 0.125000, 0.203125, 0.000000, -0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.109375, 0.000000, 0.000000, 0.250000, 0.187500, 0.000000, 0.171875, -0.109375, 0.000000, 0.000000, -0.031250, 0.000000, 0.187500, 0.203125, 0.000000, 0.000000, 0.000000, 0.062500, 0.093750, 0.156250, 0.000000, 0.015625, 0.000000, 0.515625, 0.328125, 0.000000, -0.015625, 0.000000, 0.000000, 0.312500, 0.484375, 0.000000, 0.000000, -0.312500, 0.000000, -0.531250, -0.250000, -0.140625, 0.125000, 0.000000, 0.406250, 0.000000, 0.000000, 0.171875, 0.296875, -0.875000, 0.000000, -0.281250, 0.359375, 0.000000, 0.000000, 0.000000, -0.375000, 0.000000, 0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.500000, 0.000000, -0.140625, 0.000000, -0.156250, 0.000000, 0.000000, -0.218750, 0.296875, 0.000000, -1.109375, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, -0.046875, 0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.328125, 0.000000, 0.109375, 0.000000, -0.109375, 0.531250, 0.203125, 0.000000, 0.000000, 0.156250, -0.203125, -0.484375, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, -0.156250, 0.000000, 0.000000, -0.078125, 0.203125, -0.109375, 0.000000, 0.000000, 0.000000, -0.062500, -0.062500, 0.000000, 0.000000, 0.000000, -0.109375, -0.250000, 0.000000, 0.000000, 0.000000, -0.046875, -0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.093750, 0.328125, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, 0.515625, -0.187500, 0.000000, 0.062500, -0.031250, -0.250000, 0.281250, -0.015625, -0.312500, 0.000000, 0.140625, 0.000000, 0.000000, 0.000000, 0.218750, 0.375000, -0.203125, 0.343750, 0.000000, 0.125000, 0.125000, 0.359375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.093750, 0.312500, 0.000000, 0.000000, 0.250000, 0.000000, 0.359375, -0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.312500, 0.000000, 0.000000, -0.125000, 0.156250, 0.000000, -0.781250, 0.000000, 0.000000, -0.093750, 0.156250, -0.328125, 0.078125, 0.125000, 0.140625, 0.000000, 0.109375, -0.187500, 0.171875, 0.140625, -0.265625, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, -0.093750, 0.000000, 0.000000, 0.171875, 0.000000, 0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.218750, -0.171875, 0.000000, -0.187500, -0.234375, 0.000000, 0.140625, 0.156250, 0.000000, 0.484375, 0.406250, -0.234375, 0.343750, -0.812500, 0.000000, 0.000000, 0.000000, -1.265625, 0.000000, 0.000000, 0.000000, -0.421875, 0.000000, 0.000000, 0.000000, -0.265625, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, 0.000000, -0.843750, 0.000000}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w20.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w20.h new file mode 100644 index 0000000000000..177c7569374cb --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w20.h @@ -0,0 +1,11 @@ +//Numpy array shape [10, 1] +//Min -0.931640625000 +//Max 1.476562500000 +//Number of zeros 6 + +#ifndef W20_H_ +#define W20_H_ + +weight20_t w20[10] = { 0.000000, 0.000000, 0.000000, 1.185547, 0.000000, 1.476562, -0.931641, 0.769531, 0.000000, 0.000000}; + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w3.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w3.h deleted file mode 100644 index b67cf178a716e..0000000000000 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w3.h +++ /dev/null @@ -1,23 +0,0 @@ -//Numpy array shape [10, 10] -//Min -1.255380868912 -//Max 1.165371656418 -//Number of zeros 0 - -#ifndef W3_H_ -#define W3_H_ - -weight_default_t w3[100] = { - -0.24639761, 0.36854371, -0.20667994, 0.63942766, -0.48512432, -0.20601453, 0.95860600, -0.76670301, -0.62915105, - -0.16087309, -0.71208179, -0.22137630, -0.61618358, -0.28030652, -0.16592601, 0.01428368, -0.02218036, 0.18670039, - -0.05923353, 0.38925353, -0.03025977, 0.18113941, 0.04013579, -0.24923514, 0.04662795, -0.21779495, -0.11618838, - 0.27686477, -0.12692934, -0.14645813, 0.13050388, -0.61944312, -0.97363800, 0.34909710, -0.49283633, 0.35699531, - -0.21654762, 0.29707199, -0.37069076, -0.45038351, 0.23440604, -0.01497080, -0.43628553, 0.47897390, -0.57205141, - 0.28325596, 0.45101821, 0.30717590, -0.82709831, -1.01788270, 0.11227678, 0.40207320, -0.01430387, 0.33558398, - 0.14979517, 0.40087056, 0.56262153, -0.08988120, -0.39212254, 0.19313116, 0.18044059, -0.09485760, 0.07735054, - -1.25538087, -0.37033975, 0.96087897, -0.62376523, 0.97630143, 0.54678482, 1.16537166, -0.38099980, 0.25253880, - -0.48733908, 0.30896747, 0.00154836, -1.06780457, -0.38455144, 0.22028424, 0.40647805, -0.58109504, -0.29596746, - -0.19207183, -0.55882788, 0.12817945, -0.23813887, 0.05867399, 0.29090765, 0.50279891, 0.23116076, 0.11913682, - -0.03850375, -0.61140555, 0.42096528, -0.28724584, 0.06309307, -0.41296995, -0.22518104, 0.10956753, 0.17092451, - 0.46520787}; - -#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w4.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w4.h deleted file mode 100644 index d2b8c3be33f48..0000000000000 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w4.h +++ /dev/null @@ -1,20 +0,0 @@ -//Numpy array shape [10, 1] -//Min -0.562117636204 -//Max 0.764084100723 -//Number of zeros 0 - -#ifndef W4_H_ -#define W4_H_ - -weight_default_t w4[10] = {0.41375983, - -0.10875144, - 0.31972024, - -0.56211764, - 0.16606922, - 0.33737957, - -0.11298771, - 0.61149263, - 0.09088434, - 0.76408410}; - -#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w5.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w5.h new file mode 100644 index 0000000000000..a625be2dcc93c --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w5.h @@ -0,0 +1,11 @@ +//Numpy array shape [25, 25] +//Min -1.203125000000 +//Max 1.078125000000 +//Number of zeros 375 + +#ifndef W5_H_ +#define W5_H_ + +weight5_t w5[625] = {-0.578125, 0.515625, 0.000000, -0.796875, 0.359375, -0.562500, 0.000000, 0.000000, 0.359375, 0.000000, 0.390625, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.484375, -0.718750, 0.000000, 0.000000, 0.000000, -0.578125, 0.000000, 0.000000, 0.000000, 0.343750, 0.000000, 0.421875, 0.000000, 0.218750, 0.000000, 0.000000, -0.281250, 0.000000, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, -0.625000, 0.250000, -0.375000, 0.000000, 0.000000, 0.000000, 0.000000, -1.062500, 0.000000, 0.515625, 0.000000, -0.203125, -0.546875, 0.828125, 0.734375, 0.000000, 0.500000, 0.000000, 0.000000, -1.203125, 0.000000, -1.062500, 0.375000, 0.000000, 0.000000, 0.000000, 0.000000, -0.375000, 0.703125, 0.000000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, -0.250000, 0.265625, -0.312500, 0.000000, 0.171875, 0.312500, 0.000000, 0.000000, 0.250000, 0.000000, 0.000000, 0.203125, 0.000000, 0.000000, -0.328125, 0.546875, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, -0.218750, 0.281250, -0.296875, 0.000000, -0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.468750, 0.000000, 0.328125, 0.000000, -0.234375, 0.000000, 0.421875, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, 0.000000, 0.296875, -0.390625, 0.000000, 0.000000, 0.000000, -0.593750, 0.421875, 0.250000, 0.000000, -0.234375, 0.000000, 0.078125, 0.000000, 0.328125, 0.000000, 0.000000, -0.187500, -0.156250, 0.000000, -0.281250, 0.000000, 0.000000, 0.359375, 0.000000, 0.218750, -0.281250, 0.000000, -0.171875, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.406250, 0.000000, 0.000000, 0.000000, 0.312500, -0.468750, 0.000000, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, -0.218750, -0.484375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.156250, 0.328125, 0.421875, 0.000000, 0.218750, 0.640625, 0.000000, 0.187500, 0.000000, 0.000000, -0.234375, -0.531250, 0.671875, 0.000000, -0.250000, 0.000000, 0.000000, -0.375000, 0.000000, 0.390625, -0.203125, 0.000000, 0.000000, -0.375000, 0.390625, -0.468750, -0.421875, -0.015625, 0.437500, 0.000000, -0.531250, -0.781250, 0.500000, 0.000000, 0.671875, 0.421875, 0.000000, 0.000000, -0.359375, 0.000000, 0.000000, 0.359375, 0.000000, -0.156250, 0.000000, 0.000000, 0.218750, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, 0.093750, -0.328125, 0.000000, 0.312500, 0.000000, -0.171875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, -0.234375, 0.125000, -0.250000, 0.000000, 0.000000, 0.421875, 0.437500, -0.343750, 0.375000, 0.000000, -0.390625, 0.000000, 0.281250, 0.000000, 0.203125, 0.000000, 0.000000, 0.000000, 0.000000, -0.234375, -0.312500, -0.312500, 0.000000, 0.000000, -0.250000, 0.234375, 0.000000, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, 0.000000, -0.359375, 0.453125, 0.000000, 0.000000, -0.093750, -0.406250, 0.250000, 0.000000, -0.281250, 0.000000, 0.000000, -0.250000, -0.250000, 0.000000, -0.234375, -0.125000, -0.171875, 0.468750, -0.484375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, 0.140625, -0.156250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.218750, 0.000000, 0.000000, 0.000000, -0.125000, 0.390625, 0.000000, -0.328125, 1.078125, 0.234375, 0.312500, 0.000000, 0.000000, 0.000000, 0.781250, -0.218750, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, -0.500000, -0.906250, -0.687500, 0.000000, 0.500000, 0.437500, 0.000000, 0.000000, 0.000000, -0.265625, 0.078125, 0.000000, 0.000000, 0.000000, -0.500000, 0.265625, 0.000000, 0.000000, 0.000000, -0.562500, 0.000000, 0.656250, 0.000000, 0.468750, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.562500, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.671875, -0.328125, 0.468750, 0.000000, 0.468750, 0.000000, 0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, 0.109375, 0.000000, 0.000000, -0.328125, 0.000000, 0.218750, 0.000000, 0.000000, -0.328125, -0.187500, 0.000000, 0.203125, 0.296875, -0.671875, 0.031250, -0.546875, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.812500, 0.000000, 0.250000, 0.000000, 0.265625, -0.468750, 0.234375, 0.000000, 0.281250, 0.000000, 0.000000, -0.828125, -0.671875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.031250, -0.203125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.656250, 0.000000, 0.453125, 0.343750, 0.343750, 0.000000, 0.000000, 0.000000, 0.265625, 0.218750, 0.000000, -0.546875, 0.000000, 0.000000, -0.296875, 0.296875, 0.000000, 0.000000, 0.000000, 0.281250, -0.234375, 0.234375, 0.203125, 0.000000, 0.000000, 0.000000, 0.359375, 0.000000, -1.078125, 0.000000, 0.000000, 0.000000, -0.187500, 0.437500, 0.000000, 0.000000, -0.500000, 0.484375, 0.000000, 0.000000, 0.281250, 0.000000, 0.359375, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, 0.000000, 0.000000, -0.437500, 0.203125, 0.203125, 0.000000, -0.328125, 0.000000, 0.000000, -0.250000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, 0.328125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.125000, 0.000000, -0.265625, 0.171875, 0.000000, 0.000000, 0.000000, 0.000000, -0.421875, 0.359375, 0.000000, -0.390625, -0.093750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.156250, 0.000000, 0.296875, 0.187500, 0.406250, 0.000000, 0.000000, 0.281250, 0.000000, 0.000000, -0.046875, 0.000000, 0.000000, 0.000000, -0.265625, -0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, -0.375000, 0.000000, 0.000000, 0.000000, 0.000000, -0.968750, -0.640625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.500000, 0.000000, 0.000000, 0.515625, 0.531250, 0.000000, 0.000000, 0.000000, 0.000000}; + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w8.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w8.h new file mode 100644 index 0000000000000..5fc96bdc8dce1 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w8.h @@ -0,0 +1,11 @@ +//Numpy array shape [25, 15] +//Min -0.859375000000 +//Max 0.750000000000 +//Number of zeros 225 + +#ifndef W8_H_ +#define W8_H_ + +weight8_t w8[375] = {0.000000, -0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.562500, -0.187500, 0.312500, 0.234375, 0.234375, 0.140625, -0.203125, 0.000000, 0.000000, -0.218750, -0.281250, 0.000000, 0.000000, 0.000000, 0.187500, 0.296875, 0.000000, -0.296875, 0.000000, -0.203125, 0.328125, -0.390625, 0.000000, 0.000000, 0.593750, -0.234375, 0.000000, 0.000000, -0.375000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.265625, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.062500, 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.406250, -0.265625, -0.421875, 0.000000, 0.171875, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.000000, -0.468750, 0.000000, 0.000000, 0.000000, 0.000000, 0.562500, 0.453125, 0.453125, 0.000000, 0.000000, 0.421875, -0.437500, -0.296875, -0.250000, -0.359375, 0.000000, -0.234375, -0.625000, 0.000000, -0.328125, 0.000000, -0.359375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.859375, 0.000000, 0.000000, 0.671875, 0.000000, 0.000000, 0.203125, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.468750, -0.234375, 0.296875, 0.000000, -0.640625, 0.359375, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.203125, -0.312500, -0.234375, 0.000000, 0.250000, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.531250, 0.000000, 0.000000, -0.250000, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.468750, -0.218750, 0.375000, 0.000000, -0.265625, 0.000000, -0.218750, -0.296875, 0.265625, -0.562500, 0.281250, 0.000000, 0.390625, 0.437500, 0.000000, 0.000000, 0.218750, 0.625000, 0.000000, 0.000000, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, 0.000000, 0.750000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.187500, -0.234375, 0.265625, 0.171875, -0.328125, 0.328125, 0.000000, 0.250000, 0.000000, 0.000000, -0.218750, 0.000000, 0.000000, -0.281250, 0.000000, -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.500000, 0.125000, 0.000000, 0.265625, 0.312500, 0.203125, 0.562500, 0.000000, -0.234375, 0.187500, 0.000000, 0.000000, 0.203125, 0.000000, 0.000000, -0.156250, 0.515625, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, -0.296875, 0.000000, -0.093750, -0.296875, 0.000000, 0.484375, 0.000000, 0.453125, 0.000000, -0.203125, 0.000000, 0.000000, -0.406250, 0.000000, -0.187500, 0.250000, -0.343750, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.578125, 0.000000, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, 0.000000, 0.171875, 0.218750, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.468750, -0.375000, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.453125, 0.000000, 0.000000, 0.000000, 0.281250, 0.609375, 0.000000, 0.000000, 0.000000, -0.218750, 0.000000, -0.406250, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.734375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.640625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.593750, -0.375000, 0.000000, 0.312500, 0.312500, 0.000000, 0.562500, 0.000000, 0.000000, -0.593750, 0.000000, 0.281250, 0.218750, 0.359375, 0.000000, 0.000000, -0.296875, 0.000000, 0.000000, -0.296875, -0.250000, 0.000000, -0.500000, 0.000000, 0.000000, 0.593750, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, -0.343750, 0.531250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, -0.421875, -0.250000, 0.000000, 0.000000, -0.375000, -0.437500, -0.437500}; + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1NNTauProducer.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1NNTauProducer.cc index 68baad7517a74..b05578780773c 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1NNTauProducer.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1NNTauProducer.cc @@ -29,8 +29,9 @@ class L1NNTauProducer : public edm::stream::EDProducer fTauNNId_; - std::unique_ptr fTauNNIdHW_; + std::unique_ptr fTauNNIdHW_; // Default void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) override; void process_SW(const l1t::PFCandidateCollection& parts, std::unique_ptr& iTaus); @@ -212,6 +213,7 @@ void L1NNTauProducer::makeTau_HW(const l1t::PFCandidate& seed, L1TauEmu::z0_t z0 = 0; L1TauEmu::dxy_t dxy = 0; + // Reconstruct the Tau Cone for (unsigned i0 = 0; i0 < parts.size(); i0++) { if (L1TauEmu::inCone(seed, (parts[i0]), rCone2)) { if (parts[i0].id() == l1t::PFCandidate::Electron || parts[i0].id() == l1t::PFCandidate::ChargedHadron || @@ -246,16 +248,18 @@ void L1NNTauProducer::makeTau_HW(const l1t::PFCandidate& seed, if (pt < fSeedPt_) return; - result_t NN = fTauNNIdHW_->compute(seed, parts); - input_t* lNNVector = fTauNNIdHW_->NNVectorVar(); + // Tau NN Inference + Tau_NN_Result NN_ouput = fTauNNIdHW_->compute(seed, parts); + // Needed for making PFTau + input_t* lNNVector = fTauNNIdHW_->NNVectorVar(); float pNNVec[80]; for (unsigned i0 = 0; i0 < 80; i0++) pNNVec[i0] = float(lNNVector[i0]); //Firmware Tau l1ct::Tau l1ctTau; - l1ctTau.hwPt = l1ct::pt_t(pt); //l1gt is <16,11> and currently <16,14> + l1ctTau.hwPt = l1ct::pt_t(pt*NN_ouput.nn_pt_correction); //l1gt is <16,11> and currently <16,14> l1ctTau.hwEta = l1ct::Scales::makeGlbEta(seed.eta()); // seed.eta() and seed.phi() are in physical coordinates l1ctTau.hwPhi = l1ct::Scales::makeGlbPhi(seed.phi()); @@ -264,7 +268,7 @@ void L1NNTauProducer::makeTau_HW(const l1t::PFCandidate& seed, l1ctTau.hwCharge = seed.charge(); l1ctTau.hwType = l1ct::Tau::type_t(lId); - l1ctTau.hwRawId = ap_uint<10>(NN * 1024); //NN Output is ap_fixed<16, 8> so need to cast. + l1ctTau.hwRawId = ap_uint<10>(NN_ouput.nn_id * 1024); //NN Output is ap_fixed<16, 6> so need to cast. //Convert to GT format and pack to encodedTau of PFTau l1gt::Tau l1gtTau = l1ctTau.toGT(); @@ -277,7 +281,7 @@ void L1NNTauProducer::makeTau_HW(const l1t::PFCandidate& seed, l1gt::Scales::floatPhi(l1gtTau.v3.phi), float(mass)); - l1t::PFTau l1PFTau(tempP4, pNNVec, NN, 0, lId); + l1t::PFTau l1PFTau(tempP4, pNNVec, NN_ouput.nn_id, 0, lId); l1PFTau.setZ0(float(z0) * 0.05); //L1TauEmu::z0_base); l1PFTau.setDxy(float(dxy) * 0.05); //L1TauEmu::dxy_base); diff --git a/L1Trigger/Phase2L1ParticleFlow/src/taus/TauNNIdHW.cc b/L1Trigger/Phase2L1ParticleFlow/src/taus/TauNNIdHW.cc index 4f87a9a56b760..4830cac61da8f 100644 --- a/L1Trigger/Phase2L1ParticleFlow/src/taus/TauNNIdHW.cc +++ b/L1Trigger/Phase2L1ParticleFlow/src/taus/TauNNIdHW.cc @@ -12,6 +12,8 @@ void TauNNIdHW::initialize(const std::string &iInput, int iNParticles) { fId_ = std::make_unique(fNParticles_); fInput_ = iInput; } + +//Prepare the inputs for the Tau NN void TauNNIdHW::SetNNVectorVar() { NNvectorVar_.clear(); for (unsigned i0 = 0; i0 < fNParticles_; i0++) { @@ -35,35 +37,64 @@ void TauNNIdHW::SetNNVectorVar() { } } -result_t TauNNIdHW::EvaluateNN() { - input_t data[N_INPUTS]; +// Main architecture of the NN here +Tau_NN_Result TauNNIdHW::EvaluateNN() { + + input_t model_input[N_INPUT_1_1]; for (unsigned int i = 0; i < NNvectorVar_.size(); i++) { - data[i] = input_t(NNvectorVar_[i]); + model_input[i] = input_t(NNvectorVar_[i]); } - layer1_t layer1_out[N_LAYER_1]; - layer1_t logits1[N_LAYER_1]; - nnet::compute_layer(data, logits1, w1, b1); - nnet::relu(logits1, layer1_out); - layer2_t layer2_out[N_LAYER_2]; - layer2_t logits2[N_LAYER_2]; - nnet::compute_layer(layer1_out, logits2, w2, b2); - nnet::relu(logits2, layer2_out); + nnet::dense(model_input, layer2_out, w2, b2); // Dense_1 + + layer4_t layer4_out[N_LAYER_2]; + nnet::relu(layer2_out, layer4_out); // relu_1 + + layer5_t layer5_out[N_LAYER_5]; + nnet::dense(layer4_out, layer5_out, w5, b5); // Dense_2 + + layer7_t layer7_out[N_LAYER_5]; + nnet::relu(layer5_out, layer7_out); // relu_2 + + layer8_t layer8_out[N_LAYER_8]; + nnet::dense(layer7_out, layer8_out, w8, b8); // Dense_3 + + layer10_t layer10_out[N_LAYER_8]; + nnet::relu(layer8_out, layer10_out); // relu_3 + + layer11_t layer11_out[N_LAYER_11]; + nnet::dense(layer10_out, layer11_out, w11, b11); // Dense_4 + + layer13_t layer13_out[N_LAYER_11]; + nnet::relu(layer11_out, layer13_out); // relu_4 + + layer14_t layer14_out[N_LAYER_14]; + nnet::dense(layer13_out, layer14_out, w14, b14); // Dense_5 + + layer16_t layer16_out[N_LAYER_14]; + nnet::relu(layer14_out, layer16_out); // relu_5 + + layer17_t layer17_out[N_LAYER_17]; + nnet::dense(layer16_out, layer17_out, w17, b17); // Dense_6 - layer3_t layer3_out[N_LAYER_3]; - layer3_t logits3[N_LAYER_3]; - nnet::compute_layer(layer2_out, logits3, w3, b3); - nnet::relu(logits3, layer3_out); + result_t layer19_out[N_LAYER_17]; + nnet::sigmoid(layer17_out, layer19_out); // jetID_output - result_t logits4[N_OUTPUTS]; - nnet::compute_layer(layer3_out, logits4, w4, b4); - result_t res[N_OUTPUTS]; - nnet::sigmoid(logits4, res); + result_t layer20_out[N_LAYER_20]; + nnet::dense(layer16_out, layer20_out, w20, b20); // pT_output + + // Return both pT correction and the NN ID + Tau_NN_Result nn_out; + nn_out.nn_pt_correction = layer20_out[0]; + nn_out.nn_id = layer19_out[0]; + + return nn_out; - return res[0]; } + /* +// Uncomment for debugging purposes void TauNNIdHW::print() { for (unsigned i0 = 0; i0 < fNParticles_; i0++) { input_t pPt = input_t(fPt_.get()[i0]); @@ -78,30 +109,45 @@ void TauNNIdHW::print() { fprintf(file_, "\n"); } */ -result_t TauNNIdHW::compute(const l1t::PFCandidate &iSeed, std::vector &iParts) { + +Tau_NN_Result TauNNIdHW::compute(const l1t::PFCandidate &iSeed, std::vector &iParts) { + + // Initialize the input vector for (unsigned i0 = 0; i0 < fNParticles_; i0++) { fPt_.get()[i0] = 0.; fEta_.get()[i0] = 0.; fPhi_.get()[i0] = 0.; fId_.get()[i0] = 0.; } + + // Sort the candidates by pT std::sort(iParts.begin(), iParts.end(), [](l1t::PFCandidate i, l1t::PFCandidate j) { return (pt_t(i.pt()) > pt_t(j.pt())); }); + + // Compute the values w.r.t to the seeds for (unsigned int i0 = 0; i0 < iParts.size(); i0++) { + if (i0 >= fNParticles_) break; + fPt_.get()[i0] = pt_t(iParts[i0].pt()); fEta_.get()[i0] = etaphi_t(iSeed.eta() - iParts[i0].eta()); etaphi_t lDPhi = etaphi_t(iSeed.phi()) - etaphi_t(iParts[i0].phi()); etaphi_t lMPI = 3.1415; + if (lDPhi > lMPI) lDPhi = lDPhi - lMPI; if (lDPhi < -lMPI) lDPhi = lDPhi + lMPI; + fPhi_.get()[i0] = lDPhi; fId_.get()[i0] = id_t(iParts[i0].id()); } + + // Set the inputs SetNNVectorVar(); + + // Return the N outputs with the inputs return EvaluateNN(); } From fb6058455a3dd325cbd0dd6b3491c08422588f0a Mon Sep 17 00:00:00 2001 From: Duc Hoang Date: Sat, 23 Dec 2023 08:38:35 +0100 Subject: [PATCH 171/281] clean up, compiled locally --- .../interface/taus/defines.h | 70 ++-- .../taus/nnet_utils/nnet_activation.h | 117 +++---- .../interface/taus/nnet_utils/nnet_common.h | 41 ++- .../interface/taus/nnet_utils/nnet_dense.h | 60 +++- .../taus/nnet_utils/nnet_dense_latency.h | 51 --- .../interface/taus/nnet_utils/nnet_helpers.h | 20 -- .../interface/taus/nnet_utils/nnet_mult.h | 136 ++++---- .../interface/taus/nnet_utils/nnet_types.h | 36 --- .../interface/taus/tau_parameters.h | 301 ++++++++---------- .../interface/taus/weights/b11.h | 16 +- .../interface/taus/weights/b14.h | 3 +- .../interface/taus/weights/b2.h | 4 +- .../interface/taus/weights/b20.h | 2 +- .../interface/taus/weights/b5.h | 4 +- .../interface/taus/weights/b8.h | 16 +- .../interface/taus/weights/w11.h | 25 +- .../interface/taus/weights/w14.h | 17 +- .../interface/taus/weights/w17.h | 3 +- .../interface/taus/weights/w2.h | 202 +++++++++++- .../interface/taus/weights/w20.h | 3 +- .../interface/taus/weights/w5.h | 65 +++- .../interface/taus/weights/w8.h | 40 ++- .../plugins/L1NNTauProducer.cc | 10 +- .../src/taus/TauNNIdHW.cc | 30 +- 24 files changed, 766 insertions(+), 506 deletions(-) delete mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense_latency.h delete mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_helpers.h delete mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_types.h diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/defines.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/defines.h index 35690ff867be3..1f1a2f73dbb98 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/defines.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/defines.h @@ -7,8 +7,6 @@ #include #include -#include "L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_types.h" - // hls-fpga-machine-learning insert numbers #define N_INPUT_1_1 80 #define N_LAYER_2 25 @@ -26,47 +24,47 @@ #define N_LAYER_20 1 // hls-fpga-machine-learning insert layer-precision -typedef ap_fixed<16,6> input_t; +typedef ap_fixed<16, 6> input_t; typedef ap_fixed<24, 12> input2_t; -typedef ap_fixed<16,6> model_default_t; -typedef ap_fixed<16,6> layer2_t; -typedef ap_fixed<9,3> weight2_t; -typedef ap_fixed<9,3> bias2_t; +typedef ap_fixed<16, 6> model_default_t; +typedef ap_fixed<16, 6> layer2_t; +typedef ap_fixed<9, 3> weight2_t; +typedef ap_fixed<9, 3> bias2_t; typedef ap_uint<1> layer2_index; -typedef ap_ufixed<9,0,AP_RND_CONV,AP_SAT> layer4_t; -typedef ap_fixed<18,8> relu_1_table_t; -typedef ap_fixed<16,6> layer5_t; -typedef ap_fixed<9,3> weight5_t; -typedef ap_fixed<9,3> bias5_t; +typedef ap_ufixed<9, 0, AP_RND_CONV, AP_SAT> layer4_t; +typedef ap_fixed<18, 8> relu_1_table_t; +typedef ap_fixed<16, 6> layer5_t; +typedef ap_fixed<9, 3> weight5_t; +typedef ap_fixed<9, 3> bias5_t; typedef ap_uint<1> layer5_index; -typedef ap_ufixed<9,0,AP_RND_CONV,AP_SAT> layer7_t; -typedef ap_fixed<18,8> relu_2_table_t; -typedef ap_fixed<16,6> layer8_t; -typedef ap_fixed<9,3> weight8_t; -typedef ap_fixed<9,3> bias8_t; +typedef ap_ufixed<9, 0, AP_RND_CONV, AP_SAT> layer7_t; +typedef ap_fixed<18, 8> relu_2_table_t; +typedef ap_fixed<16, 6> layer8_t; +typedef ap_fixed<9, 3> weight8_t; +typedef ap_fixed<9, 3> bias8_t; typedef ap_uint<1> layer8_index; -typedef ap_ufixed<9,0,AP_RND_CONV,AP_SAT> layer10_t; -typedef ap_fixed<18,8> relu_3_table_t; -typedef ap_fixed<16,6> layer11_t; -typedef ap_fixed<9,3> weight11_t; -typedef ap_fixed<9,3> bias11_t; +typedef ap_ufixed<9, 0, AP_RND_CONV, AP_SAT> layer10_t; +typedef ap_fixed<18, 8> relu_3_table_t; +typedef ap_fixed<16, 6> layer11_t; +typedef ap_fixed<9, 3> weight11_t; +typedef ap_fixed<9, 3> bias11_t; typedef ap_uint<1> layer11_index; -typedef ap_ufixed<9,0,AP_RND_CONV,AP_SAT> layer13_t; -typedef ap_fixed<18,8> relu_4_table_t; -typedef ap_fixed<16,6> layer14_t; -typedef ap_fixed<9,3> weight14_t; -typedef ap_fixed<9,3> bias14_t; +typedef ap_ufixed<9, 0, AP_RND_CONV, AP_SAT> layer13_t; +typedef ap_fixed<18, 8> relu_4_table_t; +typedef ap_fixed<16, 6> layer14_t; +typedef ap_fixed<9, 3> weight14_t; +typedef ap_fixed<9, 3> bias14_t; typedef ap_uint<1> layer14_index; -typedef ap_ufixed<9,0,AP_RND_CONV,AP_SAT> layer16_t; -typedef ap_fixed<18,8> relu_5_table_t; -typedef ap_fixed<16,6> layer17_t; -typedef ap_fixed<16,7> weight17_t; -typedef ap_fixed<16,7> bias17_t; +typedef ap_ufixed<9, 0, AP_RND_CONV, AP_SAT> layer16_t; +typedef ap_fixed<18, 8> relu_5_table_t; +typedef ap_fixed<16, 6> layer17_t; +typedef ap_fixed<16, 7> weight17_t; +typedef ap_fixed<16, 7> bias17_t; typedef ap_uint<1> layer17_index; -typedef ap_fixed<16,6> result_t; -typedef ap_fixed<18,8> jetID_output_table_t; -typedef ap_fixed<16,7> weight20_t; -typedef ap_fixed<16,7> bias20_t; +typedef ap_fixed<16, 6> result_t; +typedef ap_fixed<18, 8> jetID_output_table_t; +typedef ap_fixed<16, 7> weight20_t; +typedef ap_fixed<16, 7> bias20_t; typedef ap_uint<1> layer20_index; #endif \ No newline at end of file diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_activation.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_activation.h index 302db5f032aeb..e5413aedf5fc5 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_activation.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_activation.h @@ -1,91 +1,94 @@ #ifndef NNET_ACTIVATION_H_ #define NNET_ACTIVATION_H_ +#include #include "ap_fixed.h" #include "nnet_common.h" -#include namespace nnet { -struct activ_config { + struct activ_config { // IO size - static int n_in; + static const unsigned n_in = 10; // Internal info - static const int table_size=1024; + static const unsigned table_size = 1024; // Resource reuse info - int io_type = io_parallel; - int reuse_factor = 1; + static const unsigned io_type = io_parallel; + static const unsigned reuse_factor = 1; // Internal data type definitions typedef ap_fixed<18, 8> table_t; -}; - -int activ_config::n_in=10; + }; -// ************************************************* -// RELU Activation -// ************************************************* -template void relu(data_T data[CONFIG_T::n_in], res_T res[CONFIG_T::n_in]) { + // ************************************************* + // LINEAR Activation -- See Issue 53 + // ************************************************* + template + void linear(data_T data[CONFIG_T::n_in], res_T res[CONFIG_T::n_in]) { + for (unsigned ii = 0; ii < CONFIG_T::n_in; ii++) { + res[ii] = data[ii]; + } + } + // ************************************************* + // RELU Activation + // ************************************************* + template + void relu(data_T data[CONFIG_T::n_in], res_T res[CONFIG_T::n_in]) { data_T datareg; - for (int ii = 0; ii < CONFIG_T::n_in; ii++) { - datareg = data[ii]; - if (datareg > 0) - res[ii] = datareg; - else - res[ii] = 0; + for (unsigned ii = 0; ii < CONFIG_T::n_in; ii++) { + datareg = data[ii]; + if (datareg > 0) + res[ii] = datareg; + else + res[ii] = 0; } -} + } -// ************************************************* -// Sigmoid Activation -// ************************************************* -inline float sigmoid_fcn_float(float input) { return 1.0 / (1 + std::exp(-input)); } + // ************************************************* + // Sigmoid Activation + // ************************************************* + template + inline out_T sigmoid_fcn_float(float input) { + return 1.0 / (1 + exp(-input)); + } -template void init_sigmoid_table(typename CONFIG_T::table_t table_out[N_TABLE]) { + template + void init_sigmoid_table(res_T table_out[N_TABLE]) { // Default logistic sigmoid function: // result = 1/(1+e^(-x)) - for (int ii = 0; ii < N_TABLE; ii++) { - // First, convert from table index to X-value (signed 8-bit, range -8 to +8) - float in_val = 2 * 8.0 * (ii - float(N_TABLE) / 2.0) / float(N_TABLE); - // Next, compute lookup table function - typename CONFIG_T::table_t real_val = sigmoid_fcn_float(in_val); - // std::cout << "Lookup table In Value: " << in_val << " Result: " << real_val << std::endl; - table_out[ii] = real_val; + for (unsigned ii = 0; ii < N_TABLE; ii++) { + // First, convert from table index to X-value (signed 8-bit, range -8 to +8) + float in_val = 2 * 8.0 * (ii - float(N_TABLE) / 2.0) / float(N_TABLE); + // Next, compute lookup table function + res_T real_val = sigmoid_fcn_float(in_val); + //std::cout << "Lookup table In Value: " << in_val << " Result: " << real_val << std::endl; + table_out[ii] = (res_T)real_val; } -} + } -template -void sigmoid(data_T data[CONFIG_T::n_in], res_T res[CONFIG_T::n_in]) { + template + void sigmoid(data_T data[CONFIG_T::n_in], res_T res[CONFIG_T::n_in]) { // Initialize the lookup table -#ifdef __HLS_SYN__ - bool initialized = false; - typename CONFIG_T::table_t sigmoid_table[CONFIG_T::table_size]; -#else - static bool initialized = false; - static typename CONFIG_T::table_t sigmoid_table[CONFIG_T::table_size]; -#endif - if (!initialized) { - init_sigmoid_table(sigmoid_table); - initialized = true; - } + res_T sigmoid_table[CONFIG_T::table_size]; + init_sigmoid_table(sigmoid_table); // Index into the lookup table based on data int data_round; - int index; - for (int ii = 0; ii < CONFIG_T::n_in; ii++) { - data_round = data[ii] * CONFIG_T::table_size / 16; - index = data_round + 8 * CONFIG_T::table_size / 16; - if (index < 0) - index = 0; - if (index > CONFIG_T::table_size - 1) - index = CONFIG_T::table_size - 1; - res[ii] = (res_T)sigmoid_table[index]; + unsigned index; + for (unsigned ii = 0; ii < CONFIG_T::n_in; ii++) { + data_round = data[ii] * CONFIG_T::table_size / 16; + index = data_round + 8 * CONFIG_T::table_size / 16; + /*if (index < 0) + index = 0;*/ + if (index > CONFIG_T::table_size - 1) + index = CONFIG_T::table_size - 1; + res[ii] = (res_T)sigmoid_table[index]; } -} + } -} // namespace nnet +} // namespace nnet #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_common.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_common.h index 6393623d87ad9..8441cca4412c2 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_common.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_common.h @@ -11,45 +11,42 @@ #define STRINGIFY(x) #x #define EXPAND_STRING(x) STRINGIFY(x) -#ifndef __VITIS_HLS__ -#define DATA_PACK_TXT HLS DATA_PACK variable = -#define DATA_PACK_PRAGMA(variable) DATA_PACK_TXT variable -#define PRAGMA_DATA_PACK(variable) _Pragma(EXPAND_STRING(DATA_PACK_PRAGMA(variable))) -#else -#define PRAGMA_DATA_PACK(variable) -#endif - namespace nnet { -// Common type definitions -enum io_type { io_parallel = 0, io_stream }; -enum strategy { latency, resource }; + // Common type definitions + enum io_type { io_parallel = 0, io_stream }; + enum strategy { latency, resource }; -template class Op_add { + template + class Op_add { public: T operator()(T a, T b) { return a + b; } -}; + }; -template class Op_and { + template + class Op_and { public: T operator()(T a, T b) { return a && b; } -}; + }; -template class Op_or { + template + class Op_or { public: T operator()(T a, T b) { return a || b; } -}; + }; -template class Op_max { + template + class Op_max { public: T operator()(T a, T b) { return a >= b ? a : b; } -}; + }; -template class Op_min { + template + class Op_min { public: T operator()(T a, T b) { return a <= b ? a : b; } -}; + }; -} // namespace nnet +} // namespace nnet #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense.h index 9a6f7c7108c3c..22edbcbf501bd 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense.h @@ -1,24 +1,21 @@ #ifndef NNET_DENSE_H_ #define NNET_DENSE_H_ - #include "nnet_common.h" -#include "nnet_dense_latency.h" -#include "nnet_helpers.h" #include "nnet_mult.h" #include namespace nnet { -struct dense_config { + struct dense_config { // Internal data type definitions typedef float bias_t; typedef float weight_t; typedef float accum_t; // Layer Sizes - static int n_in; - static int n_out; + static const unsigned n_in = 10; + static const unsigned n_out = 10; // Resource reuse info int io_type = io_parallel; @@ -28,19 +25,48 @@ struct dense_config { int n_zeros = 0; // partitioning arrays cyclically to go with roll factors? // Product function to use - template using product = nnet::product::mult; -}; + template + using product = nnet::product::mult; + }; + + template + void dense(data_T data[CONFIG_T::n_in], + res_T res[CONFIG_T::n_out], + typename CONFIG_T::weight_t weights[CONFIG_T::n_in * CONFIG_T::n_out], + typename CONFIG_T::bias_t biases[CONFIG_T::n_out]) { + data_T cache; + typename CONFIG_T::accum_t mult[CONFIG_T::n_in * CONFIG_T::n_out]; + typename CONFIG_T::accum_t acc[CONFIG_T::n_out]; + + // Do the matrix-multiply + for (unsigned ii = 0; ii < CONFIG_T::n_in; ii++) { + cache = data[ii]; + for (unsigned jj = 0; jj < CONFIG_T::n_out; jj++) { + unsigned index = ii * CONFIG_T::n_out + jj; + mult[index] = CONFIG_T::template product::product(cache, weights[index]); + } + } + + // Initialize accumulator with input biases + for (unsigned iacc = 0; iacc < CONFIG_T::n_out; iacc++) { + acc[iacc] = (typename CONFIG_T::accum_t)biases[iacc]; + } -int dense_config::n_in=10; -int dense_config::n_out=10; + // Accumulate multiplication result + for (unsigned ii = 0; ii < CONFIG_T::n_in; ii++) { + for (unsigned jj = 0; jj < CONFIG_T::n_out; jj++) { + unsigned index = ii * CONFIG_T::n_out + jj; + acc[jj] += mult[index]; + } + } -template -void dense(data_T data[CONFIG_T::n_in], res_T res[CONFIG_T::n_out], - typename CONFIG_T::weight_t weights[CONFIG_T::n_in * CONFIG_T::n_out], - typename CONFIG_T::bias_t biases[CONFIG_T::n_out]) { - dense_latency(data, res, weights, biases); -} + // Cast to "res_t" type + for (unsigned ires = 0; ires < CONFIG_T::n_out; ires++) { + // res[ires] = (res_T) (acc[ires]); + res[ires] = cast(acc[ires]); + } + } -} // namespace nnet +} // namespace nnet #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense_latency.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense_latency.h deleted file mode 100644 index 04b4b1ea28ff1..0000000000000 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_dense_latency.h +++ /dev/null @@ -1,51 +0,0 @@ -#ifndef NNET_DENSE_LATENCY_H_ -#define NNET_DENSE_LATENCY_H_ - - -#include "nnet_common.h" -#include "nnet_helpers.h" -#include "nnet_mult.h" -#include - -namespace nnet { - -template -void dense_latency(data_T data[CONFIG_T::n_in], res_T res[CONFIG_T::n_out], - typename CONFIG_T::weight_t weights[CONFIG_T::n_in * CONFIG_T::n_out], - typename CONFIG_T::bias_t biases[CONFIG_T::n_out]) { - data_T cache; - typename CONFIG_T::accum_t mult[CONFIG_T::n_in * CONFIG_T::n_out]; - typename CONFIG_T::accum_t acc[CONFIG_T::n_out]; - -// Do the matrix-multiply - for (int ii = 0; ii < CONFIG_T::n_in; ii++) { - cache = data[ii]; - for (int jj = 0; jj < CONFIG_T::n_out; jj++) { - int index = ii * CONFIG_T::n_out + jj; - mult[index] = CONFIG_T::template product::product(cache, weights[index]); - } - } - -// Initialize accumulator with input biases - for (int iacc = 0; iacc < CONFIG_T::n_out; iacc++) { - acc[iacc] = (typename CONFIG_T::accum_t)biases[iacc]; - } - -// Accumulate multiplication result - for (int ii = 0; ii < CONFIG_T::n_in; ii++) { - for (int jj = 0; jj < CONFIG_T::n_out; jj++) { - int index = ii * CONFIG_T::n_out + jj; - acc[jj] += mult[index]; - } - } - -// Cast to "res_t" type - for (int ires = 0; ires < CONFIG_T::n_out; ires++) { - // res[ires] = (res_T) (acc[ires]); - res[ires] = cast(acc[ires]); - } -} - -} // namespace nnet - -#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_helpers.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_helpers.h deleted file mode 100644 index 62ae98185e4fc..0000000000000 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_helpers.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef NNET_HELPERS_H -#define NNET_HELPERS_H - - -#include -#include -#include -#include -#include -#include -#include -#include - -namespace nnet { - -constexpr int ceillog2(int x) { return (x <= 2) ? 1 : 1 + ceillog2((x + 1) / 2); } - -} // namespace nnet - -#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_mult.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_mult.h index 996a9942a86a5..3e2ce5b84b080 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_mult.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_mult.h @@ -1,104 +1,108 @@ #ifndef NNET_MULT_H_ #define NNET_MULT_H_ - #include "nnet_common.h" -#include "nnet_helpers.h" #include #include namespace nnet { -namespace product { + constexpr int ceillog2(int x) { return (x <= 2) ? 1 : 1 + ceillog2((x + 1) / 2); } + + namespace product { -/* --- + /* --- * different methods to perform the product of input and weight, depending on the * types of each. * --- */ -class Product {}; + class Product {}; -template class both_binary : public Product { - public: - static x_T product(x_T a, w_T w) { - return a == w; - } -}; + template + class both_binary : public Product { + public: + static x_T product(x_T a, w_T w) { return a == w; } + }; -template class weight_binary : public Product { - public: - static auto product(x_T a, w_T w) -> decltype(-a) { + template + class weight_binary : public Product { + public: + static auto product(x_T a, w_T w) -> decltype(-a) { if (w == 0) - return -a; + return -a; else - return a; - } -}; - -template class data_binary : public Product { - public: - static auto product(x_T a, w_T w) -> decltype(-w) { + return a; + } + }; + + template + class data_binary : public Product { + public: + static auto product(x_T a, w_T w) -> decltype(-w) { if (a == 0) - return -w; + return -w; else - return w; - } -}; - -template class weight_ternary : public Product { - public: - static auto product(x_T a, w_T w) -> decltype(-a) { + return w; + } + }; + + template + class weight_ternary : public Product { + public: + static auto product(x_T a, w_T w) -> decltype(-a) { if (w == 0) - return 0; + return 0; else if (w == -1) - return -a; + return -a; else - return a; // if(w == 1) - } -}; - -template class mult : public Product { - public: - static auto product(x_T a, w_T w) -> decltype(a * w) { - return a * w; - } -}; - -template class weight_exponential : public Product { - public: - using r_T = ap_fixed<2 * (decltype(w_T::weight)::width + x_T::width), (decltype(w_T::weight)::width + x_T::width)>; - static r_T product(x_T a, w_T w) { - + return a; // if(w == 1) + } + }; + + template + class mult : public Product { + public: + static auto product(x_T a, w_T w) -> decltype(a * w) { return a * w; } + }; + + template + class weight_exponential : public Product { + public: + using r_T = + ap_fixed<2 * (decltype(w_T::weight)::width + x_T::width), (decltype(w_T::weight)::width + x_T::width)>; + static r_T product(x_T a, w_T w) { // Shift by the exponent. Negative weights shift right r_T y = static_cast(a) << w.weight; // Negate or not depending on weight sign return w.sign == 1 ? y : static_cast(-y); - } -}; + } + }; -} // namespace product + } // namespace product -template -inline typename std::enable_if>::value && - std::is_same>::value, - ap_int>::type -cast(typename CONFIG_T::accum_t x) { + template + inline typename std::enable_if>::value && + std::is_same>::value, + ap_int>::type + cast(typename CONFIG_T::accum_t x) { return (ap_int)(x - CONFIG_T::n_in / 2) * 2; -} + } -template -inline typename std::enable_if< - std::is_same>::value && !std::is_same>::value, res_T>::type -cast(typename CONFIG_T::accum_t x) { + template + inline typename std::enable_if>::value && + !std::is_same>::value, + res_T>::type + cast(typename CONFIG_T::accum_t x) { return (res_T)x; -} + } -template -inline typename std::enable_if<(!std::is_same>::value), res_T>::type cast(typename CONFIG_T::accum_t x) { + template + inline typename std::enable_if<(!std::is_same>::value), res_T>::type cast( + typename CONFIG_T::accum_t x) { return (res_T)x; -} + } -} // namespace nnet +} // namespace nnet #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_types.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_types.h deleted file mode 100644 index e8be84b6af4d0..0000000000000 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/nnet_utils/nnet_types.h +++ /dev/null @@ -1,36 +0,0 @@ -#ifndef NNET_TYPES_H_ -#define NNET_TYPES_H_ - -#include -#include -#include - -namespace nnet { - -// Fixed-size array -template struct array { - typedef T value_type; - int size = N; - - T data[N]; - - T &operator[](size_t pos) { return data[pos]; } - - const T &operator[](size_t pos) const { return data[pos]; } - - array &operator=(const array &other) { - if (&other == this) - return *this; - - assert(N == other.size && "Array sizes must match."); - - for (unsigned i = 0; i < N; i++) { - data[i] = other[i]; - } - return *this; - } -}; - -} // namespace nnet - -#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/tau_parameters.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/tau_parameters.h index 427db48de91f4..e488ac1bf4902 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/tau_parameters.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/tau_parameters.h @@ -30,220 +30,189 @@ // hls-fpga-machine-learning insert layer-config // Dense_1 struct config2 : nnet::dense_config { - static int n_in; - static int n_out; - int io_type = nnet::io_parallel; - int strategy = nnet::latency; - int reuse_factor = 1; - int n_zeros = 1205; - int n_nonzeros = 795; - int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; - static const bool store_weights_in_bram = false; - typedef model_default_t accum_t; - typedef bias2_t bias_t; - typedef weight2_t weight_t; - typedef layer2_index index_t; - template - using product = nnet::product::mult; + static const unsigned n_in = 80; + static const unsigned n_out = 25; + static const unsigned io_type = nnet::io_parallel; + static const unsigned strategy = nnet::latency; + static const unsigned reuse_factor = 1; + static const unsigned n_zeros = 1205; + static const unsigned n_nonzeros = 795; + static const unsigned multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias2_t bias_t; + typedef weight2_t weight_t; + typedef layer2_index index_t; + template + using product = nnet::product::mult; }; -int config2::n_in = 80; -int config2::n_out = 25; - // relu_1 struct relu_config4 : nnet::activ_config { - static int n_in; - static const int table_size = 1024; - int io_type = nnet::io_parallel; - int reuse_factor = 1; - typedef relu_1_table_t table_t; + static const unsigned n_in = 25; + static const unsigned table_size = 1024; + static const unsigned io_type = nnet::io_parallel; + static const unsigned reuse_factor = 1; + typedef relu_1_table_t table_t; }; -int relu_config4::n_in = 25; // Dense_2 struct config5 : nnet::dense_config { - static int n_in; - static int n_out; - int io_type = nnet::io_parallel; - int strategy = nnet::latency; - int reuse_factor = 1; - int n_zeros = 375; - int n_nonzeros = 250; - int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; - static const bool store_weights_in_bram = false; - typedef model_default_t accum_t; - typedef bias5_t bias_t; - typedef weight5_t weight_t; - typedef layer5_index index_t; - template - using product = nnet::product::mult; + static const unsigned n_in = 25; + static const unsigned n_out = 25; + static const unsigned io_type = nnet::io_parallel; + static const unsigned strategy = nnet::latency; + static const unsigned reuse_factor = 1; + static const unsigned n_zeros = 375; + static const unsigned n_nonzeros = 250; + static const unsigned multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias5_t bias_t; + typedef weight5_t weight_t; + typedef layer5_index index_t; + template + using product = nnet::product::mult; }; -int config5::n_in = 25; -int config5::n_out = 25; - // relu_2 struct relu_config7 : nnet::activ_config { - static int n_in; - static const int table_size = 1024; - int io_type = nnet::io_parallel; - int reuse_factor = 1; - typedef relu_2_table_t table_t; + static const unsigned n_in = 25; + static const unsigned table_size = 1024; + static const unsigned io_type = nnet::io_parallel; + static const unsigned reuse_factor = 1; + typedef relu_2_table_t table_t; }; -int relu_config7::n_in = 25; - // Dense_3 struct config8 : nnet::dense_config { - static int n_in; - static int n_out; - int io_type = nnet::io_parallel; - int strategy = nnet::latency; - int reuse_factor = 1; - int n_zeros = 225; - int n_nonzeros = 150; - int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; - static const bool store_weights_in_bram = false; - typedef model_default_t accum_t; - typedef bias8_t bias_t; - typedef weight8_t weight_t; - typedef layer8_index index_t; - template - using product = nnet::product::mult; + static const unsigned n_in = 25; + static const unsigned n_out = 15; + static const unsigned io_type = nnet::io_parallel; + static const unsigned strategy = nnet::latency; + static const unsigned reuse_factor = 1; + static const unsigned n_zeros = 225; + static const unsigned n_nonzeros = 150; + static const unsigned multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias8_t bias_t; + typedef weight8_t weight_t; + typedef layer8_index index_t; + template + using product = nnet::product::mult; }; -int config8::n_in = 25; -int config8::n_out = 15; - // relu_3 struct relu_config10 : nnet::activ_config { - static int n_in; - static const int table_size = 1024; - int io_type = nnet::io_parallel; - int reuse_factor = 1; - typedef relu_3_table_t table_t; + static const unsigned n_in = 15; + static const unsigned table_size = 1024; + static const unsigned io_type = nnet::io_parallel; + static const unsigned reuse_factor = 1; + typedef relu_3_table_t table_t; }; -int relu_config10::n_in = 15; - // Dense_4 struct config11 : nnet::dense_config { - static int n_in; - static int n_out; - int io_type = nnet::io_parallel; - int strategy = nnet::latency; - int reuse_factor = 1; - int n_zeros = 135; - int n_nonzeros = 90; - int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; - static const bool store_weights_in_bram = false; - typedef model_default_t accum_t; - typedef bias11_t bias_t; - typedef weight11_t weight_t; - typedef layer11_index index_t; - template - using product = nnet::product::mult; + static const unsigned n_in = 15; + static const unsigned n_out = 15; + static const unsigned io_type = nnet::io_parallel; + static const unsigned strategy = nnet::latency; + static const unsigned reuse_factor = 1; + static const unsigned n_zeros = 135; + static const unsigned n_nonzeros = 90; + static const unsigned multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias11_t bias_t; + typedef weight11_t weight_t; + typedef layer11_index index_t; + template + using product = nnet::product::mult; }; -int config11::n_in = 15; -int config11::n_out = 15; - // relu_4 struct relu_config13 : nnet::activ_config { - static int n_in; - static const int table_size = 1024; - int io_type = nnet::io_parallel; - int reuse_factor = 1; - typedef relu_4_table_t table_t; + static const unsigned n_in = 15; + static const unsigned table_size = 1024; + static const unsigned io_type = nnet::io_parallel; + static const unsigned reuse_factor = 1; + typedef relu_4_table_t table_t; }; -int relu_config13::n_in = 15; - // Dense_5 struct config14 : nnet::dense_config { - static int n_in; - static int n_out; - int io_type = nnet::io_parallel; - int strategy = nnet::latency; - int reuse_factor = 1; - int n_zeros = 90; - int n_nonzeros = 60; - int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; - static const bool store_weights_in_bram = false; - typedef model_default_t accum_t; - typedef bias14_t bias_t; - typedef weight14_t weight_t; - typedef layer14_index index_t; - template - using product = nnet::product::mult; + static const unsigned n_in = 15; + static const unsigned n_out = 10; + static const unsigned io_type = nnet::io_parallel; + static const unsigned strategy = nnet::latency; + static const unsigned reuse_factor = 1; + static const unsigned n_zeros = 90; + static const unsigned n_nonzeros = 60; + static const unsigned multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias14_t bias_t; + typedef weight14_t weight_t; + typedef layer14_index index_t; + template + using product = nnet::product::mult; }; -int config14::n_in=15; -int config14::n_out=10; - // relu_5 struct relu_config16 : nnet::activ_config { - static int n_in; - static const int table_size=1024; - int io_type = nnet::io_parallel; - int reuse_factor = 1; - typedef relu_5_table_t table_t; + static const unsigned n_in = 10; + static const unsigned table_size = 1024; + static const unsigned io_type = nnet::io_parallel; + static const unsigned reuse_factor = 1; + typedef relu_5_table_t table_t; }; -int relu_config16::n_in=10; - // Dense_6 struct config17 : nnet::dense_config { - static int n_in; - static int n_out; - int io_type = nnet::io_parallel; - int strategy = nnet::latency; - int reuse_factor = 1; - int n_zeros = 6; - int n_nonzeros = 4; - int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; - static const bool store_weights_in_bram = false; - typedef model_default_t accum_t; - typedef bias17_t bias_t; - typedef weight17_t weight_t; - typedef layer17_index index_t; - template - using product = nnet::product::mult; + static const unsigned n_in = 10; + static const unsigned n_out = 1; + static const unsigned io_type = nnet::io_parallel; + static const unsigned strategy = nnet::latency; + static const unsigned reuse_factor = 1; + static const unsigned n_zeros = 6; + static const unsigned n_nonzeros = 4; + static const unsigned multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias17_t bias_t; + typedef weight17_t weight_t; + typedef layer17_index index_t; + template + using product = nnet::product::mult; }; -int config17::n_in=10; -int config17::n_out=1; // jetID_output struct sigmoid_config19 : nnet::activ_config { - static int n_in; - static const int table_sizetable_size=1024; - int io_type = nnet::io_parallel; - int reuse_factor = 1; - typedef jetID_output_table_t table_t; + static const unsigned n_in = 1; + static const unsigned table_size = 1024; + static const unsigned io_type = nnet::io_parallel; + static const unsigned reuse_factor = 1; + typedef jetID_output_table_t table_t; }; -int sigmoid_config19::n_in=1; - // pT_output struct config20 : nnet::dense_config { - static int n_in; - static int n_out; - int io_type = nnet::io_parallel; - int strategy = nnet::latency; - int reuse_factor = 1; - int n_zeros = 6; - int n_nonzeros = 4; - int multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; - static const bool store_weights_in_bram = false; - typedef model_default_t accum_t; - typedef bias20_t bias_t; - typedef weight20_t weight_t; - typedef layer20_index index_t; - template - using product = nnet::product::mult; + static const unsigned n_in = 10; + static const unsigned n_out = 1; + static const unsigned io_type = nnet::io_parallel; + static const unsigned strategy = nnet::latency; + static const unsigned reuse_factor = 1; + static const unsigned n_zeros = 6; + static const unsigned n_nonzeros = 4; + static const unsigned multiplier_limit = DIV_ROUNDUP(n_in * n_out, reuse_factor) - n_zeros / reuse_factor; + static const bool store_weights_in_bram = false; + typedef model_default_t accum_t; + typedef bias20_t bias_t; + typedef weight20_t weight_t; + typedef layer20_index index_t; + template + using product = nnet::product::mult; }; -int config20::n_in = 10; -int config20::n_out = 1; - #endif \ No newline at end of file diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b11.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b11.h index a71cb5d464eef..289d5b76f7f7f 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b11.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b11.h @@ -6,6 +6,20 @@ #ifndef B11_H_ #define B11_H_ -bias11_t b11[15] = {0.031250, 0.000000, 0.000000, 0.078125, 0.234375, -0.062500, 0.093750, 0.000000, 0.062500, 0.109375, -0.062500, -0.015625, 0.250000, 0.109375, -0.046875}; +bias11_t b11[15] = {0.031250, + 0.000000, + 0.000000, + 0.078125, + 0.234375, + -0.062500, + 0.093750, + 0.000000, + 0.062500, + 0.109375, + -0.062500, + -0.015625, + 0.250000, + 0.109375, + -0.046875}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b14.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b14.h index 1a178dc0e781a..9de3170588cec 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b14.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b14.h @@ -6,6 +6,7 @@ #ifndef B14_H_ #define B14_H_ -bias14_t b14[10] = {0.031250, 0.015625, 0.046875, -0.015625, -0.031250, 0.046875, 0.203125, 0.015625, 0.250000, -0.015625}; +bias14_t b14[10] = { + 0.031250, 0.015625, 0.046875, -0.015625, -0.031250, 0.046875, 0.203125, 0.015625, 0.250000, -0.015625}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b2.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b2.h index d2bbfa88524a6..b9cf57fb0c52d 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b2.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b2.h @@ -6,6 +6,8 @@ #ifndef B2_H_ #define B2_H_ -bias2_t b2[25] = {-0.312500, -0.281250, 0.687500, -0.250000, -0.640625, 0.656250, 0.500000, 0.265625, 0.171875, -0.046875, -0.093750, 0.156250, -0.156250, -0.093750, -0.171875, 0.234375, 0.046875, 0.125000, -0.140625, 0.187500, 0.937500, -0.046875, -0.250000, -0.250000, 1.328125}; +bias2_t b2[25] = {-0.312500, -0.281250, 0.687500, -0.250000, -0.640625, 0.656250, 0.500000, 0.265625, 0.171875, + -0.046875, -0.093750, 0.156250, -0.156250, -0.093750, -0.171875, 0.234375, 0.046875, 0.125000, + -0.140625, 0.187500, 0.937500, -0.046875, -0.250000, -0.250000, 1.328125}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b20.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b20.h index e54d04a7561dc..8887c33e169f4 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b20.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b20.h @@ -6,6 +6,6 @@ #ifndef B20_H_ #define B20_H_ -bias20_t b20[1] = { 0.238281}; +bias20_t b20[1] = {0.238281}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b5.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b5.h index 768de0ca54695..82ab448e8b98e 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b5.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b5.h @@ -6,6 +6,8 @@ #ifndef B5_H_ #define B5_H_ -bias5_t b5[25] = {-0.015625, 0.046875, -0.109375, 0.078125, 0.171875, 0.156250, 0.062500, 0.171875, 0.109375, 0.265625, 0.234375, 0.125000, -0.046875, -0.062500, 0.015625, -0.062500, 0.156250, 0.093750, 0.078125, -0.109375, 0.109375, 0.093750, 0.000000, -0.125000, 0.140625}; +bias5_t b5[25] = {-0.015625, 0.046875, -0.109375, 0.078125, 0.171875, 0.156250, 0.062500, 0.171875, 0.109375, + 0.265625, 0.234375, 0.125000, -0.046875, -0.062500, 0.015625, -0.062500, 0.156250, 0.093750, + 0.078125, -0.109375, 0.109375, 0.093750, 0.000000, -0.125000, 0.140625}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b8.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b8.h index 7f9f91ad5287a..2cfe199fc7265 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b8.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/b8.h @@ -6,6 +6,20 @@ #ifndef B8_H_ #define B8_H_ -bias8_t b8[15] = {0.093750, 0.046875, -0.015625, 0.265625, 0.046875, -0.078125, 0.031250, -0.062500, -0.015625, 0.015625, 0.062500, 0.062500, -0.109375, -0.046875, 0.140625}; +bias8_t b8[15] = {0.093750, + 0.046875, + -0.015625, + 0.265625, + 0.046875, + -0.078125, + 0.031250, + -0.062500, + -0.015625, + 0.015625, + 0.062500, + 0.062500, + -0.109375, + -0.046875, + 0.140625}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w11.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w11.h index c5ce2544821b1..ba69fb192e297 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w11.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w11.h @@ -6,6 +6,29 @@ #ifndef W11_H_ #define W11_H_ -weight11_t w11[225] = {0.734375, 0.000000, 0.000000, 1.015625, -0.781250, 0.000000, 1.203125, 0.687500, 0.000000, 0.000000, 0.593750, 0.281250, 0.843750, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, -0.937500, 0.531250, 0.000000, 0.000000, 0.000000, -0.453125, 0.000000, 0.484375, 0.000000, 0.546875, -0.671875, -0.296875, 0.000000, 0.000000, 0.375000, -0.625000, 0.203125, 0.000000, -0.734375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.515625, 0.000000, 0.000000, 0.500000, -0.453125, 0.000000, 0.000000, 0.500000, -0.359375, 0.000000, 0.000000, 0.000000, 0.468750, 0.000000, 0.000000, 0.000000, 0.328125, -0.406250, 0.000000, 0.359375, 0.359375, -0.375000, 0.000000, 0.000000, -0.296875, 0.406250, 0.000000, 0.000000, 0.406250, 0.328125, -0.515625, 0.421875, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, -0.453125, 0.000000, 0.000000, 0.000000, -0.375000, 0.000000, -0.453125, -0.984375, 0.000000, -0.406250, 0.000000, 0.421875, -0.343750, 0.000000, 0.000000, 0.000000, -0.437500, 0.000000, 0.343750, 0.000000, 0.375000, -0.453125, 0.000000, -0.343750, 0.000000, -0.421875, 0.000000, 0.406250, 0.000000, 0.328125, 0.343750, 0.375000, 0.000000, -0.343750, 0.000000, 0.328125, 0.000000, -0.359375, 0.000000, 0.000000, -0.453125, 0.000000, 0.000000, 0.000000, 0.000000, 0.328125, 0.000000, 0.468750, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, 0.000000, 0.531250, -0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.671875, 0.000000, 0.000000, 0.000000, 0.437500, 0.000000, 0.000000, 0.000000, -0.765625, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, 0.343750, 0.000000, -0.437500, -0.375000, 0.000000, 0.000000, 0.375000, 0.296875, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.562500, 0.000000, -0.421875, 0.000000, 0.000000, 0.312500, -0.140625, 0.359375, -0.390625, -0.359375, 0.406250, 0.625000, -0.484375, 0.000000, 0.000000, 0.687500, -0.406250}; +weight11_t w11[225] = { + 0.734375, 0.000000, 0.000000, 1.015625, -0.781250, 0.000000, 1.203125, 0.687500, 0.000000, 0.000000, + 0.593750, 0.281250, 0.843750, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, -0.937500, 0.531250, + 0.000000, 0.000000, 0.000000, -0.453125, 0.000000, 0.484375, 0.000000, 0.546875, -0.671875, -0.296875, + 0.000000, 0.000000, 0.375000, -0.625000, 0.203125, 0.000000, -0.734375, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, -0.515625, 0.000000, 0.000000, 0.500000, -0.453125, 0.000000, 0.000000, 0.500000, + -0.359375, 0.000000, 0.000000, 0.000000, 0.468750, 0.000000, 0.000000, 0.000000, 0.328125, -0.406250, + 0.000000, 0.359375, 0.359375, -0.375000, 0.000000, 0.000000, -0.296875, 0.406250, 0.000000, 0.000000, + 0.406250, 0.328125, -0.515625, 0.421875, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, + 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, -0.453125, 0.000000, 0.000000, 0.000000, -0.375000, + 0.000000, -0.453125, -0.984375, 0.000000, -0.406250, 0.000000, 0.421875, -0.343750, 0.000000, 0.000000, + 0.000000, -0.437500, 0.000000, 0.343750, 0.000000, 0.375000, -0.453125, 0.000000, -0.343750, 0.000000, + -0.421875, 0.000000, 0.406250, 0.000000, 0.328125, 0.343750, 0.375000, 0.000000, -0.343750, 0.000000, + 0.328125, 0.000000, -0.359375, 0.000000, 0.000000, -0.453125, 0.000000, 0.000000, 0.000000, 0.000000, + 0.328125, 0.000000, 0.468750, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, + 0.000000, 0.531250, -0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + -0.671875, 0.000000, 0.000000, 0.000000, 0.437500, 0.000000, 0.000000, 0.000000, -0.765625, 0.000000, + 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.421875, 0.000000, + 0.000000, 0.000000, 0.000000, 0.343750, 0.000000, -0.437500, -0.375000, 0.000000, 0.000000, 0.375000, + 0.296875, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, 0.390625, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.562500, 0.000000, + -0.421875, 0.000000, 0.000000, 0.312500, -0.140625, 0.359375, -0.390625, -0.359375, 0.406250, 0.625000, + -0.484375, 0.000000, 0.000000, 0.687500, -0.406250}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w14.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w14.h index 6348b92de90d2..f4103cee867e2 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w14.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w14.h @@ -6,6 +6,21 @@ #ifndef W14_H_ #define W14_H_ -weight14_t w14[150] = {-0.296875, -0.843750, 0.000000, 0.000000, -0.406250, 0.000000, -0.281250, 1.031250, 0.000000, 0.000000, 0.453125, 0.000000, 0.359375, 0.375000, 0.406250, -0.421875, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, 0.828125, 0.000000, 0.000000, 0.000000, 0.000000, -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.406250, 0.796875, 0.421875, 0.640625, 0.546875, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, -0.328125, -0.890625, 0.000000, 0.859375, 0.750000, 0.000000, 0.453125, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.000000, -0.328125, -0.359375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.750000, 0.640625, 0.000000, 0.000000, 0.000000, -0.484375, 0.000000, 0.000000, -0.421875, 0.000000, -0.421875, 0.781250, 0.000000, 0.000000, 0.437500, 0.000000, 0.328125, 0.000000, 0.359375, 0.000000, 0.000000, 0.000000, -0.546875, 0.000000, 0.484375, 0.640625, 0.531250, 0.000000, 0.000000, 0.000000, 0.625000, -0.296875, 0.000000, -0.437500, 0.000000, 0.000000, 0.000000, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, 0.000000, -0.296875, -0.390625, 0.375000, 0.000000, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, -0.671875, 0.000000, -0.921875, 0.000000, -0.875000, 0.000000, 0.000000, 0.000000, 0.468750, 0.718750, 0.484375, 0.812500, 0.000000, 0.375000, 0.000000, 0.000000, -0.390625, 0.000000, -0.390625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.390625, 0.000000}; +weight14_t w14[150] = { + -0.296875, -0.843750, 0.000000, 0.000000, -0.406250, 0.000000, -0.281250, 1.031250, 0.000000, 0.000000, + 0.453125, 0.000000, 0.359375, 0.375000, 0.406250, -0.421875, 0.000000, 0.000000, 0.375000, 0.000000, + 0.000000, 0.828125, 0.000000, 0.000000, 0.000000, 0.000000, -0.312500, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, -0.406250, 0.796875, 0.421875, 0.640625, 0.546875, 0.000000, 0.000000, 0.000000, + -0.328125, 0.000000, 0.000000, 0.000000, -0.328125, -0.890625, 0.000000, 0.859375, 0.750000, 0.000000, + 0.453125, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.000000, -0.328125, -0.359375, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.750000, 0.640625, 0.000000, 0.000000, + 0.000000, -0.484375, 0.000000, 0.000000, -0.421875, 0.000000, -0.421875, 0.781250, 0.000000, 0.000000, + 0.437500, 0.000000, 0.328125, 0.000000, 0.359375, 0.000000, 0.000000, 0.000000, -0.546875, 0.000000, + 0.484375, 0.640625, 0.531250, 0.000000, 0.000000, 0.000000, 0.625000, -0.296875, 0.000000, -0.437500, + 0.000000, 0.000000, 0.000000, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, + 0.000000, 0.000000, 0.000000, -0.296875, -0.390625, 0.375000, 0.000000, 0.000000, -0.328125, 0.000000, + 0.000000, 0.000000, -0.671875, 0.000000, -0.921875, 0.000000, -0.875000, 0.000000, 0.000000, 0.000000, + 0.468750, 0.718750, 0.484375, 0.812500, 0.000000, 0.375000, 0.000000, 0.000000, -0.390625, 0.000000, + -0.390625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.390625, 0.000000}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w17.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w17.h index 50bb1a4d51058..0ce1c2b014117 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w17.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w17.h @@ -6,6 +6,7 @@ #ifndef W17_H_ #define W17_H_ -weight17_t w17[10] = { 0.000000, 1.773438, 1.755859, 0.000000, 0.000000, 0.000000, 1.603516, 0.000000, -2.798828, 0.000000}; +weight17_t w17[10] = { + 0.000000, 1.773438, 1.755859, 0.000000, 0.000000, 0.000000, 1.603516, 0.000000, -2.798828, 0.000000}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w2.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w2.h index 73e2a1ac748dd..cd94ddd044393 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w2.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w2.h @@ -6,6 +6,206 @@ #ifndef W2_H_ #define W2_H_ -weight2_t w2[2000] = {0.000000, 0.000000, 0.000000, 0.109375, 0.046875, 0.078125, 0.000000, 0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.046875, -0.125000, 0.000000, 0.703125, 0.031250, 0.000000, 0.000000, -0.203125, 0.000000, -1.296875, -0.656250, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.203125, 0.125000, 0.000000, 0.000000, 0.000000, 0.234375, -0.343750, 0.000000, 0.203125, 0.000000, 0.359375, -1.515625, 1.312500, 0.546875, 0.000000, -0.046875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.156250, -0.125000, -0.250000, 0.000000, 0.187500, 0.000000, -0.906250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.718750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.578125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.093750, 0.000000, 0.390625, 0.406250, 0.625000, 0.000000, 0.000000, -0.140625, 0.000000, -0.125000, 0.000000, 0.000000, 0.000000, -0.546875, -0.109375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.218750, 0.000000, 0.000000, 0.000000, 0.390625, -0.265625, -0.234375, 0.000000, -0.265625, 0.000000, 0.000000, 0.562500, 0.000000, 0.140625, 0.000000, 0.000000, 0.296875, 0.000000, -0.812500, 0.000000, -0.375000, 0.000000, 0.000000, 0.062500, 0.234375, 0.000000, 0.000000, 0.062500, 0.000000, 0.000000, 0.062500, -0.140625, -0.078125, 0.187500, -0.906250, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.718750, 0.296875, -0.937500, -0.937500, 0.000000, 0.000000, 0.000000, -0.062500, 0.843750, 0.031250, 0.000000, 0.468750, 0.000000, 0.000000, -0.484375, 0.000000, -0.656250, 0.875000, 0.000000, -0.109375, -0.015625, 0.000000, 0.000000, 0.140625, -0.343750, -0.421875, 0.343750, 0.078125, 0.000000, 0.000000, 0.171875, 0.000000, 0.000000, -0.531250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.375000, 0.000000, 0.000000, 0.000000, 0.218750, 0.546875, 0.015625, -0.109375, 0.000000, 0.000000, -0.125000, 0.000000, 0.000000, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.046875, 0.578125, 0.000000, 0.000000, 0.000000, -0.093750, 0.000000, 0.000000, 0.000000, 0.000000, 0.093750, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, 0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.031250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.171875, 0.000000, -0.031250, 0.000000, 0.453125, 0.000000, 0.000000, 0.000000, 0.703125, 0.125000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.265625, 0.000000, 0.000000, -0.484375, 0.000000, -0.031250, 0.000000, 0.000000, -0.156250, 0.000000, 0.187500, 0.484375, 0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.015625, 0.000000, 0.000000, 0.156250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, 0.000000, -0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, -0.125000, -0.156250, 0.000000, 0.000000, 0.000000, -0.062500, 0.000000, 0.218750, -0.671875, 0.000000, 0.281250, 0.000000, 0.000000, 0.000000, 0.125000, -0.125000, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, 0.593750, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, -0.140625, -0.171875, -0.265625, 0.000000, 0.437500, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, 0.000000, 0.000000, -0.281250, -0.125000, 0.000000, 1.234375, -0.171875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.234375, 0.078125, 0.000000, -0.546875, 0.421875, 0.000000, -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.250000, -0.375000, 0.000000, 0.000000, 0.515625, 0.000000, 0.000000, 0.000000, -0.171875, 0.000000, -0.515625, -0.156250, 0.000000, 0.171875, -0.453125, 0.000000, 0.000000, -0.500000, 0.000000, 0.171875, -0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.296875, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.156250, 0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.156250, 0.187500, 0.000000, 0.000000, 0.000000, -0.421875, 0.000000, -0.281250, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.359375, 0.000000, 0.000000, 0.187500, -0.093750, 0.000000, 0.000000, 0.046875, -0.250000, 0.000000, 0.000000, 0.156250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.031250, 0.000000, 0.000000, -0.250000, 0.000000, 0.000000, -0.125000, 0.000000, 0.000000, 0.000000, 0.000000, -0.078125, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.015625, 0.000000, 0.000000, -0.406250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.109375, 0.000000, 0.000000, -0.218750, -0.359375, 0.000000, 0.421875, 0.000000, 0.062500, 0.000000, -0.421875, -0.046875, 0.000000, 0.093750, 0.000000, 0.000000, 0.000000, -0.515625, 0.000000, 0.000000, 0.015625, 0.000000, 0.000000, -0.218750, 0.281250, 0.000000, 0.281250, -0.156250, 0.250000, 0.000000, 0.000000, 0.109375, 0.015625, 0.000000, 0.000000, 0.187500, 0.000000, 0.406250, -0.062500, -0.281250, -0.078125, 0.000000, 0.000000, 0.000000, -0.250000, -0.453125, -0.046875, 0.421875, 0.000000, -0.109375, 0.109375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.656250, 0.000000, 0.000000, 0.000000, 0.046875, 0.000000, 0.484375, -0.546875, -0.031250, -0.421875, 0.000000, -0.781250, 0.000000, 0.000000, -0.546875, 0.265625, 0.171875, -0.203125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.171875, 0.125000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.140625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.062500, 0.171875, 0.000000, 0.015625, 0.000000, 0.000000, 0.000000, 0.000000, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.093750, 0.203125, -0.140625, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.359375, 0.000000, 0.187500, -0.171875, -0.187500, 0.000000, 0.031250, 0.000000, 0.000000, 0.125000, 0.015625, 0.000000, 0.000000, 0.000000, 0.000000, -0.109375, 0.000000, -0.296875, 0.000000, -0.187500, 0.250000, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.078125, 0.000000, 0.000000, -0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.093750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, -0.109375, -0.296875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.234375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.125000, 0.000000, 0.109375, -0.750000, 0.125000, 0.000000, -0.187500, 0.156250, 0.000000, 0.109375, 0.000000, 0.109375, 0.000000, -0.265625, -0.031250, 0.000000, 0.125000, 0.000000, 0.203125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, -0.203125, 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.062500, 0.031250, 0.015625, 0.000000, 0.078125, -0.328125, -0.031250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.015625, 0.000000, -0.468750, -0.031250, 0.000000, 0.000000, -0.046875, 0.703125, 0.000000, -0.093750, 0.265625, 0.312500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.328125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, -0.187500, 0.109375, 0.000000, 0.000000, 0.125000, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, -0.250000, -0.156250, 0.000000, 0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.109375, 0.000000, 0.031250, 0.031250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.234375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.171875, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, -0.265625, 0.000000, 0.125000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, -0.031250, 0.000000, 0.390625, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, -0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.046875, -0.109375, 0.171875, -0.031250, 0.125000, 0.000000, 0.000000, -0.359375, -0.171875, -0.328125, 0.000000, 0.000000, 0.218750, 0.281250, -0.437500, 0.000000, 0.000000, 0.109375, -0.093750, 0.000000, -0.125000, 0.000000, 0.000000, 0.140625, 0.156250, 0.000000, 0.000000, 0.375000, 0.000000, 0.156250, 0.000000, 0.000000, 0.265625, 0.000000, 0.000000, 0.296875, 0.000000, 0.000000, -0.140625, 0.000000, -0.250000, 0.000000, -0.187500, 0.296875, 0.000000, -0.218750, 0.000000, 0.218750, 0.000000, -0.171875, -0.218750, 0.000000, -0.328125, 0.000000, 0.062500, 0.000000, 0.234375, 0.000000, 0.000000, 0.000000, -0.062500, 0.000000, 0.000000, 0.265625, 0.000000, 0.000000, 0.000000, 0.046875, 0.000000, 0.000000, 0.093750, -0.265625, 0.000000, 0.265625, -0.359375, 0.000000, 0.000000, 0.062500, 0.000000, 0.140625, 0.000000, 0.046875, 0.000000, 0.000000, 0.000000, 0.156250, 0.000000, 0.203125, 0.000000, 0.000000, -0.203125, 0.000000, 0.000000, 0.328125, 0.000000, -0.484375, 0.000000, 0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.000000, 0.000000, -0.031250, 0.000000, -0.375000, -0.156250, 0.000000, -0.015625, 0.000000, -0.421875, 0.000000, 0.093750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, 0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.125000, 0.046875, 0.000000, 0.000000, 0.000000, -0.296875, 0.000000, 0.000000, 0.000000, 0.078125, 0.000000, 0.000000, 0.281250, 0.156250, 0.000000, 0.000000, -0.156250, 0.218750, 0.375000, 0.000000, 0.000000, 0.000000, -0.015625, -0.125000, 0.015625, 0.359375, 0.171875, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.031250, 0.000000, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.171875, 0.000000, 0.171875, 0.000000, -0.078125, -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, -0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.031250, 0.000000, 0.296875, 0.000000, 0.000000, -0.265625, 0.000000, 0.000000, 0.343750, 0.250000, 0.000000, -0.265625, 0.000000, 0.000000, 0.000000, 0.000000, -0.109375, 0.000000, 0.078125, 0.000000, -0.140625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.187500, 0.000000, 0.078125, -0.156250, 0.234375, -0.031250, 0.000000, 0.234375, 0.000000, 0.109375, 0.031250, 0.000000, -0.187500, 0.000000, 0.093750, 0.343750, -0.062500, 0.000000, -0.015625, 0.093750, 0.000000, 0.000000, 0.000000, 0.015625, 0.015625, 0.000000, 0.140625, 0.234375, 0.156250, 0.000000, 0.000000, -0.062500, 0.187500, 0.000000, 0.000000, 0.000000, 0.015625, -0.125000, 0.000000, 0.234375, -0.234375, -0.171875, 0.171875, 0.015625, 0.000000, 0.375000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.171875, -0.218750, 0.000000, 0.171875, 0.000000, 0.000000, -0.718750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.218750, -0.265625, 0.000000, 0.000000, 0.000000, 0.187500, 0.000000, 0.109375, 0.000000, -0.171875, 0.062500, 0.000000, 0.000000, 0.093750, 0.000000, 0.000000, -0.078125, 0.000000, -0.328125, 0.000000, 0.000000, 0.187500, 0.000000, -0.359375, -0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, -0.093750, 0.000000, 0.078125, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, 0.000000, -0.109375, 0.000000, 0.312500, 0.187500, 0.000000, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, -0.171875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.140625, 0.156250, 0.187500, 0.000000, 0.109375, 0.000000, 0.000000, 0.000000, 0.000000, 0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, -0.156250, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, 0.000000, 0.031250, -0.031250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.046875, 0.062500, 0.000000, 0.000000, 0.000000, -0.015625, -0.125000, 0.000000, 0.000000, 0.000000, -0.156250, -0.015625, 0.250000, -0.109375, -0.171875, 0.000000, 0.000000, 0.000000, 0.000000, 0.343750, 0.437500, -0.031250, 0.093750, 0.000000, -0.250000, 0.031250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.078125, 0.031250, 0.000000, 0.000000, 0.437500, 0.000000, 0.140625, 0.296875, 0.125000, 0.000000, -0.078125, -0.156250, 0.000000, 0.000000, -0.109375, 0.000000, -0.156250, -0.062500, 0.203125, -0.062500, 0.000000, 0.140625, -0.125000, 0.218750, 0.000000, 0.000000, -0.421875, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.234375, 0.250000, 0.000000, 0.000000, 0.000000, 0.406250, 0.000000, -0.062500, 0.000000, 0.015625, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.515625, 0.000000, 0.000000, 0.484375, 0.187500, 0.000000, -0.218750, 0.000000, 0.312500, 0.000000, 0.125000, 0.062500, 0.125000, 0.000000, 0.468750, -0.578125, 0.000000, -0.546875, -0.265625, 0.000000, 0.000000, 0.000000, -0.328125, 0.234375, 0.296875, -0.468750, 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.046875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.093750, 0.000000, 0.640625, -0.421875, 0.000000, -0.296875, 0.000000, 0.000000, 0.093750, 0.000000, -0.234375, 0.000000, 0.000000, -0.281250, -0.265625, 0.000000, -0.250000, 0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.046875, 0.015625, 0.000000, 0.000000, 0.156250, 0.000000, 0.000000, 0.250000, -0.062500, 0.000000, 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, -0.140625, -0.125000, 0.000000, 0.250000, 0.000000, 0.000000, -0.343750, 0.000000, 0.343750, 0.000000, 0.000000, -0.140625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, 0.234375, 0.000000, 0.078125, -0.515625, 0.000000, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, -0.046875, 0.000000, 0.296875, 0.296875, 0.000000, 0.109375, 0.312500, 0.000000, -0.281250, 0.000000, 0.109375, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, -0.109375, 0.000000, 0.203125, 0.000000, -0.046875, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, -0.234375, 0.515625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.109375, 0.109375, 0.000000, -0.031250, -0.156250, -0.296875, 0.000000, -0.390625, 0.000000, 0.171875, -0.093750, 0.000000, 0.312500, 0.312500, 0.000000, -0.125000, 0.000000, 0.171875, -0.093750, 0.125000, 0.000000, 0.000000, 0.000000, 0.203125, 0.000000, 0.046875, 0.000000, -0.281250, -0.281250, -0.265625, 0.000000, 0.000000, 0.000000, 0.343750, 0.000000, 0.000000, 0.000000, -0.140625, 0.000000, 0.359375, 0.203125, 0.000000, -0.125000, 0.000000, 0.000000, -0.140625, -0.046875, 0.171875, 0.421875, -0.078125, 0.187500, 0.000000, 0.000000, 0.250000, 0.156250, 0.000000, -0.234375, -0.500000, 0.031250, 0.265625, 0.390625, -0.453125, 0.000000, 0.000000, 0.000000, -0.296875, -0.109375, -0.390625, 0.000000, -0.250000, 0.000000, 0.000000, -0.203125, 0.000000, 0.250000, -0.234375, 0.000000, -0.078125, 0.265625, 0.140625, -0.140625, 0.000000, 0.000000, 0.000000, 0.281250, 0.546875, 0.000000, 0.000000, 0.000000, 0.000000, -0.359375, 0.000000, -0.328125, 0.156250, -0.296875, 0.171875, 0.000000, 0.000000, 0.171875, 0.000000, -0.625000, 0.000000, 0.000000, 0.000000, 0.000000, 0.171875, -0.140625, 0.000000, -0.187500, 0.000000, 0.078125, -0.281250, 0.187500, 0.000000, 0.125000, -0.093750, 0.000000, 0.203125, -0.203125, 0.000000, -0.187500, 0.031250, 0.000000, -0.156250, -0.078125, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, 0.078125, 0.000000, 0.296875, 0.000000, 0.000000, -0.234375, 0.000000, -0.015625, 0.000000, 0.078125, 0.281250, 0.000000, 0.171875, 0.109375, 0.000000, 0.203125, -0.406250, -0.187500, 0.000000, 0.000000, 0.000000, -0.328125, 0.046875, 0.000000, 0.296875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.234375, 0.265625, -0.156250, -0.203125, 0.000000, -0.281250, 0.171875, 0.000000, 0.000000, 0.375000, -0.062500, 0.000000, 0.406250, 0.000000, 0.296875, -0.031250, -0.046875, 0.000000, 0.328125, 0.000000, 0.000000, 0.000000, 0.218750, -0.109375, 0.000000, 0.000000, 0.125000, -0.093750, -0.125000, 0.000000, -0.171875, 0.234375, -0.140625, 0.000000, 0.062500, -0.015625, 0.000000, 0.156250, -0.453125, 0.000000, 0.000000, 0.109375, -0.140625, 0.109375, 0.000000, 0.312500, 0.000000, -0.171875, 0.125000, -0.250000, 0.000000, 0.187500, -0.078125, 0.156250, 0.000000, 0.125000, 0.203125, 0.000000, -0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.109375, 0.000000, 0.000000, 0.250000, 0.187500, 0.000000, 0.171875, -0.109375, 0.000000, 0.000000, -0.031250, 0.000000, 0.187500, 0.203125, 0.000000, 0.000000, 0.000000, 0.062500, 0.093750, 0.156250, 0.000000, 0.015625, 0.000000, 0.515625, 0.328125, 0.000000, -0.015625, 0.000000, 0.000000, 0.312500, 0.484375, 0.000000, 0.000000, -0.312500, 0.000000, -0.531250, -0.250000, -0.140625, 0.125000, 0.000000, 0.406250, 0.000000, 0.000000, 0.171875, 0.296875, -0.875000, 0.000000, -0.281250, 0.359375, 0.000000, 0.000000, 0.000000, -0.375000, 0.000000, 0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.500000, 0.000000, -0.140625, 0.000000, -0.156250, 0.000000, 0.000000, -0.218750, 0.296875, 0.000000, -1.109375, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, -0.046875, 0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.328125, 0.000000, 0.109375, 0.000000, -0.109375, 0.531250, 0.203125, 0.000000, 0.000000, 0.156250, -0.203125, -0.484375, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, -0.156250, 0.000000, 0.000000, -0.078125, 0.203125, -0.109375, 0.000000, 0.000000, 0.000000, -0.062500, -0.062500, 0.000000, 0.000000, 0.000000, -0.109375, -0.250000, 0.000000, 0.000000, 0.000000, -0.046875, -0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.093750, 0.328125, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, 0.515625, -0.187500, 0.000000, 0.062500, -0.031250, -0.250000, 0.281250, -0.015625, -0.312500, 0.000000, 0.140625, 0.000000, 0.000000, 0.000000, 0.218750, 0.375000, -0.203125, 0.343750, 0.000000, 0.125000, 0.125000, 0.359375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.093750, 0.312500, 0.000000, 0.000000, 0.250000, 0.000000, 0.359375, -0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.312500, 0.000000, 0.000000, -0.125000, 0.156250, 0.000000, -0.781250, 0.000000, 0.000000, -0.093750, 0.156250, -0.328125, 0.078125, 0.125000, 0.140625, 0.000000, 0.109375, -0.187500, 0.171875, 0.140625, -0.265625, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, -0.093750, 0.000000, 0.000000, 0.171875, 0.000000, 0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.218750, -0.171875, 0.000000, -0.187500, -0.234375, 0.000000, 0.140625, 0.156250, 0.000000, 0.484375, 0.406250, -0.234375, 0.343750, -0.812500, 0.000000, 0.000000, 0.000000, -1.265625, 0.000000, 0.000000, 0.000000, -0.421875, 0.000000, 0.000000, 0.000000, -0.265625, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, 0.000000, -0.843750, 0.000000}; +weight2_t w2[2000] = { + 0.000000, 0.000000, 0.000000, 0.109375, 0.046875, 0.078125, 0.000000, 0.281250, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, -0.046875, -0.125000, 0.000000, 0.703125, 0.031250, 0.000000, + 0.000000, -0.203125, 0.000000, -1.296875, -0.656250, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, + 0.203125, 0.125000, 0.000000, 0.000000, 0.000000, 0.234375, -0.343750, 0.000000, 0.203125, 0.000000, + 0.359375, -1.515625, 1.312500, 0.546875, 0.000000, -0.046875, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, -0.156250, -0.125000, -0.250000, 0.000000, 0.187500, 0.000000, -0.906250, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.718750, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.578125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.093750, 0.000000, 0.390625, + 0.406250, 0.625000, 0.000000, 0.000000, -0.140625, 0.000000, -0.125000, 0.000000, 0.000000, 0.000000, + -0.546875, -0.109375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.218750, + 0.000000, 0.000000, 0.000000, 0.390625, -0.265625, -0.234375, 0.000000, -0.265625, 0.000000, 0.000000, + 0.562500, 0.000000, 0.140625, 0.000000, 0.000000, 0.296875, 0.000000, -0.812500, 0.000000, -0.375000, + 0.000000, 0.000000, 0.062500, 0.234375, 0.000000, 0.000000, 0.062500, 0.000000, 0.000000, 0.062500, + -0.140625, -0.078125, 0.187500, -0.906250, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, + 0.718750, 0.296875, -0.937500, -0.937500, 0.000000, 0.000000, 0.000000, -0.062500, 0.843750, 0.031250, + 0.000000, 0.468750, 0.000000, 0.000000, -0.484375, 0.000000, -0.656250, 0.875000, 0.000000, -0.109375, + -0.015625, 0.000000, 0.000000, 0.140625, -0.343750, -0.421875, 0.343750, 0.078125, 0.000000, 0.000000, + 0.171875, 0.000000, 0.000000, -0.531250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + -0.375000, 0.000000, 0.000000, 0.000000, 0.218750, 0.546875, 0.015625, -0.109375, 0.000000, 0.000000, + -0.125000, 0.000000, 0.000000, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.046875, 0.578125, 0.000000, 0.000000, 0.000000, -0.093750, 0.000000, 0.000000, 0.000000, 0.000000, + 0.093750, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, 0.062500, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.031250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.171875, 0.000000, -0.031250, 0.000000, 0.453125, 0.000000, 0.000000, 0.000000, 0.703125, + 0.125000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.265625, 0.000000, + 0.000000, -0.484375, 0.000000, -0.031250, 0.000000, 0.000000, -0.156250, 0.000000, 0.187500, 0.484375, + 0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.015625, 0.000000, 0.000000, 0.156250, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, 0.000000, -0.062500, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, -0.125000, -0.156250, + 0.000000, 0.000000, 0.000000, -0.062500, 0.000000, 0.218750, -0.671875, 0.000000, 0.281250, 0.000000, + 0.000000, 0.000000, 0.125000, -0.125000, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, 0.593750, + 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, -0.140625, -0.171875, -0.265625, 0.000000, + 0.437500, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, 0.000000, + 0.000000, -0.281250, -0.125000, 0.000000, 1.234375, -0.171875, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.234375, 0.078125, 0.000000, -0.546875, 0.421875, 0.000000, -0.312500, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.250000, -0.375000, 0.000000, + 0.000000, 0.515625, 0.000000, 0.000000, 0.000000, -0.171875, 0.000000, -0.515625, -0.156250, 0.000000, + 0.171875, -0.453125, 0.000000, 0.000000, -0.500000, 0.000000, 0.171875, -0.187500, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.296875, 0.187500, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.156250, 0.062500, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.156250, 0.187500, 0.000000, 0.000000, 0.000000, + -0.421875, 0.000000, -0.281250, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, 0.187500, + 0.000000, 0.000000, 0.359375, 0.000000, 0.000000, 0.187500, -0.093750, 0.000000, 0.000000, 0.046875, + -0.250000, 0.000000, 0.000000, 0.156250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.031250, 0.000000, 0.000000, + -0.250000, 0.000000, 0.000000, -0.125000, 0.000000, 0.000000, 0.000000, 0.000000, -0.078125, 0.000000, + -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.015625, 0.000000, 0.000000, + -0.406250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.109375, 0.000000, 0.000000, + -0.218750, -0.359375, 0.000000, 0.421875, 0.000000, 0.062500, 0.000000, -0.421875, -0.046875, 0.000000, + 0.093750, 0.000000, 0.000000, 0.000000, -0.515625, 0.000000, 0.000000, 0.015625, 0.000000, 0.000000, + -0.218750, 0.281250, 0.000000, 0.281250, -0.156250, 0.250000, 0.000000, 0.000000, 0.109375, 0.015625, + 0.000000, 0.000000, 0.187500, 0.000000, 0.406250, -0.062500, -0.281250, -0.078125, 0.000000, 0.000000, + 0.000000, -0.250000, -0.453125, -0.046875, 0.421875, 0.000000, -0.109375, 0.109375, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.656250, 0.000000, 0.000000, 0.000000, 0.046875, 0.000000, 0.484375, -0.546875, -0.031250, -0.421875, + 0.000000, -0.781250, 0.000000, 0.000000, -0.546875, 0.265625, 0.171875, -0.203125, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, -0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.171875, 0.125000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, + 0.140625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.062500, 0.171875, 0.000000, 0.015625, + 0.000000, 0.000000, 0.000000, 0.000000, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, -0.078125, + 0.000000, 0.000000, 0.000000, 0.093750, 0.203125, -0.140625, 0.000000, -0.328125, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, -0.359375, 0.000000, 0.187500, -0.171875, -0.187500, 0.000000, 0.031250, + 0.000000, 0.000000, 0.125000, 0.015625, 0.000000, 0.000000, 0.000000, 0.000000, -0.109375, 0.000000, + -0.296875, 0.000000, -0.187500, 0.250000, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.078125, 0.000000, 0.000000, -0.015625, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.093750, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.250000, 0.000000, -0.109375, -0.296875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.234375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, + 0.125000, 0.000000, 0.109375, -0.750000, 0.125000, 0.000000, -0.187500, 0.156250, 0.000000, 0.109375, + 0.000000, 0.109375, 0.000000, -0.265625, -0.031250, 0.000000, 0.125000, 0.000000, 0.203125, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, -0.203125, + 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.062500, 0.031250, + 0.015625, 0.000000, 0.078125, -0.328125, -0.031250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.015625, 0.000000, -0.468750, -0.031250, 0.000000, + 0.000000, -0.046875, 0.703125, 0.000000, -0.093750, 0.265625, 0.312500, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.328125, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, -0.187500, + 0.109375, 0.000000, 0.000000, 0.125000, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, -0.250000, + -0.156250, 0.000000, 0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.109375, 0.000000, 0.031250, 0.031250, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.234375, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.171875, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, + 0.000000, 0.000000, -0.265625, 0.000000, 0.125000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, -0.031250, 0.000000, 0.390625, 0.000000, 0.000000, + -0.343750, 0.000000, 0.000000, -0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.046875, + -0.109375, 0.171875, -0.031250, 0.125000, 0.000000, 0.000000, -0.359375, -0.171875, -0.328125, 0.000000, + 0.000000, 0.218750, 0.281250, -0.437500, 0.000000, 0.000000, 0.109375, -0.093750, 0.000000, -0.125000, + 0.000000, 0.000000, 0.140625, 0.156250, 0.000000, 0.000000, 0.375000, 0.000000, 0.156250, 0.000000, + 0.000000, 0.265625, 0.000000, 0.000000, 0.296875, 0.000000, 0.000000, -0.140625, 0.000000, -0.250000, + 0.000000, -0.187500, 0.296875, 0.000000, -0.218750, 0.000000, 0.218750, 0.000000, -0.171875, -0.218750, + 0.000000, -0.328125, 0.000000, 0.062500, 0.000000, 0.234375, 0.000000, 0.000000, 0.000000, -0.062500, + 0.000000, 0.000000, 0.265625, 0.000000, 0.000000, 0.000000, 0.046875, 0.000000, 0.000000, 0.093750, + -0.265625, 0.000000, 0.265625, -0.359375, 0.000000, 0.000000, 0.062500, 0.000000, 0.140625, 0.000000, + 0.046875, 0.000000, 0.000000, 0.000000, 0.156250, 0.000000, 0.203125, 0.000000, 0.000000, -0.203125, + 0.000000, 0.000000, 0.328125, 0.000000, -0.484375, 0.000000, 0.281250, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, + 0.000000, 0.000000, -0.031250, 0.000000, -0.375000, -0.156250, 0.000000, -0.015625, 0.000000, -0.421875, + 0.000000, 0.093750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, + 0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.125000, 0.046875, 0.000000, 0.000000, 0.000000, + -0.296875, 0.000000, 0.000000, 0.000000, 0.078125, 0.000000, 0.000000, 0.281250, 0.156250, 0.000000, + 0.000000, -0.156250, 0.218750, 0.375000, 0.000000, 0.000000, 0.000000, -0.015625, -0.125000, 0.015625, + 0.359375, 0.171875, 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.031250, + 0.000000, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.171875, 0.000000, 0.171875, + 0.000000, -0.078125, -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, -0.250000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.031250, 0.000000, 0.296875, 0.000000, 0.000000, -0.265625, 0.000000, + 0.000000, 0.343750, 0.250000, 0.000000, -0.265625, 0.000000, 0.000000, 0.000000, 0.000000, -0.109375, + 0.000000, 0.078125, 0.000000, -0.140625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.187500, 0.000000, 0.078125, -0.156250, 0.234375, -0.031250, 0.000000, 0.234375, 0.000000, 0.109375, + 0.031250, 0.000000, -0.187500, 0.000000, 0.093750, 0.343750, -0.062500, 0.000000, -0.015625, 0.093750, + 0.000000, 0.000000, 0.000000, 0.015625, 0.015625, 0.000000, 0.140625, 0.234375, 0.156250, 0.000000, + 0.000000, -0.062500, 0.187500, 0.000000, 0.000000, 0.000000, 0.015625, -0.125000, 0.000000, 0.234375, + -0.234375, -0.171875, 0.171875, 0.015625, 0.000000, 0.375000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.171875, -0.218750, 0.000000, 0.171875, 0.000000, 0.000000, -0.718750, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.218750, -0.265625, 0.000000, 0.000000, + 0.000000, 0.187500, 0.000000, 0.109375, 0.000000, -0.171875, 0.062500, 0.000000, 0.000000, 0.093750, + 0.000000, 0.000000, -0.078125, 0.000000, -0.328125, 0.000000, 0.000000, 0.187500, 0.000000, -0.359375, + -0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, -0.093750, 0.000000, 0.078125, 0.000000, + 0.000000, -0.187500, 0.000000, 0.000000, 0.000000, -0.109375, 0.000000, 0.312500, 0.187500, 0.000000, + 0.000000, -0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, -0.171875, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.140625, 0.156250, 0.187500, 0.000000, 0.109375, + 0.000000, 0.000000, 0.000000, 0.000000, 0.078125, 0.000000, 0.000000, 0.000000, 0.000000, 0.140625, + 0.000000, -0.156250, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, 0.000000, 0.031250, -0.031250, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, -0.046875, 0.062500, 0.000000, 0.000000, 0.000000, -0.015625, -0.125000, 0.000000, 0.000000, + 0.000000, -0.156250, -0.015625, 0.250000, -0.109375, -0.171875, 0.000000, 0.000000, 0.000000, 0.000000, + 0.343750, 0.437500, -0.031250, 0.093750, 0.000000, -0.250000, 0.031250, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.078125, 0.031250, 0.000000, 0.000000, 0.437500, + 0.000000, 0.140625, 0.296875, 0.125000, 0.000000, -0.078125, -0.156250, 0.000000, 0.000000, -0.109375, + 0.000000, -0.156250, -0.062500, 0.203125, -0.062500, 0.000000, 0.140625, -0.125000, 0.218750, 0.000000, + 0.000000, -0.421875, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.234375, 0.250000, 0.000000, + 0.000000, 0.000000, 0.406250, 0.000000, -0.062500, 0.000000, 0.015625, 0.000000, 0.000000, 0.000000, + -0.281250, 0.000000, 0.515625, 0.000000, 0.000000, 0.484375, 0.187500, 0.000000, -0.218750, 0.000000, + 0.312500, 0.000000, 0.125000, 0.062500, 0.125000, 0.000000, 0.468750, -0.578125, 0.000000, -0.546875, + -0.265625, 0.000000, 0.000000, 0.000000, -0.328125, 0.234375, 0.296875, -0.468750, 0.000000, 0.000000, + 0.187500, 0.000000, 0.000000, 0.046875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.093750, + 0.000000, 0.640625, -0.421875, 0.000000, -0.296875, 0.000000, 0.000000, 0.093750, 0.000000, -0.234375, + 0.000000, 0.000000, -0.281250, -0.265625, 0.000000, -0.250000, 0.250000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.046875, 0.015625, 0.000000, 0.000000, 0.156250, 0.000000, 0.000000, 0.250000, + -0.062500, 0.000000, 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, + -0.140625, -0.125000, 0.000000, 0.250000, 0.000000, 0.000000, -0.343750, 0.000000, 0.343750, 0.000000, + 0.000000, -0.140625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, + 0.234375, 0.000000, 0.078125, -0.515625, 0.000000, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.375000, 0.000000, -0.046875, 0.000000, 0.296875, 0.296875, 0.000000, 0.109375, + 0.312500, 0.000000, -0.281250, 0.000000, 0.109375, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.281250, 0.000000, -0.109375, 0.000000, 0.203125, 0.000000, -0.046875, 0.000000, + 0.000000, 0.000000, -0.281250, 0.000000, -0.234375, 0.515625, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.109375, 0.109375, 0.000000, -0.031250, -0.156250, -0.296875, 0.000000, -0.390625, + 0.000000, 0.171875, -0.093750, 0.000000, 0.312500, 0.312500, 0.000000, -0.125000, 0.000000, 0.171875, + -0.093750, 0.125000, 0.000000, 0.000000, 0.000000, 0.203125, 0.000000, 0.046875, 0.000000, -0.281250, + -0.281250, -0.265625, 0.000000, 0.000000, 0.000000, 0.343750, 0.000000, 0.000000, 0.000000, -0.140625, + 0.000000, 0.359375, 0.203125, 0.000000, -0.125000, 0.000000, 0.000000, -0.140625, -0.046875, 0.171875, + 0.421875, -0.078125, 0.187500, 0.000000, 0.000000, 0.250000, 0.156250, 0.000000, -0.234375, -0.500000, + 0.031250, 0.265625, 0.390625, -0.453125, 0.000000, 0.000000, 0.000000, -0.296875, -0.109375, -0.390625, + 0.000000, -0.250000, 0.000000, 0.000000, -0.203125, 0.000000, 0.250000, -0.234375, 0.000000, -0.078125, + 0.265625, 0.140625, -0.140625, 0.000000, 0.000000, 0.000000, 0.281250, 0.546875, 0.000000, 0.000000, + 0.000000, 0.000000, -0.359375, 0.000000, -0.328125, 0.156250, -0.296875, 0.171875, 0.000000, 0.000000, + 0.171875, 0.000000, -0.625000, 0.000000, 0.000000, 0.000000, 0.000000, 0.171875, -0.140625, 0.000000, + -0.187500, 0.000000, 0.078125, -0.281250, 0.187500, 0.000000, 0.125000, -0.093750, 0.000000, 0.203125, + -0.203125, 0.000000, -0.187500, 0.031250, 0.000000, -0.156250, -0.078125, -0.078125, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, 0.078125, 0.000000, 0.296875, 0.000000, 0.000000, + -0.234375, 0.000000, -0.015625, 0.000000, 0.078125, 0.281250, 0.000000, 0.171875, 0.109375, 0.000000, + 0.203125, -0.406250, -0.187500, 0.000000, 0.000000, 0.000000, -0.328125, 0.046875, 0.000000, 0.296875, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.234375, + 0.265625, -0.156250, -0.203125, 0.000000, -0.281250, 0.171875, 0.000000, 0.000000, 0.375000, -0.062500, + 0.000000, 0.406250, 0.000000, 0.296875, -0.031250, -0.046875, 0.000000, 0.328125, 0.000000, 0.000000, + 0.000000, 0.218750, -0.109375, 0.000000, 0.000000, 0.125000, -0.093750, -0.125000, 0.000000, -0.171875, + 0.234375, -0.140625, 0.000000, 0.062500, -0.015625, 0.000000, 0.156250, -0.453125, 0.000000, 0.000000, + 0.109375, -0.140625, 0.109375, 0.000000, 0.312500, 0.000000, -0.171875, 0.125000, -0.250000, 0.000000, + 0.187500, -0.078125, 0.156250, 0.000000, 0.125000, 0.203125, 0.000000, -0.281250, 0.000000, 0.000000, + 0.000000, 0.000000, 0.109375, 0.000000, 0.000000, 0.250000, 0.187500, 0.000000, 0.171875, -0.109375, + 0.000000, 0.000000, -0.031250, 0.000000, 0.187500, 0.203125, 0.000000, 0.000000, 0.000000, 0.062500, + 0.093750, 0.156250, 0.000000, 0.015625, 0.000000, 0.515625, 0.328125, 0.000000, -0.015625, 0.000000, + 0.000000, 0.312500, 0.484375, 0.000000, 0.000000, -0.312500, 0.000000, -0.531250, -0.250000, -0.140625, + 0.125000, 0.000000, 0.406250, 0.000000, 0.000000, 0.171875, 0.296875, -0.875000, 0.000000, -0.281250, + 0.359375, 0.000000, 0.000000, 0.000000, -0.375000, 0.000000, 0.250000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, -0.500000, 0.000000, -0.140625, 0.000000, -0.156250, 0.000000, 0.000000, -0.218750, + 0.296875, 0.000000, -1.109375, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, -0.046875, 0.062500, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.328125, 0.000000, 0.109375, 0.000000, -0.109375, + 0.531250, 0.203125, 0.000000, 0.000000, 0.156250, -0.203125, -0.484375, 0.000000, 0.000000, -0.281250, + 0.000000, 0.000000, -0.156250, 0.000000, 0.000000, -0.078125, 0.203125, -0.109375, 0.000000, 0.000000, + 0.000000, -0.062500, -0.062500, 0.000000, 0.000000, 0.000000, -0.109375, -0.250000, 0.000000, 0.000000, + 0.000000, -0.046875, -0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.093750, + 0.328125, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, 0.515625, -0.187500, 0.000000, 0.062500, + -0.031250, -0.250000, 0.281250, -0.015625, -0.312500, 0.000000, 0.140625, 0.000000, 0.000000, 0.000000, + 0.218750, 0.375000, -0.203125, 0.343750, 0.000000, 0.125000, 0.125000, 0.359375, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.093750, 0.312500, 0.000000, 0.000000, 0.250000, 0.000000, + 0.359375, -0.015625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.312500, 0.000000, 0.000000, + -0.125000, 0.156250, 0.000000, -0.781250, 0.000000, 0.000000, -0.093750, 0.156250, -0.328125, 0.078125, + 0.125000, 0.140625, 0.000000, 0.109375, -0.187500, 0.171875, 0.140625, -0.265625, -0.234375, 0.000000, + 0.000000, 0.000000, 0.000000, -0.093750, 0.000000, 0.000000, 0.171875, 0.000000, 0.078125, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.218750, -0.171875, 0.000000, -0.187500, + -0.234375, 0.000000, 0.140625, 0.156250, 0.000000, 0.484375, 0.406250, -0.234375, 0.343750, -0.812500, + 0.000000, 0.000000, 0.000000, -1.265625, 0.000000, 0.000000, 0.000000, -0.421875, 0.000000, 0.000000, + 0.000000, -0.265625, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, 0.000000, -0.843750, 0.000000}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w20.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w20.h index 177c7569374cb..25d75a1880f14 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w20.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w20.h @@ -6,6 +6,7 @@ #ifndef W20_H_ #define W20_H_ -weight20_t w20[10] = { 0.000000, 0.000000, 0.000000, 1.185547, 0.000000, 1.476562, -0.931641, 0.769531, 0.000000, 0.000000}; +weight20_t w20[10] = { + 0.000000, 0.000000, 0.000000, 1.185547, 0.000000, 1.476562, -0.931641, 0.769531, 0.000000, 0.000000}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w5.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w5.h index a625be2dcc93c..f001160129b86 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w5.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w5.h @@ -6,6 +6,69 @@ #ifndef W5_H_ #define W5_H_ -weight5_t w5[625] = {-0.578125, 0.515625, 0.000000, -0.796875, 0.359375, -0.562500, 0.000000, 0.000000, 0.359375, 0.000000, 0.390625, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.484375, -0.718750, 0.000000, 0.000000, 0.000000, -0.578125, 0.000000, 0.000000, 0.000000, 0.343750, 0.000000, 0.421875, 0.000000, 0.218750, 0.000000, 0.000000, -0.281250, 0.000000, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, -0.625000, 0.250000, -0.375000, 0.000000, 0.000000, 0.000000, 0.000000, -1.062500, 0.000000, 0.515625, 0.000000, -0.203125, -0.546875, 0.828125, 0.734375, 0.000000, 0.500000, 0.000000, 0.000000, -1.203125, 0.000000, -1.062500, 0.375000, 0.000000, 0.000000, 0.000000, 0.000000, -0.375000, 0.703125, 0.000000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, -0.250000, 0.265625, -0.312500, 0.000000, 0.171875, 0.312500, 0.000000, 0.000000, 0.250000, 0.000000, 0.000000, 0.203125, 0.000000, 0.000000, -0.328125, 0.546875, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, -0.218750, 0.281250, -0.296875, 0.000000, -0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.468750, 0.000000, 0.328125, 0.000000, -0.234375, 0.000000, 0.421875, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, 0.000000, 0.296875, -0.390625, 0.000000, 0.000000, 0.000000, -0.593750, 0.421875, 0.250000, 0.000000, -0.234375, 0.000000, 0.078125, 0.000000, 0.328125, 0.000000, 0.000000, -0.187500, -0.156250, 0.000000, -0.281250, 0.000000, 0.000000, 0.359375, 0.000000, 0.218750, -0.281250, 0.000000, -0.171875, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.406250, 0.000000, 0.000000, 0.000000, 0.312500, -0.468750, 0.000000, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, -0.218750, -0.484375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.156250, 0.328125, 0.421875, 0.000000, 0.218750, 0.640625, 0.000000, 0.187500, 0.000000, 0.000000, -0.234375, -0.531250, 0.671875, 0.000000, -0.250000, 0.000000, 0.000000, -0.375000, 0.000000, 0.390625, -0.203125, 0.000000, 0.000000, -0.375000, 0.390625, -0.468750, -0.421875, -0.015625, 0.437500, 0.000000, -0.531250, -0.781250, 0.500000, 0.000000, 0.671875, 0.421875, 0.000000, 0.000000, -0.359375, 0.000000, 0.000000, 0.359375, 0.000000, -0.156250, 0.000000, 0.000000, 0.218750, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, 0.093750, -0.328125, 0.000000, 0.312500, 0.000000, -0.171875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, -0.234375, 0.125000, -0.250000, 0.000000, 0.000000, 0.421875, 0.437500, -0.343750, 0.375000, 0.000000, -0.390625, 0.000000, 0.281250, 0.000000, 0.203125, 0.000000, 0.000000, 0.000000, 0.000000, -0.234375, -0.312500, -0.312500, 0.000000, 0.000000, -0.250000, 0.234375, 0.000000, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.281250, 0.000000, 0.000000, -0.359375, 0.453125, 0.000000, 0.000000, -0.093750, -0.406250, 0.250000, 0.000000, -0.281250, 0.000000, 0.000000, -0.250000, -0.250000, 0.000000, -0.234375, -0.125000, -0.171875, 0.468750, -0.484375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, 0.140625, -0.156250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.218750, 0.000000, 0.000000, 0.000000, -0.125000, 0.390625, 0.000000, -0.328125, 1.078125, 0.234375, 0.312500, 0.000000, 0.000000, 0.000000, 0.781250, -0.218750, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, -0.500000, -0.906250, -0.687500, 0.000000, 0.500000, 0.437500, 0.000000, 0.000000, 0.000000, -0.265625, 0.078125, 0.000000, 0.000000, 0.000000, -0.500000, 0.265625, 0.000000, 0.000000, 0.000000, -0.562500, 0.000000, 0.656250, 0.000000, 0.468750, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.562500, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.671875, -0.328125, 0.468750, 0.000000, 0.468750, 0.000000, 0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, 0.109375, 0.000000, 0.000000, -0.328125, 0.000000, 0.218750, 0.000000, 0.000000, -0.328125, -0.187500, 0.000000, 0.203125, 0.296875, -0.671875, 0.031250, -0.546875, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.812500, 0.000000, 0.250000, 0.000000, 0.265625, -0.468750, 0.234375, 0.000000, 0.281250, 0.000000, 0.000000, -0.828125, -0.671875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.031250, -0.203125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.656250, 0.000000, 0.453125, 0.343750, 0.343750, 0.000000, 0.000000, 0.000000, 0.265625, 0.218750, 0.000000, -0.546875, 0.000000, 0.000000, -0.296875, 0.296875, 0.000000, 0.000000, 0.000000, 0.281250, -0.234375, 0.234375, 0.203125, 0.000000, 0.000000, 0.000000, 0.359375, 0.000000, -1.078125, 0.000000, 0.000000, 0.000000, -0.187500, 0.437500, 0.000000, 0.000000, -0.500000, 0.484375, 0.000000, 0.000000, 0.281250, 0.000000, 0.359375, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, 0.000000, 0.000000, -0.437500, 0.203125, 0.203125, 0.000000, -0.328125, 0.000000, 0.000000, -0.250000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, 0.328125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.125000, 0.000000, -0.265625, 0.171875, 0.000000, 0.000000, 0.000000, 0.000000, -0.421875, 0.359375, 0.000000, -0.390625, -0.093750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.156250, 0.000000, 0.296875, 0.187500, 0.406250, 0.000000, 0.000000, 0.281250, 0.000000, 0.000000, -0.046875, 0.000000, 0.000000, 0.000000, -0.265625, -0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, -0.375000, 0.000000, 0.000000, 0.000000, 0.000000, -0.968750, -0.640625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.500000, 0.000000, 0.000000, 0.515625, 0.531250, 0.000000, 0.000000, 0.000000, 0.000000}; +weight5_t w5[625] = { + -0.578125, 0.515625, 0.000000, -0.796875, 0.359375, -0.562500, 0.000000, 0.000000, 0.359375, 0.000000, + 0.390625, 0.000000, 0.000000, -0.281250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, -0.484375, -0.718750, 0.000000, 0.000000, 0.000000, -0.578125, 0.000000, 0.000000, + 0.000000, 0.343750, 0.000000, 0.421875, 0.000000, 0.218750, 0.000000, 0.000000, -0.281250, 0.000000, + 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, -0.625000, 0.250000, -0.375000, 0.000000, 0.000000, + 0.000000, 0.000000, -1.062500, 0.000000, 0.515625, 0.000000, -0.203125, -0.546875, 0.828125, 0.734375, + 0.000000, 0.500000, 0.000000, 0.000000, -1.203125, 0.000000, -1.062500, 0.375000, 0.000000, 0.000000, + 0.000000, 0.000000, -0.375000, 0.703125, 0.000000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, -0.250000, 0.265625, + -0.312500, 0.000000, 0.171875, 0.312500, 0.000000, 0.000000, 0.250000, 0.000000, 0.000000, 0.203125, + 0.000000, 0.000000, -0.328125, 0.546875, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, + 0.000000, 0.000000, 0.000000, -0.218750, 0.281250, -0.296875, 0.000000, -0.187500, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, -0.468750, 0.000000, 0.328125, 0.000000, -0.234375, 0.000000, + 0.421875, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, 0.000000, + 0.296875, -0.390625, 0.000000, 0.000000, 0.000000, -0.593750, 0.421875, 0.250000, 0.000000, -0.234375, + 0.000000, 0.078125, 0.000000, 0.328125, 0.000000, 0.000000, -0.187500, -0.156250, 0.000000, -0.281250, + 0.000000, 0.000000, 0.359375, 0.000000, 0.218750, -0.281250, 0.000000, -0.171875, 0.218750, 0.000000, + 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.406250, 0.000000, 0.000000, 0.000000, + 0.312500, -0.468750, 0.000000, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, 0.000000, -0.281250, + -0.218750, -0.484375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.156250, 0.328125, + 0.421875, 0.000000, 0.218750, 0.640625, 0.000000, 0.187500, 0.000000, 0.000000, -0.234375, -0.531250, + 0.671875, 0.000000, -0.250000, 0.000000, 0.000000, -0.375000, 0.000000, 0.390625, -0.203125, 0.000000, + 0.000000, -0.375000, 0.390625, -0.468750, -0.421875, -0.015625, 0.437500, 0.000000, -0.531250, -0.781250, + 0.500000, 0.000000, 0.671875, 0.421875, 0.000000, 0.000000, -0.359375, 0.000000, 0.000000, 0.359375, + 0.000000, -0.156250, 0.000000, 0.000000, 0.218750, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, + -0.281250, 0.093750, -0.328125, 0.000000, 0.312500, 0.000000, -0.171875, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, -0.234375, 0.125000, -0.250000, + 0.000000, 0.000000, 0.421875, 0.437500, -0.343750, 0.375000, 0.000000, -0.390625, 0.000000, 0.281250, + 0.000000, 0.203125, 0.000000, 0.000000, 0.000000, 0.000000, -0.234375, -0.312500, -0.312500, 0.000000, + 0.000000, -0.250000, 0.234375, 0.000000, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, + 0.000000, 0.000000, 0.281250, 0.000000, 0.000000, -0.359375, 0.453125, 0.000000, 0.000000, -0.093750, + -0.406250, 0.250000, 0.000000, -0.281250, 0.000000, 0.000000, -0.250000, -0.250000, 0.000000, -0.234375, + -0.125000, -0.171875, 0.468750, -0.484375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.375000, 0.000000, 0.000000, 0.140625, + -0.156250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.187500, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.218750, 0.000000, 0.000000, 0.000000, + -0.125000, 0.390625, 0.000000, -0.328125, 1.078125, 0.234375, 0.312500, 0.000000, 0.000000, 0.000000, + 0.781250, -0.218750, 0.000000, 0.312500, 0.000000, 0.000000, 0.000000, -0.500000, -0.906250, -0.687500, + 0.000000, 0.500000, 0.437500, 0.000000, 0.000000, 0.000000, -0.265625, 0.078125, 0.000000, 0.000000, + 0.000000, -0.500000, 0.265625, 0.000000, 0.000000, 0.000000, -0.562500, 0.000000, 0.656250, 0.000000, + 0.468750, 0.000000, 0.000000, 0.000000, 0.140625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, -0.562500, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.671875, -0.328125, 0.468750, 0.000000, 0.468750, 0.000000, + 0.062500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, 0.109375, 0.000000, 0.000000, + -0.328125, 0.000000, 0.218750, 0.000000, 0.000000, -0.328125, -0.187500, 0.000000, 0.203125, 0.296875, + -0.671875, 0.031250, -0.546875, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.812500, + 0.000000, 0.250000, 0.000000, 0.265625, -0.468750, 0.234375, 0.000000, 0.281250, 0.000000, 0.000000, + -0.828125, -0.671875, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.031250, + -0.203125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.421875, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 0.656250, 0.000000, 0.453125, 0.343750, 0.343750, 0.000000, 0.000000, + 0.000000, 0.265625, 0.218750, 0.000000, -0.546875, 0.000000, 0.000000, -0.296875, 0.296875, 0.000000, + 0.000000, 0.000000, 0.281250, -0.234375, 0.234375, 0.203125, 0.000000, 0.000000, 0.000000, 0.359375, + 0.000000, -1.078125, 0.000000, 0.000000, 0.000000, -0.187500, 0.437500, 0.000000, 0.000000, -0.500000, + 0.484375, 0.000000, 0.000000, 0.281250, 0.000000, 0.359375, 0.000000, 0.000000, -0.187500, 0.000000, + 0.000000, 0.000000, 0.000000, -0.437500, 0.203125, 0.203125, 0.000000, -0.328125, 0.000000, 0.000000, + -0.250000, 0.000000, 0.000000, 0.000000, 0.390625, 0.000000, 0.328125, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.125000, 0.000000, -0.265625, 0.171875, 0.000000, 0.000000, 0.000000, 0.000000, + -0.421875, 0.359375, 0.000000, -0.390625, -0.093750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, -0.156250, 0.000000, 0.296875, 0.187500, 0.406250, 0.000000, 0.000000, 0.281250, 0.000000, + 0.000000, -0.046875, 0.000000, 0.000000, 0.000000, -0.265625, -0.250000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.375000, 0.000000, -0.375000, 0.000000, 0.000000, 0.000000, 0.000000, -0.968750, + -0.640625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.500000, 0.000000, 0.000000, 0.515625, + 0.531250, 0.000000, 0.000000, 0.000000, 0.000000}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w8.h b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w8.h index 5fc96bdc8dce1..30533952a7b8f 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w8.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/taus/weights/w8.h @@ -6,6 +6,44 @@ #ifndef W8_H_ #define W8_H_ -weight8_t w8[375] = {0.000000, -0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.562500, -0.187500, 0.312500, 0.234375, 0.234375, 0.140625, -0.203125, 0.000000, 0.000000, -0.218750, -0.281250, 0.000000, 0.000000, 0.000000, 0.187500, 0.296875, 0.000000, -0.296875, 0.000000, -0.203125, 0.328125, -0.390625, 0.000000, 0.000000, 0.593750, -0.234375, 0.000000, 0.000000, -0.375000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.265625, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.062500, 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.406250, -0.265625, -0.421875, 0.000000, 0.171875, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.000000, -0.468750, 0.000000, 0.000000, 0.000000, 0.000000, 0.562500, 0.453125, 0.453125, 0.000000, 0.000000, 0.421875, -0.437500, -0.296875, -0.250000, -0.359375, 0.000000, -0.234375, -0.625000, 0.000000, -0.328125, 0.000000, -0.359375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.859375, 0.000000, 0.000000, 0.671875, 0.000000, 0.000000, 0.203125, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.468750, -0.234375, 0.296875, 0.000000, -0.640625, 0.359375, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.203125, -0.312500, -0.234375, 0.000000, 0.250000, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.531250, 0.000000, 0.000000, -0.250000, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.468750, -0.218750, 0.375000, 0.000000, -0.265625, 0.000000, -0.218750, -0.296875, 0.265625, -0.562500, 0.281250, 0.000000, 0.390625, 0.437500, 0.000000, 0.000000, 0.218750, 0.625000, 0.000000, 0.000000, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, 0.000000, 0.750000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.187500, -0.234375, 0.265625, 0.171875, -0.328125, 0.328125, 0.000000, 0.250000, 0.000000, 0.000000, -0.218750, 0.000000, 0.000000, -0.281250, 0.000000, -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.500000, 0.125000, 0.000000, 0.265625, 0.312500, 0.203125, 0.562500, 0.000000, -0.234375, 0.187500, 0.000000, 0.000000, 0.203125, 0.000000, 0.000000, -0.156250, 0.515625, 0.000000, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, -0.296875, 0.000000, -0.093750, -0.296875, 0.000000, 0.484375, 0.000000, 0.453125, 0.000000, -0.203125, 0.000000, 0.000000, -0.406250, 0.000000, -0.187500, 0.250000, -0.343750, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.578125, 0.000000, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, 0.000000, 0.171875, 0.218750, 0.000000, 0.000000, 0.000000, -0.281250, 0.000000, 0.468750, -0.375000, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.453125, 0.000000, 0.000000, 0.000000, 0.281250, 0.609375, 0.000000, 0.000000, 0.000000, -0.218750, 0.000000, -0.406250, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.734375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.640625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.593750, -0.375000, 0.000000, 0.312500, 0.312500, 0.000000, 0.562500, 0.000000, 0.000000, -0.593750, 0.000000, 0.281250, 0.218750, 0.359375, 0.000000, 0.000000, -0.296875, 0.000000, 0.000000, -0.296875, -0.250000, 0.000000, -0.500000, 0.000000, 0.000000, 0.593750, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, -0.343750, 0.531250, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, -0.421875, -0.250000, 0.000000, 0.000000, -0.375000, -0.437500, -0.437500}; +weight8_t w8[375] = { + 0.000000, -0.250000, 0.000000, 0.000000, 0.000000, 0.000000, 0.562500, -0.187500, 0.312500, 0.234375, + 0.234375, 0.140625, -0.203125, 0.000000, 0.000000, -0.218750, -0.281250, 0.000000, 0.000000, 0.000000, + 0.187500, 0.296875, 0.000000, -0.296875, 0.000000, -0.203125, 0.328125, -0.390625, 0.000000, 0.000000, + 0.593750, -0.234375, 0.000000, 0.000000, -0.375000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.265625, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.062500, + 0.000000, 0.000000, 0.000000, 0.312500, 0.000000, 0.000000, 0.406250, -0.265625, -0.421875, 0.000000, + 0.171875, 0.000000, 0.000000, 0.000000, 0.000000, -0.328125, 0.000000, 0.000000, -0.468750, 0.000000, + 0.000000, 0.000000, 0.000000, 0.562500, 0.453125, 0.453125, 0.000000, 0.000000, 0.421875, -0.437500, + -0.296875, -0.250000, -0.359375, 0.000000, -0.234375, -0.625000, 0.000000, -0.328125, 0.000000, -0.359375, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, -0.859375, 0.000000, 0.000000, 0.671875, 0.000000, 0.000000, 0.203125, + 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.468750, -0.234375, 0.296875, 0.000000, + -0.640625, 0.359375, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, 0.203125, -0.312500, -0.234375, + 0.000000, 0.250000, 0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.531250, 0.000000, 0.000000, + -0.250000, 0.000000, 0.000000, -0.187500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.468750, -0.218750, 0.375000, 0.000000, -0.265625, 0.000000, -0.218750, -0.296875, 0.265625, + -0.562500, 0.281250, 0.000000, 0.390625, 0.437500, 0.000000, 0.000000, 0.218750, 0.625000, 0.000000, + 0.000000, 0.218750, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.203125, 0.000000, 0.750000, + 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.187500, -0.234375, + 0.265625, 0.171875, -0.328125, 0.328125, 0.000000, 0.250000, 0.000000, 0.000000, -0.218750, 0.000000, + 0.000000, -0.281250, 0.000000, -0.312500, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.500000, 0.125000, 0.000000, 0.265625, 0.312500, 0.203125, 0.562500, 0.000000, -0.234375, 0.187500, + 0.000000, 0.000000, 0.203125, 0.000000, 0.000000, -0.156250, 0.515625, 0.000000, 0.000000, 0.000000, + -0.187500, 0.000000, 0.000000, -0.296875, 0.000000, -0.093750, -0.296875, 0.000000, 0.484375, 0.000000, + 0.453125, 0.000000, -0.203125, 0.000000, 0.000000, -0.406250, 0.000000, -0.187500, 0.250000, -0.343750, + 0.000000, 0.000000, 0.000000, -0.343750, 0.000000, 0.000000, 0.000000, 0.000000, 0.578125, 0.000000, + 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, 0.000000, 0.171875, 0.218750, 0.000000, 0.000000, + 0.000000, -0.281250, 0.000000, 0.468750, -0.375000, 0.000000, 0.000000, 0.000000, 0.000000, -0.343750, + 0.000000, 0.453125, 0.000000, 0.000000, 0.000000, 0.281250, 0.609375, 0.000000, 0.000000, 0.000000, + -0.218750, 0.000000, -0.406250, 0.000000, -0.328125, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, -0.734375, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.250000, 0.000000, + 0.000000, 0.000000, -0.328125, 0.000000, 0.640625, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, -0.593750, -0.375000, 0.000000, 0.312500, 0.312500, 0.000000, 0.562500, + 0.000000, 0.000000, -0.593750, 0.000000, 0.281250, 0.218750, 0.359375, 0.000000, 0.000000, -0.296875, + 0.000000, 0.000000, -0.296875, -0.250000, 0.000000, -0.500000, 0.000000, 0.000000, 0.593750, 0.000000, + 0.000000, 0.000000, 0.000000, -0.328125, -0.343750, 0.531250, 0.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, -0.234375, 0.000000, 0.000000, 0.000000, 0.000000, -0.421875, -0.250000, + 0.000000, 0.000000, -0.375000, -0.437500, -0.437500}; #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1NNTauProducer.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1NNTauProducer.cc index b05578780773c..9359f761dce2f 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1NNTauProducer.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1NNTauProducer.cc @@ -29,9 +29,9 @@ class L1NNTauProducer : public edm::stream::EDProducer fTauNNId_; - std::unique_ptr fTauNNIdHW_; // Default + std::unique_ptr fTauNNIdHW_; // Default void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) override; void process_SW(const l1t::PFCandidateCollection& parts, std::unique_ptr& iTaus); @@ -248,7 +248,7 @@ void L1NNTauProducer::makeTau_HW(const l1t::PFCandidate& seed, if (pt < fSeedPt_) return; - // Tau NN Inference + // Tau NN Inference Tau_NN_Result NN_ouput = fTauNNIdHW_->compute(seed, parts); // Needed for making PFTau @@ -259,8 +259,8 @@ void L1NNTauProducer::makeTau_HW(const l1t::PFCandidate& seed, //Firmware Tau l1ct::Tau l1ctTau; - l1ctTau.hwPt = l1ct::pt_t(pt*NN_ouput.nn_pt_correction); //l1gt is <16,11> and currently <16,14> - l1ctTau.hwEta = l1ct::Scales::makeGlbEta(seed.eta()); // seed.eta() and seed.phi() are in physical coordinates + l1ctTau.hwPt = l1ct::pt_t(pt * NN_ouput.nn_pt_correction); //l1gt is <16,11> and currently <16,14> + l1ctTau.hwEta = l1ct::Scales::makeGlbEta(seed.eta()); // seed.eta() and seed.phi() are in physical coordinates l1ctTau.hwPhi = l1ct::Scales::makeGlbPhi(seed.phi()); l1ctTau.hwSeedPt = seed.pt(); diff --git a/L1Trigger/Phase2L1ParticleFlow/src/taus/TauNNIdHW.cc b/L1Trigger/Phase2L1ParticleFlow/src/taus/TauNNIdHW.cc index 4830cac61da8f..f4e996f6a665e 100644 --- a/L1Trigger/Phase2L1ParticleFlow/src/taus/TauNNIdHW.cc +++ b/L1Trigger/Phase2L1ParticleFlow/src/taus/TauNNIdHW.cc @@ -39,50 +39,49 @@ void TauNNIdHW::SetNNVectorVar() { // Main architecture of the NN here Tau_NN_Result TauNNIdHW::EvaluateNN() { - input_t model_input[N_INPUT_1_1]; for (unsigned int i = 0; i < NNvectorVar_.size(); i++) { model_input[i] = input_t(NNvectorVar_[i]); } layer2_t layer2_out[N_LAYER_2]; - nnet::dense(model_input, layer2_out, w2, b2); // Dense_1 + nnet::dense(model_input, layer2_out, w2, b2); // Dense_1 layer4_t layer4_out[N_LAYER_2]; - nnet::relu(layer2_out, layer4_out); // relu_1 + nnet::relu(layer2_out, layer4_out); // relu_1 layer5_t layer5_out[N_LAYER_5]; - nnet::dense(layer4_out, layer5_out, w5, b5); // Dense_2 + nnet::dense(layer4_out, layer5_out, w5, b5); // Dense_2 layer7_t layer7_out[N_LAYER_5]; - nnet::relu(layer5_out, layer7_out); // relu_2 + nnet::relu(layer5_out, layer7_out); // relu_2 layer8_t layer8_out[N_LAYER_8]; - nnet::dense(layer7_out, layer8_out, w8, b8); // Dense_3 + nnet::dense(layer7_out, layer8_out, w8, b8); // Dense_3 layer10_t layer10_out[N_LAYER_8]; - nnet::relu(layer8_out, layer10_out); // relu_3 + nnet::relu(layer8_out, layer10_out); // relu_3 layer11_t layer11_out[N_LAYER_11]; - nnet::dense(layer10_out, layer11_out, w11, b11); // Dense_4 + nnet::dense(layer10_out, layer11_out, w11, b11); // Dense_4 layer13_t layer13_out[N_LAYER_11]; - nnet::relu(layer11_out, layer13_out); // relu_4 + nnet::relu(layer11_out, layer13_out); // relu_4 layer14_t layer14_out[N_LAYER_14]; - nnet::dense(layer13_out, layer14_out, w14, b14); // Dense_5 + nnet::dense(layer13_out, layer14_out, w14, b14); // Dense_5 layer16_t layer16_out[N_LAYER_14]; - nnet::relu(layer14_out, layer16_out); // relu_5 + nnet::relu(layer14_out, layer16_out); // relu_5 layer17_t layer17_out[N_LAYER_17]; - nnet::dense(layer16_out, layer17_out, w17, b17); // Dense_6 + nnet::dense(layer16_out, layer17_out, w17, b17); // Dense_6 result_t layer19_out[N_LAYER_17]; - nnet::sigmoid(layer17_out, layer19_out); // jetID_output + nnet::sigmoid(layer17_out, layer19_out); // jetID_output result_t layer20_out[N_LAYER_20]; - nnet::dense(layer16_out, layer20_out, w20, b20); // pT_output + nnet::dense(layer16_out, layer20_out, w20, b20); // pT_output // Return both pT correction and the NN ID Tau_NN_Result nn_out; @@ -90,7 +89,6 @@ Tau_NN_Result TauNNIdHW::EvaluateNN() { nn_out.nn_id = layer19_out[0]; return nn_out; - } /* @@ -111,7 +109,6 @@ void TauNNIdHW::print() { */ Tau_NN_Result TauNNIdHW::compute(const l1t::PFCandidate &iSeed, std::vector &iParts) { - // Initialize the input vector for (unsigned i0 = 0; i0 < fNParticles_; i0++) { fPt_.get()[i0] = 0.; @@ -127,7 +124,6 @@ Tau_NN_Result TauNNIdHW::compute(const l1t::PFCandidate &iSeed, std::vector= fNParticles_) break; From ba6f2671d66dd2bb1c2696ac37133d8272ade399 Mon Sep 17 00:00:00 2001 From: Vladimir Date: Wed, 27 Dec 2023 07:03:29 +0100 Subject: [PATCH 172/281] Make ECAL GFlash working with Russian roulette --- SimG4Core/Application/src/LowEnergyFastSimModel.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/SimG4Core/Application/src/LowEnergyFastSimModel.cc b/SimG4Core/Application/src/LowEnergyFastSimModel.cc index 261f7896060a3..3955d951ae906 100644 --- a/SimG4Core/Application/src/LowEnergyFastSimModel.cc +++ b/SimG4Core/Application/src/LowEnergyFastSimModel.cc @@ -93,10 +93,14 @@ void LowEnergyFastSimModel::DoIt(const G4FastTrack& fastTrack, G4FastStep& fastS spot.SetPosition(pos); fHitMaker.make(&spot, &fastTrack); + // Russian Roulette + double wt2 = track->GetWeight(); + if (wt2 <= 0.0) { wt2 = 1.0; } + // tail energy deposition const G4double etail = energy - inPointEnergy; const G4int nspots = etail; - const G4double tailEnergy = etail / (nspots + 1); + const G4double tailEnergy = etail*wt2 / (nspots + 1); /* edm::LogVerbatim("LowEnergyFastSimModel") << track->GetDefinition()->GetParticleName() << " Ekin(MeV)=" << energy << " material: <" From bd1dc8004bf42eda4ad3bb8dfd77098d91f029ba Mon Sep 17 00:00:00 2001 From: Vladimir Date: Wed, 27 Dec 2023 09:38:30 +0100 Subject: [PATCH 173/281] extra attempt to fix ECal low-energy GFlash --- SimG4Core/Application/src/LowEnergyFastSimModel.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SimG4Core/Application/src/LowEnergyFastSimModel.cc b/SimG4Core/Application/src/LowEnergyFastSimModel.cc index 3955d951ae906..df3ea2b7088af 100644 --- a/SimG4Core/Application/src/LowEnergyFastSimModel.cc +++ b/SimG4Core/Application/src/LowEnergyFastSimModel.cc @@ -93,7 +93,7 @@ void LowEnergyFastSimModel::DoIt(const G4FastTrack& fastTrack, G4FastStep& fastS spot.SetPosition(pos); fHitMaker.make(&spot, &fastTrack); - // Russian Roulette + // Russian roulette double wt2 = track->GetWeight(); if (wt2 <= 0.0) { wt2 = 1.0; } From 7d2171a77a4f96df046af480a8bc12e931d7eca8 Mon Sep 17 00:00:00 2001 From: Vladimir Date: Wed, 27 Dec 2023 14:12:16 +0100 Subject: [PATCH 174/281] code format --- SimG4Core/Application/src/LowEnergyFastSimModel.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/SimG4Core/Application/src/LowEnergyFastSimModel.cc b/SimG4Core/Application/src/LowEnergyFastSimModel.cc index df3ea2b7088af..f5e5c38f3ec2c 100644 --- a/SimG4Core/Application/src/LowEnergyFastSimModel.cc +++ b/SimG4Core/Application/src/LowEnergyFastSimModel.cc @@ -95,12 +95,14 @@ void LowEnergyFastSimModel::DoIt(const G4FastTrack& fastTrack, G4FastStep& fastS // Russian roulette double wt2 = track->GetWeight(); - if (wt2 <= 0.0) { wt2 = 1.0; } + if (wt2 <= 0.0) { + wt2 = 1.0; + } // tail energy deposition const G4double etail = energy - inPointEnergy; const G4int nspots = etail; - const G4double tailEnergy = etail*wt2 / (nspots + 1); + const G4double tailEnergy = etail * wt2 / (nspots + 1); /* edm::LogVerbatim("LowEnergyFastSimModel") << track->GetDefinition()->GetParticleName() << " Ekin(MeV)=" << energy << " material: <" From 5151d68a7305378d6e387f5fb18751d5d873efd2 Mon Sep 17 00:00:00 2001 From: Adam Date: Fri, 15 Dec 2023 15:11:28 +0100 Subject: [PATCH 175/281] create CTPPS Reco unit test --- RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS.sh | 5 +++++ RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS_cfg.py | 2 +- RecoPPS/Local/test/BuildFile.xml | 1 + 3 files changed, 7 insertions(+), 1 deletion(-) create mode 100755 RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS.sh diff --git a/RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS.sh b/RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS.sh new file mode 100755 index 0000000000000..80b93b2230b07 --- /dev/null +++ b/RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS.sh @@ -0,0 +1,5 @@ + #!/bin/bash -ex +TEST_DIR=$CMSSW_BASE/src/RecoPPS/Local/test +echo "test dir: $TEST_DIR" + +cmsRun ${TEST_DIR}/2023_lhcinfo_test_recoCTPPS_cfg.py diff --git a/RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS_cfg.py b/RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS_cfg.py index 831d91d0ecb4d..f15d42b838374 100644 --- a/RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS_cfg.py +++ b/RecoPPS/Local/test/2023_lhcinfo_test_recoCTPPS_cfg.py @@ -3,7 +3,7 @@ process = cms.Process('RECODQM', Run3) -process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(-1) ) +process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(50) ) process.verbosity = cms.untracked.PSet( input = cms.untracked.int32(-1) ) # minimum of logs diff --git a/RecoPPS/Local/test/BuildFile.xml b/RecoPPS/Local/test/BuildFile.xml index 7f53a44b17c3a..eb1c199017400 100644 --- a/RecoPPS/Local/test/BuildFile.xml +++ b/RecoPPS/Local/test/BuildFile.xml @@ -1 +1,2 @@ + From b4d5d7a64b6d5a30750f051d66abe10e8c33d6a3 Mon Sep 17 00:00:00 2001 From: Marino Missiroli Date: Mon, 25 Dec 2023 01:25:58 +0100 Subject: [PATCH 176/281] use reco::deltaR2 in HLTrigger/*/ packages --- HLTrigger/Egamma/plugins/BuildFile.xml | 1 + .../plugins/HLTDisplacedEgammaFilter.cc | 26 ++-- .../Egamma/plugins/HLTDisplacedEgammaFilter.h | 21 ++- HLTrigger/HLTfilters/plugins/BuildFile.xml | 1 + HLTrigger/HLTfilters/plugins/HLTDoublet.cc | 126 +++++++++--------- HLTrigger/HLTfilters/plugins/HLTDoublet.h | 51 +++---- HLTrigger/JetMET/BuildFile.xml | 1 + .../JetMET/interface/HLTCATopTagFilter.h | 2 - HLTrigger/JetMET/interface/HLTCAWZTagFilter.h | 2 - HLTrigger/JetMET/interface/HLTHPDFilter.h | 6 +- .../interface/HLTJetCollForElePlusJets.h | 32 ++--- ...LTJetCollectionsForBoostedLeptonPlusJets.h | 26 +--- .../HLTJetCollectionsForLeptonPlusJets.h | 23 ++-- .../JetMET/interface/HLTJetL1MatchProducer.h | 3 +- .../JetMET/interface/HLTJetL1TMatchProducer.h | 18 +-- .../JetMET/interface/HLTJetSortedVBFFilter.h | 5 +- HLTrigger/JetMET/plugins/HLTJetHbbFilter.cc | 13 +- HLTrigger/JetMET/src/HLTHPDFilter.cc | 22 +-- .../JetMET/src/HLTJetCollForElePlusJets.cc | 53 ++++---- ...TJetCollectionsForBoostedLeptonPlusJets.cc | 42 +++--- .../src/HLTJetCollectionsForLeptonPlusJets.cc | 46 +++---- HLTrigger/JetMET/src/HLTJetL1MatchProducer.cc | 81 +++++------ .../JetMET/src/HLTJetL1TMatchProducer.cc | 56 ++++---- HLTrigger/JetMET/src/HLTJetSortedVBFFilter.cc | 18 +-- .../Muon/plugins/HLTDiMuonGlbTrkFilter.cc | 9 +- .../Muon/plugins/HLTDiMuonGlbTrkFilter.h | 16 ++- .../Muon/plugins/HLTMuonTrackSelector.cc | 5 +- HLTrigger/Muon/plugins/HLTMuonTrackSelector.h | 10 +- .../btau/plugins/HLTmumutkVtxProducer.cc | 12 +- HLTrigger/btau/plugins/HLTmumutkVtxProducer.h | 16 ++- .../btau/plugins/HLTmumutktkVtxProducer.cc | 12 +- .../btau/plugins/HLTmumutktkVtxProducer.h | 18 ++- HLTrigger/special/plugins/BuildFile.xml | 1 + .../special/plugins/HLTEcalResonanceFilter.cc | 47 ++++--- .../special/plugins/HLTEcalResonanceFilter.h | 7 +- .../special/plugins/HLTHcalNoiseFilter.cc | 4 +- 36 files changed, 390 insertions(+), 442 deletions(-) diff --git a/HLTrigger/Egamma/plugins/BuildFile.xml b/HLTrigger/Egamma/plugins/BuildFile.xml index dd7398eaed809..ecf72b45c80c8 100644 --- a/HLTrigger/Egamma/plugins/BuildFile.xml +++ b/HLTrigger/Egamma/plugins/BuildFile.xml @@ -12,6 +12,7 @@ + diff --git a/HLTrigger/Egamma/plugins/HLTDisplacedEgammaFilter.cc b/HLTrigger/Egamma/plugins/HLTDisplacedEgammaFilter.cc index c68819dd294e7..9c637465d46c8 100644 --- a/HLTrigger/Egamma/plugins/HLTDisplacedEgammaFilter.cc +++ b/HLTrigger/Egamma/plugins/HLTDisplacedEgammaFilter.cc @@ -4,18 +4,16 @@ * \author Monica Vazquez Acosta (CERN) * */ +#include #include "HLTDisplacedEgammaFilter.h" #include "DataFormats/Common/interface/Handle.h" +#include "DataFormats/Math/interface/deltaR.h" +#include "DataFormats/RecoCandidate/interface/RecoEcalCandidate.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" -#include "DataFormats/RecoCandidate/interface/RecoEcalCandidate.h" #include "RecoEcal/EgammaCoreTools/interface/EcalClusterTools.h" -#include "DataFormats/Math/interface/LorentzVector.h" -// -// constructors and destructor -// HLTDisplacedEgammaFilter::HLTDisplacedEgammaFilter(const edm::ParameterSet& iConfig) : HLTFilter(iConfig) { inputTag_ = iConfig.getParameter("inputTag"); ncandcut_ = iConfig.getParameter("ncandcut"); @@ -23,7 +21,11 @@ HLTDisplacedEgammaFilter::HLTDisplacedEgammaFilter(const edm::ParameterSet& iCon inputTrk = iConfig.getParameter("inputTrack"); trkPtCut = iConfig.getParameter("trackPtCut"); - trkdRCut = iConfig.getParameter("trackdRCut"); + + // track dR^2 threshold with sign + auto const trkDrCut = iConfig.getParameter("trackdRCut"); + trkDr2Cut = trkDrCut * std::abs(trkDrCut); + maxTrkCut = iConfig.getParameter("maxTrackCut"); rechitsEB = iConfig.getParameter("RecHitsEB"); @@ -41,13 +43,12 @@ HLTDisplacedEgammaFilter::HLTDisplacedEgammaFilter(const edm::ParameterSet& iCon inputToken_ = consumes(inputTag_); rechitsEBToken_ = consumes(rechitsEB); rechitsEEToken_ = consumes(rechitsEE); + if (useTrackVeto) { inputTrkToken_ = consumes(inputTrk); } } -HLTDisplacedEgammaFilter::~HLTDisplacedEgammaFilter() = default; - void HLTDisplacedEgammaFilter::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; makeHLTFilterDescription(desc); @@ -139,9 +140,8 @@ bool HLTDisplacedEgammaFilter::hltFilter(edm::Event& iEvent, for (auto const& it : *tracks) { if (it.pt() < trkPtCut) continue; - LorentzVector trkP4(it.px(), it.py(), it.pz(), it.p()); - double dR = ROOT::Math::VectorUtil::DeltaR(trkP4, ref->p4()); - if (dR < trkdRCut) + auto const dR2 = reco::deltaR2(it.eta(), it.phi(), ref->eta(), ref->phi()); + if (dR2 < trkDr2Cut) nTrk++; if (nTrk > maxTrkCut) break; @@ -156,9 +156,7 @@ bool HLTDisplacedEgammaFilter::hltFilter(edm::Event& iEvent, } // filter decision - bool accept(n >= ncandcut_); - - return accept; + return (n >= ncandcut_); } // declare this class as a framework plugin diff --git a/HLTrigger/Egamma/plugins/HLTDisplacedEgammaFilter.h b/HLTrigger/Egamma/plugins/HLTDisplacedEgammaFilter.h index d12f90d1a0eb7..661d9f4cf7023 100644 --- a/HLTrigger/Egamma/plugins/HLTDisplacedEgammaFilter.h +++ b/HLTrigger/Egamma/plugins/HLTDisplacedEgammaFilter.h @@ -1,5 +1,5 @@ -#ifndef HLTDisplacedEgammaFilter_h -#define HLTDisplacedEgammaFilter_h +#ifndef HLTrigger_Egamma_HLTDisplacedEgammaFilter_h +#define HLTrigger_Egamma_HLTDisplacedEgammaFilter_h /** \class HLTDisplacedEgammaFilter * @@ -7,24 +7,19 @@ * */ -#include "HLTrigger/HLTcore/interface/HLTFilter.h" - #include "DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h" #include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h" #include "DataFormats/TrackReco/interface/Track.h" #include "DataFormats/TrackReco/interface/TrackFwd.h" - -// -// class decleration -// -typedef math::XYZTLorentzVector LorentzVector; -#include +#include "HLTrigger/HLTcore/interface/HLTFilter.h" class HLTDisplacedEgammaFilter : public HLTFilter { public: explicit HLTDisplacedEgammaFilter(const edm::ParameterSet&); - ~HLTDisplacedEgammaFilter() override; + ~HLTDisplacedEgammaFilter() override = default; + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + bool hltFilter(edm::Event&, const edm::EventSetup&, trigger::TriggerFilterObjectWithRefs& filterproduct) const override; @@ -51,8 +46,8 @@ class HLTDisplacedEgammaFilter : public HLTFilter { edm::InputTag inputTrk; edm::EDGetTokenT inputTrkToken_; double trkPtCut; - double trkdRCut; + double trkDr2Cut; int maxTrkCut; }; -#endif //HLTDisplacedEgammaFilter_h +#endif diff --git a/HLTrigger/HLTfilters/plugins/BuildFile.xml b/HLTrigger/HLTfilters/plugins/BuildFile.xml index cb29742c3a0b3..323d6b58e4f1c 100644 --- a/HLTrigger/HLTfilters/plugins/BuildFile.xml +++ b/HLTrigger/HLTfilters/plugins/BuildFile.xml @@ -11,6 +11,7 @@ + diff --git a/HLTrigger/HLTfilters/plugins/HLTDoublet.cc b/HLTrigger/HLTfilters/plugins/HLTDoublet.cc index 21493e81f98b4..e9abd468b7b8a 100644 --- a/HLTrigger/HLTfilters/plugins/HLTDoublet.cc +++ b/HLTrigger/HLTfilters/plugins/HLTDoublet.cc @@ -6,25 +6,20 @@ * \author Martin Grunewald * */ +#include -#include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "HLTDoublet.h" - +#include "DataFormats/Candidate/interface/Particle.h" #include "DataFormats/Common/interface/Handle.h" - #include "DataFormats/Common/interface/Ref.h" #include "DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h" - -#include "DataFormats/Candidate/interface/Particle.h" - +#include "DataFormats/Math/interface/deltaPhi.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" - +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "HLTrigger/HLTcore/interface/defaultModuleLabel.h" -#include +#include "HLTDoublet.h" -// -// constructors and destructor -// template HLTDoublet::HLTDoublet(const edm::ParameterSet& iConfig) : HLTFilter(iConfig), @@ -36,36 +31,40 @@ HLTDoublet::HLTDoublet(const edm::ParameterSet& iConfig) inputToken2_(consumes(inputTag2_)), triggerType1_(iConfig.template getParameter("triggerType1")), triggerType2_(iConfig.template getParameter("triggerType2")), - min_Dphi_(iConfig.template getParameter("MinDphi")), - max_Dphi_(iConfig.template getParameter("MaxDphi")), min_Deta_(iConfig.template getParameter("MinDeta")), max_Deta_(iConfig.template getParameter("MaxDeta")), - min_Minv_(iConfig.template getParameter("MinMinv")), - max_Minv_(iConfig.template getParameter("MaxMinv")), - min_DelR_(iConfig.template getParameter("MinDelR")), - max_DelR_(iConfig.template getParameter("MaxDelR")), + min_Dphi_(iConfig.template getParameter("MinDphi")), + max_Dphi_(iConfig.template getParameter("MaxDphi")), + // min Delta-R^2 threshold with sign + min_DelR2_(iConfig.template getParameter("MinDelR") * + std::abs(iConfig.template getParameter("MinDelR"))), + // max Delta-R^2 threshold with sign + max_DelR2_(iConfig.template getParameter("MaxDelR") * + std::abs(iConfig.template getParameter("MaxDelR"))), min_Pt_(iConfig.template getParameter("MinPt")), max_Pt_(iConfig.template getParameter("MaxPt")), + min_Minv_(iConfig.template getParameter("MinMinv")), + max_Minv_(iConfig.template getParameter("MaxMinv")), min_N_(iConfig.template getParameter("MinN")), same_(inputTag1_.encode() == inputTag2_.encode()), // same collections to be compared? - cutdphi_(min_Dphi_ <= max_Dphi_), // cut active? cutdeta_(min_Deta_ <= max_Deta_), // cut active? - cutminv_(min_Minv_ <= max_Minv_), // cut active? - cutdelr_(min_DelR_ <= max_DelR_), // cut active? - cutpt_(min_Pt_ <= max_Pt_) // cut active? + cutdphi_(min_Dphi_ <= max_Dphi_), // cut active? + cutdelr2_(min_DelR2_ <= max_DelR2_), // cut active? + cutpt_(min_Pt_ <= max_Pt_), // cut active? + cutminv_(min_Minv_ <= max_Minv_) // cut active? { - LogDebug("") << "InputTags and cuts : " << inputTag1_.encode() << " " << inputTag2_.encode() << triggerType1_ << " " - << triggerType2_ << " Dphi [" << min_Dphi_ << " " << max_Dphi_ << "]" - << " Deta [" << min_Deta_ << " " << max_Deta_ << "]" - << " Minv [" << min_Minv_ << " " << max_Minv_ << "]" - << " DelR [" << min_DelR_ << " " << max_DelR_ << "]" - << " Pt [" << min_Pt_ << " " << max_Pt_ << "]" - << " MinN =" << min_N_ << " same/dphi/deta/minv/delr/pt " << same_ << cutdphi_ << cutdeta_ << cutminv_ - << cutdelr_ << cutpt_; + LogDebug("HLTDoublet") << "InputTags and cuts:\n inputTag1=" << inputTag1_.encode() + << " inputTag2=" << inputTag2_.encode() << " triggerType1=" << triggerType1_ + << " triggerType2=" << triggerType2_ << "\n Deta [" << min_Deta_ << ", " << max_Deta_ << "]" + << " Dphi [" << min_Dphi_ << ", " << max_Dphi_ << "]" + << " DelR2 [" << min_DelR2_ << ", " << max_DelR2_ << "]" + << " Pt [" << min_Pt_ << ", " << max_Pt_ << "]" + << " Minv [" << min_Minv_ << ", " << max_Minv_ << "]" + << " MinN=" << min_N_ << "\n same=" << same_ << " cut_deta=" << cutdeta_ + << " cutdphi=" << cutdphi_ << " cut_delr2=" << cutdelr2_ << " cut_pt=" << cutpt_ + << " cut_minv=" << cutminv_; } -template -HLTDoublet::~HLTDoublet() = default; template void HLTDoublet::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; @@ -78,16 +77,16 @@ void HLTDoublet::fillDescriptions(edm::ConfigurationDescriptions& descri desc.add("inputTag2", edm::InputTag("hltFiltered22")); desc.add("triggerType1", 0); desc.add("triggerType2", 0); - desc.add("MinDphi", +1.0); - desc.add("MaxDphi", -1.0); desc.add("MinDeta", +1.0); desc.add("MaxDeta", -1.0); - desc.add("MinMinv", +1.0); - desc.add("MaxMinv", -1.0); + desc.add("MinDphi", +1.0); + desc.add("MaxDphi", -1.0); desc.add("MinDelR", +1.0); desc.add("MaxDelR", -1.0); desc.add("MinPt", +1.0); desc.add("MaxPt", -1.0); + desc.add("MinMinv", +1.0); + desc.add("MaxMinv", -1.0); desc.add("MinN", 1); descriptions.add(defaultModuleLabel>(), desc); } @@ -112,7 +111,7 @@ bool HLTDoublet::hltFilter(edm::Event& iEvent, bool accept(false); - LogVerbatim("HLTDoublet") << " XXX " << moduleLabel() << " 0 " << std::endl; + LogVerbatim("HLTDoublet") << " XXX " << moduleLabel() << " 0 "; std::vector coll1; std::vector coll2; @@ -129,8 +128,7 @@ bool HLTDoublet::hltFilter(edm::Event& iEvent, InputTag tagOld; for (unsigned int i = 0; i < originTag1_.size(); ++i) { filterproduct.addCollectionTag(originTag1_[i]); - LogVerbatim("HLTDoublet") << " XXX " << moduleLabel() << " 1a/" << i << " " << originTag1_[i].encode() - << std::endl; + LogVerbatim("HLTDoublet") << " XXX " << moduleLabel() << " 1a/" << i << " " << originTag1_[i].encode(); } tagOld = InputTag(); for (size_type i1 = 0; i1 != n1; ++i1) { @@ -143,13 +141,12 @@ bool HLTDoublet::hltFilter(edm::Event& iEvent, if (tagOld.encode() != tagNew.encode()) { filterproduct.addCollectionTag(tagNew); tagOld = tagNew; - LogVerbatim("HLTDoublet") << " XXX " << moduleLabel() << " 1b " << tagNew.encode() << std::endl; + LogVerbatim("HLTDoublet") << " XXX " << moduleLabel() << " 1b " << tagNew.encode(); } } for (unsigned int i = 0; i < originTag2_.size(); ++i) { filterproduct.addCollectionTag(originTag2_[i]); - LogVerbatim("HLTDoublet") << " XXX " << moduleLabel() << " 2a/" << i << " " << originTag2_[i].encode() - << std::endl; + LogVerbatim("HLTDoublet") << " XXX " << moduleLabel() << " 2a/" << i << " " << originTag2_[i].encode(); } tagOld = InputTag(); for (size_type i2 = 0; i2 != n2; ++i2) { @@ -162,7 +159,7 @@ bool HLTDoublet::hltFilter(edm::Event& iEvent, if (tagOld.encode() != tagNew.encode()) { filterproduct.addCollectionTag(tagNew); tagOld = tagNew; - LogVerbatim("HLTDoublet") << " XXX " << moduleLabel() << " 2b " << tagNew.encode() << std::endl; + LogVerbatim("HLTDoublet") << " XXX " << moduleLabel() << " 2b " << tagNew.encode(); } } } @@ -182,29 +179,36 @@ bool HLTDoublet::hltFilter(edm::Event& iEvent, r2 = coll2[i2]; p2 = r2->p4(); - double Dphi(std::abs(p1.phi() - p2.phi())); - if (Dphi > M_PI) - Dphi = 2.0 * M_PI - Dphi; + if (cutdeta_ or cutdphi_ or cutdelr2_) { + double const Deta = std::abs(p1.eta() - p2.eta()); + if (cutdeta_ and (min_Deta_ > Deta or Deta > max_Deta_)) + continue; - double Deta(std::abs(p1.eta() - p2.eta())); + double const Dphi = std::abs(reco::deltaPhi(p1.phi(), p2.phi())); + if (cutdphi_ and (min_Dphi_ > Dphi or Dphi > max_Dphi_)) + continue; - p = p1 + p2; - double Minv(std::abs(p.mass())); - double Pt(p.pt()); - - double DelR(sqrt(Dphi * Dphi + Deta * Deta)); - - if (((!cutdphi_) || ((min_Dphi_ <= Dphi) && (Dphi <= max_Dphi_))) && - ((!cutdeta_) || ((min_Deta_ <= Deta) && (Deta <= max_Deta_))) && - ((!cutminv_) || ((min_Minv_ <= Minv) && (Minv <= max_Minv_))) && - ((!cutdelr_) || ((min_DelR_ <= DelR) && (DelR <= max_DelR_))) && - ((!cutpt_) || ((min_Pt_ <= Pt) && (Pt <= max_Pt_)))) { - n++; - filterproduct.addObject(triggerType1_, r1); - filterproduct.addObject(triggerType2_, r2); + double const DelR2 = Deta * Deta + Dphi * Dphi; + if (cutdelr2_ and (min_DelR2_ > DelR2 or DelR2 > max_DelR2_)) + continue; } + + p = p1 + p2; + + double const Pt = p.pt(); + if (cutpt_ and (min_Pt_ > Pt or Pt > max_Pt_)) + continue; + + double const Minv = std::abs(p.mass()); + if (cutminv_ and (min_Minv_ > Minv or Minv > max_Minv_)) + continue; + + n++; + filterproduct.addObject(triggerType1_, r1); + filterproduct.addObject(triggerType2_, r2); } } + // filter decision accept = (n >= min_N_); } diff --git a/HLTrigger/HLTfilters/plugins/HLTDoublet.h b/HLTrigger/HLTfilters/plugins/HLTDoublet.h index 8c9d84378a745..e360596f6dbaf 100644 --- a/HLTrigger/HLTfilters/plugins/HLTDoublet.h +++ b/HLTrigger/HLTfilters/plugins/HLTDoublet.h @@ -1,5 +1,5 @@ -#ifndef HLTDoublet_h -#define HLTDoublet_h +#ifndef HLTrigger_HLTfilters_HLTDoublet_h +#define HLTrigger_HLTfilters_HLTDoublet_h /** \class HLTDoublet * @@ -19,28 +19,35 @@ #include "DataFormats/Common/interface/Ref.h" #include "HLTrigger/HLTcore/interface/HLTFilter.h" -#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" -#include + #include + +namespace edm { + class ConfigurationDescriptions; +} + namespace trigger { class TriggerFilterObjectWithRefs; } -// -// class declaration -// - template class HLTDoublet : public HLTFilter { public: explicit HLTDoublet(const edm::ParameterSet&); - ~HLTDoublet() override; + ~HLTDoublet() override = default; + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + bool hltFilter(edm::Event&, const edm::EventSetup&, trigger::TriggerFilterObjectWithRefs& filterproduct) const override; private: + typedef std::vector T1Collection; + typedef edm::Ref T1Ref; + typedef std::vector T2Collection; + typedef edm::Ref T2Ref; + // configuration const std::vector originTag1_; // input tag identifying originals 1st product const std::vector originTag2_; // input tag identifying originals 2nd product @@ -50,22 +57,18 @@ class HLTDoublet : public HLTFilter { const edm::EDGetTokenT inputToken2_; const int triggerType1_; const int triggerType2_; - const double min_Dphi_, max_Dphi_; // Delta phi window - const double min_Deta_, max_Deta_; // Delta eta window - const double min_Minv_, max_Minv_; // Minv(1,2) window - const double min_DelR_, max_DelR_; // Delta R window - const double min_Pt_, max_Pt_; // Pt(1,2) window - const int min_N_; // number of pairs passing cuts required + const double min_Deta_, max_Deta_; // Delta eta window + const double min_Dphi_, max_Dphi_; // Delta phi window + const double min_DelR2_, max_DelR2_; // Delta R^2 window + const double min_Pt_, max_Pt_; // Pt(1,2) window + const double min_Minv_, max_Minv_; // Minv(1,2) window + const int min_N_; // number of pairs passing cuts required // calculated from configuration in c'tor - const bool same_; // 1st and 2nd product are one and the same - const bool cutdphi_, cutdeta_, cutminv_, cutdelr_, cutpt_; // cuts are on=true or off=false - - // - typedef std::vector T1Collection; - typedef edm::Ref T1Ref; - typedef std::vector T2Collection; - typedef edm::Ref T2Ref; + // 1st and 2nd product are one and the same + const bool same_; + // cuts are on=true or off=false + const bool cutdeta_, cutdphi_, cutdelr2_, cutpt_, cutminv_; }; -#endif //HLTDoublet_h +#endif // HLTrigger_HLTfilters_HLTDoublet_h diff --git a/HLTrigger/JetMET/BuildFile.xml b/HLTrigger/JetMET/BuildFile.xml index 585433e4dd13b..b8859874a2e11 100644 --- a/HLTrigger/JetMET/BuildFile.xml +++ b/HLTrigger/JetMET/BuildFile.xml @@ -1,3 +1,4 @@ + diff --git a/HLTrigger/JetMET/interface/HLTCATopTagFilter.h b/HLTrigger/JetMET/interface/HLTCATopTagFilter.h index a98aaff561baa..5c45372e403f2 100644 --- a/HLTrigger/JetMET/interface/HLTCATopTagFilter.h +++ b/HLTrigger/JetMET/interface/HLTCATopTagFilter.h @@ -16,8 +16,6 @@ #include "DataFormats/Math/interface/deltaR.h" #include "DataFormats/JetReco/interface/BasicJet.h" #include "DataFormats/Candidate/interface/CompositeCandidate.h" -#include "CommonTools/CandUtils/interface/AddFourMomenta.h" -#include "DataFormats/Candidate/interface/CandMatchMap.h" #include "DataFormats/HLTReco/interface/TriggerTypeDefs.h" #include "HLTrigger/HLTcore/interface/HLTFilter.h" #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" diff --git a/HLTrigger/JetMET/interface/HLTCAWZTagFilter.h b/HLTrigger/JetMET/interface/HLTCAWZTagFilter.h index 30935213425d5..da232b1710860 100644 --- a/HLTrigger/JetMET/interface/HLTCAWZTagFilter.h +++ b/HLTrigger/JetMET/interface/HLTCAWZTagFilter.h @@ -14,8 +14,6 @@ #include "DataFormats/JetReco/interface/BasicJet.h" #include "DataFormats/JetReco/interface/CaloJet.h" #include "DataFormats/Candidate/interface/CompositeCandidate.h" -#include "CommonTools/CandUtils/interface/AddFourMomenta.h" -#include "DataFormats/Candidate/interface/CandMatchMap.h" #include "DataFormats/HLTReco/interface/TriggerTypeDefs.h" #include "HLTrigger/HLTcore/interface/HLTFilter.h" #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" diff --git a/HLTrigger/JetMET/interface/HLTHPDFilter.h b/HLTrigger/JetMET/interface/HLTHPDFilter.h index e461d7712826f..bde6159859882 100644 --- a/HLTrigger/JetMET/interface/HLTHPDFilter.h +++ b/HLTrigger/JetMET/interface/HLTHPDFilter.h @@ -1,5 +1,5 @@ -#ifndef HLTHPDFilter_h -#define HLTHPDFilter_h +#ifndef HLTrigger_JetMET_HLTHPDFilter_h +#define HLTrigger_JetMET_HLTHPDFilter_h /** \class HLTHPDFilter * @@ -35,4 +35,4 @@ class HLTHPDFilter : public edm::stream::EDFilter<> { double mRBXSpikeUnbalanceThreshold; }; -#endif //HLTHPDFilter_h +#endif diff --git a/HLTrigger/JetMET/interface/HLTJetCollForElePlusJets.h b/HLTrigger/JetMET/interface/HLTJetCollForElePlusJets.h index e86a096aacf33..daba1c4166cc0 100644 --- a/HLTrigger/JetMET/interface/HLTJetCollForElePlusJets.h +++ b/HLTrigger/JetMET/interface/HLTJetCollForElePlusJets.h @@ -1,5 +1,5 @@ -#ifndef HLTJetCollForElePlusJets_h -#define HLTJetCollForElePlusJets_h +#ifndef HLTrigger_JetMET_HLTJetCollForElePlusJets_h +#define HLTrigger_JetMET_HLTJetCollForElePlusJets_h /** \class HLTJetCollForElePlusJets * @@ -17,30 +17,21 @@ */ // user include files +#include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/Frameworkfwd.h" #include "FWCore/Framework/interface/stream/EDProducer.h" - -#include "FWCore/Framework/interface/Event.h" - -#include "FWCore/ParameterSet/interface/ParameterSet.h" - #include "DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h" -#include "DataFormats/JetReco/interface/CaloJetCollection.h" -#include "DataFormats/JetReco/interface/PFJetCollection.h" namespace edm { class ConfigurationDescriptions; } -// -// class declaration -// - template class HLTJetCollForElePlusJets : public edm::stream::EDProducer<> { public: explicit HLTJetCollForElePlusJets(const edm::ParameterSet&); - ~HLTJetCollForElePlusJets() override; + ~HLTJetCollForElePlusJets() override = default; + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: @@ -54,12 +45,9 @@ class HLTJetCollForElePlusJets : public edm::stream::EDProducer<> { double minJetPt_; // jet pt threshold in GeV double maxAbsJetEta_; // jet |eta| range unsigned int minNJets_; // number of required jets passing cuts after cleaning - - double minDeltaR_; //min dR for jets and electrons not to match - - double minSoftJetPt_; // jet pt threshold for the soft jet in the VBF pair - double minDeltaEta_; // pseudorapidity separation for the VBF pair - - // ----------member data --------------------------- + double minDeltaR2_; // min dR^2 (with sign) for jets and electrons not to match + double minSoftJetPt_; // jet pt threshold for the soft jet in the VBF pair + double minDeltaEta_; // pseudorapidity separation for the VBF pair }; -#endif //HLTJetCollForElePlusJets_h + +#endif diff --git a/HLTrigger/JetMET/interface/HLTJetCollectionsForBoostedLeptonPlusJets.h b/HLTrigger/JetMET/interface/HLTJetCollectionsForBoostedLeptonPlusJets.h index 21dfd8a2201d9..0c49db40dad0a 100644 --- a/HLTrigger/JetMET/interface/HLTJetCollectionsForBoostedLeptonPlusJets.h +++ b/HLTrigger/JetMET/interface/HLTJetCollectionsForBoostedLeptonPlusJets.h @@ -1,5 +1,5 @@ -#ifndef HLTJetCollectionsForBoostedLeptonPlusJets_h -#define HLTJetCollectionsForBoostedLeptonPlusJets_h +#ifndef HLTrigger_JetMET_HLTJetCollectionsForBoostedLeptonPlusJets_h +#define HLTrigger_JetMET_HLTJetCollectionsForBoostedLeptonPlusJets_h /** \class HLTJetCollectionsForBoostedLeptonPlusJets * @@ -16,26 +16,15 @@ * */ -// user include files +#include "DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h" +#include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/Frameworkfwd.h" #include "FWCore/Framework/interface/stream/EDProducer.h" -#include "FWCore/Framework/interface/Event.h" - -#include "FWCore/ParameterSet/interface/ParameterSet.h" - -#include "DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h" - -#include "DataFormats/JetReco/interface/PFJetCollection.h" - namespace edm { class ConfigurationDescriptions; } -// -// class declaration -// - template class HLTJetCollectionsForBoostedLeptonPlusJets : public edm::stream::EDProducer<> { public: @@ -51,8 +40,7 @@ class HLTJetCollectionsForBoostedLeptonPlusJets : public edm::stream::EDProducer edm::InputTag hltLeptonTag; edm::InputTag sourceJetTag; - double minDeltaR_; //min dR to consider cleaning - - // ----------member data --------------------------- + double minDeltaR2_; // min dR^2 (with sign) to consider cleaning }; -#endif //HLTJetCollectionsForBoostedLeptonPlusJets_h + +#endif diff --git a/HLTrigger/JetMET/interface/HLTJetCollectionsForLeptonPlusJets.h b/HLTrigger/JetMET/interface/HLTJetCollectionsForLeptonPlusJets.h index 9aa95422a2fe0..52d51ae2108c4 100644 --- a/HLTrigger/JetMET/interface/HLTJetCollectionsForLeptonPlusJets.h +++ b/HLTrigger/JetMET/interface/HLTJetCollectionsForLeptonPlusJets.h @@ -1,5 +1,5 @@ -#ifndef HLTJetCollectionsForLeptonPlusJets_h -#define HLTJetCollectionsForLeptonPlusJets_h +#ifndef HLTrigger_JetMET_HLTJetCollectionsForLeptonPlusJets_h +#define HLTrigger_JetMET_HLTJetCollectionsForLeptonPlusJets_h /** \class HLTJetCollectionsForLeptonPlusJets * @@ -17,17 +17,11 @@ */ // user include files +#include "DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h" +#include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/Frameworkfwd.h" #include "FWCore/Framework/interface/stream/EDProducer.h" -#include "FWCore/Framework/interface/Event.h" - -#include "FWCore/ParameterSet/interface/ParameterSet.h" - -#include "DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h" -#include "DataFormats/JetReco/interface/CaloJetCollection.h" -#include "DataFormats/JetReco/interface/PFJetCollection.h" - namespace edm { class ConfigurationDescriptions; } @@ -40,7 +34,7 @@ template class HLTJetCollectionsForLeptonPlusJets : public edm::stream::EDProducer<> { public: explicit HLTJetCollectionsForLeptonPlusJets(const edm::ParameterSet&); - ~HLTJetCollectionsForLeptonPlusJets() override; + ~HLTJetCollectionsForLeptonPlusJets() override = default; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: @@ -51,8 +45,7 @@ class HLTJetCollectionsForLeptonPlusJets : public edm::stream::EDProducer<> { edm::InputTag hltLeptonTag; edm::InputTag sourceJetTag; - double minDeltaR_; //min dR for jets and leptons not to match - - // ----------member data --------------------------- + double minDeltaR2_; // min dR^2 (with sign) for jets and leptons not to match }; -#endif //HLTJetCollectionsForLeptonPlusJets_h + +#endif diff --git a/HLTrigger/JetMET/interface/HLTJetL1MatchProducer.h b/HLTrigger/JetMET/interface/HLTJetL1MatchProducer.h index b3230c1fdddf0..8b82096aa3495 100644 --- a/HLTrigger/JetMET/interface/HLTJetL1MatchProducer.h +++ b/HLTrigger/JetMET/interface/HLTJetL1MatchProducer.h @@ -34,8 +34,7 @@ class HLTJetL1MatchProducer : public edm::stream::EDProducer<> { edm::InputTag L1TauJets_; edm::InputTag L1CenJets_; edm::InputTag L1ForJets_; - // std::string jetType_; - double DeltaR_; // DeltaR(HLT,L1) + double DeltaR2_; // DeltaR2(HLT,L1) with sign }; #endif diff --git a/HLTrigger/JetMET/interface/HLTJetL1TMatchProducer.h b/HLTrigger/JetMET/interface/HLTJetL1TMatchProducer.h index 71cdc0e411c9e..77d9e7b1ff5da 100644 --- a/HLTrigger/JetMET/interface/HLTJetL1TMatchProducer.h +++ b/HLTrigger/JetMET/interface/HLTJetL1TMatchProducer.h @@ -20,19 +20,19 @@ template class HLTJetL1TMatchProducer : public edm::stream::EDProducer<> { public: - explicit HLTJetL1TMatchProducer(const edm::ParameterSet &); - ~HLTJetL1TMatchProducer() override; - static void fillDescriptions(edm::ConfigurationDescriptions &descriptions); - virtual void beginJob(); - void produce(edm::Event &, const edm::EventSetup &) override; + explicit HLTJetL1TMatchProducer(const edm::ParameterSet&); + ~HLTJetL1TMatchProducer() override = default; + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + + void produce(edm::Event&, const edm::EventSetup&) override; private: - edm::EDGetTokenT> m_theJetToken; - edm::EDGetTokenT m_theL1JetToken; edm::InputTag jetsInput_; edm::InputTag L1Jets_; - // std::string jetType_; - double DeltaR_; // DeltaR(HLT,L1) + double DeltaR2_; // DeltaR2(HLT,L1) with sign + edm::EDGetTokenT> m_theJetToken; + edm::EDGetTokenT m_theL1JetToken; }; #endif diff --git a/HLTrigger/JetMET/interface/HLTJetSortedVBFFilter.h b/HLTrigger/JetMET/interface/HLTJetSortedVBFFilter.h index f9e38b0121ac2..ac71b6adb1a18 100644 --- a/HLTrigger/JetMET/interface/HLTJetSortedVBFFilter.h +++ b/HLTrigger/JetMET/interface/HLTJetSortedVBFFilter.h @@ -36,9 +36,12 @@ class HLTJetSortedVBFFilter : public HLTFilter { static bool comparator(const Jpair& l, const Jpair& r) { return l.first < r.first; } explicit HLTJetSortedVBFFilter(const edm::ParameterSet&); - ~HLTJetSortedVBFFilter() override; + ~HLTJetSortedVBFFilter() override = default; + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + static float findCSV(const typename std::vector::const_iterator& jet, const reco::JetTagCollection& jetTags); + bool hltFilter(edm::Event&, const edm::EventSetup&, trigger::TriggerFilterObjectWithRefs& filterproduct) const override; diff --git a/HLTrigger/JetMET/plugins/HLTJetHbbFilter.cc b/HLTrigger/JetMET/plugins/HLTJetHbbFilter.cc index 8b09869adeb1b..2b2492737b4ad 100644 --- a/HLTrigger/JetMET/plugins/HLTJetHbbFilter.cc +++ b/HLTrigger/JetMET/plugins/HLTJetHbbFilter.cc @@ -5,16 +5,15 @@ * \author Ann Wang * */ - -#include +#include #include +#include #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" #include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/Framework/interface/MakerMacros.h" #include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/Math/interface/deltaPhi.h" #include "DataFormats/Math/interface/deltaR.h" #include "DataFormats/Common/interface/RefToBase.h" #include "DataFormats/HLTReco/interface/TriggerTypeDefs.h" @@ -78,12 +77,12 @@ void HLTJetHbbFilter::fillDescriptions(edm::ConfigurationDescriptions& descri template float HLTJetHbbFilter::findCSV(const typename std::vector::const_iterator& jet, const reco::JetTagCollection& jetTags) { - float minDr = 0.1; //matching jet tag with jet + float minDr2 = 0.01f; //matching jet tag with jet float tmpCSV = -20; for (auto jetb = jetTags.begin(); (jetb != jetTags.end()); ++jetb) { - float tmpDr = reco::deltaR(*jet, *(jetb->first)); - if (tmpDr < minDr) { - minDr = tmpDr; + float tmpDr2 = reco::deltaR2(*jet, *(jetb->first)); + if (tmpDr2 < minDr2) { + minDr2 = tmpDr2; tmpCSV = jetb->second; } } diff --git a/HLTrigger/JetMET/src/HLTHPDFilter.cc b/HLTrigger/JetMET/src/HLTHPDFilter.cc index babb9dcd45b90..29b2604a8ce17 100644 --- a/HLTrigger/JetMET/src/HLTHPDFilter.cc +++ b/HLTrigger/JetMET/src/HLTHPDFilter.cc @@ -4,31 +4,17 @@ * Fedor Ratnikov (UMd) May 19, 2008 */ -#include "HLTrigger/JetMET/interface/HLTHPDFilter.h" - #include - #include - -#include +#include #include "DataFormats/Common/interface/Handle.h" -#include "FWCore/MessageLogger/interface/MessageLogger.h" -#include "FWCore/Framework/interface/ESHandle.h" -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/EventSetup.h" - -#include "Geometry/Records/interface/IdealGeometryRecord.h" -#include "Geometry/CaloTopology/interface/HcalTopology.h" - -#include "FWCore/ServiceRegistry/interface/Service.h" -#include "CommonTools/UtilAlgos/interface/TFileService.h" -#include "TH1F.h" -#include "TH2F.h" - +#include "DataFormats/HcalDetId/interface/HcalDetId.h" #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "FWCore/Utilities/interface/InputTag.h" +#include "HLTrigger/JetMET/interface/HLTHPDFilter.h" namespace { enum Partition { HBM = 0, HBP = 1, HEM = 2, HEP = 3 }; diff --git a/HLTrigger/JetMET/src/HLTJetCollForElePlusJets.cc b/HLTrigger/JetMET/src/HLTJetCollForElePlusJets.cc index 56f8939a9df64..57031428c0e61 100644 --- a/HLTrigger/JetMET/src/HLTJetCollForElePlusJets.cc +++ b/HLTrigger/JetMET/src/HLTJetCollForElePlusJets.cc @@ -1,15 +1,18 @@ -#include "HLTrigger/JetMET/interface/HLTJetCollForElePlusJets.h" - -#include "FWCore/Framework/interface/MakerMacros.h" +#include +#include +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "DataFormats/Common/interface/Handle.h" - -#include "DataFormats/RecoCandidate/interface/RecoCandidate.h" -#include "DataFormats/RecoCandidate/interface/RecoEcalCandidate.h" #include "DataFormats/EgammaCandidates/interface/Electron.h" #include "DataFormats/EgammaReco/interface/SuperCluster.h" -#include "TVector3.h" +#include "DataFormats/RecoCandidate/interface/RecoCandidate.h" +#include "DataFormats/RecoCandidate/interface/RecoEcalCandidate.h" #include "HLTrigger/HLTcore/interface/defaultModuleLabel.h" +#include "HLTrigger/JetMET/interface/HLTJetCollForElePlusJets.h" + +#include template HLTJetCollForElePlusJets::HLTJetCollForElePlusJets(const edm::ParameterSet& iConfig) @@ -18,7 +21,8 @@ HLTJetCollForElePlusJets::HLTJetCollForElePlusJets(const edm::ParameterSet& i minJetPt_(iConfig.getParameter("MinJetPt")), maxAbsJetEta_(iConfig.getParameter("MaxAbsJetEta")), minNJets_(iConfig.getParameter("MinNJets")), - minDeltaR_(iConfig.getParameter("minDeltaR")), + // minimum delta-R^2 threshold with sign + minDeltaR2_(iConfig.getParameter("minDeltaR") * std::abs(iConfig.getParameter("minDeltaR"))), //Only for VBF minSoftJetPt_(iConfig.getParameter("MinSoftJetPt")), minDeltaEta_(iConfig.getParameter("MinDeltaEta")) { @@ -28,12 +32,6 @@ HLTJetCollForElePlusJets::HLTJetCollForElePlusJets(const edm::ParameterSet& i produces(); } -template -HLTJetCollForElePlusJets::~HLTJetCollForElePlusJets() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - template void HLTJetCollForElePlusJets::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; @@ -116,28 +114,37 @@ void HLTJetCollForElePlusJets::produce(edm::Event& iEvent, const edm::EventSe bool foundSolution(false); - for (auto& EleP : ElePs) { + for (auto const& EleP : ElePs) { bool VBFJetPair = false; std::vector store_jet; TRefVector refVector; for (unsigned int j = 0; j < theJetCollection.size(); j++) { TVector3 JetP(theJetCollection[j].px(), theJetCollection[j].py(), theJetCollection[j].pz()); - double DR = EleP.DeltaR(JetP); - if (JetP.Pt() > minJetPt_ && std::abs(JetP.Eta()) < maxAbsJetEta_ && DR > minDeltaR_) { + double const Deta = EleP.Eta() - JetP.Eta(); + double const Dphi = EleP.DeltaPhi(JetP); + double const DR2 = Deta * Deta + Dphi * Dphi; + + if (JetP.Pt() > minJetPt_ && std::abs(JetP.Eta()) < maxAbsJetEta_ && DR2 > minDeltaR2_) { store_jet.push_back(j); // The VBF part of the filter if (minDeltaEta_ > 0) { for (unsigned int k = j + 1; k < theJetCollection.size(); k++) { TVector3 SoftJetP(theJetCollection[k].px(), theJetCollection[k].py(), theJetCollection[k].pz()); - double softDR = EleP.DeltaR(SoftJetP); - if (SoftJetP.Pt() > minSoftJetPt_ && std::abs(SoftJetP.Eta()) < maxAbsJetEta_ && softDR > minDeltaR_) - if (std::abs(SoftJetP.Eta() - JetP.Eta()) > minDeltaEta_) { - store_jet.push_back(k); - VBFJetPair = true; - } + if (std::abs(SoftJetP.Eta() - JetP.Eta()) <= minDeltaEta_) { + continue; + } + + double const softDeta = EleP.Eta() - SoftJetP.Eta(); + double const softDphi = EleP.DeltaPhi(SoftJetP); + double const softDR2 = softDeta * softDeta + softDphi * softDphi; + + if (SoftJetP.Pt() > minSoftJetPt_ && std::abs(SoftJetP.Eta()) < maxAbsJetEta_ && softDR2 > minDeltaR2_) { + store_jet.push_back(k); + VBFJetPair = true; + } } } } diff --git a/HLTrigger/JetMET/src/HLTJetCollectionsForBoostedLeptonPlusJets.cc b/HLTrigger/JetMET/src/HLTJetCollectionsForBoostedLeptonPlusJets.cc index 65080277e095c..cef8d0a049cad 100644 --- a/HLTrigger/JetMET/src/HLTJetCollectionsForBoostedLeptonPlusJets.cc +++ b/HLTrigger/JetMET/src/HLTJetCollectionsForBoostedLeptonPlusJets.cc @@ -1,29 +1,31 @@ +#include #include #include -#include "TVector3.h" - -#include "FWCore/Framework/interface/MakerMacros.h" -#include "DataFormats/RecoCandidate/interface/RecoEcalCandidate.h" -#include "DataFormats/EgammaCandidates/interface/Electron.h" -#include "DataFormats/RecoCandidate/interface/RecoChargedCandidate.h" -#include "DataFormats/RecoCandidate/interface/RecoChargedCandidateFwd.h" -#include "DataFormats/RecoCandidate/interface/RecoCandidate.h" +#include "CommonTools/Utils/interface/PtComparator.h" #include "DataFormats/Common/interface/Handle.h" +#include "DataFormats/EgammaCandidates/interface/Electron.h" #include "DataFormats/EgammaReco/interface/SuperCluster.h" -#include "DataFormats/Math/interface/deltaR.h" #include "DataFormats/JetReco/interface/PFJet.h" +#include "DataFormats/Math/interface/deltaR.h" #include "DataFormats/ParticleFlowCandidate/interface/PFCandidate.h" +#include "DataFormats/RecoCandidate/interface/RecoCandidate.h" +#include "DataFormats/RecoCandidate/interface/RecoChargedCandidate.h" +#include "DataFormats/RecoCandidate/interface/RecoChargedCandidateFwd.h" +#include "DataFormats/RecoCandidate/interface/RecoEcalCandidate.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "HLTrigger/JetMET/interface/HLTJetCollectionsForBoostedLeptonPlusJets.h" #include "HLTrigger/HLTcore/interface/defaultModuleLabel.h" -#include "CommonTools/Utils/interface/PtComparator.h" template HLTJetCollectionsForBoostedLeptonPlusJets::HLTJetCollectionsForBoostedLeptonPlusJets( const edm::ParameterSet& iConfig) : hltLeptonTag(iConfig.getParameter("HltLeptonTag")), sourceJetTag(iConfig.getParameter("SourceJetTag")), - minDeltaR_(iConfig.getParameter("minDeltaR")) { + // minimum delta-R^2 threshold with sign + minDeltaR2_(iConfig.getParameter("minDeltaR") * std::abs(iConfig.getParameter("minDeltaR"))) { using namespace edm; using namespace std; @@ -107,12 +109,12 @@ void HLTJetCollectionsForBoostedLeptonPlusJets::produce(edm::Event& iEv for (size_t candNr = 0; candNr < muonCands.size(); candNr++) { if (std::find(usedCands.begin(), usedCands.end(), candNr) != usedCands.end()) continue; - if (deltaR((*muonCands[candNr]), cleanedJet) <= minDeltaR_) { + if (reco::deltaR2((*muonCands[candNr]), cleanedJet) <= minDeltaR2_) { std::vector> pfConstituents = cleanedJet.getPFConstituents(); for (std::vector>::const_iterator i_candidate = pfConstituents.begin(); i_candidate != pfConstituents.end(); ++i_candidate) { - if (deltaR((*muonCands[candNr]), (**i_candidate)) < 0.001) { + if (reco::deltaR2((*muonCands[candNr]), (**i_candidate)) < 1e-6) { cleanedJet.setP4(cleanedJet.p4() - muonCands[candNr]->p4()); usedCands.push_back(candNr); break; @@ -131,12 +133,12 @@ void HLTJetCollectionsForBoostedLeptonPlusJets::produce(edm::Event& iEv for (size_t candNr = 0; candNr < eleCands.size(); candNr++) { if (std::find(usedCands.begin(), usedCands.end(), candNr) != usedCands.end()) continue; - if (deltaR((*eleCands[candNr]), cleanedJet) <= minDeltaR_) { + if (reco::deltaR2((*eleCands[candNr]), cleanedJet) <= minDeltaR2_) { std::vector> pfConstituents = cleanedJet.getPFConstituents(); for (std::vector>::const_iterator i_candidate = pfConstituents.begin(); i_candidate != pfConstituents.end(); ++i_candidate) { - if (deltaR((*eleCands[candNr]), (**i_candidate)) < 0.001) { + if (reco::deltaR2((*eleCands[candNr]), (**i_candidate)) < 1e-6) { cleanedJet.setP4(cleanedJet.p4() - eleCands[candNr]->p4()); usedCands.push_back(candNr); break; @@ -155,12 +157,12 @@ void HLTJetCollectionsForBoostedLeptonPlusJets::produce(edm::Event& iEv for (size_t candNr = 0; candNr < photonCands.size(); candNr++) { if (std::find(usedCands.begin(), usedCands.end(), candNr) != usedCands.end()) continue; - if (deltaR((*photonCands[candNr]), cleanedJet) <= minDeltaR_) { + if (reco::deltaR2((*photonCands[candNr]), cleanedJet) <= minDeltaR2_) { std::vector> pfConstituents = cleanedJet.getPFConstituents(); for (std::vector>::const_iterator i_candidate = pfConstituents.begin(); i_candidate != pfConstituents.end(); ++i_candidate) { - if (deltaR((*photonCands[candNr]), (**i_candidate)) < 0.001) { + if (reco::deltaR2((*photonCands[candNr]), (**i_candidate)) < 1e-6) { cleanedJet.setP4(cleanedJet.p4() - photonCands[candNr]->p4()); usedCands.push_back(candNr); break; @@ -179,12 +181,12 @@ void HLTJetCollectionsForBoostedLeptonPlusJets::produce(edm::Event& iEv for (size_t candNr = 0; candNr < clusCands.size(); candNr++) { if (std::find(usedCands.begin(), usedCands.end(), candNr) != usedCands.end()) continue; - if (deltaR((*clusCands[candNr]), cleanedJet) <= minDeltaR_) { + if (reco::deltaR2((*clusCands[candNr]), cleanedJet) <= minDeltaR2_) { std::vector> pfConstituents = cleanedJet.getPFConstituents(); for (std::vector>::const_iterator i_candidate = pfConstituents.begin(); i_candidate != pfConstituents.end(); ++i_candidate) { - if (deltaR((*clusCands[candNr]), (**i_candidate)) < 0.001) { + if (reco::deltaR2((*clusCands[candNr]), (**i_candidate)) < 1e-6) { cleanedJet.setP4(cleanedJet.p4() - clusCands[candNr]->p4()); usedCands.push_back(candNr); break; @@ -204,7 +206,7 @@ void HLTJetCollectionsForBoostedLeptonPlusJets::produce(edm::Event& iEv JetCollection const& jets = *cleanedJetHandle; JetRefVector cleanedJetRefs; - + cleanedJetRefs.reserve(jets.size()); for (unsigned iJet = 0; iJet < jets.size(); ++iJet) { cleanedJetRefs.push_back(JetRef(cleanedJetHandle, iJet)); } diff --git a/HLTrigger/JetMET/src/HLTJetCollectionsForLeptonPlusJets.cc b/HLTrigger/JetMET/src/HLTJetCollectionsForLeptonPlusJets.cc index 2018c93717f9f..821bdf4bf730f 100644 --- a/HLTrigger/JetMET/src/HLTJetCollectionsForLeptonPlusJets.cc +++ b/HLTrigger/JetMET/src/HLTJetCollectionsForLeptonPlusJets.cc @@ -1,25 +1,25 @@ -#include "HLTrigger/JetMET/interface/HLTJetCollectionsForLeptonPlusJets.h" - -#include "FWCore/Framework/interface/MakerMacros.h" - -#include "DataFormats/RecoCandidate/interface/RecoEcalCandidate.h" -#include "DataFormats/EgammaCandidates/interface/Electron.h" -#include "DataFormats/RecoCandidate/interface/RecoChargedCandidate.h" -#include "DataFormats/RecoCandidate/interface/RecoChargedCandidateFwd.h" - -#include "DataFormats/RecoCandidate/interface/RecoCandidate.h" +#include #include "DataFormats/Common/interface/Handle.h" - +#include "DataFormats/EgammaCandidates/interface/Electron.h" #include "DataFormats/EgammaReco/interface/SuperCluster.h" #include "DataFormats/Math/interface/deltaR.h" +#include "DataFormats/RecoCandidate/interface/RecoCandidate.h" +#include "DataFormats/RecoCandidate/interface/RecoChargedCandidate.h" +#include "DataFormats/RecoCandidate/interface/RecoChargedCandidateFwd.h" +#include "DataFormats/RecoCandidate/interface/RecoEcalCandidate.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "HLTrigger/HLTcore/interface/defaultModuleLabel.h" +#include "HLTrigger/JetMET/interface/HLTJetCollectionsForLeptonPlusJets.h" template HLTJetCollectionsForLeptonPlusJets::HLTJetCollectionsForLeptonPlusJets(const edm::ParameterSet& iConfig) : hltLeptonTag(iConfig.getParameter("HltLeptonTag")), sourceJetTag(iConfig.getParameter("SourceJetTag")), - minDeltaR_(iConfig.getParameter("minDeltaR")) { + // minimum delta-R^2 threshold with sign + minDeltaR2_(iConfig.getParameter("minDeltaR") * std::abs(iConfig.getParameter("minDeltaR"))) { using namespace edm; using namespace std; typedef vector, jetType, refhelper::FindUsingAdvance, jetType>>> @@ -29,12 +29,6 @@ HLTJetCollectionsForLeptonPlusJets::HLTJetCollectionsForLeptonPlusJets( produces(); } -template -HLTJetCollectionsForLeptonPlusJets::~HLTJetCollectionsForLeptonPlusJets() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - template void HLTJetCollectionsForLeptonPlusJets::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; @@ -86,10 +80,10 @@ void HLTJetCollectionsForLeptonPlusJets::produce(edm::Event& iEvent, co unique_ptr allSelections(new JetCollectionVector()); if (!clusCands.empty()) { // try trigger clusters - for (auto& clusCand : clusCands) { + for (auto const& clusCand : clusCands) { JetRefVector refVector; for (unsigned int j = 0; j < theJetCollection.size(); j++) { - if (deltaR(clusCand->superCluster()->position(), theJetCollection[j]) > minDeltaR_) + if (reco::deltaR2(clusCand->superCluster()->position(), theJetCollection[j]) > minDeltaR2_) refVector.push_back(JetRef(theJetCollectionHandle, j)); } allSelections->push_back(refVector); @@ -97,10 +91,10 @@ void HLTJetCollectionsForLeptonPlusJets::produce(edm::Event& iEvent, co } if (!eleCands.empty()) { // try electrons - for (auto& eleCand : eleCands) { + for (auto const& eleCand : eleCands) { JetRefVector refVector; for (unsigned int j = 0; j < theJetCollection.size(); j++) { - if (deltaR(eleCand->superCluster()->position(), theJetCollection[j]) > minDeltaR_) + if (reco::deltaR2(eleCand->superCluster()->position(), theJetCollection[j]) > minDeltaR2_) refVector.push_back(JetRef(theJetCollectionHandle, j)); } allSelections->push_back(refVector); @@ -108,10 +102,10 @@ void HLTJetCollectionsForLeptonPlusJets::produce(edm::Event& iEvent, co } if (!photonCands.empty()) { // try photons - for (auto& photonCand : photonCands) { + for (auto const& photonCand : photonCands) { JetRefVector refVector; for (unsigned int j = 0; j < theJetCollection.size(); j++) { - if (deltaR(photonCand->superCluster()->position(), theJetCollection[j]) > minDeltaR_) + if (reco::deltaR2(photonCand->superCluster()->position(), theJetCollection[j]) > minDeltaR2_) refVector.push_back(JetRef(theJetCollectionHandle, j)); } allSelections->push_back(refVector); @@ -119,10 +113,10 @@ void HLTJetCollectionsForLeptonPlusJets::produce(edm::Event& iEvent, co } if (!muonCands.empty()) { // muons - for (auto& muonCand : muonCands) { + for (auto const& muonCand : muonCands) { JetRefVector refVector; for (unsigned int j = 0; j < theJetCollection.size(); j++) { - if (deltaR(muonCand->p4(), theJetCollection[j]) > minDeltaR_) + if (reco::deltaR2(muonCand->p4(), theJetCollection[j]) > minDeltaR2_) refVector.push_back(JetRef(theJetCollectionHandle, j)); } allSelections->push_back(refVector); diff --git a/HLTrigger/JetMET/src/HLTJetL1MatchProducer.cc b/HLTrigger/JetMET/src/HLTJetL1MatchProducer.cc index 44800b475fdaf..70bda8efa2695 100644 --- a/HLTrigger/JetMET/src/HLTJetL1MatchProducer.cc +++ b/HLTrigger/JetMET/src/HLTJetL1MatchProducer.cc @@ -1,13 +1,14 @@ -#include +#include +#include -#include "HLTrigger/JetMET/interface/HLTJetL1MatchProducer.h" #include "DataFormats/Common/interface/Handle.h" +#include "DataFormats/Math/interface/deltaR.h" #include "FWCore/Framework/interface/ESHandle.h" -#include "DataFormats/Math/interface/deltaPhi.h" - #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "HLTrigger/HLTcore/interface/defaultModuleLabel.h" +#include "HLTrigger/JetMET/interface/HLTJetL1MatchProducer.h" template HLTJetL1MatchProducer::HLTJetL1MatchProducer(const edm::ParameterSet& iConfig) { @@ -15,7 +16,10 @@ HLTJetL1MatchProducer::HLTJetL1MatchProducer(const edm::ParameterSet& iConfig L1TauJets_ = iConfig.template getParameter("L1TauJets"); L1CenJets_ = iConfig.template getParameter("L1CenJets"); L1ForJets_ = iConfig.template getParameter("L1ForJets"); - DeltaR_ = iConfig.template getParameter("DeltaR"); + + // minimum delta-R^2 threshold with sign + auto const DeltaR = iConfig.template getParameter("DeltaR"); + DeltaR2_ = DeltaR * std::abs(DeltaR); typedef std::vector TCollection; m_theJetToken = consumes(jetsInput_); @@ -44,53 +48,54 @@ void HLTJetL1MatchProducer::fillDescriptions(edm::ConfigurationDescriptions& template void HLTJetL1MatchProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { - typedef std::vector TCollection; - - edm::Handle jets; - iEvent.getByToken(m_theJetToken, jets); - - std::unique_ptr result(new TCollection); + auto const& jets = iEvent.get(m_theJetToken); - edm::Handle l1TauJets; - iEvent.getByToken(m_theL1TauJetToken, l1TauJets); + auto result = std::make_unique>(); + result->reserve(jets.size()); - edm::Handle l1CenJets; - iEvent.getByToken(m_theL1CenJetToken, l1CenJets); + auto const& l1TauJets = iEvent.get(m_theL1TauJetToken); + auto const& l1CenJets = iEvent.get(m_theL1CenJetToken); + auto const& l1ForJets = iEvent.get(m_theL1ForJetToken); - edm::Handle l1ForJets; - iEvent.getByToken(m_theL1ForJetToken, l1ForJets); - - typename TCollection::const_iterator jet_iter; - for (jet_iter = jets->begin(); jet_iter != jets->end(); ++jet_iter) { + for (auto const& jet : jets) { bool isMatched = false; - //std::cout << "FL: l1TauJets.size = " << l1TauJets->size() << std::endl; - for (unsigned int jetc = 0; jetc < l1TauJets->size(); ++jetc) { - const double deltaeta = jet_iter->eta() - (*l1TauJets)[jetc].eta(); - const double deltaphi = deltaPhi(jet_iter->phi(), (*l1TauJets)[jetc].phi()); - //std::cout << "FL: sqrt(2) = " << sqrt(2) << std::endl; - if (sqrt(deltaeta * deltaeta + deltaphi * deltaphi) < DeltaR_) + for (auto const& l1t_obj : l1TauJets) { + if (reco::deltaR2(jet.eta(), jet.phi(), l1t_obj.eta(), l1t_obj.phi()) < DeltaR2_) { isMatched = true; + break; + } } - for (unsigned int jetc = 0; jetc < l1CenJets->size(); ++jetc) { - const double deltaeta = jet_iter->eta() - (*l1CenJets)[jetc].eta(); - const double deltaphi = deltaPhi(jet_iter->phi(), (*l1CenJets)[jetc].phi()); - if (sqrt(deltaeta * deltaeta + deltaphi * deltaphi) < DeltaR_) - isMatched = true; + if (isMatched) { + result->emplace_back(jet); + continue; } - for (unsigned int jetc = 0; jetc < l1ForJets->size(); ++jetc) { - const double deltaeta = jet_iter->eta() - (*l1ForJets)[jetc].eta(); - const double deltaphi = deltaPhi(jet_iter->phi(), (*l1ForJets)[jetc].phi()); - if (sqrt(deltaeta * deltaeta + deltaphi * deltaphi) < DeltaR_) + for (auto const& l1t_obj : l1CenJets) { + if (reco::deltaR2(jet.eta(), jet.phi(), l1t_obj.eta(), l1t_obj.phi()) < DeltaR2_) { isMatched = true; + break; + } } - if (isMatched == true) - result->push_back(*jet_iter); + if (isMatched) { + result->emplace_back(jet); + continue; + } - } // jet_iter + for (auto const& l1t_obj : l1ForJets) { + if (reco::deltaR2(jet.eta(), jet.phi(), l1t_obj.eta(), l1t_obj.phi()) < DeltaR2_) { + isMatched = true; + break; + } + } + + if (isMatched) { + result->emplace_back(jet); + continue; + } + } iEvent.put(std::move(result)); } diff --git a/HLTrigger/JetMET/src/HLTJetL1TMatchProducer.cc b/HLTrigger/JetMET/src/HLTJetL1TMatchProducer.cc index 7cc733f87e0e9..4ec006123ee1f 100644 --- a/HLTrigger/JetMET/src/HLTJetL1TMatchProducer.cc +++ b/HLTrigger/JetMET/src/HLTJetL1TMatchProducer.cc @@ -1,32 +1,29 @@ -#include +#include +#include -#include "HLTrigger/JetMET/interface/HLTJetL1TMatchProducer.h" #include "DataFormats/Common/interface/Handle.h" +#include "DataFormats/Math/interface/deltaR.h" #include "FWCore/Framework/interface/ESHandle.h" -#include "DataFormats/Math/interface/deltaPhi.h" - #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" #include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "HLTrigger/HLTcore/interface/defaultModuleLabel.h" +#include "HLTrigger/JetMET/interface/HLTJetL1TMatchProducer.h" template HLTJetL1TMatchProducer::HLTJetL1TMatchProducer(const edm::ParameterSet& iConfig) { jetsInput_ = iConfig.template getParameter("jetsInput"); L1Jets_ = iConfig.template getParameter("L1Jets"); - DeltaR_ = iConfig.template getParameter("DeltaR"); - typedef std::vector TCollection; - m_theJetToken = consumes(jetsInput_); - m_theL1JetToken = consumes(L1Jets_); - produces(); -} + // minimum delta-R^2 threshold with sign + auto const DeltaR = iConfig.template getParameter("DeltaR"); + DeltaR2_ = DeltaR * std::abs(DeltaR); -template -void HLTJetL1TMatchProducer::beginJob() {} + m_theJetToken = consumes(jetsInput_); + m_theL1JetToken = consumes(L1Jets_); -template -HLTJetL1TMatchProducer::~HLTJetL1TMatchProducer() = default; + produces>(); +} template void HLTJetL1TMatchProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { @@ -39,20 +36,15 @@ void HLTJetL1TMatchProducer::fillDescriptions(edm::ConfigurationDescriptions& template void HLTJetL1TMatchProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { - typedef std::vector TCollection; - - edm::Handle jets; - iEvent.getByToken(m_theJetToken, jets); - - std::unique_ptr result(new TCollection); + auto const& jets = iEvent.get(m_theJetToken); + auto const l1Jets = iEvent.getHandle(m_theL1JetToken); - edm::Handle l1Jets; - iEvent.getByToken(m_theL1JetToken, l1Jets); bool trigger_bx_only = true; // selection of BX not implemented + auto result = std::make_unique>(); + if (l1Jets.isValid()) { - typename TCollection::const_iterator jet_iter; - for (jet_iter = jets->begin(); jet_iter != jets->end(); ++jet_iter) { + for (auto const& jet : jets) { bool isMatched = false; for (int ibx = l1Jets->getFirstBX(); ibx <= l1Jets->getLastBX(); ++ibx) { if (trigger_bx_only && (ibx != 0)) @@ -60,18 +52,18 @@ void HLTJetL1TMatchProducer::produce(edm::Event& iEvent, const edm::EventSetu for (auto it = l1Jets->begin(ibx); it != l1Jets->end(ibx); it++) { if (it->et() == 0) continue; // if you don't care about L1T candidates with zero ET. - const double deltaeta = jet_iter->eta() - it->eta(); - const double deltaphi = deltaPhi(jet_iter->phi(), it->phi()); - if (sqrt(deltaeta * deltaeta + deltaphi * deltaphi) < DeltaR_) + if (reco::deltaR2(jet.eta(), jet.phi(), it->eta(), it->phi()) < DeltaR2_) { isMatched = true; - //cout << "bx: " << ibx << " et: " << it->et() << " eta: " << it->eta() << " phi: " << it->phi() << "\n"; + break; + } } } - if (isMatched == true) - result->push_back(*jet_iter); - } // jet_iter + if (isMatched) { + result->emplace_back(jet); + } + } } else { - edm::LogWarning("MissingProduct") << "L1Upgrade l1Jets bx collection not found." << std::endl; + edm::LogWarning("MissingProduct") << "L1Upgrade l1Jets bx collection not found."; } iEvent.put(std::move(result)); diff --git a/HLTrigger/JetMET/src/HLTJetSortedVBFFilter.cc b/HLTrigger/JetMET/src/HLTJetSortedVBFFilter.cc index a5d7823406307..21a736b374cb3 100644 --- a/HLTrigger/JetMET/src/HLTJetSortedVBFFilter.cc +++ b/HLTrigger/JetMET/src/HLTJetSortedVBFFilter.cc @@ -2,15 +2,13 @@ * * See header file for documentation * - - * * \author Jacopo Bernardini * */ - -#include +#include #include +#include #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" #include "FWCore/ParameterSet/interface/ParameterSetDescription.h" @@ -49,9 +47,6 @@ HLTJetSortedVBFFilter::HLTJetSortedVBFFilter(const edm::ParameterSet& iConfig } } -template -HLTJetSortedVBFFilter::~HLTJetSortedVBFFilter() = default; - template void HLTJetSortedVBFFilter::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; @@ -74,13 +69,12 @@ void HLTJetSortedVBFFilter::fillDescriptions(edm::ConfigurationDescriptions& template float HLTJetSortedVBFFilter::findCSV(const typename std::vector::const_iterator& jet, const reco::JetTagCollection& jetTags) { - float minDr = 0.1; + float minDr2 = 0.01f; float tmpCSV = -20; for (auto jetb = jetTags.begin(); (jetb != jetTags.end()); ++jetb) { - float tmpDr = reco::deltaR(*jet, *(jetb->first)); - - if (tmpDr < minDr) { - minDr = tmpDr; + float tmpDr2 = reco::deltaR2(*jet, *(jetb->first)); + if (tmpDr2 < minDr2) { + minDr2 = tmpDr2; tmpCSV = jetb->second; } } diff --git a/HLTrigger/Muon/plugins/HLTDiMuonGlbTrkFilter.cc b/HLTrigger/Muon/plugins/HLTDiMuonGlbTrkFilter.cc index 49db0a676ecfc..1f5e617432fb0 100644 --- a/HLTrigger/Muon/plugins/HLTDiMuonGlbTrkFilter.cc +++ b/HLTrigger/Muon/plugins/HLTDiMuonGlbTrkFilter.cc @@ -1,3 +1,5 @@ +#include + #include "HLTDiMuonGlbTrkFilter.h" #include "DataFormats/Common/interface/Handle.h" #include "DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h" @@ -28,7 +30,6 @@ HLTDiMuonGlbTrkFilter::HLTDiMuonGlbTrkFilter(const edm::ParameterSet& iConfig) m_minTrkHits = iConfig.getParameter("minTrkHits"); m_minMuonHits = iConfig.getParameter("minMuonHits"); m_maxNormalizedChi2 = iConfig.getParameter("maxNormalizedChi2"); - m_minDR = iConfig.getParameter("minDR"); m_allowedTypeMask = iConfig.getParameter("allowedTypeMask"); m_requiredTypeMask = iConfig.getParameter("requiredTypeMask"); m_trkMuonId = muon::SelectionType(iConfig.getParameter("trkMuonId")); @@ -41,6 +42,10 @@ HLTDiMuonGlbTrkFilter::HLTDiMuonGlbTrkFilter(const edm::ParameterSet& iConfig) m_chargeOpt = iConfig.getParameter("ChargeOpt"); m_maxDCAMuMu = iConfig.getParameter("maxDCAMuMu"); m_maxdEtaMuMu = iConfig.getParameter("maxdEtaMuMu"); + + // minimum delta-R^2 threshold with sign + auto const minDR = iConfig.getParameter("minDR"); + m_minDR2 = minDR * std::abs(minDR); } void HLTDiMuonGlbTrkFilter::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { @@ -117,7 +122,7 @@ bool HLTDiMuonGlbTrkFilter::hltFilter(edm::Event& iEvent, const reco::Muon& mu1(muons->at(filteredMuons.at(i))); const reco::Muon& mu2(muons->at(filteredMuons.at(j))); if (std::max(mu1.pt(), mu2.pt()) > std::max(m_minPtMuon1, m_minPtMuon2) && - std::abs(mu2.eta() - mu1.eta()) < m_maxdEtaMuMu && deltaR(mu1, mu2) > m_minDR && + std::abs(mu2.eta() - mu1.eta()) < m_maxdEtaMuMu && reco::deltaR2(mu1, mu2) > m_minDR2 && (mu1.p4() + mu2.p4()).mass() > m_minMass && (mu1.p4() + mu2.p4()).mass() < m_maxMass && std::abs((mu1.p4() + mu2.p4()).Rapidity()) < m_maxYDimuon) { if (m_chargeOpt < 0) { diff --git a/HLTrigger/Muon/plugins/HLTDiMuonGlbTrkFilter.h b/HLTrigger/Muon/plugins/HLTDiMuonGlbTrkFilter.h index f68b58f3aee95..16d11a05ab1d5 100644 --- a/HLTrigger/Muon/plugins/HLTDiMuonGlbTrkFilter.h +++ b/HLTrigger/Muon/plugins/HLTDiMuonGlbTrkFilter.h @@ -1,10 +1,12 @@ -#ifndef HLTDiMuonGlbTrkFilter_h -#define HLTDiMuonGlbTrkFilter_h +#ifndef HLTrigger_Muon_HLTDiMuonGlbTrkFilter_h +#define HLTrigger_Muon_HLTDiMuonGlbTrkFilter_h + // author D.Kovalskyi -#include "HLTrigger/HLTcore/interface/HLTFilter.h" + #include "DataFormats/RecoCandidate/interface/RecoChargedCandidateFwd.h" #include "DataFormats/MuonReco/interface/MuonFwd.h" #include "DataFormats/MuonReco/interface/MuonSelectors.h" +#include "HLTrigger/HLTcore/interface/HLTFilter.h" #include "MagneticField/Engine/interface/MagneticField.h" #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h" @@ -15,8 +17,10 @@ namespace edm { class HLTDiMuonGlbTrkFilter : public HLTFilter { public: HLTDiMuonGlbTrkFilter(const edm::ParameterSet&); - ~HLTDiMuonGlbTrkFilter() override {} + ~HLTDiMuonGlbTrkFilter() override = default; + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + bool hltFilter(edm::Event&, const edm::EventSetup&, trigger::TriggerFilterObjectWithRefs& filterproduct) const override; @@ -34,7 +38,7 @@ class HLTDiMuonGlbTrkFilter : public HLTFilter { unsigned int m_allowedTypeMask; unsigned int m_requiredTypeMask; double m_maxNormalizedChi2; - double m_minDR; + double m_minDR2; double m_minPtMuon1; double m_minPtMuon2; double m_maxEtaMuon; @@ -48,4 +52,4 @@ class HLTDiMuonGlbTrkFilter : public HLTFilter { bool m_saveTags; }; -#endif //HLTMuonDimuonFilter_h +#endif diff --git a/HLTrigger/Muon/plugins/HLTMuonTrackSelector.cc b/HLTrigger/Muon/plugins/HLTMuonTrackSelector.cc index e7eebfd5ef18c..260b143843c63 100644 --- a/HLTrigger/Muon/plugins/HLTMuonTrackSelector.cc +++ b/HLTrigger/Muon/plugins/HLTMuonTrackSelector.cc @@ -6,6 +6,7 @@ * Author: Kyeongpil Lee (kplee@cern.ch) * */ +#include #include "HLTMuonTrackSelector.h" @@ -27,8 +28,6 @@ HLTMuonTrackSelector::HLTMuonTrackSelector(const edm::ParameterSet& iConfig) produces("MVAValues"); } -HLTMuonTrackSelector::~HLTMuonTrackSelector() {} - void HLTMuonTrackSelector::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; desc.add("track", edm::InputTag()); @@ -89,7 +88,7 @@ void HLTMuonTrackSelector::produce(edm::StreamID, edm::Event& iEvent, const edm: double trackEta = track.eta(); double trackPhi = track.phi(); - if (deltaR(trackEta, trackPhi, muonEta, muonPhi) < 0.1) { + if (reco::deltaR2(trackEta, trackPhi, muonEta, muonPhi) < 0.01) { double dPt = fabs(trackPt - muonPt); if (dPt < smallestDPt) { diff --git a/HLTrigger/Muon/plugins/HLTMuonTrackSelector.h b/HLTrigger/Muon/plugins/HLTMuonTrackSelector.h index b6089ba2747fe..9621dff9b75e0 100644 --- a/HLTrigger/Muon/plugins/HLTMuonTrackSelector.h +++ b/HLTrigger/Muon/plugins/HLTMuonTrackSelector.h @@ -1,12 +1,12 @@ -#ifndef HLTMuonTrackSelector_h -#define HLTMuonTrackSelector_h +#ifndef HLTrigger_Muon_HLTMuonTrackSelector_h +#define HLTrigger_Muon_HLTMuonTrackSelector_h /* * class HLTMuonTrackSelector * * Select tracks matched to the reco::Muon * -* base on RecoTracker/FinalTrackSelectors/plugins/TrackCollectionFilterCloner.cc +* based on RecoTracker/FinalTrackSelectors/plugins/TrackCollectionFilterCloner.cc * * Author: Kyeongpil Lee (kplee@cern.ch) * @@ -30,7 +30,7 @@ class HLTMuonTrackSelector : public edm::global::EDProducer<> { public: explicit HLTMuonTrackSelector(const edm::ParameterSet &); - ~HLTMuonTrackSelector() override; + ~HLTMuonTrackSelector() override = default; using MVACollection = std::vector; @@ -47,4 +47,4 @@ class HLTMuonTrackSelector : public edm::global::EDProducer<> { const bool flag_copyMVA; }; -#endif //HLTMuonTrackSelector_h +#endif diff --git a/HLTrigger/btau/plugins/HLTmumutkVtxProducer.cc b/HLTrigger/btau/plugins/HLTmumutkVtxProducer.cc index ed46fdb03ab6f..2cfe32743c12d 100644 --- a/HLTrigger/btau/plugins/HLTmumutkVtxProducer.cc +++ b/HLTrigger/btau/plugins/HLTmumutkVtxProducer.cc @@ -22,7 +22,6 @@ using namespace reco; using namespace std; using namespace trigger; -// ---------------------------------------------------------------------- HLTmumutkVtxProducer::HLTmumutkVtxProducer(const edm::ParameterSet& iConfig) : transientTrackRecordToken_(esConsumes(edm::ESInputTag("", "TransientTrackBuilder"))), muCandTag_(iConfig.getParameter("MuCand")), @@ -39,15 +38,13 @@ HLTmumutkVtxProducer::HLTmumutkVtxProducer(const edm::ParameterSet& iConfig) minInvMass_(iConfig.getParameter("MinInvMass")), maxInvMass_(iConfig.getParameter("MaxInvMass")), minD0Significance_(iConfig.getParameter("MinD0Significance")), - overlapDR_(iConfig.getParameter("OverlapDR")), + // minimum delta-R^2 threshold (with sign) for non-overlapping tracks + overlapDR2_(iConfig.getParameter("OverlapDR") * std::abs(iConfig.getParameter("OverlapDR"))), beamSpotTag_(iConfig.getParameter("BeamSpotTag")), beamSpotToken_(consumes(beamSpotTag_)) { produces(); } -// ---------------------------------------------------------------------- -HLTmumutkVtxProducer::~HLTmumutkVtxProducer() = default; - void HLTmumutkVtxProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; desc.add("MuCand", edm::InputTag("hltMuTracks")); @@ -65,7 +62,6 @@ void HLTmumutkVtxProducer::fillDescriptions(edm::ConfigurationDescriptions& desc descriptions.add("HLTmumutkVtxProducer", desc); } -// ---------------------------------------------------------------------- void HLTmumutkVtxProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { const double MuMass(0.106); const double MuMass2(MuMass * MuMass); @@ -224,9 +220,7 @@ FreeTrajectoryState HLTmumutkVtxProducer::initialFreeState(const reco::Track& tk } bool HLTmumutkVtxProducer::overlap(const TrackRef& trackref1, const TrackRef& trackref2) { - if (deltaR(trackref1->eta(), trackref1->phi(), trackref2->eta(), trackref2->phi()) < overlapDR_) - return true; - return false; + return (reco::deltaR2(trackref1->eta(), trackref1->phi(), trackref2->eta(), trackref2->phi()) < overlapDR2_); } bool HLTmumutkVtxProducer::checkPreviousCand(const TrackRef& trackref, diff --git a/HLTrigger/btau/plugins/HLTmumutkVtxProducer.h b/HLTrigger/btau/plugins/HLTmumutkVtxProducer.h index 84a8890e4035a..bd63dd9543af2 100644 --- a/HLTrigger/btau/plugins/HLTmumutkVtxProducer.h +++ b/HLTrigger/btau/plugins/HLTmumutkVtxProducer.h @@ -1,7 +1,7 @@ -#ifndef HLTmumutkVtxProducer_h -#define HLTmumutkVtxProducer_h +#ifndef HLTrigger_btau_HLTmumutkVtxProducer_h +#define HLTrigger_btau_HLTmumutkVtxProducer_h // -// Package: HLTstaging +// Package: HLTrigger/btau // Class: HLTmumutkVtxProducer // /**\class HLTmumutkVtxProducer @@ -12,8 +12,8 @@ */ -// system include files #include +#include #include "FWCore/Framework/interface/stream/EDProducer.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" @@ -28,7 +28,6 @@ #include "TrackingTools/TransientTrack/interface/TransientTrackBuilder.h" #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h" #include "MagneticField/Engine/interface/MagneticField.h" -#include namespace edm { class ConfigurationDescriptions; @@ -47,8 +46,10 @@ class MagneticField; class HLTmumutkVtxProducer : public edm::stream::EDProducer<> { public: explicit HLTmumutkVtxProducer(const edm::ParameterSet&); - ~HLTmumutkVtxProducer() override; + ~HLTmumutkVtxProducer() override = default; + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + void produce(edm::Event&, const edm::EventSetup&) override; private: @@ -74,9 +75,10 @@ class HLTmumutkVtxProducer : public edm::stream::EDProducer<> { const double minInvMass_; const double maxInvMass_; const double minD0Significance_; - const double overlapDR_; + const double overlapDR2_; const edm::InputTag beamSpotTag_; const edm::EDGetTokenT beamSpotToken_; }; + #endif diff --git a/HLTrigger/btau/plugins/HLTmumutktkVtxProducer.cc b/HLTrigger/btau/plugins/HLTmumutktkVtxProducer.cc index 0caf95649a1f9..33e4faeada6e9 100644 --- a/HLTrigger/btau/plugins/HLTmumutktkVtxProducer.cc +++ b/HLTrigger/btau/plugins/HLTmumutktkVtxProducer.cc @@ -23,7 +23,6 @@ using namespace reco; using namespace std; using namespace trigger; -// ---------------------------------------------------------------------- HLTmumutktkVtxProducer::HLTmumutktkVtxProducer(const edm::ParameterSet& iConfig) : transientTrackRecordToken_(esConsumes(edm::ESInputTag("", "TransientTrackBuilder"))), muCandTag_(iConfig.getParameter("MuCand")), @@ -44,15 +43,13 @@ HLTmumutktkVtxProducer::HLTmumutktkVtxProducer(const edm::ParameterSet& iConfig) maxTrkTrkMass_(iConfig.getParameter("MaxTrkTrkMass")), minD0Significance_(iConfig.getParameter("MinD0Significance")), oppositeSign_(iConfig.getParameter("OppositeSign")), - overlapDR_(iConfig.getParameter("OverlapDR")), + // minimum delta-R^2 threshold (with sign) for non-overlapping tracks + overlapDR2_(iConfig.getParameter("OverlapDR") * std::abs(iConfig.getParameter("OverlapDR"))), beamSpotTag_(iConfig.getParameter("BeamSpotTag")), beamSpotToken_(consumes(beamSpotTag_)) { produces(); } -// ---------------------------------------------------------------------- -HLTmumutktkVtxProducer::~HLTmumutktkVtxProducer() = default; - void HLTmumutktkVtxProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; desc.add("MuCand", edm::InputTag("hltMuTracks")); @@ -74,7 +71,6 @@ void HLTmumutktkVtxProducer::fillDescriptions(edm::ConfigurationDescriptions& de descriptions.add("HLTmumutktkVtxProducer", desc); } -// ---------------------------------------------------------------------- void HLTmumutktkVtxProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { const double MuMass(0.106); const double MuMass2(MuMass * MuMass); @@ -278,9 +274,7 @@ FreeTrajectoryState HLTmumutktkVtxProducer::initialFreeState(const reco::Track& } bool HLTmumutktkVtxProducer::overlap(const TrackRef& trackref1, const TrackRef& trackref2) { - if (deltaR(trackref1->eta(), trackref1->phi(), trackref2->eta(), trackref2->phi()) < overlapDR_) - return true; - return false; + return (reco::deltaR2(trackref1->eta(), trackref1->phi(), trackref2->eta(), trackref2->phi()) < overlapDR2_); } bool HLTmumutktkVtxProducer::checkPreviousCand(const TrackRef& trackref, diff --git a/HLTrigger/btau/plugins/HLTmumutktkVtxProducer.h b/HLTrigger/btau/plugins/HLTmumutktkVtxProducer.h index f0fe3a1dee872..53efcd85a40b0 100644 --- a/HLTrigger/btau/plugins/HLTmumutktkVtxProducer.h +++ b/HLTrigger/btau/plugins/HLTmumutktkVtxProducer.h @@ -1,12 +1,15 @@ -#ifndef HLTmumutktkVtxProducer_h -#define HLTmumutktkVtxProducer_h +#ifndef HLTrigger_btau_HLTmumutktkVtxProducer_h +#define HLTrigger_btau_HLTmumutktkVtxProducer_h // -// Package: HLTstaging +// Package: HLTrigger/btau // Class: HLTmumutktkVtxProducer // /**\class HLTmumutktkVtxProducer */ +#include +#include + #include "FWCore/Framework/interface/stream/EDProducer.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/Framework/interface/Event.h" @@ -21,8 +24,6 @@ #include "TrackingTools/TransientTrack/interface/TransientTrackBuilder.h" #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h" #include "MagneticField/Engine/interface/MagneticField.h" -#include -#include namespace edm { class ConfigurationDescriptions; @@ -41,8 +42,10 @@ class MagneticField; class HLTmumutktkVtxProducer : public edm::stream::EDProducer<> { public: explicit HLTmumutktkVtxProducer(const edm::ParameterSet&); - ~HLTmumutktkVtxProducer() override; + ~HLTmumutktkVtxProducer() override = default; + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + void produce(edm::Event&, const edm::EventSetup&) override; private: @@ -72,8 +75,9 @@ class HLTmumutktkVtxProducer : public edm::stream::EDProducer<> { const double maxTrkTrkMass_; const double minD0Significance_; const bool oppositeSign_; - const double overlapDR_; + const double overlapDR2_; const edm::InputTag beamSpotTag_; const edm::EDGetTokenT beamSpotToken_; }; + #endif diff --git a/HLTrigger/special/plugins/BuildFile.xml b/HLTrigger/special/plugins/BuildFile.xml index 3ccd205655847..6543d439c0431 100644 --- a/HLTrigger/special/plugins/BuildFile.xml +++ b/HLTrigger/special/plugins/BuildFile.xml @@ -38,6 +38,7 @@ + diff --git a/HLTrigger/special/plugins/HLTEcalResonanceFilter.cc b/HLTrigger/special/plugins/HLTEcalResonanceFilter.cc index cf95b3c96bd53..cd988996f93cd 100644 --- a/HLTrigger/special/plugins/HLTEcalResonanceFilter.cc +++ b/HLTrigger/special/plugins/HLTEcalResonanceFilter.cc @@ -1,7 +1,12 @@ -#include "HLTEcalResonanceFilter.h" +#include + +#include "DataFormats/Math/interface/deltaPhi.h" #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/ParameterSet/interface/ParameterSetDescription.h" -#include "TLorentzVector.h" +#include "HLTEcalResonanceFilter.h" + +#include using namespace std; using namespace edm; @@ -39,7 +44,10 @@ HLTEcalResonanceFilter::HLTEcalResonanceFilter(const edm::ParameterSet &iConfig) } seleIso_ = barrelSelection.getParameter("seleIso"); ptMinForIsolation_ = barrelSelection.getParameter("ptMinForIsolation"); - seleBeltDR_ = barrelSelection.getParameter("seleBeltDR"); + + auto const seleBeltDR = barrelSelection.getParameter("seleBeltDR"); + seleBeltDR2_ = seleBeltDR * std::abs(seleBeltDR); + seleBeltDeta_ = barrelSelection.getParameter("seleBeltDeta"); store5x5RecHitEB_ = barrelSelection.getParameter("store5x5RecHitEB"); @@ -71,7 +79,10 @@ HLTEcalResonanceFilter::HLTEcalResonanceFilter(const edm::ParameterSet &iConfig) seleS4S9GammaEndCap_ = endcapSelection.getParameter("seleS4S9GammaEndCap"); seleS9S25GammaEndCap_ = endcapSelection.getParameter("seleS9S25GammaEndCap"); ptMinForIsolationEndCap_ = endcapSelection.getParameter("ptMinForIsolationEndCap"); - seleBeltDREndCap_ = endcapSelection.getParameter("seleBeltDREndCap"); + + auto const seleBeltDREndCap = endcapSelection.getParameter("seleBeltDREndCap"); + seleBeltDR2EndCap_ = seleBeltDREndCap * std::abs(seleBeltDREndCap); + seleBeltDetaEndCap_ = endcapSelection.getParameter("seleBeltDetaEndCap"); seleIsoEndCap_ = endcapSelection.getParameter("seleIsoEndCap"); @@ -500,7 +511,7 @@ void HLTEcalResonanceFilter::doSelection( double m_maxCut = seleMinvMaxBarrel_; double ptminforIso = ptMinForIsolation_; double isoCut = seleIso_; - double isoBeltdrCut = seleBeltDR_; + double isoBeltdr2Cut = seleBeltDR2_; double isoBeltdetaCut = seleBeltDeta_; double s4s9Cut = seleS4S9Gamma_; double s9s25Cut = seleS9S25Gamma_; @@ -511,7 +522,7 @@ void HLTEcalResonanceFilter::doSelection( m_maxCut = seleMinvMaxEndCap_; ptminforIso = ptMinForIsolationEndCap_; isoCut = seleIsoEndCap_; - isoBeltdrCut = seleBeltDREndCap_; + isoBeltdr2Cut = seleBeltDR2EndCap_; isoBeltdetaCut = seleBeltDetaEndCap_; s4s9Cut = seleS4S9GammaEndCap_; s9s25Cut = seleS9S25GammaEndCap_; @@ -597,9 +608,12 @@ void HLTEcalResonanceFilter::doSelection( for (auto it_bc3 = clusterCollection->begin(); it_bc3 != clusterCollection->end(); it_bc3++) { if (it_bc3->seed() == it_bc->seed() || it_bc3->seed() == it_bc2->seed()) continue; - float drcl = GetDeltaR(eta_pair, it_bc3->eta(), phi_pair, it_bc3->phi()); - float dretacl = fabs(eta_pair - it_bc3->eta()); - if (drcl > isoBeltdrCut || dretacl > isoBeltdetaCut) + float dretacl = std::abs(eta_pair - it_bc3->eta()); + if (dretacl > isoBeltdetaCut) + continue; + float drphicl = reco::deltaPhi(phi_pair, it_bc3->phi()); + float drcl2 = dretacl * dretacl + drphicl * drphicl; + if (drcl2 > isoBeltdr2Cut) continue; float pt3 = it_bc3->energy() * sin(it_bc3->position().theta()); if (pt3 < ptminforIso) @@ -874,21 +888,6 @@ bool HLTEcalResonanceFilter::checkStatusOfEcalRecHit(const EcalChannelStatus &ch return true; } -float HLTEcalResonanceFilter::DeltaPhi(float phi1, float phi2) { - float diff = fabs(phi2 - phi1); - - while (diff > acos(-1)) - diff -= 2 * acos(-1); - while (diff <= -acos(-1)) - diff += 2 * acos(-1); - - return diff; -} - -float HLTEcalResonanceFilter::GetDeltaR(float eta1, float eta2, float phi1, float phi2) { - return sqrt((eta1 - eta2) * (eta1 - eta2) + DeltaPhi(phi1, phi2) * DeltaPhi(phi1, phi2)); -} - void HLTEcalResonanceFilter::makeClusterES( float x, float y, float z, const CaloSubdetectorGeometry *geometry_es, const CaloSubdetectorTopology *topology_es) { ///get assosicated ES clusters of this endcap cluster diff --git a/HLTrigger/special/plugins/HLTEcalResonanceFilter.h b/HLTrigger/special/plugins/HLTEcalResonanceFilter.h index 75214b57e09a8..fea227cca388a 100644 --- a/HLTrigger/special/plugins/HLTEcalResonanceFilter.h +++ b/HLTrigger/special/plugins/HLTEcalResonanceFilter.h @@ -109,9 +109,6 @@ class HLTEcalResonanceFilter : public edm::stream::EDFilter<> { int diff_neta_s(int, int); int diff_nphi_s(int, int); - static float DeltaPhi(float phi1, float phi2); - static float GetDeltaR(float eta1, float eta2, float phi1, float phi2); - edm::ESGetToken const caloTopologyRecordToken_; edm::ESGetToken const ecalChannelStatusRcdToken_; edm::ESGetToken const caloGeometryRecordToken_; @@ -141,7 +138,7 @@ class HLTEcalResonanceFilter : public edm::stream::EDFilter<> { double seleMinvMinBarrel_; double seleS4S9Gamma_; double seleS9S25Gamma_; - double seleBeltDR_; + double seleBeltDR2_; double seleBeltDeta_; double seleIso_; double ptMinForIsolation_; @@ -166,7 +163,7 @@ class HLTEcalResonanceFilter : public edm::stream::EDFilter<> { double seleS4S9GammaEndCap_; double seleS9S25GammaEndCap_; double seleIsoEndCap_; - double seleBeltDREndCap_; + double seleBeltDR2EndCap_; double seleBeltDetaEndCap_; double ptMinForIsolationEndCap_; bool store5x5RecHitEE_; diff --git a/HLTrigger/special/plugins/HLTHcalNoiseFilter.cc b/HLTrigger/special/plugins/HLTHcalNoiseFilter.cc index a0ecf889e0d02..61ce62a60ea68 100644 --- a/HLTrigger/special/plugins/HLTHcalNoiseFilter.cc +++ b/HLTrigger/special/plugins/HLTHcalNoiseFilter.cc @@ -85,8 +85,8 @@ bool HLTHcalNoiseFilter::hltFilter(edm::Event& iEvent, JetContainer.push_back(calojetIter); double maxTowerE = 0.0; for (auto const& kal : *towerHandle) { - double dR = deltaR(calojetIter.eta(), calojetIter.phi(), kal.eta(), kal.phi()); - if ((dR < 0.50) and (kal.p() > maxTowerE)) { + double const dR2 = reco::deltaR2(calojetIter.eta(), calojetIter.phi(), kal.eta(), kal.phi()); + if (dR2 < 0.25 and kal.p() > maxTowerE) { maxTowerE = kal.p(); seedTower = kal; } From 7ee17d0e60fdbeb0ba7d8c23a184eab9b7f2eede Mon Sep 17 00:00:00 2001 From: Marino Missiroli Date: Tue, 2 Jan 2024 15:56:04 +0100 Subject: [PATCH 177/281] add CMS_SA_ALLOW to edm::ParameterSet::exists{,As} calls in HLTConfig{Data,Provider} --- HLTrigger/HLTcore/BuildFile.xml | 1 + .../plugins/TriggerSummaryProducerAOD.cc | 6 +- HLTrigger/HLTcore/src/HLTConfigData.cc | 57 ++++++++++--------- HLTrigger/HLTcore/src/HLTConfigProvider.cc | 43 +++++++------- 4 files changed, 52 insertions(+), 55 deletions(-) diff --git a/HLTrigger/HLTcore/BuildFile.xml b/HLTrigger/HLTcore/BuildFile.xml index 5acb169764e24..b9c1c7efa9574 100644 --- a/HLTrigger/HLTcore/BuildFile.xml +++ b/HLTrigger/HLTcore/BuildFile.xml @@ -6,6 +6,7 @@ + diff --git a/HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc b/HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc index 1a3367ad08a58..12a3e260be241 100644 --- a/HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc +++ b/HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc @@ -297,15 +297,13 @@ void TriggerSummaryProducerAOD::produce(edm::StreamID, edm::Event& iEvent, const /// debug printout if (isDebugEnabled()) { /// event-by-event tags - const unsigned int nc(collectionTagsEvent.size()); - LogTrace("TriggerSummaryProducerAOD") << "Number of unique collections requested " << nc; + LogTrace("TriggerSummaryProducerAOD") << "Number of unique collections requested " << collectionTagsEvent.size(); const InputTagSet::const_iterator cb(collectionTagsEvent.begin()); const InputTagSet::const_iterator ce(collectionTagsEvent.end()); for (InputTagSet::const_iterator ci = cb; ci != ce; ++ci) { LogTrace("TriggerSummaryProducerAOD") << distance(cb, ci) << " " << ci->encode(); } - const unsigned int nf(filterTagsEvent.size()); - LogTrace("TriggerSummaryProducerAOD") << "Number of unique filters requested " << nf; + LogTrace("TriggerSummaryProducerAOD") << "Number of unique filters requested " << filterTagsEvent.size(); const InputTagSet::const_iterator fb(filterTagsEvent.begin()); const InputTagSet::const_iterator fe(filterTagsEvent.end()); for (InputTagSet::const_iterator fi = fb; fi != fe; ++fi) { diff --git a/HLTrigger/HLTcore/src/HLTConfigData.cc b/HLTrigger/HLTcore/src/HLTConfigData.cc index 81cd648bafbb7..9ee9c6afa9dbd 100644 --- a/HLTrigger/HLTcore/src/HLTConfigData.cc +++ b/HLTrigger/HLTcore/src/HLTConfigData.cc @@ -10,6 +10,7 @@ #include "HLTrigger/HLTcore/interface/HLTConfigData.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/Utilities/interface/path_configuration.h" +#include "FWCore/Utilities/interface/thread_safety_macros.h" #include "FWCore/Utilities/interface/transform.h" #include @@ -88,34 +89,33 @@ void HLTConfigData::extract() { using namespace trigger; // Extract process name - if (processPSet_->existsAs("@process_name", true)) { + CMS_SA_ALLOW if (processPSet_->existsAs("@process_name", true)) { processName_ = processPSet_->getParameter("@process_name"); } // Extract globaltag globalTag_ = ""; const ParameterSet* GlobalTagPSet(nullptr); - if (processPSet_->exists("GlobalTag")) { - GlobalTagPSet = &(processPSet_->getParameterSet("GlobalTag")); - } else if (processPSet_->exists("PoolDBESSource@GlobalTag")) { + CMS_SA_ALLOW if (processPSet_->exists("GlobalTag")) { GlobalTagPSet = &(processPSet_->getParameterSet("GlobalTag")); } + else if (processPSet_->exists("PoolDBESSource@GlobalTag")) { GlobalTagPSet = &(processPSet_->getParameterSet("PoolDBESSource@GlobalTag")); } - if (GlobalTagPSet && GlobalTagPSet->existsAs("globaltag", true)) { + CMS_SA_ALLOW if (GlobalTagPSet && GlobalTagPSet->existsAs("globaltag", true)) { globalTag_ = GlobalTagPSet->getParameter("globaltag"); } // Obtain PSet containing table name (available only in 2_1_10++ files) - if (processPSet_->existsAs("HLTConfigVersion", true)) { + CMS_SA_ALLOW if (processPSet_->existsAs("HLTConfigVersion", true)) { const ParameterSet& HLTPSet(processPSet_->getParameterSet("HLTConfigVersion")); - if (HLTPSet.existsAs("tableName", true)) { + CMS_SA_ALLOW if (HLTPSet.existsAs("tableName", true)) { tableName_ = HLTPSet.getParameter("tableName"); } } // Extract trigger paths (= paths - end_paths) - if (processPSet_->existsAs("@trigger_paths", true)) { + CMS_SA_ALLOW if (processPSet_->existsAs("@trigger_paths", true)) { const ParameterSet& HLTPSet(processPSet_->getParameterSet("@trigger_paths")); - if (HLTPSet.existsAs>("@trigger_paths", true)) { + CMS_SA_ALLOW if (HLTPSet.existsAs>("@trigger_paths", true)) { triggerNames_ = HLTPSet.getParameter>("@trigger_paths"); } } @@ -124,7 +124,7 @@ void HLTConfigData::extract() { const unsigned int n(size()); moduleLabels_.reserve(n); for (unsigned int i = 0; i != n; ++i) { - if (processPSet_->existsAs>(triggerNames_[i], true)) { + CMS_SA_ALLOW if (processPSet_->existsAs>(triggerNames_[i], true)) { moduleLabels_.push_back(path_configuration::configurationToModuleBitPosition( processPSet_->getParameter>(triggerNames_[i]))); } @@ -203,7 +203,7 @@ void HLTConfigData::extract() { } // Extract and fill streams information - if (processPSet_->existsAs("streams", true)) { + CMS_SA_ALLOW if (processPSet_->existsAs("streams", true)) { const ParameterSet& streams(processPSet_->getParameterSet("streams")); streamNames_ = streams.getParameterNamesForType>(); sort(streamNames_.begin(), streamNames_.end()); @@ -217,7 +217,7 @@ void HLTConfigData::extract() { } // Extract and fill datasets information - if (processPSet_->existsAs("datasets", true)) { + CMS_SA_ALLOW if (processPSet_->existsAs("datasets", true)) { const ParameterSet& datasets(processPSet_->getParameterSet("datasets")); datasetNames_ = datasets.getParameterNamesForType>(); sort(datasetNames_.begin(), datasetNames_.end()); @@ -236,9 +236,8 @@ void HLTConfigData::extract() { string prescaleName(""); const string preS("PrescaleService"); const string preT("PrescaleTable"); - if (processPSet_->existsAs(preS, true)) { - prescaleName = preS; - } else if (processPSet_->existsAs(preT, true)) { + CMS_SA_ALLOW if (processPSet_->existsAs(preS, true)) { prescaleName = preS; } + else if (processPSet_->existsAs(preT, true)) { prescaleName = preT; } if (prescaleName.empty()) { @@ -246,11 +245,11 @@ void HLTConfigData::extract() { } else { const ParameterSet& iPS(processPSet_->getParameterSet(prescaleName)); string defaultLabel("default"); - if (iPS.existsAs("lvl1DefaultLabel", true)) { + CMS_SA_ALLOW if (iPS.existsAs("lvl1DefaultLabel", true)) { defaultLabel = iPS.getParameter("lvl1DefaultLabel"); } vector labels; - if (iPS.existsAs>("lvl1Labels", true)) { + CMS_SA_ALLOW if (iPS.existsAs>("lvl1Labels", true)) { labels = iPS.getParameter>("lvl1Labels"); } unsigned int set(0); @@ -260,7 +259,7 @@ void HLTConfigData::extract() { set = i; } map> table; - if (iPS.existsAs>("prescaleTable", true)) { + CMS_SA_ALLOW if (iPS.existsAs>("prescaleTable", true)) { const vector& vpTable(iPS.getParameterSetVector("prescaleTable")); const unsigned int m(vpTable.size()); for (unsigned int i = 0; i != m; ++i) { @@ -286,7 +285,7 @@ void HLTConfigData::extract() { // Determine L1T Type (0=unknown, 1=legacy/stage-1 or 2=stage-2) l1tType_ = 0; unsigned int stage1(0), stage2(0); - if (processPSet_->existsAs>("@all_modules")) { + CMS_SA_ALLOW if (processPSet_->existsAs>("@all_modules")) { const std::vector& allModules(processPSet_->getParameter>("@all_modules")); for (auto const& allModule : allModules) { if ((moduleType(allModule) == "HLTLevel1GTSeed") or (moduleType(allModule) == "L1GlobalTrigger")) { @@ -492,18 +491,20 @@ unsigned int HLTConfigData::moduleIndex(const std::string& trigger, const std::s const std::string HLTConfigData::moduleType(const std::string& module) const { const edm::ParameterSet& pset(modulePSet(module)); - if (pset.existsAs("@module_type", true)) { + CMS_SA_ALLOW if (pset.existsAs("@module_type", true)) { return pset.getParameter("@module_type"); - } else { + } + else { return ""; } } const std::string HLTConfigData::moduleEDMType(const std::string& module) const { const edm::ParameterSet& pset(modulePSet(module)); - if (pset.existsAs("@module_edm_type", true)) { + CMS_SA_ALLOW if (pset.existsAs("@module_edm_type", true)) { return pset.getParameter("@module_edm_type"); - } else { + } + else { return ""; } } @@ -515,18 +516,18 @@ const edm::ParameterSet& HLTConfigData::modulePSet(const std::string& module) co //but in the PSet, the module is named "modname" //so if it starts with "-", you need to remove the "-" from the //module name to be able to retreive it from the PSet - if (processPSet_->exists(module.front() != '-' ? module : module.substr(1))) { + CMS_SA_ALLOW if (processPSet_->exists(module.front() != '-' ? module : module.substr(1))) { return processPSet_->getParameterSet(module.front() != '-' ? module : module.substr(1)); - } else { + } + else { return *s_dummyPSet(); } } bool HLTConfigData::saveTags(const std::string& module) const { const edm::ParameterSet& pset(modulePSet(module)); - if (pset.existsAs("saveTags", true)) { - return pset.getParameter("saveTags"); - } else { + CMS_SA_ALLOW if (pset.existsAs("saveTags", true)) { return pset.getParameter("saveTags"); } + else { return false; } } diff --git a/HLTrigger/HLTcore/src/HLTConfigProvider.cc b/HLTrigger/HLTcore/src/HLTConfigProvider.cc index 202efb42fd819..891a0bd62d5e4 100644 --- a/HLTrigger/HLTcore/src/HLTConfigProvider.cc +++ b/HLTrigger/HLTcore/src/HLTConfigProvider.cc @@ -11,6 +11,7 @@ #include "HLTrigger/HLTcore/interface/HLTConfigDataRegistry.h" #include "FWCore/Utilities/interface/RegexMatch.h" #include "FWCore/Utilities/interface/ThreadSafeRegistry.h" +#include "FWCore/Utilities/interface/thread_safety_macros.h" #include "FWCore/ParameterSet/interface/Registry.h" #include "FWCore/Framework/interface/Run.h" #include "FWCore/Framework/interface/Event.h" @@ -37,10 +38,7 @@ bool HLTConfigProvider::init(const edm::Run& iRun, const edm::EventSetup& iSetup, const std::string& processName, bool& changed) { - using namespace std; - using namespace edm; - - LogInfo("HLTConfigProvider") << "Called (R) with processName '" << processName << "' for " << iRun.id() << endl; + edm::LogInfo("HLTConfigProvider") << "Called (R) with processName '" << processName << "' for " << iRun.id(); init(iRun.processHistory(), processName); @@ -50,7 +48,6 @@ bool HLTConfigProvider::init(const edm::Run& iRun, } void HLTConfigProvider::init(const edm::ProcessHistory& iHistory, const std::string& processName) { - using namespace std; using namespace edm; const ProcessHistory::const_iterator hb(iHistory.begin()); @@ -60,22 +57,23 @@ void HLTConfigProvider::init(const edm::ProcessHistory& iHistory, const std::str const edm::ParameterSet* processPSet(nullptr); processName_ = processName; + if (processName_ == "*") { // auto-discovery of process name for (ProcessHistory::const_iterator hi = hb; hi != he; ++hi) { if (iHistory.getConfigurationForProcess(hi->processName(), processConfiguration)) { processPSet = edm::pset::Registry::instance()->getMapped(processConfiguration.parameterSetID()); - if ((processPSet != nullptr) && (processPSet->exists("hltTriggerSummaryAOD"))) { + CMS_SA_ALLOW if ((processPSet != nullptr) && (processPSet->exists("hltTriggerSummaryAOD"))) { processName_ = hi->processName(); } } } if (processName_ == "*") { - LogError("HLTConfigProvider") << "Auto-discovery of processName failed!" << endl; + LogError("HLTConfigProvider") << "Auto-discovery of processName failed!"; clear(); return; } else { - LogInfo("HLTConfigProvider") << "Auto-discovered processName: '" << processName_ << "'" << endl; + LogInfo("HLTConfigProvider") << "Auto-discovered processName: '" << processName_ << "'"; } } if (processName_ == "@currentProcess") { @@ -90,7 +88,7 @@ void HLTConfigProvider::init(const edm::ProcessHistory& iHistory, const std::str } } if (n > 1) { - LogError("HLTConfigProvider") << " ProcessName '" << processName_ << " found " << n << " times in history!" << endl; + LogError("HLTConfigProvider") << " ProcessName '" << processName_ << " found " << n << " times in history!"; clear(); return; } @@ -151,13 +149,12 @@ void HLTConfigProvider::getDataFrom(const edm::ParameterSetID& iID) { } void HLTConfigProvider::init(const std::string& processName) { - using namespace std; using namespace edm; // Obtain ParameterSetID for requested process (with name // processName) from pset registry - string pNames(""); - string hNames(""); + std::string pNames(""); + std::string hNames(""); const ParameterSet* pset = nullptr; ParameterSetID psetID; unsigned int nPSets(0); @@ -165,8 +162,9 @@ void HLTConfigProvider::init(const std::string& processName) { const edm::pset::Registry::const_iterator rb(registry_->begin()); const edm::pset::Registry::const_iterator re(registry_->end()); for (edm::pset::Registry::const_iterator i = rb; i != re; ++i) { - if (i->second.existsAs("@process_name", true) and i->second.existsAs>("@paths", true)) { - const std::string pName(i->second.getParameter("@process_name")); + CMS_SA_ALLOW if (i->second.existsAs("@process_name", true) and + i->second.existsAs>("@paths", true)) { + const std::string pName(i->second.getParameter("@process_name")); pNames += pName + " "; if (pName == processName) { psetID = i->first; @@ -174,10 +172,10 @@ void HLTConfigProvider::init(const std::string& processName) { if ((hltConfigData_ != s_dummyHLTConfigData()) && (hltConfigData_->id() == psetID)) { hNames += tableName(); } else if (nullptr != (pset = registry_->getMapped(psetID))) { - if (pset->exists("HLTConfigVersion")) { + CMS_SA_ALLOW if (pset->exists("HLTConfigVersion")) { const ParameterSet& HLTPSet(pset->getParameterSet("HLTConfigVersion")); - if (HLTPSet.exists("tableName")) { - hNames += HLTPSet.getParameter("tableName") + " "; + CMS_SA_ALLOW if (HLTPSet.exists("tableName")) { + hNames += HLTPSet.getParameter("tableName") + " "; } } } @@ -185,23 +183,22 @@ void HLTConfigProvider::init(const std::string& processName) { } } - LogVerbatim("HLTConfigProvider") << "Unordered list of all process names found: " << pNames << "." << endl; + LogVerbatim("HLTConfigProvider") << "Unordered list of all process names found: " << pNames << "."; - LogVerbatim("HLTConfigProvider") << "HLT TableName of each selected process: " << hNames << "." << endl; + LogVerbatim("HLTConfigProvider") << "HLT TableName of each selected process: " << hNames << "."; if (nPSets == 0) { - LogError("HLTConfigProvider") << " Process name '" << processName << "' not found in registry!" << endl; + LogError("HLTConfigProvider") << " Process name '" << processName << "' not found in registry!"; clear(); return; } if (psetID == ParameterSetID()) { - LogError("HLTConfigProvider") << " Process name '" << processName << "' found but ParameterSetID invalid!" << endl; + LogError("HLTConfigProvider") << " Process name '" << processName << "' found but ParameterSetID invalid!"; clear(); return; } if (nPSets > 1) { - LogError("HLTConfigProvider") << " Process name '" << processName << " found " << nPSets << " times in registry!" - << endl; + LogError("HLTConfigProvider") << " Process name '" << processName << " found " << nPSets << " times in registry!"; clear(); return; } From fe39de4e18c244d36f1e3b5ef402bfd42f5aeca9 Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Fri, 27 Oct 2023 15:55:18 -0500 Subject: [PATCH 178/281] Clean up some unnecessary transition function comments in Alignment --- .../plugins/MillePedeAlignmentAlgorithm.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/Alignment/MillePedeAlignmentAlgorithm/plugins/MillePedeAlignmentAlgorithm.h b/Alignment/MillePedeAlignmentAlgorithm/plugins/MillePedeAlignmentAlgorithm.h index 62f3d5f396cb4..ce701bf645098 100644 --- a/Alignment/MillePedeAlignmentAlgorithm/plugins/MillePedeAlignmentAlgorithm.h +++ b/Alignment/MillePedeAlignmentAlgorithm/plugins/MillePedeAlignmentAlgorithm.h @@ -116,9 +116,6 @@ class MillePedeAlignmentAlgorithm : public AlignmentAlgorithmBase { /// called at end of luminosity block void endLuminosityBlock(const edm::EventSetup &) override; - /* virtual void beginLuminosityBlock(const edm::EventSetup &setup) {} */ - /* virtual void endLuminosityBlock(const edm::EventSetup &setup) {} */ - /// Called in order to pass parameters to alignables for a specific run /// range in case the algorithm supports run range dependent alignment. bool setParametersForRunRange(const RunRange &runrange) override; From 8530249409b619c702ae7d92aee397738680900d Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Fri, 27 Oct 2023 15:55:36 -0500 Subject: [PATCH 179/281] Clean up some unnecessary transition function calls/comments in CommonTools --- .../RecoAlgos/plugins/BooleanFlagFilter.cc | 60 ------------------- 1 file changed, 60 deletions(-) diff --git a/CommonTools/RecoAlgos/plugins/BooleanFlagFilter.cc b/CommonTools/RecoAlgos/plugins/BooleanFlagFilter.cc index 1242df76c266b..7cae7f72190e6 100644 --- a/CommonTools/RecoAlgos/plugins/BooleanFlagFilter.cc +++ b/CommonTools/RecoAlgos/plugins/BooleanFlagFilter.cc @@ -35,17 +35,9 @@ class BooleanFlagFilter : public edm::global::EDFilter<> { public: explicit BooleanFlagFilter(const edm::ParameterSet&); - ~BooleanFlagFilter() override; private: - //virtual void beginJob() override; bool filter(edm::StreamID, edm::Event&, const edm::EventSetup&) const override; - //virtual void endJob() override; - - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; // ----------member data --------------------------- edm::EDGetTokenT inputToken_; @@ -69,11 +61,6 @@ BooleanFlagFilter::BooleanFlagFilter(const edm::ParameterSet& iConfig) { reverse_ = iConfig.getParameter("reverseDecision"); } -BooleanFlagFilter::~BooleanFlagFilter() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -96,52 +83,5 @@ bool BooleanFlagFilter::filter(edm::StreamID, edm::Event& iEvent, const edm::Eve return result; } -// ------------ method called once each job just before starting event loop ------------ -/* -void -BooleanFlagFilter::beginJob() -{ -} -*/ - -// ------------ method called once each job just after ending the event loop ------------ -/* -void -BooleanFlagFilter::endJob() { -} -*/ - -// ------------ method called when starting to processes a run ------------ -/* -void -BooleanFlagFilter::beginRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a run ------------ -/* -void -BooleanFlagFilter::endRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when starting to processes a luminosity block ------------ -/* -void -BooleanFlagFilter::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* -void -BooleanFlagFilter::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - //define this as a plug-in DEFINE_FWK_MODULE(BooleanFlagFilter); From 2628b6443b4eb6550b4aed90f95107d3e6de9e53 Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Fri, 27 Oct 2023 15:56:06 -0500 Subject: [PATCH 180/281] Clean up some unnecessary transition function calls/comments in DQM --- DQM/HLTEvF/plugins/HLTObjectMonitor.cc | 10 --------- .../plugins/HLTObjectMonitorProtonLead.cc | 8 ------- .../src/L1TOccupancyClient.cc | 8 ------- .../interface/L1ScalersClient.h | 6 ----- .../EGamma/plugins/PhotonOfflineClient.h | 7 ------ .../Trigger/interface/EgHLTOfflineClient.h | 8 ------- DQMOffline/Trigger/interface/FSQDiJetAve.h | 2 -- DQMOffline/Trigger/plugins/FSQDiJetAve.cc | 22 ------------------- 8 files changed, 71 deletions(-) diff --git a/DQM/HLTEvF/plugins/HLTObjectMonitor.cc b/DQM/HLTEvF/plugins/HLTObjectMonitor.cc index d4223fcad86cb..f05ff73a84891 100644 --- a/DQM/HLTEvF/plugins/HLTObjectMonitor.cc +++ b/DQM/HLTEvF/plugins/HLTObjectMonitor.cc @@ -84,17 +84,12 @@ class HLTObjectMonitor : public DQMEDAnalyzer { public: explicit HLTObjectMonitor(const edm::ParameterSet&); - ~HLTObjectMonitor() override; - - // static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: void analyze(const edm::Event&, const edm::EventSetup&) override; void bookHistograms(DQMStore::IBooker& i, edm::Run const&, edm::EventSetup const&) override; void dqmBeginRun(edm::Run const&, edm::EventSetup const&) override; vector plotList; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; double dxyFinder(double, double, edm::Handle, edm::Handle); double get_wall_time(void); // ----------member data --------------------------- @@ -346,11 +341,6 @@ HLTObjectMonitor::HLTObjectMonitor(const edm::ParameterSet& iConfig) csvPfJetsToken_ = consumes>(edm::InputTag("hltPFJetForBtag", "", processName_)); } -HLTObjectMonitor::~HLTObjectMonitor() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // diff --git a/DQM/HLTEvF/plugins/HLTObjectMonitorProtonLead.cc b/DQM/HLTEvF/plugins/HLTObjectMonitorProtonLead.cc index 0c37de07debd0..bb4e16b92e471 100644 --- a/DQM/HLTEvF/plugins/HLTObjectMonitorProtonLead.cc +++ b/DQM/HLTEvF/plugins/HLTObjectMonitorProtonLead.cc @@ -83,7 +83,6 @@ class HLTObjectMonitorProtonLead : public DQMEDAnalyzer { public: explicit HLTObjectMonitorProtonLead(const edm::ParameterSet&); - ~HLTObjectMonitorProtonLead() override; // static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); @@ -92,8 +91,6 @@ class HLTObjectMonitorProtonLead : public DQMEDAnalyzer { void bookHistograms(DQMStore::IBooker& i, edm::Run const&, edm::EventSetup const&) override; void dqmBeginRun(edm::Run const&, edm::EventSetup const&) override; vector plotList; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; double get_wall_time(void); // ----------member data --------------------------- @@ -327,11 +324,6 @@ HLTObjectMonitorProtonLead::HLTObjectMonitorProtonLead(const edm::ParameterSet& aodTriggerToken_ = consumes(iConfig.getParameter("triggerEvent")); } -HLTObjectMonitorProtonLead::~HLTObjectMonitorProtonLead() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // diff --git a/DQM/L1TMonitorClient/src/L1TOccupancyClient.cc b/DQM/L1TMonitorClient/src/L1TOccupancyClient.cc index 52a7a1b6a436c..9abb66db22879 100644 --- a/DQM/L1TMonitorClient/src/L1TOccupancyClient.cc +++ b/DQM/L1TMonitorClient/src/L1TOccupancyClient.cc @@ -247,14 +247,6 @@ void L1TOccupancyClient::dqmEndJob(DQMStore::IBooker& ibooker, DQMStore::IGetter delete hservice_; } -//____________________________________________________________________________ -// Function: beginLuminosityBlock -// Description: This is will be run at the begining of each luminosity block -// Inputs: -// * const LuminosityBlock& lumiSeg = Luminosity Block information -// * const EventSetup& context = Event Setup information -//____________________________________________________________________________ - //____________________________________________________________________________ // Function: endLuminosityBlock // Description: This is will be run at the end of each luminosity block diff --git a/DQM/TrigXMonitorClient/interface/L1ScalersClient.h b/DQM/TrigXMonitorClient/interface/L1ScalersClient.h index 7de0c878afa82..b6e51dd4e84f2 100644 --- a/DQM/TrigXMonitorClient/interface/L1ScalersClient.h +++ b/DQM/TrigXMonitorClient/interface/L1ScalersClient.h @@ -28,15 +28,9 @@ class L1ScalersClient /// Constructors L1ScalersClient(const edm::ParameterSet &ps); - /// Destructor - ~L1ScalersClient() override{}; - /// BeginJob void beginJob(void) override; - // /// Endjob - // void endJob(void); - /// BeginRun void beginRun(const edm::Run &run, const edm::EventSetup &c) override; diff --git a/DQMOffline/EGamma/plugins/PhotonOfflineClient.h b/DQMOffline/EGamma/plugins/PhotonOfflineClient.h index d86448b6dccde..586402cbd1699 100644 --- a/DQMOffline/EGamma/plugins/PhotonOfflineClient.h +++ b/DQMOffline/EGamma/plugins/PhotonOfflineClient.h @@ -63,15 +63,8 @@ class PhotonOfflineClient : public DQMEDHarvester { explicit PhotonOfflineClient(const edm::ParameterSet& pset); ~PhotonOfflineClient() override; - // virtual void analyze(const edm::Event&, const edm::EventSetup& ) ; - // virtual void beginJob() ; - //virtual void endJob() ; void dqmEndJob(DQMStore::IBooker&, DQMStore::IGetter&) override; - // virtual void endLuminosityBlock( const edm::LuminosityBlock& , const edm::EventSetup& ) ; - //virtual void endRun(const edm::Run& , const edm::EventSetup& ) ; - //virtual void runClient(); - virtual void runClient(DQMStore::IBooker& iBooker, DQMStore::IGetter& iGetter); MonitorElement* bookHisto( DQMStore::IBooker& iBooker, std::string histoName, std::string title, int bin, double min, double max); diff --git a/DQMOffline/Trigger/interface/EgHLTOfflineClient.h b/DQMOffline/Trigger/interface/EgHLTOfflineClient.h index 38b8b4f33703b..bc1434a297223 100644 --- a/DQMOffline/Trigger/interface/EgHLTOfflineClient.h +++ b/DQMOffline/Trigger/interface/EgHLTOfflineClient.h @@ -33,7 +33,6 @@ class EgHLTOfflineClient : public DQMEDHarvester { private: - // DQMStore* dbe_; //dbe seems to be the standard name for this, I dont know why. We of course dont own it std::string dirName_; std::vector eleHLTFilterNames_; //names of the filters monitored using electrons to make plots for @@ -71,15 +70,8 @@ class EgHLTOfflineClient : public DQMEDHarvester { explicit EgHLTOfflineClient(const edm::ParameterSet&); ~EgHLTOfflineClient() override; - // virtual void beginJob(); - // virtual void analyze(const edm::Event&, const edm::EventSetup&); //dummy - // virtual void endJob(); void beginRun(const edm::Run& run, const edm::EventSetup& c) override; - // virtual void endRun(const edm::Run& run, const edm::EventSetup& c); - - // virtual void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg,const edm::EventSetup& context){} // DQM Client Diagnostic - // virtual void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg,const edm::EventSetup& c); void dqmEndJob(DQMStore::IBooker&, DQMStore::IGetter&) override; //performed in the endJob void dqmEndLuminosityBlock(DQMStore::IBooker&, DQMStore::IGetter&, diff --git a/DQMOffline/Trigger/interface/FSQDiJetAve.h b/DQMOffline/Trigger/interface/FSQDiJetAve.h index 4a9d475dcba95..18e21545a5ea2 100644 --- a/DQMOffline/Trigger/interface/FSQDiJetAve.h +++ b/DQMOffline/Trigger/interface/FSQDiJetAve.h @@ -66,8 +66,6 @@ class FSQDiJetAve : public DQMEDAnalyzer { void bookHistograms(DQMStore::IBooker&, edm::Run const& run, edm::EventSetup const& c) override; void dqmBeginRun(edm::Run const& run, edm::EventSetup const& c) override; - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; // ----------member data --------------------------- // diff --git a/DQMOffline/Trigger/plugins/FSQDiJetAve.cc b/DQMOffline/Trigger/plugins/FSQDiJetAve.cc index 40edc9ad5df1f..7543c5d2d018f 100644 --- a/DQMOffline/Trigger/plugins/FSQDiJetAve.cc +++ b/DQMOffline/Trigger/plugins/FSQDiJetAve.cc @@ -852,28 +852,6 @@ void FSQDiJetAve::bookHistograms(DQMStore::IBooker& booker, edm::Run const& run, } } //*/ -// ------------ method called when ending the processing of a run ------------ -/* -void -FSQDiJetAve::endRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when starting to processes a luminosity block ------------ -/* -void -FSQDiJetAve::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* -void -FSQDiJetAve::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{} -// */ // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void FSQDiJetAve::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { From 6e3fe817ae880b28cd8c3790e8f17035850858bb Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Fri, 27 Oct 2023 15:56:20 -0500 Subject: [PATCH 181/281] Clean up some unnecessary transition function calls/comments in EgammaAnalysis --- .../plugins/EGammaCutBasedEleIdAnalyzer.cc | 30 +---------- .../MiniAODElectronIDValidationAnalyzer.cc | 51 ------------------- 2 files changed, 1 insertion(+), 80 deletions(-) diff --git a/EgammaAnalysis/ElectronTools/plugins/EGammaCutBasedEleIdAnalyzer.cc b/EgammaAnalysis/ElectronTools/plugins/EGammaCutBasedEleIdAnalyzer.cc index 916893465785a..4279f8ca01167 100644 --- a/EgammaAnalysis/ElectronTools/plugins/EGammaCutBasedEleIdAnalyzer.cc +++ b/EgammaAnalysis/ElectronTools/plugins/EGammaCutBasedEleIdAnalyzer.cc @@ -51,7 +51,6 @@ class EGammaCutBasedEleIdAnalyzer : public edm::one::EDAnalyzer<> { typedef std::vector > > IsoDepositVals; explicit EGammaCutBasedEleIdAnalyzer(const edm::ParameterSet &); - ~EGammaCutBasedEleIdAnalyzer() override; static void fillDescriptions(edm::ConfigurationDescriptions &descriptions); ElectronEffectiveArea::ElectronEffectiveAreaTarget EAtarget; @@ -59,14 +58,7 @@ class EGammaCutBasedEleIdAnalyzer : public edm::one::EDAnalyzer<> { private: void beginJob() override; void analyze(const edm::Event &, const edm::EventSetup &) override; - void endJob() override; - - /* - void beginRun(edm::Run const &, edm::EventSetup const &) override; - void endRun(edm::Run const &, edm::EventSetup const &) override; - void beginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; - void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; - */ + // ----------member data --------------------------- // input tags @@ -126,11 +118,6 @@ EGammaCutBasedEleIdAnalyzer::EGammaCutBasedEleIdAnalyzer(const edm::ParameterSet h1_pt_fbremeopin_ = fs->make("h1_pt_fbremeopin", "pt (fbremeopin)", 100, 0.0, 100.0); } -EGammaCutBasedEleIdAnalyzer::~EGammaCutBasedEleIdAnalyzer() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -253,21 +240,6 @@ void EGammaCutBasedEleIdAnalyzer::beginJob() { EAtarget = ElectronEffectiveArea::kEleEAData2012; } -// ------------ method called once each job just after ending the event loop ------------ -void EGammaCutBasedEleIdAnalyzer::endJob() {} -/* -// ------------ method called when starting to processes a run ------------ -void EGammaCutBasedEleIdAnalyzer::beginRun(edm::Run const &, edm::EventSetup const &) {} - -// ------------ method called when ending the processing of a run ------------ -void EGammaCutBasedEleIdAnalyzer::endRun(edm::Run const &, edm::EventSetup const &) {} - -// ------------ method called when starting to processes a luminosity block ------------ -void EGammaCutBasedEleIdAnalyzer::beginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) {} - -// ------------ method called when ending the processing of a luminosity block ------------ -void EGammaCutBasedEleIdAnalyzer::endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) {} -*/ // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void EGammaCutBasedEleIdAnalyzer::fillDescriptions(edm::ConfigurationDescriptions &descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/EgammaAnalysis/ElectronTools/test/MiniAODElectronIDValidationAnalyzer.cc b/EgammaAnalysis/ElectronTools/test/MiniAODElectronIDValidationAnalyzer.cc index 308d0f608e69e..dc3c750188dff 100644 --- a/EgammaAnalysis/ElectronTools/test/MiniAODElectronIDValidationAnalyzer.cc +++ b/EgammaAnalysis/ElectronTools/test/MiniAODElectronIDValidationAnalyzer.cc @@ -60,7 +60,6 @@ class MiniAODElectronIDValidationAnalyzer : public edm::one::EDAnalyzer { public: explicit MiniAODElectronIDValidationAnalyzer(const edm::ParameterSet &); - ~MiniAODElectronIDValidationAnalyzer() override; static void fillDescriptions(edm::ConfigurationDescriptions &descriptions); @@ -72,14 +71,7 @@ class MiniAODElectronIDValidationAnalyzer : public edm::one::EDAnalyzer> &genParticles); void findFirstNonElectronMother(const reco::Candidate *particle, int &ancestorPID, int &ancestorStatus); @@ -159,11 +151,6 @@ MiniAODElectronIDValidationAnalyzer::MiniAODElectronIDValidationAnalyzer(const e electronTree_->Branch("isPass", &isPass_, "isPass/I"); } -MiniAODElectronIDValidationAnalyzer::~MiniAODElectronIDValidationAnalyzer() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -246,44 +233,6 @@ void MiniAODElectronIDValidationAnalyzer::analyze(const edm::Event &iEvent, cons } } -// ------------ method called once each job just before starting event loop ------------ -void MiniAODElectronIDValidationAnalyzer::beginJob() {} - -// ------------ method called once each job just after ending the event loop ------------ -void MiniAODElectronIDValidationAnalyzer::endJob() {} - -// ------------ method called when starting to processes a run ------------ -/* -void -MiniAODElectronIDValidationAnalyzer::beginRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a run ------------ -/* -void -MiniAODElectronIDValidationAnalyzer::endRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when starting to processes a luminosity block ------------ -/* -void -MiniAODElectronIDValidationAnalyzer::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* -void -MiniAODElectronIDValidationAnalyzer::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void MiniAODElectronIDValidationAnalyzer::fillDescriptions(edm::ConfigurationDescriptions &descriptions) { //The following says we do not know what parameters are allowed so do no validation From 5adaab33a32e7ebdbafa2d15b8db588cd3c2cc26 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Tue, 2 Jan 2024 10:22:26 -0600 Subject: [PATCH 182/281] Modernize Phase2TrackerDigiProducer - changed to a global module - improved memory handling - avoid unnecessary recalculations --- .../plugins/Phase2TrackerDigiProducer.cc | 137 +++++++++--------- 1 file changed, 71 insertions(+), 66 deletions(-) diff --git a/EventFilter/Phase2TrackerRawToDigi/plugins/Phase2TrackerDigiProducer.cc b/EventFilter/Phase2TrackerRawToDigi/plugins/Phase2TrackerDigiProducer.cc index 2f72ea9f869f0..2608191896378 100644 --- a/EventFilter/Phase2TrackerRawToDigi/plugins/Phase2TrackerDigiProducer.cc +++ b/EventFilter/Phase2TrackerRawToDigi/plugins/Phase2TrackerDigiProducer.cc @@ -13,7 +13,7 @@ #include "EventFilter/Phase2TrackerRawToDigi/interface/Phase2TrackerFEDRawChannelUnpacker.h" #include "EventFilter/Phase2TrackerRawToDigi/interface/Phase2TrackerFEDZSChannelUnpacker.h" #include "EventFilter/Phase2TrackerRawToDigi/interface/utils.h" -#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/global/EDProducer.h" #include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/EventSetup.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" @@ -22,23 +22,19 @@ namespace Phase2Tracker { - class Phase2TrackerDigiProducer : public edm::stream::EDProducer<> { + class Phase2TrackerDigiProducer : public edm::global::EDProducer<> { public: /// constructor Phase2TrackerDigiProducer(const edm::ParameterSet& pset); /// default constructor ~Phase2TrackerDigiProducer() override = default; - void beginRun(edm::Run const&, edm::EventSetup const&) override; - void produce(edm::Event&, const edm::EventSetup&) override; + void produce(edm::StreamID, edm::Event&, const edm::EventSetup&) const override; private: const edm::ESGetToken ph2CablingESToken_; - unsigned int runNumber_; - edm::EDGetTokenT token_; - const Phase2TrackerCabling* cabling_; - uint32_t cacheId_; - DetIdCollection detids_; + const edm::EDGetTokenT token_; + const edm::EDPutTokenT> putToken_; class Registry { public: /// constructor @@ -54,8 +50,6 @@ namespace Phase2Tracker { size_t index; uint16_t length; }; - std::vector proc_work_registry_; - std::vector proc_work_digis_; }; } // namespace Phase2Tracker @@ -68,41 +62,58 @@ using namespace std; namespace Phase2Tracker { Phase2TrackerDigiProducer::Phase2TrackerDigiProducer(const edm::ParameterSet& pset) - : ph2CablingESToken_(esConsumes()), runNumber_(0), cabling_(nullptr), cacheId_(0) { - // define product - produces>("ProcessedRaw"); - token_ = consumes(pset.getParameter("ProductLabel")); - } + : ph2CablingESToken_(esConsumes()), + token_(consumes(pset.getParameter("ProductLabel"))), + putToken_(produces>("ProcessedRaw")) {} - void Phase2TrackerDigiProducer::beginRun(edm::Run const& run, edm::EventSetup const& es) { + void Phase2TrackerDigiProducer::produce(edm::StreamID, edm::Event& event, const edm::EventSetup& es) const { // fetch cabling from event setup - cabling_ = &es.getData(ph2CablingESToken_); - } - - void Phase2TrackerDigiProducer::produce(edm::Event& event, const edm::EventSetup& es) { - // empty vectors for the next event - proc_work_registry_.clear(); - proc_work_digis_.clear(); + auto const& cabling = es.getData(ph2CablingESToken_); // Retrieve FEDRawData collection edm::Handle buffers; event.getByToken(token_, buffers); + //reserve enough working memory + std::vector proc_work_registry; + std::vector proc_work_digis; + { + size_t reserve_count = 0; + size_t reserve_digis = 0; + for (size_t fedIndex = Phase2Tracker::FED_ID_MIN; fedIndex <= Phase2Tracker::CMS_FED_ID_MAX; ++fedIndex) { + const FEDRawData& fed = buffers->FEDData(fedIndex); + if (fed.size() != 0) { + // construct buffer + Phase2Tracker::Phase2TrackerFEDBuffer buffer(fed.data(), fed.size()); + int ichan = 0; + for (int ife = 0; ife < MAX_FE_PER_FED; ife++) { + for (int icbc = 0; icbc < MAX_CBC_PER_FE; icbc++) { + if (buffer.channel(ichan).length() > 0) { + ++reserve_count; + //calculation from Phase2TrackerFEDRawChannelUnpacker.h + reserve_digis += buffer.channel(ichan).length() * 8 - STRIPS_PADDING; + ++ichan; + } + } + } + } + } + proc_work_registry.reserve(2 * reserve_count); + proc_work_digis.reserve(reserve_digis); + } // Analyze strip tracker FED buffers in data - size_t fedIndex; - for (fedIndex = Phase2Tracker::FED_ID_MIN; fedIndex <= Phase2Tracker::CMS_FED_ID_MAX; ++fedIndex) { + for (size_t fedIndex = Phase2Tracker::FED_ID_MIN; fedIndex <= Phase2Tracker::CMS_FED_ID_MAX; ++fedIndex) { const FEDRawData& fed = buffers->FEDData(fedIndex); if (fed.size() != 0) { // construct buffer - Phase2Tracker::Phase2TrackerFEDBuffer* buffer = nullptr; - buffer = new Phase2Tracker::Phase2TrackerFEDBuffer(fed.data(), fed.size()); + Phase2Tracker::Phase2TrackerFEDBuffer buffer(fed.data(), fed.size()); #ifdef EDM_ML_DEBUG std::ostringstream ss; ss << " -------------------------------------------- " << endl; ss << " buffer debug ------------------------------- " << endl; ss << " -------------------------------------------- " << endl; - ss << " buffer size : " << buffer->bufferSize() << endl; + ss << " buffer size : " << buffer.bufferSize() << endl; ss << " fed id : " << fedIndex << endl; ss << " -------------------------------------------- " << endl; ss << " tracker header debug ------------------------" << endl; @@ -111,7 +122,7 @@ namespace Phase2Tracker { ss.clear(); ss.str(""); - Phase2TrackerFEDHeader tr_header = buffer->trackerHeader(); + Phase2TrackerFEDHeader tr_header = buffer.trackerHeader(); ss << " Version : " << hex << setw(2) << (int)tr_header.getDataFormatVersion() << endl; ss << " Mode : " << hex << setw(2) << tr_header.getDebugMode() << endl; ss << " Type : " << hex << setw(2) << (int)tr_header.getEventType() << endl; @@ -146,10 +157,10 @@ namespace Phase2Tracker { int ichan = 0; for (int ife = 0; ife < MAX_FE_PER_FED; ife++) { for (int icbc = 0; icbc < MAX_CBC_PER_FE; icbc++) { - const Phase2TrackerFEDChannel& channel = buffer->channel(ichan); + const Phase2TrackerFEDChannel& channel = buffer.channel(ichan); if (channel.length() > 0) { // get fedid from cabling - const Phase2TrackerModule mod = cabling_->findFedCh(std::make_pair(fedIndex, ife)); + const Phase2TrackerModule mod = cabling.findFedCh(std::make_pair(fedIndex, ife)); uint32_t detid = mod.getDetid(); #ifdef EDM_ML_DEBUG ss << dec << " id from cabling : " << detid << endl; @@ -193,46 +204,40 @@ namespace Phase2Tracker { // store beginning and end of this digis for this detid and add this registry to the list // and store data - Registry regItemTop(detid + 1, STRIPS_PER_CBC * icbc / 2, proc_work_digis_.size(), stripsTop.size()); - proc_work_registry_.push_back(regItemTop); - proc_work_digis_.insert(proc_work_digis_.end(), stripsTop.begin(), stripsTop.end()); - Registry regItemBottom( - detid + 2, STRIPS_PER_CBC * icbc / 2, proc_work_digis_.size(), stripsBottom.size()); - proc_work_registry_.push_back(regItemBottom); - proc_work_digis_.insert(proc_work_digis_.end(), stripsBottom.begin(), stripsBottom.end()); + proc_work_registry.emplace_back( + detid + 1, STRIPS_PER_CBC * icbc / 2, proc_work_digis.size(), stripsTop.size()); + proc_work_digis.insert(proc_work_digis.end(), stripsTop.begin(), stripsTop.end()); + proc_work_registry.emplace_back( + detid + 2, STRIPS_PER_CBC * icbc / 2, proc_work_digis.size(), stripsBottom.size()); + proc_work_digis.insert(proc_work_digis.end(), stripsBottom.begin(), stripsBottom.end()); } ichan++; } } // end loop on channels - // store digis in edm collections - std::sort(proc_work_registry_.begin(), proc_work_registry_.end()); - std::vector> sorted_and_merged; - - edm::DetSetVector* pr = new edm::DetSetVector(); - - std::vector::iterator it = proc_work_registry_.begin(), it2 = it + 1, end = proc_work_registry_.end(); - while (it < end) { - sorted_and_merged.push_back(edm::DetSet(it->detid)); - std::vector& digis = sorted_and_merged.back().data; - // first count how many digis we have - size_t len = it->length; - for (it2 = it + 1; (it2 != end) && (it2->detid == it->detid); ++it2) { - len += it2->length; - } - // reserve memory - digis.reserve(len); - // push them in - for (it2 = it + 0; (it2 != end) && (it2->detid == it->detid); ++it2) { - digis.insert(digis.end(), &proc_work_digis_[it2->index], &proc_work_digis_[it2->index + it2->length]); - } - it = it2; - } + } + } - edm::DetSetVector proc_raw_dsv(sorted_and_merged, true); - pr->swap(proc_raw_dsv); - event.put(std::unique_ptr>(pr), "ProcessedRaw"); - delete buffer; + // store digis in edm collections + std::sort(proc_work_registry.begin(), proc_work_registry.end()); + std::vector> sorted_and_merged; + + std::vector::iterator it = proc_work_registry.begin(), it2 = it + 1, end = proc_work_registry.end(); + while (it < end) { + sorted_and_merged.push_back(edm::DetSet(it->detid)); + std::vector& digis = sorted_and_merged.back().data; + // first count how many digis we have + size_t len = it->length; + for (it2 = it + 1; (it2 != end) && (it2->detid == it->detid); ++it2) { + len += it2->length; + } + // reserve memory + digis.reserve(len); + // push them in + for (it2 = it + 0; (it2 != end) && (it2->detid == it->detid); ++it2) { + digis.insert(digis.end(), &proc_work_digis[it2->index], &proc_work_digis[it2->index + it2->length]); } + it = it2; } + event.emplace(putToken_, sorted_and_merged, true); } } // namespace Phase2Tracker From 02604f822dfc6e08917d8ce7b34a91fc74e2086c Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Fri, 27 Oct 2023 15:57:37 -0500 Subject: [PATCH 183/281] Clean up some unnecessary transition function calls/comments in L1Trigger --- .../L1TRawToDigi/plugins/AMC13DumpToRaw.cc | 43 ---------------- .../L1TRawToDigi/plugins/L1TDigiToRaw.cc | 10 ---- .../plugins/TriggerRulePrefireVetoFilter.cc | 51 ------------------- .../plugins/L1TCaloLayer1RawToDigi.cc | 48 ----------------- .../L1TCaloLayer1/plugins/L1TCaloLayer1.cc | 28 ---------- .../plugins/L1TCaloLayer1Validator.cc | 44 ---------------- .../plugins/L1TStage2CaloAnalyzer.cc | 47 ----------------- .../plugins/L1TStage2InputPatternWriter.cc | 47 ----------------- .../plugins/L1TStage2Layer1Producer.cc | 24 --------- .../plugins/L1TStage2Layer2Producer.cc | 24 --------- .../L1TGlobal/plugins/L1TGlobalAnalyzer.cc | 47 ----------------- .../plugins/L1TUtmTriggerMenuDumper.cc | 11 +--- L1Trigger/L1TMuon/plugins/L1TBMTFConverter.cc | 22 -------- .../plugins/L1TMicroGMTInputProducer.cc | 17 ------- .../L1TMicroGMTInputProducerFromGen.cc | 23 --------- .../L1TMuon/plugins/L1TMuonCaloSumProducer.cc | 23 --------- L1Trigger/L1TMuon/plugins/L1TMuonProducer.cc | 12 ----- .../L1TMuon/plugins/L1TMuonQualityAdjuster.cc | 22 -------- .../plugins/L1TMuonEndCapTrackProducer.cc | 2 - .../plugins/L1TMuonEndCapTrackProducer.h | 8 --- 20 files changed, 1 insertion(+), 552 deletions(-) diff --git a/EventFilter/L1TRawToDigi/plugins/AMC13DumpToRaw.cc b/EventFilter/L1TRawToDigi/plugins/AMC13DumpToRaw.cc index 9bdf63222fa40..347a3fe51f14e 100644 --- a/EventFilter/L1TRawToDigi/plugins/AMC13DumpToRaw.cc +++ b/EventFilter/L1TRawToDigi/plugins/AMC13DumpToRaw.cc @@ -49,7 +49,6 @@ namespace l1t { class AMC13DumpToRaw : public edm::one::EDProducer<> { public: explicit AMC13DumpToRaw(const edm::ParameterSet&); - ~AMC13DumpToRaw() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); @@ -64,11 +63,6 @@ namespace l1t { // void formatRaw(edm::Event& iEvent, amc13::Packet& amc13, FEDRawData& fed_data); - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - // ----------member data --------------------------- std::ifstream file_; std::string filename_; @@ -106,11 +100,6 @@ namespace l1t { produces(); } - AMC13DumpToRaw::~AMC13DumpToRaw() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) - } - // // member functions // @@ -227,38 +216,6 @@ namespace l1t { // ------------ method called once each job just after ending the event loop ------------ void AMC13DumpToRaw::endJob() { file_.close(); } - // ------------ method called when starting to processes a run ------------ - /* -void -AMC13DumpToRaw::beginRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - - // ------------ method called when ending the processing of a run ------------ - /* -void -AMC13DumpToRaw::endRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - - // ------------ method called when starting to processes a luminosity block ------------ - /* -vvoid -AMC13DumpToRaw::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - - // ------------ method called when ending the processing of a luminosity block ------------ - /* -void -AMC13DumpToRaw::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void AMC13DumpToRaw::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/EventFilter/L1TRawToDigi/plugins/L1TDigiToRaw.cc b/EventFilter/L1TRawToDigi/plugins/L1TDigiToRaw.cc index 9789807862c34..46227383066cd 100644 --- a/EventFilter/L1TRawToDigi/plugins/L1TDigiToRaw.cc +++ b/EventFilter/L1TRawToDigi/plugins/L1TDigiToRaw.cc @@ -47,20 +47,12 @@ namespace l1t { class L1TDigiToRaw : public edm::stream::EDProducer<> { public: explicit L1TDigiToRaw(const edm::ParameterSet&); - ~L1TDigiToRaw() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); - using edm::stream::EDProducer<>::consumes; - private: void produce(edm::Event&, const edm::EventSetup&) override; - void beginRun(edm::Run const&, edm::EventSetup const&) override{}; - void endRun(edm::Run const&, edm::EventSetup const&) override{}; - void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override{}; - void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override{}; - // ----------member data --------------------------- int evtType_; int fedId_; @@ -95,8 +87,6 @@ namespace l1t { slinkTrailerSize_ = config.getUntrackedParameter("lenSlinkTrailer", 8); } - L1TDigiToRaw::~L1TDigiToRaw() {} - // ------------ method called to produce the data ------------ void L1TDigiToRaw::produce(edm::Event& event, const edm::EventSetup& setup) { using namespace edm; diff --git a/EventFilter/L1TRawToDigi/plugins/TriggerRulePrefireVetoFilter.cc b/EventFilter/L1TRawToDigi/plugins/TriggerRulePrefireVetoFilter.cc index 1459ae47d6e85..5a9db004ce1f9 100644 --- a/EventFilter/L1TRawToDigi/plugins/TriggerRulePrefireVetoFilter.cc +++ b/EventFilter/L1TRawToDigi/plugins/TriggerRulePrefireVetoFilter.cc @@ -39,19 +39,11 @@ class TriggerRulePrefireVetoFilter : public edm::stream::EDFilter<> { public: explicit TriggerRulePrefireVetoFilter(const edm::ParameterSet&); - ~TriggerRulePrefireVetoFilter() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void beginStream(edm::StreamID) override; bool filter(edm::Event&, const edm::EventSetup&) override; - void endStream() override; - - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; // ----------member data --------------------------- edm::EDGetTokenT tcdsRecordToken_; @@ -73,11 +65,6 @@ TriggerRulePrefireVetoFilter::TriggerRulePrefireVetoFilter(const edm::ParameterS //now do what ever initialization is needed } -TriggerRulePrefireVetoFilter::~TriggerRulePrefireVetoFilter() { - // do anything here that needs to be done at destruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -131,44 +118,6 @@ bool TriggerRulePrefireVetoFilter::filter(edm::Event& iEvent, const edm::EventSe return false; } -// ------------ method called once each stream before processing any runs, lumis or events ------------ -void TriggerRulePrefireVetoFilter::beginStream(edm::StreamID) {} - -// ------------ method called once each stream after processing all runs, lumis and events ------------ -void TriggerRulePrefireVetoFilter::endStream() {} - -// ------------ method called when starting to processes a run ------------ -/* -void -TriggerRulePrefireVetoFilter::beginRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a run ------------ -/* -void -TriggerRulePrefireVetoFilter::endRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when starting to processes a luminosity block ------------ -/* -void -TriggerRulePrefireVetoFilter::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* -void -TriggerRulePrefireVetoFilter::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void TriggerRulePrefireVetoFilter::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/EventFilter/L1TXRawToDigi/plugins/L1TCaloLayer1RawToDigi.cc b/EventFilter/L1TXRawToDigi/plugins/L1TCaloLayer1RawToDigi.cc index 75208a4f0338a..d32858cb3aba1 100644 --- a/EventFilter/L1TXRawToDigi/plugins/L1TCaloLayer1RawToDigi.cc +++ b/EventFilter/L1TXRawToDigi/plugins/L1TCaloLayer1RawToDigi.cc @@ -67,14 +67,11 @@ using namespace edm; class L1TCaloLayer1RawToDigi : public stream::EDProducer<> { public: explicit L1TCaloLayer1RawToDigi(const ParameterSet&); - ~L1TCaloLayer1RawToDigi() override; static void fillDescriptions(ConfigurationDescriptions& descriptions); private: - void beginStream(StreamID) override; void produce(Event&, const EventSetup&) override; - void endStream() override; void makeECalTPGs(uint32_t lPhi, UCTCTP7RawData& ctp7Data, std::unique_ptr& ecalTPGs); @@ -84,11 +81,6 @@ class L1TCaloLayer1RawToDigi : public stream::EDProducer<> { void makeRegions(uint32_t lPhi, UCTCTP7RawData& ctp7Data, std::unique_ptr& regions); - //virtual void beginRun(Run const&, EventSetup const&) override; - //virtual void endRun(Run const&, EventSetup const&) override; - //virtual void beginLuminosityBlock(LuminosityBlock const&, EventSetup const&) override; - //virtual void endLuminosityBlock(LuminosityBlock const&, EventSetup const&) override; - // ----------member data --------------------------- InputTag fedRawDataLabel; @@ -122,8 +114,6 @@ L1TCaloLayer1RawToDigi::L1TCaloLayer1RawToDigi(const ParameterSet& iConfig) consumes(fedRawDataLabel); } -L1TCaloLayer1RawToDigi::~L1TCaloLayer1RawToDigi() {} - // // member functions // @@ -378,44 +368,6 @@ void L1TCaloLayer1RawToDigi::makeRegions(uint32_t lPhi, } } -// ------------ method called once each stream before processing any runs, lumis or events ------------ -void L1TCaloLayer1RawToDigi::beginStream(StreamID) {} - -// ------------ method called once each stream after processing all runs, lumis and events ------------ -void L1TCaloLayer1RawToDigi::endStream() {} - -// ------------ method called when starting to processes a run ------------ -/* - void - L1TCaloLayer1RawToDigi::beginRun(Run const&, EventSetup const&) - { - } -*/ - -// ------------ method called when ending the processing of a run ------------ -/* - void - L1TCaloLayer1RawToDigi::endRun(Run const&, EventSetup const&) - { - } -*/ - -// ------------ method called when starting to processes a luminosity block ------------ -/* - void - L1TCaloLayer1RawToDigi::beginLuminosityBlock(LuminosityBlock const&, EventSetup const&) - { - } -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* - void - L1TCaloLayer1RawToDigi::endLuminosityBlock(LuminosityBlock const&, EventSetup const&) - { - } -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TCaloLayer1RawToDigi::fillDescriptions(ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TCaloLayer1/plugins/L1TCaloLayer1.cc b/L1Trigger/L1TCaloLayer1/plugins/L1TCaloLayer1.cc index 036ea962594e5..f04ab8afd3e13 100644 --- a/L1Trigger/L1TCaloLayer1/plugins/L1TCaloLayer1.cc +++ b/L1Trigger/L1TCaloLayer1/plugins/L1TCaloLayer1.cc @@ -66,10 +66,6 @@ class L1TCaloLayer1 : public edm::stream::EDProducer<> { void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - // ----------member data --------------------------- edm::EDGetTokenT ecalTPSource; @@ -348,30 +344,6 @@ void L1TCaloLayer1::beginRun(const edm::Run& iRun, const edm::EventSetup& iSetup } } -// ------------ method called when ending the processing of a run ------------ -/* - void - L1TCaloLayer1::endRun(edm::Run const&, edm::EventSetup const&) - { - } -*/ - -// ------------ method called when starting to processes a luminosity block ------------ -/* - void - L1TCaloLayer1::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) - { - } -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* - void - L1TCaloLayer1::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) - { - } -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TCaloLayer1::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //Description set to reflect default present in simCaloStage2Layer1Digis_cfi.py diff --git a/L1Trigger/L1TCaloLayer1/plugins/L1TCaloLayer1Validator.cc b/L1Trigger/L1TCaloLayer1/plugins/L1TCaloLayer1Validator.cc index 03f68391d3a59..542ba7a39d1f5 100644 --- a/L1Trigger/L1TCaloLayer1/plugins/L1TCaloLayer1Validator.cc +++ b/L1Trigger/L1TCaloLayer1/plugins/L1TCaloLayer1Validator.cc @@ -46,20 +46,13 @@ using namespace l1t; class L1TCaloLayer1Validator : public edm::one::EDAnalyzer<> { public: explicit L1TCaloLayer1Validator(const edm::ParameterSet&); - ~L1TCaloLayer1Validator() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void beginJob() override; void analyze(const edm::Event&, const edm::EventSetup&) override; void endJob() override; - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - // ----------member data --------------------------- edm::EDGetTokenT testTowerToken; @@ -144,8 +137,6 @@ L1TCaloLayer1Validator::L1TCaloLayer1Validator(const edm::ParameterSet& iConfig) ngCard[c] = nbCard[c] = zgCard[c] = zbCard[c] = 0; } -L1TCaloLayer1Validator::~L1TCaloLayer1Validator() {} - // // member functions // @@ -390,9 +381,6 @@ void L1TCaloLayer1Validator::analyze(const edm::Event& iEvent, const edm::EventS eventCount++; } -// ------------ method called once each job just before starting event loop ------------ -void L1TCaloLayer1Validator::beginJob() {} - // ------------ method called once each job just after ending the event loop ------------ void L1TCaloLayer1Validator::endJob() { if (validateTowers) @@ -420,38 +408,6 @@ void L1TCaloLayer1Validator::endJob() { } } -// ------------ method called when starting to processes a run ------------ -/* -void -L1TCaloLayer1Validator::beginRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a run ------------ -/* -void -L1TCaloLayer1Validator::endRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when starting to processes a luminosity block ------------ -/* -void -L1TCaloLayer1Validator::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* -void -L1TCaloLayer1Validator::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TCaloLayer1Validator::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TCalorimeter/plugins/L1TStage2CaloAnalyzer.cc b/L1Trigger/L1TCalorimeter/plugins/L1TStage2CaloAnalyzer.cc index 9c3d6d7558f23..4b592920b1688 100644 --- a/L1Trigger/L1TCalorimeter/plugins/L1TStage2CaloAnalyzer.cc +++ b/L1Trigger/L1TCalorimeter/plugins/L1TStage2CaloAnalyzer.cc @@ -29,19 +29,12 @@ namespace l1t { class L1TStage2CaloAnalyzer : public edm::one::EDAnalyzer { public: explicit L1TStage2CaloAnalyzer(const edm::ParameterSet&); - ~L1TStage2CaloAnalyzer() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: void beginJob() override; void analyze(const edm::Event&, const edm::EventSetup&) override; - void endJob() override; - - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; // ----------member data --------------------------- edm::EDGetToken m_towerToken; @@ -296,11 +289,6 @@ namespace l1t { typeStr_.push_back("sumasymhthf"); } - L1TStage2CaloAnalyzer::~L1TStage2CaloAnalyzer() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) - } - // // member functions // @@ -815,41 +803,6 @@ namespace l1t { hsortMP_ = fs->make("sortMP", "", 201, -100.5, 100.5); } - // ------------ method called once each job just after ending the event loop ------------ - void L1TStage2CaloAnalyzer::endJob() {} - - // ------------ method called when starting to processes a run ------------ - /* - void - L1TStage2CaloAnalyzer::beginRun(edm::Run const&, edm::EventSetup const&) - { - } - */ - - // ------------ method called when ending the processing of a run ------------ - /* - void - L1TStage2CaloAnalyzer::endRun(edm::Run const&, edm::EventSetup const&) - { - } - */ - - // ------------ method called when starting to processes a luminosity block ------------ - /* - void - L1TStage2CaloAnalyzer::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) - { - } - */ - - // ------------ method called when ending the processing of a luminosity block ------------ - /* - void - L1TStage2CaloAnalyzer::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) - { - } - */ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TStage2CaloAnalyzer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TCalorimeter/plugins/L1TStage2InputPatternWriter.cc b/L1Trigger/L1TCalorimeter/plugins/L1TStage2InputPatternWriter.cc index eeb26ca7a64aa..940cc5154e2b9 100644 --- a/L1Trigger/L1TCalorimeter/plugins/L1TStage2InputPatternWriter.cc +++ b/L1Trigger/L1TCalorimeter/plugins/L1TStage2InputPatternWriter.cc @@ -44,20 +44,13 @@ class L1TStage2InputPatternWriter : public edm::one::EDAnalyzer<> { public: explicit L1TStage2InputPatternWriter(const edm::ParameterSet&); - ~L1TStage2InputPatternWriter() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void beginJob() override; void analyze(const edm::Event&, const edm::EventSetup&) override; void endJob() override; - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - // ----------member data --------------------------- edm::EDGetToken m_towerToken; @@ -118,11 +111,6 @@ L1TStage2InputPatternWriter::L1TStage2InputPatternWriter(const edm::ParameterSet LogDebug("L1TDebug") << "Preparing for " << nLink_ << " links" << std::endl; } -L1TStage2InputPatternWriter::~L1TStage2InputPatternWriter() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -221,9 +209,6 @@ void L1TStage2InputPatternWriter::analyze(const edm::Event& iEvent, const edm::E } } -// ------------ method called once each job just before starting event loop ------------ -void L1TStage2InputPatternWriter::beginJob() {} - // ------------ method called once each job just after ending the event loop ------------ void L1TStage2InputPatternWriter::endJob() { //frames per event @@ -299,38 +284,6 @@ void L1TStage2InputPatternWriter::endJob() { } } -// ------------ method called when starting to processes a run ------------ -/* -void -L1TStage2InputPatternWriter::beginRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a run ------------ -/* -void -L1TStage2InputPatternWriter::endRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when starting to processes a luminosity block ------------ -/* -void -L1TStage2InputPatternWriter::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* -void -L1TStage2InputPatternWriter::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TStage2InputPatternWriter::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TCalorimeter/plugins/L1TStage2Layer1Producer.cc b/L1Trigger/L1TCalorimeter/plugins/L1TStage2Layer1Producer.cc index 1428e77c55e09..ddeed6650b81f 100644 --- a/L1Trigger/L1TCalorimeter/plugins/L1TStage2Layer1Producer.cc +++ b/L1Trigger/L1TCalorimeter/plugins/L1TStage2Layer1Producer.cc @@ -71,9 +71,6 @@ class L1TStage2Layer1Producer : public edm::stream::EDProducer<> { void produce(edm::Event&, const edm::EventSetup&) override; void beginRun(edm::Run const&, edm::EventSetup const&) override; - void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; // ----------member data --------------------------- @@ -355,27 +352,6 @@ void L1TStage2Layer1Producer::beginRun(edm::Run const& iRun, edm::EventSetup con } } -// ------------ method called when ending the processing of a run ------------ -void L1TStage2Layer1Producer::endRun(edm::Run const&, edm::EventSetup const&) {} - -// ------------ method called when starting to processes a luminosity block ------------ -/* -void -L1TStage2Layer1Producer::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup cons -t&) -{ -} -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* -void -L1TStage2Layer1Producer::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const& -) -{ -} -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TStage2Layer1Producer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TCalorimeter/plugins/L1TStage2Layer2Producer.cc b/L1Trigger/L1TCalorimeter/plugins/L1TStage2Layer2Producer.cc index 2d49330b96462..b13c93ef24889 100644 --- a/L1Trigger/L1TCalorimeter/plugins/L1TStage2Layer2Producer.cc +++ b/L1Trigger/L1TCalorimeter/plugins/L1TStage2Layer2Producer.cc @@ -65,9 +65,6 @@ class L1TStage2Layer2Producer : public edm::stream::EDProducer<> { void produce(edm::Event&, const edm::EventSetup&) override; void beginRun(edm::Run const&, edm::EventSetup const&) override; - void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; // ----------member data --------------------------- @@ -314,27 +311,6 @@ void L1TStage2Layer2Producer::beginRun(edm::Run const& iRun, edm::EventSetup con } } -// ------------ method called when ending the processing of a run ------------ -void L1TStage2Layer2Producer::endRun(edm::Run const&, edm::EventSetup const&) {} - -// ------------ method called when starting to processes a luminosity block ------------ -/* -void -L1TStage2Layer2Producer::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup cons -t&) -{ -} -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* -void -L1TStage2Layer2Producer::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const& -) -{ -} -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TStage2Layer2Producer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TGlobal/plugins/L1TGlobalAnalyzer.cc b/L1Trigger/L1TGlobal/plugins/L1TGlobalAnalyzer.cc index d396a6fbb358b..d4d8429528dec 100644 --- a/L1Trigger/L1TGlobal/plugins/L1TGlobalAnalyzer.cc +++ b/L1Trigger/L1TGlobal/plugins/L1TGlobalAnalyzer.cc @@ -53,19 +53,12 @@ namespace l1t { class L1TGlobalAnalyzer : public edm::one::EDAnalyzer<> { public: explicit L1TGlobalAnalyzer(const edm::ParameterSet&); - ~L1TGlobalAnalyzer() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: void beginJob() override; void analyze(const edm::Event&, const edm::EventSetup&) override; - void endJob() override; - - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; // ----------member data --------------------------- edm::EDGetToken m_gmuToken; @@ -255,11 +248,6 @@ namespace l1t { typeStr_.push_back("sum"); } - L1TGlobalAnalyzer::~L1TGlobalAnalyzer() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) - } - // // member functions // @@ -986,41 +974,6 @@ namespace l1t { dmxVGtDir_.make("hDmxVsGTSumEt_HFM1", "Dmx versus GT HFM1", 16, -0.5, 15.5, 16, -0.5, 15.5); } - // ------------ method called once each job just after ending the event loop ------------ - void L1TGlobalAnalyzer::endJob() {} - - // ------------ method called when starting to processes a run ------------ - /* -void -L1TGlobalAnalyzer::beginRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - - // ------------ method called when ending the processing of a run ------------ - /* -void -L1TGlobalAnalyzer::endRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - - // ------------ method called when starting to processes a luminosity block ------------ - /* -void -L1TGlobalAnalyzer::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - - // ------------ method called when ending the processing of a luminosity block ------------ - /* -void -L1TGlobalAnalyzer::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TGlobalAnalyzer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TGlobal/plugins/L1TUtmTriggerMenuDumper.cc b/L1Trigger/L1TGlobal/plugins/L1TUtmTriggerMenuDumper.cc index 54bb2e78a87f4..1dbf391d7e7b0 100644 --- a/L1Trigger/L1TGlobal/plugins/L1TUtmTriggerMenuDumper.cc +++ b/L1Trigger/L1TGlobal/plugins/L1TUtmTriggerMenuDumper.cc @@ -34,10 +34,9 @@ using namespace edm; using namespace std; using namespace tmeventsetup; -class L1TUtmTriggerMenuDumper : public one::EDAnalyzer { +class L1TUtmTriggerMenuDumper : public one::EDAnalyzer { public: explicit L1TUtmTriggerMenuDumper(const ParameterSet&); - ~L1TUtmTriggerMenuDumper() override; static void fillDescriptions(ConfigurationDescriptions& descriptions); @@ -48,16 +47,12 @@ class L1TUtmTriggerMenuDumper : public one::EDAnalyzer m_l1TriggerMenuToken; }; L1TUtmTriggerMenuDumper::L1TUtmTriggerMenuDumper(const ParameterSet& iConfig) : m_l1TriggerMenuToken(esConsumes()) {} -L1TUtmTriggerMenuDumper::~L1TUtmTriggerMenuDumper() {} - void L1TUtmTriggerMenuDumper::analyze(Event const& iEvent, EventSetup const& iSetup) {} void L1TUtmTriggerMenuDumper::beginJob() { cout << "INFO: L1TUtmTriggerMenuDumper module beginJob called.\n"; } @@ -187,10 +182,6 @@ void L1TUtmTriggerMenuDumper::beginRun(Run const& run, EventSetup const& iSetup) void L1TUtmTriggerMenuDumper::endRun(Run const&, EventSetup const&) {} -void L1TUtmTriggerMenuDumper::beginLuminosityBlock(LuminosityBlock const&, EventSetup const&) {} - -void L1TUtmTriggerMenuDumper::endLuminosityBlock(LuminosityBlock const&, EventSetup const&) {} - void L1TUtmTriggerMenuDumper::fillDescriptions(ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation // Please change this to state exactly what you do use, even if it is no parameters diff --git a/L1Trigger/L1TMuon/plugins/L1TBMTFConverter.cc b/L1Trigger/L1TMuon/plugins/L1TBMTFConverter.cc index b7c82cacd7700..038f9b5978adc 100644 --- a/L1Trigger/L1TMuon/plugins/L1TBMTFConverter.cc +++ b/L1Trigger/L1TMuon/plugins/L1TBMTFConverter.cc @@ -44,17 +44,12 @@ using namespace l1t; class L1TBMTFConverter : public edm::stream::EDProducer<> { public: explicit L1TBMTFConverter(const edm::ParameterSet&); - ~L1TBMTFConverter() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: void produce(edm::Event&, const edm::EventSetup&) override; - void beginRun(const edm::Run&, edm::EventSetup const&) override; - void endRun(const edm::Run&, edm::EventSetup const&) override; - void beginLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) override; - void endLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) override; // ----------member data --------------------------- edm::EDGetTokenT m_barrelTfInputToken; edm::InputTag m_barrelTfInputTag; @@ -111,11 +106,6 @@ L1TBMTFConverter::L1TBMTFConverter(const edm::ParameterSet& iConfig) { ptMap_[31] = 280; } -L1TBMTFConverter::~L1TBMTFConverter() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -144,18 +134,6 @@ void L1TBMTFConverter::produce(edm::Event& iEvent, const edm::EventSetup& iSetup iEvent.put(std::move(convMuons), "ConvBMTFMuons"); } -// ------------ method called when starting to processes a run ------------ -void L1TBMTFConverter::beginRun(const edm::Run&, edm::EventSetup const&) {} - -// ------------ method called when ending the processing of a run ------------ -void L1TBMTFConverter::endRun(const edm::Run&, edm::EventSetup const&) {} - -// ------------ method called when starting to processes a luminosity block ------------ -void L1TBMTFConverter::beginLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) {} - -// ------------ method called when ending the processing of a luminosity block ------------ -void L1TBMTFConverter::endLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) {} - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TBMTFConverter::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TMuon/plugins/L1TMicroGMTInputProducer.cc b/L1Trigger/L1TMuon/plugins/L1TMicroGMTInputProducer.cc index a8fde2a16727d..6711efe5d69e1 100644 --- a/L1Trigger/L1TMuon/plugins/L1TMicroGMTInputProducer.cc +++ b/L1Trigger/L1TMuon/plugins/L1TMicroGMTInputProducer.cc @@ -53,11 +53,6 @@ class L1TMicroGMTInputProducer : public edm::stream::EDProducer<> { private: void produce(edm::Event&, const edm::EventSetup&) override; - void beginRun(const edm::Run&, edm::EventSetup const&) override; - void endRun(const edm::Run&, edm::EventSetup const&) override; - void beginLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) override; - void endLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) override; - void openFile(); void skipHeader(); int convertToInt(std::string& bitstr) const; @@ -297,18 +292,6 @@ void L1TMicroGMTInputProducer::produce(edm::Event& iEvent, const edm::EventSetup m_currEvt++; } -// ------------ method called when starting to processes a run ------------ -void L1TMicroGMTInputProducer::beginRun(const edm::Run&, edm::EventSetup const&) {} - -// ------------ method called when ending the processing of a run ------------ -void L1TMicroGMTInputProducer::endRun(const edm::Run&, edm::EventSetup const&) {} - -// ------------ method called when starting to processes a luminosity block ------------ -void L1TMicroGMTInputProducer::beginLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) {} - -// ------------ method called when ending the processing of a luminosity block ------------ -void L1TMicroGMTInputProducer::endLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) {} - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TMicroGMTInputProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TMuon/plugins/L1TMicroGMTInputProducerFromGen.cc b/L1Trigger/L1TMuon/plugins/L1TMicroGMTInputProducerFromGen.cc index 0262221af860b..966c34df1e783 100644 --- a/L1Trigger/L1TMuon/plugins/L1TMicroGMTInputProducerFromGen.cc +++ b/L1Trigger/L1TMuon/plugins/L1TMicroGMTInputProducerFromGen.cc @@ -50,18 +50,12 @@ using namespace l1t; class L1TMicroGMTInputProducerFromGen : public edm::stream::EDProducer<> { public: explicit L1TMicroGMTInputProducerFromGen(const edm::ParameterSet&); - ~L1TMicroGMTInputProducerFromGen() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: void produce(edm::Event&, const edm::EventSetup&) override; - void beginRun(const edm::Run&, edm::EventSetup const&) override; - void endRun(const edm::Run&, edm::EventSetup const&) override; - void beginLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) override; - void endLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) override; - static bool compareMuons(const RegionalMuonCand&, const RegionalMuonCand&); // ----------member data --------------------------- @@ -93,11 +87,6 @@ L1TMicroGMTInputProducerFromGen::L1TMicroGMTInputProducerFromGen(const edm::Para produces("TriggerTowerSums"); } -L1TMicroGMTInputProducerFromGen::~L1TMicroGMTInputProducerFromGen() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -242,18 +231,6 @@ void L1TMicroGMTInputProducerFromGen::produce(edm::Event& iEvent, const edm::Eve m_currEvt++; } -// ------------ method called when starting to processes a run ------------ -void L1TMicroGMTInputProducerFromGen::beginRun(const edm::Run&, edm::EventSetup const&) {} - -// ------------ method called when ending the processing of a run ------------ -void L1TMicroGMTInputProducerFromGen::endRun(const edm::Run&, edm::EventSetup const&) {} - -// ------------ method called when starting to processes a luminosity block ------------ -void L1TMicroGMTInputProducerFromGen::beginLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) {} - -// ------------ method called when ending the processing of a luminosity block ------------ -void L1TMicroGMTInputProducerFromGen::endLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) {} - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TMicroGMTInputProducerFromGen::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TMuon/plugins/L1TMuonCaloSumProducer.cc b/L1Trigger/L1TMuon/plugins/L1TMuonCaloSumProducer.cc index 2147901201956..85c063aef847a 100644 --- a/L1Trigger/L1TMuon/plugins/L1TMuonCaloSumProducer.cc +++ b/L1Trigger/L1TMuon/plugins/L1TMuonCaloSumProducer.cc @@ -47,18 +47,12 @@ using namespace l1t; class L1TMuonCaloSumProducer : public edm::stream::EDProducer<> { public: explicit L1TMuonCaloSumProducer(const edm::ParameterSet&); - ~L1TMuonCaloSumProducer() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: void produce(edm::Event&, const edm::EventSetup&) override; - void beginRun(const edm::Run&, edm::EventSetup const&) override; - void endRun(const edm::Run&, edm::EventSetup const&) override; - void beginLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) override; - void endLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) override; - edm::EDGetTokenT m_caloTowerToken; edm::InputTag m_caloLabel; }; @@ -83,11 +77,6 @@ L1TMuonCaloSumProducer::L1TMuonCaloSumProducer(const edm::ParameterSet& iConfig) produces("TriggerTower2x2s"); } -L1TMuonCaloSumProducer::~L1TMuonCaloSumProducer() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -191,18 +180,6 @@ void L1TMuonCaloSumProducer::produce(edm::Event& iEvent, const edm::EventSetup& iEvent.put(std::move(tower2x2s), "TriggerTower2x2s"); } -// ------------ method called when starting to processes a run ------------ -void L1TMuonCaloSumProducer::beginRun(const edm::Run&, edm::EventSetup const&) {} - -// ------------ method called when ending the processing of a run ------------ -void L1TMuonCaloSumProducer::endRun(const edm::Run&, edm::EventSetup const&) {} - -// ------------ method called when starting to processes a luminosity block ------------ -void L1TMuonCaloSumProducer::beginLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) {} - -// ------------ method called when ending the processing of a luminosity block ------------ -void L1TMuonCaloSumProducer::endLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) {} - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TMuonCaloSumProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TMuon/plugins/L1TMuonProducer.cc b/L1Trigger/L1TMuon/plugins/L1TMuonProducer.cc index 94378e8c43249..4353d7ec3aff7 100644 --- a/L1Trigger/L1TMuon/plugins/L1TMuonProducer.cc +++ b/L1Trigger/L1TMuon/plugins/L1TMuonProducer.cc @@ -67,9 +67,6 @@ class L1TMuonProducer : public edm::stream::EDProducer<> { void produce(edm::Event&, const edm::EventSetup&) override; void beginRun(edm::Run const&, edm::EventSetup const&) override; - void endRun(edm::Run const&, edm::EventSetup const&) override; - void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; static bool compareMuons(const std::shared_ptr& mu1, const std::shared_ptr& mu2); @@ -617,15 +614,6 @@ void L1TMuonProducer::beginRun(edm::Run const& run, edm::EventSetup const& iSetu } } -// ------------ method called when ending the processing of a run ------------ -void L1TMuonProducer::endRun(edm::Run const&, edm::EventSetup const&) {} - -// ------------ method called when starting to processes a luminosity block ------------ -void L1TMuonProducer::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) {} - -// ------------ method called when ending the processing of a luminosity block ------------ -void L1TMuonProducer::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) {} - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TMuonProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TMuon/plugins/L1TMuonQualityAdjuster.cc b/L1Trigger/L1TMuon/plugins/L1TMuonQualityAdjuster.cc index 0215f67eb1ea4..95cf3bb6a52ff 100644 --- a/L1Trigger/L1TMuon/plugins/L1TMuonQualityAdjuster.cc +++ b/L1Trigger/L1TMuon/plugins/L1TMuonQualityAdjuster.cc @@ -34,16 +34,11 @@ using namespace l1t; class L1TMuonQualityAdjuster : public edm::stream::EDProducer<> { public: explicit L1TMuonQualityAdjuster(const edm::ParameterSet&); - ~L1TMuonQualityAdjuster() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: void produce(edm::Event&, const edm::EventSetup&) override; - void beginRun(const edm::Run&, edm::EventSetup const&) override; - void endRun(const edm::Run&, edm::EventSetup const&) override; - void beginLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) override; - void endLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) override; // ----------member data --------------------------- edm::EDGetTokenT m_barrelTfInputToken; edm::EDGetTokenT m_overlapTfInputToken; @@ -80,11 +75,6 @@ L1TMuonQualityAdjuster::L1TMuonQualityAdjuster(const edm::ParameterSet& iConfig) produces("EMTF"); } -L1TMuonQualityAdjuster::~L1TMuonQualityAdjuster() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -161,18 +151,6 @@ void L1TMuonQualityAdjuster::produce(edm::Event& iEvent, const edm::EventSetup& iEvent.put(std::move(filteredEMTFMuons), "EMTF"); } -// ------------ method called when starting to processes a run ------------ -void L1TMuonQualityAdjuster::beginRun(const edm::Run&, edm::EventSetup const&) {} - -// ------------ method called when ending the processing of a run ------------ -void L1TMuonQualityAdjuster::endRun(const edm::Run&, edm::EventSetup const&) {} - -// ------------ method called when starting to processes a luminosity block ------------ -void L1TMuonQualityAdjuster::beginLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) {} - -// ------------ method called when ending the processing of a luminosity block ------------ -void L1TMuonQualityAdjuster::endLuminosityBlock(const edm::LuminosityBlock&, edm::EventSetup const&) {} - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TMuonQualityAdjuster::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/L1Trigger/L1TMuonEndCap/plugins/L1TMuonEndCapTrackProducer.cc b/L1Trigger/L1TMuonEndCap/plugins/L1TMuonEndCapTrackProducer.cc index e4d14200a6b24..20adbc0ab9e2f 100644 --- a/L1Trigger/L1TMuonEndCap/plugins/L1TMuonEndCapTrackProducer.cc +++ b/L1Trigger/L1TMuonEndCap/plugins/L1TMuonEndCapTrackProducer.cc @@ -8,8 +8,6 @@ L1TMuonEndCapTrackProducer::L1TMuonEndCapTrackProducer(const edm::ParameterSet& produces("EMTF"); // EMTF tracks output to uGMT } -L1TMuonEndCapTrackProducer::~L1TMuonEndCapTrackProducer() {} - void L1TMuonEndCapTrackProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { // Create pointers to output products auto out_hits_tmp = std::make_unique(); // before zero suppression diff --git a/L1Trigger/L1TMuonEndCap/plugins/L1TMuonEndCapTrackProducer.h b/L1Trigger/L1TMuonEndCap/plugins/L1TMuonEndCapTrackProducer.h index e63db89313cce..30aaba2ea5e2b 100644 --- a/L1Trigger/L1TMuonEndCap/plugins/L1TMuonEndCapTrackProducer.h +++ b/L1Trigger/L1TMuonEndCap/plugins/L1TMuonEndCapTrackProducer.h @@ -19,20 +19,12 @@ class L1TMuonEndCapTrackProducer : public edm::stream::EDProducer<> { public: explicit L1TMuonEndCapTrackProducer(const edm::ParameterSet&); - ~L1TMuonEndCapTrackProducer() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: void produce(edm::Event&, const edm::EventSetup&) override; - //void beginJob() override; - //void endJob() override; - //void beginRun(edm::Run const&, edm::EventSetup const&) override; - //void endRun(edm::Run const&, edm::EventSetup const&) override; - //void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - private: std::unique_ptr track_finder_; std::unique_ptr uGMT_converter_; From 8fdb61272a61186cdfcbddcc047b3aa4502dbf23 Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Fri, 27 Oct 2023 15:58:11 -0500 Subject: [PATCH 184/281] Clean up some unnecessary transition function calls/comments in EventFilter --- EventFilter/Utilities/plugins/ExceptionGenerator.cc | 2 -- EventFilter/Utilities/plugins/ExceptionGenerator.h | 2 -- 2 files changed, 4 deletions(-) diff --git a/EventFilter/Utilities/plugins/ExceptionGenerator.cc b/EventFilter/Utilities/plugins/ExceptionGenerator.cc index a3e8696ede3d9..87541772343ec 100644 --- a/EventFilter/Utilities/plugins/ExceptionGenerator.cc +++ b/EventFilter/Utilities/plugins/ExceptionGenerator.cc @@ -250,6 +250,4 @@ namespace evf { } } - void ExceptionGenerator::endLuminosityBlock(edm::LuminosityBlock const &lb, edm::EventSetup const &es) {} - } // end namespace evf diff --git a/EventFilter/Utilities/plugins/ExceptionGenerator.h b/EventFilter/Utilities/plugins/ExceptionGenerator.h index 1630855ebee8c..bf42d1a0476bd 100644 --- a/EventFilter/Utilities/plugins/ExceptionGenerator.h +++ b/EventFilter/Utilities/plugins/ExceptionGenerator.h @@ -17,10 +17,8 @@ namespace evf { static const std::string menu[menu_items]; explicit ExceptionGenerator(const edm::ParameterSet&); - ~ExceptionGenerator() override{}; void beginRun(const edm::Run& r, const edm::EventSetup& iSetup) override; void analyze(const edm::Event& e, const edm::EventSetup& c) override; - void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; private: int actionId_; From 448d459393192d8f841e4e3066438d3ef05c461c Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Fri, 27 Oct 2023 15:58:24 -0500 Subject: [PATCH 185/281] Clean up some unnecessary transition function calls/comments in HLTrigger --- .../plugins/TestBXVectorRefProducer.cc | 51 ------------------- .../special/plugins/HLTRechitsToDigis.cc | 38 -------------- 2 files changed, 89 deletions(-) diff --git a/HLTrigger/HLTfilters/plugins/TestBXVectorRefProducer.cc b/HLTrigger/HLTfilters/plugins/TestBXVectorRefProducer.cc index a9e2d8727a0f9..2f3aabb69b13c 100644 --- a/HLTrigger/HLTfilters/plugins/TestBXVectorRefProducer.cc +++ b/HLTrigger/HLTfilters/plugins/TestBXVectorRefProducer.cc @@ -39,19 +39,11 @@ class TestBXVectorRefProducer : public edm::stream::EDProducer<> { public: explicit TestBXVectorRefProducer(const edm::ParameterSet&); - ~TestBXVectorRefProducer() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void beginStream(edm::StreamID) override; void produce(edm::Event&, const edm::EventSetup&) override; - void endStream() override; - - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; // ----------member data --------------------------- bool doRefs_; @@ -84,11 +76,6 @@ TestBXVectorRefProducer::TestBXVectorRefProducer(const edm::ParameterSet& iConfi } } -TestBXVectorRefProducer::~TestBXVectorRefProducer() { - // do anything here that needs to be done at destruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -127,44 +114,6 @@ void TestBXVectorRefProducer::produce(edm::Event& iEvent, const edm::EventSetup& return; } -// ------------ method called once each stream before processing any runs, lumis or events ------------ -void TestBXVectorRefProducer::beginStream(edm::StreamID) {} - -// ------------ method called once each stream after processing all runs, lumis and events ------------ -void TestBXVectorRefProducer::endStream() {} - -// ------------ method called when starting to processes a run ------------ -/* -void -TestBXVectorRefProducer::beginRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a run ------------ -/* -void -TestBXVectorRefProducer::endRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when starting to processes a luminosity block ------------ -/* -void -TestBXVectorRefProducer::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* -void -TestBXVectorRefProducer::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void TestBXVectorRefProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/HLTrigger/special/plugins/HLTRechitsToDigis.cc b/HLTrigger/special/plugins/HLTRechitsToDigis.cc index 69673dd6ef082..ba5383e8ea4fc 100644 --- a/HLTrigger/special/plugins/HLTRechitsToDigis.cc +++ b/HLTrigger/special/plugins/HLTRechitsToDigis.cc @@ -46,7 +46,6 @@ class HLTRechitsToDigis : public edm::stream::EDProducer<> { public: explicit HLTRechitsToDigis(const edm::ParameterSet&); - ~HLTRechitsToDigis() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); enum ecalRegion { invalidRegion = 0, barrel, endcap }; static const HLTRechitsToDigis::ecalRegion stringToRegion(const std::string& region); @@ -125,11 +124,6 @@ HLTRechitsToDigis::HLTRechitsToDigis(const edm::ParameterSet& iConfig) recHitsToken_ = consumes(recHits_); } -HLTRechitsToDigis::~HLTRechitsToDigis() { - // do anything here that needs to be done at desctruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -262,38 +256,6 @@ void HLTRechitsToDigis::produce(edm::Event& iEvent, edm::EventSetup const& setup } // end switch statement for the region (barrel, endcap, invalid) } -// ------------ method called when starting to processes a run ------------ -/* -void -HLTRechitsToDigis::beginRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a run ------------ -/* -void -HLTRechitsToDigis::endRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when starting to processes a luminosity block ------------ -/* -void -HLTRechitsToDigis::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* -void -HLTRechitsToDigis::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void HLTRechitsToDigis::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation From 7ed67fe4241b47abd370b401862128016427f87e Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Fri, 27 Oct 2023 15:59:37 -0500 Subject: [PATCH 186/281] Clean up some unnecessary transition function calls/comments in PhysicsTools --- .../plugins/CITKPFIsolationSumProducer.cc | 2 - .../CITKPFIsolationSumProducerForPUPPI.cc | 2 - .../JetMCAlgos/plugins/ttHFGenFilter.cc | 46 ------------------- .../plugins/NanoAODBaseCrossCleaner.cc | 11 ----- .../NanoAOD/plugins/NanoAODBaseCrossCleaner.h | 8 ---- .../NanoAOD/plugins/VertexTableProducer.cc | 19 -------- .../PatAlgos/plugins/PATElectronSlimmer.cc | 4 -- .../PatAlgos/plugins/PATObjectCrossLinker.cc | 19 -------- .../PatAlgos/plugins/PATPhotonSlimmer.cc | 4 -- 9 files changed, 115 deletions(-) diff --git a/PhysicsTools/IsolationAlgos/plugins/CITKPFIsolationSumProducer.cc b/PhysicsTools/IsolationAlgos/plugins/CITKPFIsolationSumProducer.cc index 2af04cc18dc03..886a72515be46 100644 --- a/PhysicsTools/IsolationAlgos/plugins/CITKPFIsolationSumProducer.cc +++ b/PhysicsTools/IsolationAlgos/plugins/CITKPFIsolationSumProducer.cc @@ -37,8 +37,6 @@ namespace citk { public: PFIsolationSumProducer(const edm::ParameterSet&); - ~PFIsolationSumProducer() override {} - void beginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) final; void produce(edm::Event&, const edm::EventSetup&) final; diff --git a/PhysicsTools/IsolationAlgos/plugins/CITKPFIsolationSumProducerForPUPPI.cc b/PhysicsTools/IsolationAlgos/plugins/CITKPFIsolationSumProducerForPUPPI.cc index 815977dab6177..db9732eb9a8ba 100644 --- a/PhysicsTools/IsolationAlgos/plugins/CITKPFIsolationSumProducerForPUPPI.cc +++ b/PhysicsTools/IsolationAlgos/plugins/CITKPFIsolationSumProducerForPUPPI.cc @@ -27,8 +27,6 @@ namespace citk { public: PFIsolationSumProducerForPUPPI(const edm::ParameterSet&); - ~PFIsolationSumProducerForPUPPI() override {} - void beginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) final; void produce(edm::Event&, const edm::EventSetup&) final; diff --git a/PhysicsTools/JetMCAlgos/plugins/ttHFGenFilter.cc b/PhysicsTools/JetMCAlgos/plugins/ttHFGenFilter.cc index 7e86bfaf25a40..d98f1c1314615 100644 --- a/PhysicsTools/JetMCAlgos/plugins/ttHFGenFilter.cc +++ b/PhysicsTools/JetMCAlgos/plugins/ttHFGenFilter.cc @@ -44,14 +44,11 @@ class ttHFGenFilter : public edm::stream::EDFilter<> { public: explicit ttHFGenFilter(const edm::ParameterSet&); - ~ttHFGenFilter() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void beginStream(edm::StreamID) override; bool filter(edm::Event&, const edm::EventSetup&) override; - void endStream() override; virtual bool HasAdditionalBHadron(const std::vector&, const std::vector&, @@ -100,11 +97,6 @@ ttHFGenFilter::ttHFGenFilter(const edm::ParameterSet& iConfig) produces(); } -ttHFGenFilter::~ttHFGenFilter() { - // do anything here that needs to be done at destruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -260,44 +252,6 @@ void ttHFGenFilter::FindAllTopMothers(const reco::Candidate* particle, } } -// ------------ method called once each stream before processing any runs, lumis or events ------------ -void ttHFGenFilter::beginStream(edm::StreamID) {} - -// ------------ method called once each stream after processing all runs, lumis and events ------------ -void ttHFGenFilter::endStream() {} - -// ------------ method called when starting to processes a run ------------ -/* -void -ttHFGenFilter::beginRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a run ------------ -/* -void -ttHFGenFilter::endRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when starting to processes a luminosity block ------------ -/* -void -ttHFGenFilter::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* -void -ttHFGenFilter::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void ttHFGenFilter::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation diff --git a/PhysicsTools/NanoAOD/plugins/NanoAODBaseCrossCleaner.cc b/PhysicsTools/NanoAOD/plugins/NanoAODBaseCrossCleaner.cc index eeec3a7315009..da4ed564b245a 100644 --- a/PhysicsTools/NanoAOD/plugins/NanoAODBaseCrossCleaner.cc +++ b/PhysicsTools/NanoAOD/plugins/NanoAODBaseCrossCleaner.cc @@ -54,11 +54,6 @@ NanoAODBaseCrossCleaner::NanoAODBaseCrossCleaner(const edm::ParameterSet& params produces("photons"); } -NanoAODBaseCrossCleaner::~NanoAODBaseCrossCleaner() { - // do anything here that needs to be done at destruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -130,12 +125,6 @@ void NanoAODBaseCrossCleaner::produce(edm::Event& iEvent, const edm::EventSetup& iEvent.put(std::move(lowPtElectronsTable), "lowPtElectrons"); } -// ------------ method called once each stream before processing any runs, lumis or events ------------ -void NanoAODBaseCrossCleaner::beginStream(edm::StreamID) {} - -// ------------ method called once each stream after processing all runs, lumis and events ------------ -void NanoAODBaseCrossCleaner::endStream() {} - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void NanoAODBaseCrossCleaner::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; diff --git a/PhysicsTools/NanoAOD/plugins/NanoAODBaseCrossCleaner.h b/PhysicsTools/NanoAOD/plugins/NanoAODBaseCrossCleaner.h index 849218af1a95f..5c628db0c8e55 100644 --- a/PhysicsTools/NanoAOD/plugins/NanoAODBaseCrossCleaner.h +++ b/PhysicsTools/NanoAOD/plugins/NanoAODBaseCrossCleaner.h @@ -48,14 +48,11 @@ class NanoAODBaseCrossCleaner : public edm::stream::EDProducer<> { public: explicit NanoAODBaseCrossCleaner(const edm::ParameterSet&); - ~NanoAODBaseCrossCleaner() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void beginStream(edm::StreamID) override; void produce(edm::Event&, const edm::EventSetup&) override; - void endStream() override; virtual void objectSelection(const edm::View& jets, const edm::View& muons, const edm::View& eles, @@ -67,11 +64,6 @@ class NanoAODBaseCrossCleaner : public edm::stream::EDProducer<> { std::vector& tauBits, std::vector& photonBits){}; - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - // ----------member data --------------------------- const std::string name_; const std::string doc_; diff --git a/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc b/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc index e79ecf40450c8..1b560cd305f39 100644 --- a/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc +++ b/PhysicsTools/NanoAOD/plugins/VertexTableProducer.cc @@ -48,19 +48,11 @@ class VertexTableProducer : public edm::stream::EDProducer<> { public: explicit VertexTableProducer(const edm::ParameterSet&); - ~VertexTableProducer() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void beginStream(edm::StreamID) override; void produce(edm::Event&, const edm::EventSetup&) override; - void endStream() override; - - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; // ----------member data --------------------------- @@ -99,11 +91,6 @@ VertexTableProducer::VertexTableProducer(const edm::ParameterSet& params) produces>(); } -VertexTableProducer::~VertexTableProducer() { - // do anything here that needs to be done at destruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -195,12 +182,6 @@ void VertexTableProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSe iEvent.put(std::move(selCandSv)); } -// ------------ method called once each stream before processing any runs, lumis or events ------------ -void VertexTableProducer::beginStream(edm::StreamID) {} - -// ------------ method called once each stream after processing all runs, lumis and events ------------ -void VertexTableProducer::endStream() {} - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void VertexTableProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; diff --git a/PhysicsTools/PatAlgos/plugins/PATElectronSlimmer.cc b/PhysicsTools/PatAlgos/plugins/PATElectronSlimmer.cc index 02fee8eabc1dc..e605623065902 100644 --- a/PhysicsTools/PatAlgos/plugins/PATElectronSlimmer.cc +++ b/PhysicsTools/PatAlgos/plugins/PATElectronSlimmer.cc @@ -26,10 +26,8 @@ namespace pat { class PATElectronSlimmer : public edm::stream::EDProducer<> { public: explicit PATElectronSlimmer(const edm::ParameterSet& iConfig); - ~PATElectronSlimmer() override {} void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) final; - void beginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) final; private: const edm::EDGetTokenT> src_; @@ -91,8 +89,6 @@ pat::PATElectronSlimmer::PATElectronSlimmer(const edm::ParameterSet& iConfig) produces>(); } -void pat::PATElectronSlimmer::beginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup& iSetup) {} - void pat::PATElectronSlimmer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { using namespace edm; using namespace std; diff --git a/PhysicsTools/PatAlgos/plugins/PATObjectCrossLinker.cc b/PhysicsTools/PatAlgos/plugins/PATObjectCrossLinker.cc index ef790ad65c14f..eaacd778eaa12 100644 --- a/PhysicsTools/PatAlgos/plugins/PATObjectCrossLinker.cc +++ b/PhysicsTools/PatAlgos/plugins/PATObjectCrossLinker.cc @@ -46,14 +46,11 @@ class PATObjectCrossLinker : public edm::stream::EDProducer<> { public: explicit PATObjectCrossLinker(const edm::ParameterSet&); - ~PATObjectCrossLinker() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void beginStream(edm::StreamID) override; void produce(edm::Event&, const edm::EventSetup&) override; - void endStream() override; template void matchOneToMany(const C1& refProdOne, @@ -85,11 +82,6 @@ class PATObjectCrossLinker : public edm::stream::EDProducer<> { template void matchVertexToMany(const C1& refProdVtx, C2& itemsVtx, const std::string& nameVtx, C3& itemsMany); - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - // ----------member data --------------------------- const edm::EDGetTokenT> jets_; const edm::EDGetTokenT> muons_; @@ -135,11 +127,6 @@ PATObjectCrossLinker::PATObjectCrossLinker(const edm::ParameterSet& params) } } -PATObjectCrossLinker::~PATObjectCrossLinker() { - // do anything here that needs to be done at destruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -369,12 +356,6 @@ void PATObjectCrossLinker::produce(edm::Event& iEvent, const edm::EventSetup& iS iEvent.put(std::move(vertices), "vertices"); } -// ------------ method called once each stream before processing any runs, lumis or events ------------ -void PATObjectCrossLinker::beginStream(edm::StreamID) {} - -// ------------ method called once each stream after processing all runs, lumis and events ------------ -void PATObjectCrossLinker::endStream() {} - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void PATObjectCrossLinker::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; diff --git a/PhysicsTools/PatAlgos/plugins/PATPhotonSlimmer.cc b/PhysicsTools/PatAlgos/plugins/PATPhotonSlimmer.cc index 997405760ed77..677ff575cc4e0 100644 --- a/PhysicsTools/PatAlgos/plugins/PATPhotonSlimmer.cc +++ b/PhysicsTools/PatAlgos/plugins/PATPhotonSlimmer.cc @@ -28,10 +28,8 @@ namespace pat { class PATPhotonSlimmer : public edm::stream::EDProducer<> { public: explicit PATPhotonSlimmer(const edm::ParameterSet& iConfig); - ~PATPhotonSlimmer() override {} void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) override; - void beginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) final; private: const edm::EDGetTokenT> src_; @@ -86,8 +84,6 @@ pat::PATPhotonSlimmer::PATPhotonSlimmer(const edm::ParameterSet& iConfig) produces>(); } -void pat::PATPhotonSlimmer::beginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup& iSetup) {} - void pat::PATPhotonSlimmer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { using namespace edm; using namespace std; From 4803e547faedfe3ff1af445b6987f65bc971dd65 Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Fri, 27 Oct 2023 15:59:54 -0500 Subject: [PATCH 187/281] Clean up some unnecessary transition function calls/comments in TauAnalysis --- .../plugins/DYToMuMuGenFilter.cc | 15 ------ .../plugins/MuMuForEmbeddingSelector.cc | 51 ------------------- 2 files changed, 66 deletions(-) diff --git a/TauAnalysis/MCEmbeddingTools/plugins/DYToMuMuGenFilter.cc b/TauAnalysis/MCEmbeddingTools/plugins/DYToMuMuGenFilter.cc index 8bb153d2c67c6..a5206e56c9e6b 100644 --- a/TauAnalysis/MCEmbeddingTools/plugins/DYToMuMuGenFilter.cc +++ b/TauAnalysis/MCEmbeddingTools/plugins/DYToMuMuGenFilter.cc @@ -15,25 +15,17 @@ class DYToMuMuGenFilter : public edm::stream::EDFilter<> { public: explicit DYToMuMuGenFilter(const edm::ParameterSet&); - ~DYToMuMuGenFilter() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void beginStream(edm::StreamID) override; bool filter(edm::Event&, const edm::EventSetup&) override; - void endStream() override; edm::InputTag inputTag_; edm::EDGetTokenT genParticleCollection_; edm::Handle gen_handle; - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - // ----------member data --------------------------- }; @@ -42,8 +34,6 @@ DYToMuMuGenFilter::DYToMuMuGenFilter(const edm::ParameterSet& iConfig) { genParticleCollection_ = consumes(inputTag_); } -DYToMuMuGenFilter::~DYToMuMuGenFilter() {} - bool DYToMuMuGenFilter::filter(edm::Event& iEvent, const edm::EventSetup& iSetup) { iEvent.getByToken(genParticleCollection_, gen_handle); @@ -81,11 +71,6 @@ bool DYToMuMuGenFilter::filter(edm::Event& iEvent, const edm::EventSetup& iSetup } return false; } -// ------------ method called once each stream before processing any runs, lumis or events ------------ -void DYToMuMuGenFilter::beginStream(edm::StreamID) {} - -// ------------ method called once each stream after processing all runs, lumis and events ------------ -void DYToMuMuGenFilter::endStream() {} // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void DYToMuMuGenFilter::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { diff --git a/TauAnalysis/MCEmbeddingTools/plugins/MuMuForEmbeddingSelector.cc b/TauAnalysis/MCEmbeddingTools/plugins/MuMuForEmbeddingSelector.cc index 42125b59fae4a..f5c0eefd45e3a 100644 --- a/TauAnalysis/MCEmbeddingTools/plugins/MuMuForEmbeddingSelector.cc +++ b/TauAnalysis/MCEmbeddingTools/plugins/MuMuForEmbeddingSelector.cc @@ -39,19 +39,11 @@ class MuMuForEmbeddingSelector : public edm::stream::EDProducer<> { public: explicit MuMuForEmbeddingSelector(const edm::ParameterSet&); - ~MuMuForEmbeddingSelector() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void beginStream(edm::StreamID) override; void produce(edm::Event&, const edm::EventSetup&) override; - void endStream() override; - - //virtual void beginRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void endRun(edm::Run const&, edm::EventSetup const&) override; - //virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - //virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; // ----------member data --------------------------- edm::EDGetTokenT> ZmumuCandidates_; @@ -87,11 +79,6 @@ MuMuForEmbeddingSelector::MuMuForEmbeddingSelector(const edm::ParameterSet& iCon //now do what ever other initialization is needed } -MuMuForEmbeddingSelector::~MuMuForEmbeddingSelector() { - // do anything here that needs to be done at destruction time - // (e.g. close files, deallocate resources etc.) -} - // // member functions // @@ -120,44 +107,6 @@ void MuMuForEmbeddingSelector::produce(edm::Event& iEvent, const edm::EventSetup iEvent.put(std::move(prod)); } -// ------------ method called once each stream before processing any runs, lumis or events ------------ -void MuMuForEmbeddingSelector::beginStream(edm::StreamID) {} - -// ------------ method called once each stream after processing all runs, lumis and events ------------ -void MuMuForEmbeddingSelector::endStream() {} - -// ------------ method called when starting to processes a run ------------ -/* -void -MuMuForEmbeddingSelector::beginRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a run ------------ -/* -void -MuMuForEmbeddingSelector::endRun(edm::Run const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when starting to processes a luminosity block ------------ -/* -void -MuMuForEmbeddingSelector::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - -// ------------ method called when ending the processing of a luminosity block ------------ -/* -void -MuMuForEmbeddingSelector::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) -{ -} -*/ - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void MuMuForEmbeddingSelector::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { //The following says we do not know what parameters are allowed so do no validation From 5275e278deaa94da16aeffe0cbe40d7d3379252b Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Wed, 3 Jan 2024 07:48:34 -0600 Subject: [PATCH 188/281] Change to global module in L1Trigger/L1TGEM - changed to global modules - removed need to call Run transition - reworked member functions to use 'return value optimization' --- .../plugins/GEMPadDigiClusterProducer.cc | 61 ++++++++----------- .../L1TGEM/plugins/ME0PadDigiProducer.cc | 47 ++++++-------- 2 files changed, 41 insertions(+), 67 deletions(-) diff --git a/L1Trigger/L1TGEM/plugins/GEMPadDigiClusterProducer.cc b/L1Trigger/L1TGEM/plugins/GEMPadDigiClusterProducer.cc index 0c355bc86afaa..ce609404b0116 100644 --- a/L1Trigger/L1TGEM/plugins/GEMPadDigiClusterProducer.cc +++ b/L1Trigger/L1TGEM/plugins/GEMPadDigiClusterProducer.cc @@ -33,7 +33,7 @@ #include "FWCore/Framework/interface/MakerMacros.h" #include "FWCore/PluginManager/interface/ModuleDef.h" -#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/global/EDProducer.h" #include "FWCore/Framework/interface/MakerMacros.h" #include "FWCore/Framework/interface/ESHandle.h" #include "FWCore/Framework/interface/ConsumesCollector.h" @@ -57,7 +57,7 @@ #include #include -class GEMPadDigiClusterProducer : public edm::stream::EDProducer<> { +class GEMPadDigiClusterProducer : public edm::global::EDProducer<> { public: typedef std::vector GEMPadDigiClusters; typedef std::map GEMPadDigiClusterContainer; @@ -66,20 +66,19 @@ class GEMPadDigiClusterProducer : public edm::stream::EDProducer<> { ~GEMPadDigiClusterProducer() override; - void beginRun(const edm::Run&, const edm::EventSetup&) override; - - void produce(edm::Event&, const edm::EventSetup&) override; + void produce(edm::StreamID, edm::Event&, const edm::EventSetup&) const override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void buildClusters(const GEMPadDigiCollection& pads, GEMPadDigiClusterContainer& out_clusters) const; - void selectClusters(const GEMPadDigiClusterContainer& in_clusters, GEMPadDigiClusterCollection& out) const; + GEMPadDigiClusterContainer buildClusters(const GEMPadDigiCollection& pads, const GEMGeometry&) const; + GEMPadDigiClusterCollection selectClusters(const GEMPadDigiClusterContainer& in_clusters, const GEMGeometry&) const; template void checkValid(const T& cluster, const GEMDetId& id) const; /// Name of input digi Collection edm::EDGetTokenT pad_token_; + edm::EDPutTokenT put_token_; edm::ESGetToken geom_token_; edm::InputTag pads_; @@ -93,11 +92,9 @@ class GEMPadDigiClusterProducer : public edm::stream::EDProducer<> { unsigned int maxClustersOHGE21_; unsigned int maxClusterSize_; bool sendOverflowClusters_; - - const GEMGeometry* geometry_; }; -GEMPadDigiClusterProducer::GEMPadDigiClusterProducer(const edm::ParameterSet& ps) : geometry_(nullptr) { +GEMPadDigiClusterProducer::GEMPadDigiClusterProducer(const edm::ParameterSet& ps) { pads_ = ps.getParameter("InputCollection"); nPartitionsGE11_ = ps.getParameter("nPartitionsGE11"); nPartitionsGE21_ = ps.getParameter("nPartitionsGE21"); @@ -116,10 +113,9 @@ GEMPadDigiClusterProducer::GEMPadDigiClusterProducer(const edm::ParameterSet& ps } pad_token_ = consumes(pads_); - geom_token_ = esConsumes(); + geom_token_ = esConsumes(); - produces(); - consumes(pads_); + put_token_ = produces(); } GEMPadDigiClusterProducer::~GEMPadDigiClusterProducer() {} @@ -141,36 +137,24 @@ void GEMPadDigiClusterProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions.add("simMuonGEMPadDigiClustersDef", desc); } -void GEMPadDigiClusterProducer::beginRun(const edm::Run& run, const edm::EventSetup& eventSetup) { - edm::ESHandle hGeom = eventSetup.getHandle(geom_token_); - geometry_ = &*hGeom; -} - -void GEMPadDigiClusterProducer::produce(edm::Event& e, const edm::EventSetup& eventSetup) { - edm::Handle hpads; - e.getByToken(pad_token_, hpads); +void GEMPadDigiClusterProducer::produce(edm::StreamID, edm::Event& e, const edm::EventSetup& eventSetup) const { + auto const& geometry = eventSetup.getData(geom_token_); - // Create empty output - std::unique_ptr pClusters(new GEMPadDigiClusterCollection()); + auto const& pads = e.get(pad_token_); // build the proto clusters (per partition) - GEMPadDigiClusterContainer proto_clusters; - buildClusters(*(hpads.product()), proto_clusters); + GEMPadDigiClusterContainer proto_clusters = buildClusters(pads, geometry); // sort and select clusters per chamber, per OH, per partition number and per pad number - selectClusters(proto_clusters, *pClusters); - - // store them in the event - e.put(std::move(pClusters)); + e.emplace(put_token_, selectClusters(proto_clusters, geometry)); } -void GEMPadDigiClusterProducer::buildClusters(const GEMPadDigiCollection& det_pads, - GEMPadDigiClusterContainer& proto_clusters) const { - // clear the container - proto_clusters.clear(); +GEMPadDigiClusterProducer::GEMPadDigiClusterContainer GEMPadDigiClusterProducer::buildClusters( + const GEMPadDigiCollection& det_pads, const GEMGeometry& geometry) const { + GEMPadDigiClusterContainer proto_clusters; // construct clusters - for (const auto& part : geometry_->etaPartitions()) { + for (const auto& part : geometry.etaPartitions()) { // clusters are not build for ME0 // -> ignore hits from station 0 if (part->isME0()) @@ -228,11 +212,13 @@ void GEMPadDigiClusterProducer::buildClusters(const GEMPadDigiCollection& det_pa proto_clusters.emplace(part->id(), all_pad_clusters); } // end of partition loop + return proto_clusters; } -void GEMPadDigiClusterProducer::selectClusters(const GEMPadDigiClusterContainer& proto_clusters, - GEMPadDigiClusterCollection& out_clusters) const { - for (const auto& ch : geometry_->chambers()) { +GEMPadDigiClusterCollection GEMPadDigiClusterProducer::selectClusters(const GEMPadDigiClusterContainer& proto_clusters, + const GEMGeometry& geometry) const { + GEMPadDigiClusterCollection out_clusters; + for (const auto& ch : geometry.chambers()) { const unsigned nOH = ch->id().isGE11() ? nOHGE11_ : nOHGE21_; const unsigned nPartitions = ch->id().isGE11() ? nPartitionsGE11_ : nPartitionsGE21_; const unsigned nEtaPerPartition = ch->nEtaPartitions() / (nPartitions * nOH); @@ -264,6 +250,7 @@ void GEMPadDigiClusterProducer::selectClusters(const GEMPadDigiClusterContainer& } // end of clusterizer partition loop } // end of OH loop } // end of chamber loop + return out_clusters; } template diff --git a/L1Trigger/L1TGEM/plugins/ME0PadDigiProducer.cc b/L1Trigger/L1TGEM/plugins/ME0PadDigiProducer.cc index 7202358762e24..33e5346cfdc87 100644 --- a/L1Trigger/L1TGEM/plugins/ME0PadDigiProducer.cc +++ b/L1Trigger/L1TGEM/plugins/ME0PadDigiProducer.cc @@ -1,4 +1,4 @@ -#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/global/EDProducer.h" #include "FWCore/Framework/interface/MakerMacros.h" #include "FWCore/Framework/interface/ESHandle.h" #include "FWCore/Framework/interface/ConsumesCollector.h" @@ -21,59 +21,45 @@ /// \class ME0PadDigiProducer -class ME0PadDigiProducer : public edm::stream::EDProducer<> { +class ME0PadDigiProducer : public edm::global::EDProducer<> { public: explicit ME0PadDigiProducer(const edm::ParameterSet& ps); - ~ME0PadDigiProducer() override; - - void beginRun(const edm::Run&, const edm::EventSetup&) override; - - void produce(edm::Event&, const edm::EventSetup&) override; + void produce(edm::StreamID, edm::Event&, const edm::EventSetup&) const override; private: - void buildPads(const ME0DigiCollection& digis, ME0PadDigiCollection& out_pads) const; + ME0PadDigiCollection buildPads(const ME0DigiCollection& digis, const ME0Geometry& geometry) const; /// Name of input digi Collection edm::EDGetTokenT digi_token_; edm::InputTag digis_; edm::ESGetToken geom_token_; - - const ME0Geometry* geometry_; + edm::EDPutTokenT put_token_; }; -ME0PadDigiProducer::ME0PadDigiProducer(const edm::ParameterSet& ps) : geometry_(nullptr) { +ME0PadDigiProducer::ME0PadDigiProducer(const edm::ParameterSet& ps) { digis_ = ps.getParameter("InputCollection"); digi_token_ = consumes(digis_); - geom_token_ = esConsumes(); + geom_token_ = esConsumes(); - produces(); + put_token_ = produces(); } -ME0PadDigiProducer::~ME0PadDigiProducer() {} +void ME0PadDigiProducer::produce(edm::StreamID, edm::Event& e, const edm::EventSetup& eventSetup) const { + auto const& geometry = eventSetup.getData(geom_token_); -void ME0PadDigiProducer::beginRun(const edm::Run& run, const edm::EventSetup& eventSetup) { - edm::ESHandle hGeom = eventSetup.getHandle(geom_token_); - geometry_ = &*hGeom; -} - -void ME0PadDigiProducer::produce(edm::Event& e, const edm::EventSetup& eventSetup) { edm::Handle hdigis; e.getByToken(digi_token_, hdigis); - // Create empty output - std::unique_ptr pPads(new ME0PadDigiCollection()); - - // build the pads - buildPads(*(hdigis.product()), *pPads); - - // store them in the event - e.put(std::move(pPads)); + // build the pads and store them in the event + e.emplace(put_token_, buildPads(*(hdigis.product()), geometry)); } -void ME0PadDigiProducer::buildPads(const ME0DigiCollection& det_digis, ME0PadDigiCollection& out_pads) const { - for (const auto& p : geometry_->etaPartitions()) { +ME0PadDigiCollection ME0PadDigiProducer::buildPads(const ME0DigiCollection& det_digis, + const ME0Geometry& geometry) const { + ME0PadDigiCollection out_pads; + for (const auto& p : geometry.etaPartitions()) { // set of pairs, sorted first by pad then by bx std::set > proto_pads; @@ -91,6 +77,7 @@ void ME0PadDigiProducer::buildPads(const ME0DigiCollection& det_digis, ME0PadDig out_pads.insertDigi(p->id(), pad_digi); } } + return out_pads; } DEFINE_FWK_MODULE(ME0PadDigiProducer); From b54fb595a64a7000faab6e4faf93318359e2b72a Mon Sep 17 00:00:00 2001 From: mmusich Date: Wed, 3 Jan 2024 15:28:26 +0100 Subject: [PATCH 189/281] put back some removed functionalities to TkAlStyle --- .../OfflineValidation/interface/TkAlStyle.h | 10 +++++ Alignment/OfflineValidation/src/TkAlStyle.cc | 39 ++++++++++++++++++- 2 files changed, 47 insertions(+), 2 deletions(-) diff --git a/Alignment/OfflineValidation/interface/TkAlStyle.h b/Alignment/OfflineValidation/interface/TkAlStyle.h index ca99704d473eb..fae28aea455f3 100644 --- a/Alignment/OfflineValidation/interface/TkAlStyle.h +++ b/Alignment/OfflineValidation/interface/TkAlStyle.h @@ -42,6 +42,9 @@ enum PublicationStatus { // Data era: determines labels of data-taking periods, e.g. CRUZET enum Era { NONE, CRUZET15, CRAFT15, COLL0T15 }; +// Alignment object +enum AlignObj { IDEALAlign, RUN1Align, CRUZETAlign, CRAFTAlign, Coll0TAlign }; + class TkAlStyle { public: // Adjusts the gStyle settings and store the PublicationStatus @@ -52,6 +55,13 @@ class TkAlStyle { static void set(const TString customTitle); static PublicationStatus status() { return publicationStatus_; } + static TString toTString(const PublicationStatus status); + static TString toTString(const Era era); + static TString toTString(const AlignObj obj); + + static int color(const AlignObj obj); + static int style(const AlignObj obj); + // Draws a title " 2015" on the current pad // dependending on the PublicationStatus // INTERNAL : no extra label (intended for AN-only plots with data) diff --git a/Alignment/OfflineValidation/src/TkAlStyle.cc b/Alignment/OfflineValidation/src/TkAlStyle.cc index 84e01398d8cf0..4f933cd234582 100644 --- a/Alignment/OfflineValidation/src/TkAlStyle.cc +++ b/Alignment/OfflineValidation/src/TkAlStyle.cc @@ -1,6 +1,6 @@ #include "Alignment/OfflineValidation/interface/TkAlStyle.h" -TString toTString(const PublicationStatus status) { +TString TkAlStyle::toTString(const PublicationStatus status) { TString str = ""; if (status == NO_STATUS) str = "Status not set yet!"; @@ -22,7 +22,7 @@ TString toTString(const PublicationStatus status) { return str; } -static TString toTString(const Era era) { +TString TkAlStyle::toTString(const Era era) { TString str = ""; if (era == CRUZET15) str = "0T cosmic ray data 2015"; @@ -34,6 +34,41 @@ static TString toTString(const Era era) { return str; } +TString TkAlStyle::toTString(const AlignObj obj) { + TString str = ""; + if (obj == IDEALAlign) + str = "MC (no mis-alignment)"; + else if (obj == RUN1Align) + str = "No Run-2 alignment (Run-1 geometry)"; + else if (obj == CRUZETAlign) + str = "Aligned (0T cosmic rays)"; + else if (obj == CRAFTAlign) + str = "Aligned (cosmic rays)"; + else if (obj == Coll0TAlign) + str = "Aligned (0T collisions + cosmic rays)"; + + return str; +} + +// Line and fill styles depending on alignment object +int TkAlStyle::color(const AlignObj obj) { + int col = 1; + if (obj == IDEALAlign) + col = kGray + 1; + else if (obj == RUN1Align) + col = kBlack; + else if (obj == CRUZETAlign) + col = kGreen + 2; + else if (obj == CRAFTAlign) + col = kBlue; + else if (obj == Coll0TAlign) + col = kRed; + + return col; +} + +int TkAlStyle::style(const AlignObj obj) { return obj == RUN1Align ? kDashed : kSolid; } + PublicationStatus TkAlStyle::publicationStatus_ = NO_STATUS; Era TkAlStyle::era_ = NONE; TString TkAlStyle::legendheader = ""; From 47a0459afcbdf9f7d00b8500c5015ad81fb3efe5 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Wed, 3 Jan 2024 13:39:56 -0600 Subject: [PATCH 190/281] Made modules global in RecoEcal/EgammaClusterProducers - removed use of beginRun methods and the mutable state - no more mutable state allowed change to global --- .../src/InterestingDetIdCollectionProducer.cc | 33 ++++++++----------- ...nterestingDetIdFromSuperClusterProducer.cc | 32 ++++++++---------- 2 files changed, 27 insertions(+), 38 deletions(-) diff --git a/RecoEcal/EgammaClusterProducers/src/InterestingDetIdCollectionProducer.cc b/RecoEcal/EgammaClusterProducers/src/InterestingDetIdCollectionProducer.cc index bb422be344b55..1e7cf14b6a960 100644 --- a/RecoEcal/EgammaClusterProducers/src/InterestingDetIdCollectionProducer.cc +++ b/RecoEcal/EgammaClusterProducers/src/InterestingDetIdCollectionProducer.cc @@ -32,7 +32,7 @@ The following classes of "interesting id" are considered #include "FWCore/Framework/interface/EventSetup.h" #include "FWCore/Framework/interface/Frameworkfwd.h" #include "FWCore/Framework/interface/MakerMacros.h" -#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/global/EDProducer.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/Utilities/interface/ESGetToken.h" @@ -47,13 +47,12 @@ The following classes of "interesting id" are considered #include -class InterestingDetIdCollectionProducer : public edm::stream::EDProducer<> { +class InterestingDetIdCollectionProducer : public edm::global::EDProducer<> { public: //! ctor explicit InterestingDetIdCollectionProducer(const edm::ParameterSet&); - void beginRun(edm::Run const&, const edm::EventSetup&) final; //! producer - void produce(edm::Event&, const edm::EventSetup&) override; + void produce(edm::StreamID, edm::Event&, const edm::EventSetup&) const override; private: // ----------member data --------------------------- @@ -66,10 +65,8 @@ class InterestingDetIdCollectionProducer : public edm::stream::EDProducer<> { std::string interestingDetIdCollection_; int minimalEtaSize_; int minimalPhiSize_; - const CaloTopology* caloTopology_; int severityLevel_; - const EcalSeverityLevelAlgo* severity_; bool keepNextToDead_; bool keepNextToBoundary_; }; @@ -81,8 +78,8 @@ InterestingDetIdCollectionProducer::InterestingDetIdCollectionProducer(const edm recHitsToken_ = consumes(iConfig.getParameter("recHitsLabel")); basicClustersToken_ = consumes(iConfig.getParameter("basicClustersLabel")); - caloTopologyToken_ = esConsumes(); - sevLVToken_ = esConsumes(); + caloTopologyToken_ = esConsumes(); + sevLVToken_ = esConsumes(); nextToDeadToken_ = esConsumes(); interestingDetIdCollection_ = iConfig.getParameter("interestingDetIdCollection"); @@ -100,19 +97,17 @@ InterestingDetIdCollectionProducer::InterestingDetIdCollectionProducer(const edm keepNextToBoundary_ = iConfig.getParameter("keepNextToBoundary"); } -void InterestingDetIdCollectionProducer::beginRun(edm::Run const& run, const edm::EventSetup& iSetup) { - edm::ESHandle theCaloTopology = iSetup.getHandle(caloTopologyToken_); - caloTopology_ = &(*theCaloTopology); - - edm::ESHandle sevLv = iSetup.getHandle(sevLVToken_); - severity_ = sevLv.product(); -} - // ------------ method called to produce the data ------------ -void InterestingDetIdCollectionProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { +void InterestingDetIdCollectionProducer::produce(edm::StreamID, + edm::Event& iEvent, + const edm::EventSetup& iSetup) const { using namespace edm; using namespace std; + auto const& caloTopology = iSetup.getData(caloTopologyToken_); + + auto const& severity = iSetup.getData(sevLVToken_); + // take BasicClusters Handle pClusters; iEvent.getByToken(basicClustersToken_, pClusters); @@ -155,7 +150,7 @@ void InterestingDetIdCollectionProducer::produce(edm::Event& iEvent, const edm:: if (eMaxId.null()) continue; - const CaloSubdetectorTopology* topology = caloTopology_->getSubdetectorTopology(eMaxId.det(), eMaxId.subdetId()); + const CaloSubdetectorTopology* topology = caloTopology.getSubdetectorTopology(eMaxId.det(), eMaxId.subdetId()); xtalsToStore = topology->getWindow(eMaxId, minimalEtaSize_, minimalPhiSize_); @@ -172,7 +167,7 @@ void InterestingDetIdCollectionProducer::produce(edm::Event& iEvent, const edm:: indexToStore.push_back(it->id()); } // add hits for severities above a threshold - if (severityLevel_ >= 0 && severity_->severityLevel(*it) >= severityLevel_) { + if (severityLevel_ >= 0 && severity.severityLevel(*it) >= severityLevel_) { indexToStore.push_back(it->id()); } if (keepNextToDead_) { diff --git a/RecoEcal/EgammaClusterProducers/src/InterestingDetIdFromSuperClusterProducer.cc b/RecoEcal/EgammaClusterProducers/src/InterestingDetIdFromSuperClusterProducer.cc index a9bc0b3f692b4..223a7cd9434d9 100644 --- a/RecoEcal/EgammaClusterProducers/src/InterestingDetIdFromSuperClusterProducer.cc +++ b/RecoEcal/EgammaClusterProducers/src/InterestingDetIdFromSuperClusterProducer.cc @@ -31,7 +31,7 @@ The following classes of "interesting id" are considered #include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/EventSetup.h" #include "FWCore/Framework/interface/MakerMacros.h" -#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/global/EDProducer.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/Utilities/interface/ESGetToken.h" @@ -46,13 +46,12 @@ The following classes of "interesting id" are considered #include -class InterestingDetIdFromSuperClusterProducer : public edm::stream::EDProducer<> { +class InterestingDetIdFromSuperClusterProducer : public edm::global::EDProducer<> { public: //! ctor explicit InterestingDetIdFromSuperClusterProducer(const edm::ParameterSet&); - void beginRun(edm::Run const&, const edm::EventSetup&) final; //! producer - void produce(edm::Event&, const edm::EventSetup&) override; + void produce(edm::StreamID, edm::Event&, const edm::EventSetup&) const override; private: // ----------member data --------------------------- @@ -64,10 +63,8 @@ class InterestingDetIdFromSuperClusterProducer : public edm::stream::EDProducer< std::string interestingDetIdCollection_; int minimalEtaSize_; int minimalPhiSize_; - const CaloTopology* caloTopology_; int severityLevel_; - const EcalSeverityLevelAlgo* severity_; bool keepNextToDead_; bool keepNextToBoundary_; }; @@ -79,8 +76,8 @@ InterestingDetIdFromSuperClusterProducer::InterestingDetIdFromSuperClusterProduc recHitsToken_ = consumes(iConfig.getParameter("recHitsLabel")); superClustersToken_ = consumes(iConfig.getParameter("superClustersLabel")); - caloTopologyToken_ = esConsumes(); - severityLevelToken_ = esConsumes(); + caloTopologyToken_ = esConsumes(); + severityLevelToken_ = esConsumes(); interestingDetIdCollection_ = iConfig.getParameter("interestingDetIdCollection"); minimalEtaSize_ = iConfig.getParameter("etaSize"); @@ -99,19 +96,16 @@ InterestingDetIdFromSuperClusterProducer::InterestingDetIdFromSuperClusterProduc } } -void InterestingDetIdFromSuperClusterProducer::beginRun(edm::Run const& run, const edm::EventSetup& iSetup) { - edm::ESHandle theCaloTopology = iSetup.getHandle(caloTopologyToken_); - caloTopology_ = &(*theCaloTopology); - - edm::ESHandle sevLv = iSetup.getHandle(severityLevelToken_); - severity_ = sevLv.product(); -} - // ------------ method called to produce the data ------------ -void InterestingDetIdFromSuperClusterProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { +void InterestingDetIdFromSuperClusterProducer::produce(edm::StreamID, + edm::Event& iEvent, + const edm::EventSetup& iSetup) const { using namespace edm; using namespace std; + auto const& caloTopology = iSetup.getData(caloTopologyToken_); + + auto const& severity = iSetup.getData(severityLevelToken_); // take BasicClusters Handle pClusters; iEvent.getByToken(superClustersToken_, pClusters); @@ -154,7 +148,7 @@ void InterestingDetIdFromSuperClusterProducer::produce(edm::Event& iEvent, const if (eMaxId.null()) continue; - const CaloSubdetectorTopology* topology = caloTopology_->getSubdetectorTopology(eMaxId.det(), eMaxId.subdetId()); + const CaloSubdetectorTopology* topology = caloTopology.getSubdetectorTopology(eMaxId.det(), eMaxId.subdetId()); xtalsToStore = topology->getWindow(eMaxId, minimalEtaSize_, minimalPhiSize_); std::vector > xtalsInClus = (*clusIt)->hitsAndFractions(); @@ -173,7 +167,7 @@ void InterestingDetIdFromSuperClusterProducer::produce(edm::Event& iEvent, const indexToStore.push_back(it->id()); } // add hits for severities above a threshold - if (severityLevel_ >= 0 && severity_->severityLevel(*it) >= severityLevel_) { + if (severityLevel_ >= 0 && severity.severityLevel(*it) >= severityLevel_) { indexToStore.push_back(it->id()); } if (keepNextToDead_) { From 1d930f371fca53f336c8a2580214d9f8acd39c9d Mon Sep 17 00:00:00 2001 From: mmusich Date: Wed, 3 Jan 2024 15:29:35 +0100 Subject: [PATCH 191/281] fix include statements for TkAlStyle.h (and apply code-format to trackSplitPlot.C) --- .../OfflineValidation/macros/FitPVResiduals.C | 2 +- .../OfflineValidation/macros/trackSplitPlot.C | 4466 +++++++++-------- .../OfflineValidation/python/TkAlStyle.py | 2 +- 3 files changed, 2329 insertions(+), 2141 deletions(-) diff --git a/Alignment/OfflineValidation/macros/FitPVResiduals.C b/Alignment/OfflineValidation/macros/FitPVResiduals.C index 2dcf9a5037252..04fe43f26e13a 100644 --- a/Alignment/OfflineValidation/macros/FitPVResiduals.C +++ b/Alignment/OfflineValidation/macros/FitPVResiduals.C @@ -39,7 +39,7 @@ #include #include #include -//#include "Alignment/OfflineValidation/macros/TkAlStyle.cc" +//#include "Alignment/OfflineValidation/interface/TkAlStyle.h" #include "Alignment/OfflineValidation/macros/CMS_lumi.h" #define PLOTTING_MACRO // to remove message logger #include "Alignment/OfflineValidation/interface/PVValidationHelpers.h" diff --git a/Alignment/OfflineValidation/macros/trackSplitPlot.C b/Alignment/OfflineValidation/macros/trackSplitPlot.C index 1e48e0ee52a1e..9b1d5c958a439 100644 --- a/Alignment/OfflineValidation/macros/trackSplitPlot.C +++ b/Alignment/OfflineValidation/macros/trackSplitPlot.C @@ -9,688 +9,660 @@ Table Of Contents ***********************************/ #include "trackSplitPlot.h" -#include "Alignment/OfflineValidation/macros/TkAlStyle.cc" +#include "Alignment/OfflineValidation/interface/TkAlStyle.h" //=================== //0. Track Split Plot //=================== -TCanvas *trackSplitPlot(Int_t nFiles,TString *files,TString *names,TString xvar,TString yvar, - Bool_t relative,Bool_t resolution,Bool_t pull, - TString saveas, ostream& summaryfile) -{ - if (TkAlStyle::status() == NO_STATUS) - TkAlStyle::set(INTERNAL); - TString legendOptions = TkAlStyle::legendoptions; - legendOptions.ReplaceAll("all","meanerror,rmserror").ToLower(); - if (outliercut < 0) - outliercut = -1; - gStyle->SetMarkerSize(1.5); - setupcolors(); - stufftodelete->SetOwner(true); - cout << xvar << " " << yvar << endl; - if (xvar == "" && yvar == "") - return 0; - - PlotType type; - if (xvar == "") type = Histogram; - else if (yvar == "") type = OrgHistogram; - else if (resolution) type = Resolution; - else if (nFiles < 1) type = ScatterPlot; - else type = Profile; - if (nFiles < 1) nFiles = 1; - - const Int_t n = nFiles; - - vector p; - Int_t lengths[n]; - - stringstream sx,sy,srel,ssigma1,ssigma2,ssigmaorg; - - sx << xvar << "_org"; - TString xvariable = sx.str(); - TString xvariable2 = ""; - if (xvar == "runNumber") xvariable = "runNumber"; - if (xvar.BeginsWith("nHits")) - { - xvariable = xvar; - xvariable2 = xvar; - xvariable.Append("1_spl"); - xvariable2.Append("2_spl"); - } +TCanvas *trackSplitPlot(Int_t nFiles, + TString *files, + TString *names, + TString xvar, + TString yvar, + Bool_t relative, + Bool_t resolution, + Bool_t pull, + TString saveas, + ostream &summaryfile) { + if (TkAlStyle::status() == NO_STATUS) + TkAlStyle::set(INTERNAL); + TString legendOptions = TkAlStyle::legendoptions; + legendOptions.ReplaceAll("all", "meanerror,rmserror").ToLower(); + if (outliercut < 0) + outliercut = -1; + gStyle->SetMarkerSize(1.5); + setupcolors(); + stufftodelete->SetOwner(true); + cout << xvar << " " << yvar << endl; + if (xvar == "" && yvar == "") + return 0; + + PlotType type; + if (xvar == "") + type = Histogram; + else if (yvar == "") + type = OrgHistogram; + else if (resolution) + type = Resolution; + else if (nFiles < 1) + type = ScatterPlot; + else + type = Profile; + if (nFiles < 1) + nFiles = 1; + + const Int_t n = nFiles; + + vector p; + Int_t lengths[n]; + + stringstream sx, sy, srel, ssigma1, ssigma2, ssigmaorg; + + sx << xvar << "_org"; + TString xvariable = sx.str(); + TString xvariable2 = ""; + if (xvar == "runNumber") + xvariable = "runNumber"; + if (xvar.BeginsWith("nHits")) { + xvariable = xvar; + xvariable2 = xvar; + xvariable.Append("1_spl"); + xvariable2.Append("2_spl"); + } + + sy << "Delta_" << yvar; + TString yvariable = sy.str(); + + TString relvariable = "1"; + if (relative) { + srel << yvar << "_org"; + relvariable = srel.str(); + } + + TString sigma1variable = "", sigma2variable = ""; + if (pull) { + ssigma1 << yvar << "1Err_spl"; + ssigma2 << yvar << "2Err_spl"; + } + sigma1variable = ssigma1.str(); + sigma2variable = ssigma2.str(); + + TString sigmaorgvariable = ""; + if (pull && relative) + ssigmaorg << yvar << "Err_org"; + sigmaorgvariable = ssigmaorg.str(); + + Double_t xmin = -1, xmax = 1, ymin = -1, ymax = 1, xbins = -1, ybins; + if (type == Profile || type == ScatterPlot || type == OrgHistogram || type == Resolution) + axislimits(nFiles, files, xvar, 'x', relative, pull, xmin, xmax, xbins); + if (type == Profile || type == ScatterPlot || type == Histogram || type == Resolution) + axislimits(nFiles, files, yvar, 'y', relative, pull, ymin, ymax, ybins); + + std::vector meansrmss(n); + std::vector means(n); + std::vector rmss(n); + //a file is not "used" if it's MC data and the x variable is run number, or if the filename is blank + std::vector used(n); + + for (Int_t i = 0; i < n; i++) { + stringstream sid; + sid << "p" << i; + TString id = sid.str(); + + //for a profile or resolution, it fills a histogram, q[j], for each bin, then gets the mean and width from there. + vector q; - sy << "Delta_" << yvar; - TString yvariable = sy.str(); - - TString relvariable = "1"; - if (relative) - { - srel << yvar << "_org"; - relvariable = srel.str(); + if (type == ScatterPlot) + p.push_back(new TH2F(id, "", xbins, xmin, xmax, ybins, ymin, ymax)); + if (type == Histogram) + p.push_back(new TH1F(id, "", ybins, ymin, ymax)); + if (type == OrgHistogram) + p.push_back(new TH1F(id, "", xbins, xmin, xmax)); + if (type == Resolution || type == Profile) { + p.push_back(new TH1F(id, "", xbins, xmin, xmax)); + for (Int_t j = 0; j < xbins; j++) { + stringstream sid2; + sid2 << "q" << i << j; + TString id2 = sid2.str(); + q.push_back(new TH1F(id2, "", 1000, ymin * 10, ymax * 10)); + } } - TString sigma1variable = "",sigma2variable = ""; - if (pull) - { - ssigma1 << yvar << "1Err_spl"; - ssigma2 << yvar << "2Err_spl"; + p[i]->SetLineColor(colors[i]); + if (type == Resolution || type == Profile) { + p[i]->SetMarkerStyle(styles[i] / 100); + p[i]->SetMarkerColor(colors[i]); + p[i]->SetLineStyle(styles[i] % 100); + } else { + if (styles[i] >= 100) { + p[i]->SetMarkerStyle(styles[i] / 100); + p[i]->SetMarkerColor(colors[i]); + p[i]->Sumw2(); + } + p[i]->SetLineStyle(styles[i] % 100); } - sigma1variable = ssigma1.str(); - sigma2variable = ssigma2.str(); - - TString sigmaorgvariable = ""; - if (pull && relative) - ssigmaorg << yvar << "Err_org"; - sigmaorgvariable = ssigmaorg.str(); - - Double_t xmin = -1, xmax = 1, ymin = -1, ymax = 1, xbins = -1, ybins; - if (type == Profile || type == ScatterPlot || type == OrgHistogram || type == Resolution) - axislimits(nFiles,files,xvar,'x',relative,pull,xmin,xmax,xbins); - if (type == Profile || type == ScatterPlot || type == Histogram || type == Resolution) - axislimits(nFiles,files,yvar,'y',relative,pull,ymin,ymax,ybins); - - std::vector meansrmss(n); - std::vector means(n); - std::vector rmss(n); - std::vector used(n); //a file is not "used" if it's MC data and the x variable is run number, or if the filename is blank - - for (Int_t i = 0; i < n; i++) - { - stringstream sid; - sid << "p" << i; - TString id = sid.str(); + stufftodelete->Add(p[i]); + p[i]->SetBit(kCanDelete, true); + + used[i] = true; + //if it's MC data (run 1), the run number is meaningless + if ((xvar == "runNumber" && findMax(files[i], "runNumber", 'x') < 2) || files[i] == "") { + used[i] = false; + p[i]->SetLineColor(kWhite); + p[i]->SetMarkerColor(kWhite); + for (unsigned int j = 0; j < q.size(); j++) + delete q[j]; + continue; + } - //for a profile or resolution, it fills a histogram, q[j], for each bin, then gets the mean and width from there. - vector q; + TFile *f = TFile::Open(files[i]); + TTree *tree = (TTree *)f->Get("cosmicValidation/splitterTree"); + if (tree == 0) + tree = (TTree *)f->Get("splitterTree"); + + lengths[i] = tree->GetEntries(); + + Double_t x = 0, y = 0, rel = 1, sigma1 = 1; + Double_t sigma2 = 1; //if !pull, we want to divide by sqrt(2) because we want the error from 1 track + Double_t sigmaorg = 0; + Int_t xint = 0, xint2 = 0; + Int_t runNumber = 0; + double pt1 = 0, maxpt1 = 0; + + if (!relative && !pull && (yvar == "dz" || yvar == "dxy")) + rel = 1e-4; //it's in cm but we want it in um, so divide by 1e-4 + if (!relative && !pull && (yvar == "phi" || yvar == "theta" || yvar == "qoverpt")) + rel = 1e-3; //make the axis labels manageable + + tree->SetBranchAddress("runNumber", &runNumber); + if (type == Profile || type == ScatterPlot || type == Resolution || type == OrgHistogram) { + if (xvar == "runNumber") + tree->SetBranchAddress(xvariable, &xint); + else if (xvar.BeginsWith("nHits")) { + tree->SetBranchAddress(xvariable, &xint); + tree->SetBranchAddress(xvariable2, &xint2); + } else + tree->SetBranchAddress(xvariable, &x); + } + if (type == Profile || type == ScatterPlot || type == Resolution || type == Histogram) { + int branchexists = tree->SetBranchAddress(yvariable, &y); + if (branchexists == -5) //i.e. it doesn't exist + { + yvariable.ReplaceAll("Delta_", "d"); + yvariable.Append("_spl"); + tree->SetBranchAddress(yvariable, &y); + } + } + if (relative && xvar != yvar) //if xvar == yvar, setting the branch here will undo setting it to x 2 lines earlier + tree->SetBranchAddress(relvariable, &rel); //setting the value of rel is then taken care of later: rel = x + if (pull) { + tree->SetBranchAddress(sigma1variable, &sigma1); + tree->SetBranchAddress(sigma2variable, &sigma2); + } + if (relative && pull) + tree->SetBranchAddress(sigmaorgvariable, &sigmaorg); + if (xvar == "pt" || yvar == "pt" || xvar == "qoverpt" || yvar == "qoverpt") { + tree->SetBranchAddress("pt1_spl", &pt1); + } else { + maxpt1 = 999; + } - if (type == ScatterPlot) - p.push_back(new TH2F(id,"",xbins,xmin,xmax,ybins,ymin,ymax)); + Int_t notincluded = 0; //this counts the number that aren't in the right run range. + //it's subtracted from lengths[i] in order to normalize the histograms + + for (Int_t j = 0; j < lengths[i]; j++) { + tree->GetEntry(j); + if (xvar == "runNumber" || xvar.BeginsWith("nHits")) + x = xint; + if (xvar == "runNumber") + runNumber = x; + if (yvar == "phi" && y >= pi) + y -= 2 * pi; + if (yvar == "phi" && y <= -pi) + y += 2 * pi; + if ((runNumber < minrun && runNumber > 1) || + (runNumber > maxrun && maxrun > 0)) //minrun and maxrun are global variables. + { + notincluded++; + continue; + } + if (relative && xvar == yvar) + rel = x; + Double_t error = 0; + if (relative && pull) + error = sqrt((sigma1 / rel) * (sigma1 / rel) + (sigma2 / rel) * (sigma2 / rel) + + (sigmaorg * y / (rel * rel)) * (sigmaorg * x / (rel * rel))); + else + error = sqrt(sigma1 * sigma1 + + sigma2 * sigma2); // = sqrt(2) if !pull; this divides by sqrt(2) to get the error in 1 track + y /= (rel * error); + + if (pt1 > maxpt1) + maxpt1 = pt1; + + if (ymin <= y && y < ymax && xmin <= x && x < xmax) { if (type == Histogram) - p.push_back(new TH1F(id,"",ybins,ymin,ymax)); - if (type == OrgHistogram) - p.push_back(new TH1F(id,"",xbins,xmin,xmax)); - if (type == Resolution || type == Profile) - { - p.push_back(new TH1F(id,"",xbins,xmin,xmax)); - for (Int_t j = 0; j < xbins; j++) - { - - stringstream sid2; - sid2 << "q" << i << j; - TString id2 = sid2.str(); - q.push_back(new TH1F(id2,"",1000,ymin*10,ymax*10)); - - } + p[i]->Fill(y); + if (type == ScatterPlot) + p[i]->Fill(x, y); + if (type == Resolution || type == Profile) { + int which = (p[i]->Fill(x, 0)) - 1; + //get which q[j] by filling p[i] with nothing. (TH1F::Fill returns the bin number) + //p[i]'s actual contents are set later. + if (which >= 0 && (unsigned)which < q.size()) + q[which]->Fill(y); } + if (type == OrgHistogram) + p[i]->Fill(x); + } + + if (xvar.BeginsWith("nHits")) { + x = xint2; + if (ymin <= y && y < ymax && xmin <= x && x < xmax) { + if (type == Histogram) + p[i]->Fill(y); + if (type == ScatterPlot) + p[i]->Fill(x, y); + if (type == Resolution || type == Profile) { + int which = (p[i]->Fill(x, 0)) - 1; + if (which >= 0) + q[which]->Fill(y); //get which q[j] by filling p[i] (with nothing), which returns the bin number + } + if (type == OrgHistogram) + p[i]->Fill(x); + } + } + + if (lengths[i] < 10 ? true + : (((j + 1) / (int)(pow(10, (int)(log10(lengths[i])) - 1))) * + (int)(pow(10, (int)(log10(lengths[i])) - 1)) == + j + 1 || + j + 1 == lengths[i])) + //print when j+1 is a multiple of 10^x, where 10^x has 1 less digit than lengths[i] + // and when it's finished + //For example, if lengths[i] = 123456, it will print this when j+1 = 10000, 20000, ..., 120000, 123456 + //So it will print between 10 and 100 times: 10 when lengths[i] = 10^x and 100 when lengths[i] = 10^x - 1 + { + cout << j + 1 << "/" << lengths[i] << ": "; + if (type == Profile || type == ScatterPlot || type == Resolution) + cout << x << ", " << y << endl; + if (type == OrgHistogram) + cout << x << endl; + if (type == Histogram) + cout << y << endl; + } + } + lengths[i] -= notincluded; + + if (maxpt1 < 6) { //0T + used[i] = false; + p[i]->SetLineColor(kWhite); + p[i]->SetMarkerColor(kWhite); + for (unsigned int j = 0; j < q.size(); j++) + delete q[j]; + continue; + } - p[i]->SetLineColor(colors[i]); - if (type == Resolution || type == Profile) - { - p[i]->SetMarkerStyle(styles[i] / 100); - p[i]->SetMarkerColor(colors[i]); - p[i]->SetLineStyle(styles[i] % 100); - } + meansrmss[i] = ""; + if (type == Histogram || type == OrgHistogram) { + stringstream meanrms; + meanrms.precision(3); + + double average = -1e99; + double rms = -1e99; + + TString var = (type == Histogram ? yvar : xvar); + char axis = (type == Histogram ? 'y' : 'x'); + TString varunits = ""; + if (!relative && !pull) + varunits = units(var, axis); + if (legendOptions.Contains("mean")) { + if (outliercut < 0) + average = p[i]->GetMean(); else - { - if (styles[i] >= 100) - { - p[i]->SetMarkerStyle(styles[i] / 100); - p[i]->SetMarkerColor(colors[i]); - p[i]->Sumw2(); - } - p[i]->SetLineStyle(styles[i] % 100); - } - - stufftodelete->Add(p[i]); - p[i]->SetBit(kCanDelete,true); - - used[i] = true; - if ((xvar == "runNumber" ? findMax(files[i],"runNumber",'x') < 2 : false) || files[i] == "") //if it's MC data (run 1), the run number is meaningless - { - used[i] = false; - p[i]->SetLineColor(kWhite); - p[i]->SetMarkerColor(kWhite); - for (unsigned int j = 0; j < q.size(); j++) - delete q[j]; - continue; - } - - TFile *f = TFile::Open(files[i]); - TTree *tree = (TTree*)f->Get("cosmicValidation/splitterTree"); - if (tree == 0) - tree = (TTree*)f->Get("splitterTree"); - - lengths[i] = tree->GetEntries(); + average = findAverage(files[i], var, axis, relative, pull); + cout << "Average = " << average; + meanrms << "#mu = " << average; + means[i] = average; + if (legendOptions.Contains("meanerror")) { + if (outliercut < 0) + rms = p[i]->GetRMS(); + else + rms = findRMS(files[i], var, axis, relative, pull); + meanrms << " #pm " << rms / TMath::Sqrt(lengths[i] * abs(outliercut)); + cout << " +/- " << rms / TMath::Sqrt(lengths[i] * abs(outliercut)); + } + if (varunits != "") { + meanrms << " " << varunits; + cout << " " << varunits; + } + cout << endl; + if (legendOptions.Contains("rms")) + meanrms << ", "; + } + if (legendOptions.Contains("rms")) { + if (rms < -1e98) { + if (outliercut < 0) + rms = p[i]->GetRMS(); + else + rms = findRMS(files[i], var, axis, relative, pull); + } + cout << "RMS = " << rms; + meanrms << "rms = " << rms; + rmss[i] = rms; + if (legendOptions.Contains("rmserror")) { + //https://root.cern.ch/root/html/src/TH1.cxx.html#7076 + meanrms << " #pm " << rms / TMath::Sqrt(2 * lengths[i] * abs(outliercut)); + cout << " +/- " << rms / TMath::Sqrt(2 * lengths[i] * abs(outliercut)); + } + if (varunits != "") { + meanrms << " " << varunits; + cout << " " << varunits; + } + cout << endl; + } + meansrmss[i] = meanrms.str(); + } - Double_t x = 0, y = 0, rel = 1, sigma1 = 1, sigma2 = 1, //if !pull, we want to divide by sqrt(2) because we want the error from 1 track - sigmaorg = 0; - Int_t xint = 0, xint2 = 0; - Int_t runNumber = 0; - double pt1 = 0, maxpt1 = 0; + if (type == Resolution) { + for (Int_t j = 0; j < xbins; j++) { + p[i]->SetBinContent(j + 1, q[j]->GetRMS()); + p[i]->SetBinError(j + 1, q[j]->GetRMSError()); + delete q[j]; + } + } - if (!relative && !pull && (yvar == "dz" || yvar == "dxy")) - rel = 1e-4; //it's in cm but we want it in um, so divide by 1e-4 - if (!relative && !pull && (yvar == "phi" || yvar == "theta" || yvar == "qoverpt")) - rel = 1e-3; //make the axis labels manageable + if (type == Profile) { + for (Int_t j = 0; j < xbins; j++) { + p[i]->SetBinContent(j + 1, q[j]->GetMean()); + p[i]->SetBinError(j + 1, q[j]->GetMeanError()); + delete q[j]; + } + } - tree->SetBranchAddress("runNumber",&runNumber); - if (type == Profile || type == ScatterPlot || type == Resolution || type == OrgHistogram) - { - if (xvar == "runNumber") - tree->SetBranchAddress(xvariable,&xint); - else if (xvar.BeginsWith("nHits")) - { - tree->SetBranchAddress(xvariable,&xint); - tree->SetBranchAddress(xvariable2,&xint2); - } - else - tree->SetBranchAddress(xvariable,&x); - } - if (type == Profile || type == ScatterPlot || type == Resolution || type == Histogram) - { - int branchexists = tree->SetBranchAddress(yvariable,&y); - if (branchexists == -5) //i.e. it doesn't exist - { - yvariable.ReplaceAll("Delta_","d"); - yvariable.Append("_spl"); - tree->SetBranchAddress(yvariable,&y); - } - } - if (relative && xvar != yvar) //if xvar == yvar, setting the branch here will undo setting it to x 2 lines earlier - tree->SetBranchAddress(relvariable,&rel); //setting the value of rel is then taken care of later: rel = x - if (pull) - { - tree->SetBranchAddress(sigma1variable,&sigma1); - tree->SetBranchAddress(sigma2variable,&sigma2); - } - if (relative && pull) - tree->SetBranchAddress(sigmaorgvariable,&sigmaorg); - if (xvar == "pt" || yvar == "pt" || xvar == "qoverpt" || yvar == "qoverpt") { - tree->SetBranchAddress("pt1_spl", &pt1); + setAxisLabels(p[i], type, xvar, yvar, relative, pull); + } + + if (type == Histogram && !pull && any_of(begin(used), end(used), identity)) { + if (legendOptions.Contains("mean")) { + summaryfile << " mu_Delta" << yvar; + if (relative) + summaryfile << "/" << yvar; + if (pull) + summaryfile << "_pull"; + if (!pull && !relative && plainunits(yvar, 'y') != "") + summaryfile << " (" << plainunits(yvar, 'y') << ")"; + summaryfile << "\t" + << "latexname=$\\mu_{" << latexlabel(yvar, 'y', relative, resolution, pull) << "}$"; + if (!pull && !relative && plainunits(yvar, 'y') != "") + summaryfile << " (" << latexunits(yvar, 'y') << ")"; + summaryfile << "\t" + << "format={:.3g}\t" + << "latexformat=${:.3g}$"; + for (int i = 0; i < n; i++) { + if (used[i]) { + summaryfile << "\t" << means[i]; } else { - maxpt1 = 999; - } - - Int_t notincluded = 0; //this counts the number that aren't in the right run range. - //it's subtracted from lengths[i] in order to normalize the histograms - - for (Int_t j = 0; jGetEntry(j); - if (xvar == "runNumber" || xvar.BeginsWith("nHits")) - x = xint; - if (xvar == "runNumber") - runNumber = x; - if (yvar == "phi" && y >= pi) - y -= 2*pi; - if (yvar == "phi" && y <= -pi) - y += 2*pi; - if ((runNumber < minrun && runNumber > 1) || (runNumber > maxrun && maxrun > 0)) //minrun and maxrun are global variables. - { - notincluded++; - continue; - } - if (relative && xvar == yvar) - rel = x; - Double_t error = 0; - if (relative && pull) - error = sqrt((sigma1/rel)*(sigma1/rel) + (sigma2/rel)*(sigma2/rel) + (sigmaorg*y/(rel*rel))*(sigmaorg*x/(rel*rel))); - else - error = sqrt(sigma1 * sigma1 + sigma2 * sigma2); // = sqrt(2) if !pull; this divides by sqrt(2) to get the error in 1 track - y /= (rel * error); - - if (pt1 > maxpt1) maxpt1 = pt1; - - if (ymin <= y && y < ymax && xmin <= x && x < xmax) - { - if (type == Histogram) - p[i]->Fill(y); - if (type == ScatterPlot) - p[i]->Fill(x,y); - if (type == Resolution || type == Profile) - { - int which = (p[i]->Fill(x,0)) - 1; - //get which q[j] by filling p[i] with nothing. (TH1F::Fill returns the bin number) - //p[i]'s actual contents are set later. - if (which >= 0 && (unsigned)which < q.size()) q[which]->Fill(y); - } - if (type == OrgHistogram) - p[i]->Fill(x); - } - - if (xvar.BeginsWith("nHits")) - { - x = xint2; - if (ymin <= y && y < ymax && xmin <= x && x < xmax) - { - if (type == Histogram) - p[i]->Fill(y); - if (type == ScatterPlot) - p[i]->Fill(x,y); - if (type == Resolution || type == Profile) - { - int which = (p[i]->Fill(x,0)) - 1; - if (which >= 0) q[which]->Fill(y); //get which q[j] by filling p[i] (with nothing), which returns the bin number - } - if (type == OrgHistogram) - p[i]->Fill(x); - } - } - - if (lengths[i] < 10 ? true : - (((j+1)/(int)(pow(10,(int)(log10(lengths[i]))-1)))*(int)(pow(10,(int)(log10(lengths[i]))-1)) == j + 1 || j + 1 == lengths[i])) - //print when j+1 is a multiple of 10^x, where 10^x has 1 less digit than lengths[i] - // and when it's finished - //For example, if lengths[i] = 123456, it will print this when j+1 = 10000, 20000, ..., 120000, 123456 - //So it will print between 10 and 100 times: 10 when lengths[i] = 10^x and 100 when lengths[i] = 10^x - 1 - { - cout << j + 1 << "/" << lengths[i] << ": "; - if (type == Profile || type == ScatterPlot || type == Resolution) - cout << x << ", " << y << endl; - if (type == OrgHistogram) - cout << x << endl; - if (type == Histogram) - cout << y << endl; - } - } - lengths[i] -= notincluded; - - if (maxpt1 < 6) { //0T - used[i] = false; - p[i]->SetLineColor(kWhite); - p[i]->SetMarkerColor(kWhite); - for (unsigned int j = 0; j < q.size(); j++) - delete q[j]; - continue; - } - - meansrmss[i] = ""; - if (type == Histogram || type == OrgHistogram) - { - stringstream meanrms; - meanrms.precision(3); - - double average = -1e99; - double rms = -1e99; - - TString var = (type == Histogram ? yvar : xvar); - char axis = (type == Histogram ? 'y' : 'x'); - TString varunits = ""; - if (!relative && !pull) - varunits = units(var, axis); - if (legendOptions.Contains("mean")) - { - if (outliercut < 0) - average = p[i]->GetMean(); - else - average = findAverage(files[i], var, axis, relative, pull); - cout << "Average = " << average; - meanrms << "#mu = " << average; - means[i] = average; - if (legendOptions.Contains("meanerror")) - { - if (outliercut < 0) - rms = p[i]->GetRMS(); - else - rms = findRMS(files[i], var, axis, relative, pull); - meanrms << " #pm " << rms/TMath::Sqrt(lengths[i]*abs(outliercut)); - cout << " +/- " << rms/TMath::Sqrt(lengths[i]*abs(outliercut)); - } - if (varunits != "") - { - meanrms << " " << varunits; - cout << " " << varunits; - } - cout << endl; - if (legendOptions.Contains("rms")) - meanrms << ", "; - } - if (legendOptions.Contains("rms")) - { - if (rms<-1e98) - { - if (outliercut < 0) - rms = p[i]->GetRMS(); - else - rms = findRMS(files[i], var, axis, relative, pull); - } - cout << "RMS = " << rms; - meanrms << "rms = " << rms; - rmss[i] = rms; - if (legendOptions.Contains("rmserror")) - { - //https://root.cern.ch/root/html/src/TH1.cxx.html#7076 - meanrms << " #pm " << rms/TMath::Sqrt(2*lengths[i]*abs(outliercut)); - cout << " +/- " << rms/TMath::Sqrt(2*lengths[i]*abs(outliercut)); - } - if (varunits != "") - { - meanrms << " " << varunits; - cout << " " << varunits; - } - cout << endl; - } - meansrmss[i] = meanrms.str(); - } - - if (type == Resolution) - { - for (Int_t j = 0; j < xbins; j++) - { - p[i]->SetBinContent(j+1,q[j]->GetRMS()); - p[i]->SetBinError (j+1,q[j]->GetRMSError()); - delete q[j]; - } + summaryfile << "\t" << nan(""); } - - if (type == Profile) - { - for (Int_t j = 0; j < xbins; j++) - { - p[i]->SetBinContent(j+1,q[j]->GetMean()); - p[i]->SetBinError (j+1,q[j]->GetMeanError()); - delete q[j]; - } - } - - setAxisLabels(p[i],type,xvar,yvar,relative,pull); + } + summaryfile << "\n"; } - - if (type == Histogram && !pull && any_of(begin(used), end(used), identity)) { - if (legendOptions.Contains("mean")) { - summaryfile << " mu_Delta" << yvar; - if (relative) summaryfile << "/" << yvar; - if (pull) summaryfile << "_pull"; - if (!pull && !relative && plainunits(yvar, 'y') != "") summaryfile << " (" << plainunits(yvar, 'y') << ")"; - summaryfile << "\t" - << "latexname=$\\mu_{" << latexlabel(yvar, 'y', relative, resolution, pull) << "}$"; - if (!pull && !relative && plainunits(yvar, 'y') != "") summaryfile << " (" << latexunits(yvar, 'y') << ")"; - summaryfile << "\t" - << "format={:.3g}\t" - << "latexformat=${:.3g}$"; - for (int i = 0; i < n; i++) { - if (used[i]) { - summaryfile << "\t" << means[i]; - } else { - summaryfile << "\t" << nan(""); - } - } - summaryfile << "\n"; - } - if (legendOptions.Contains("rms")) { - summaryfile << "sigma_Delta" << yvar; - if (relative) summaryfile << "/" << yvar; - if (pull) summaryfile << "_pull"; - if (!pull && !relative && plainunits(yvar, 'y') != "") summaryfile << " (" << plainunits(yvar, 'y') << ")"; - summaryfile << "\t" - << "latexname=$\\sigma_{" << latexlabel(yvar, 'y', relative, resolution, pull) << "}$"; - if (!pull && !relative && latexunits(yvar, 'y') != "") summaryfile << " (" << latexunits(yvar, 'y') << ")"; - summaryfile << "\t" - << "format={:.3g}\t" - << "latexformat=${:.3g}$"; - for (int i = 0; i < n; i++) { - if (used[i]) { - summaryfile << "\t" << rmss[i]; - } else { - summaryfile << "\t" << nan(""); - } - } - summaryfile << "\n"; + if (legendOptions.Contains("rms")) { + summaryfile << "sigma_Delta" << yvar; + if (relative) + summaryfile << "/" << yvar; + if (pull) + summaryfile << "_pull"; + if (!pull && !relative && plainunits(yvar, 'y') != "") + summaryfile << " (" << plainunits(yvar, 'y') << ")"; + summaryfile << "\t" + << "latexname=$\\sigma_{" << latexlabel(yvar, 'y', relative, resolution, pull) << "}$"; + if (!pull && !relative && latexunits(yvar, 'y') != "") + summaryfile << " (" << latexunits(yvar, 'y') << ")"; + summaryfile << "\t" + << "format={:.3g}\t" + << "latexformat=${:.3g}$"; + for (int i = 0; i < n; i++) { + if (used[i]) { + summaryfile << "\t" << rmss[i]; + } else { + summaryfile << "\t" << nan(""); } + } + summaryfile << "\n"; } + } - TH1 *firstp = 0; - for (int i = 0; i < n; i++) - { - if (used[i]) - { - firstp = p[i]; - break; - } + TH1 *firstp = 0; + for (int i = 0; i < n; i++) { + if (used[i]) { + firstp = p[i]; + break; } - if (firstp == 0) - { - stufftodelete->Clear(); - return 0; + } + if (firstp == 0) { + stufftodelete->Clear(); + return 0; + } + + TCanvas *c1 = TCanvas::MakeDefCanvas(); + + TH1 *maxp = firstp; + if (type == ScatterPlot) + firstp->Draw("COLZ"); + else if (type == Resolution || type == Profile) { + vector g; + TMultiGraph *list = new TMultiGraph(); + for (Int_t i = 0, ii = 0; i < n; i++, ii++) { + if (!used[i]) { + ii--; + continue; + } + g.push_back(new TGraphErrors(p[i])); + for (Int_t j = 0; j < g[ii]->GetN(); j++) { + if (g[ii]->GetY()[j] == 0 && g[ii]->GetEY()[j] == 0) { + g[ii]->RemovePoint(j); + j--; + } + } + list->Add(g[ii]); } - - TCanvas *c1 = TCanvas::MakeDefCanvas(); - - TH1 *maxp = firstp; - if (type == ScatterPlot) - firstp->Draw("COLZ"); - else if (type == Resolution || type == Profile) - { - vector g; - TMultiGraph *list = new TMultiGraph(); - for (Int_t i = 0, ii = 0; i < n; i++, ii++) - { - if (!used[i]) - { - ii--; - continue; - } - g.push_back(new TGraphErrors(p[i])); - for (Int_t j = 0; j < g[ii]->GetN(); j++) - { - if (g[ii]->GetY()[j] == 0 && g[ii]->GetEY()[j] == 0) - { - g[ii]->RemovePoint(j); - j--; - } - } - list->Add(g[ii]); - } - list->Draw("AP"); - Double_t yaxismax = list->GetYaxis()->GetXmax(); - Double_t yaxismin = list->GetYaxis()->GetXmin(); - delete list; //automatically deletes g[i] - if (yaxismin > 0) - { - yaxismax += yaxismin; - yaxismin = 0; - } - firstp->GetYaxis()->SetRangeUser(yaxismin,yaxismax); - if (xvar == "runNumber") - firstp->GetXaxis()->SetNdivisions(505); + list->Draw("AP"); + Double_t yaxismax = list->GetYaxis()->GetXmax(); + Double_t yaxismin = list->GetYaxis()->GetXmin(); + delete list; //automatically deletes g[i] + if (yaxismin > 0) { + yaxismax += yaxismin; + yaxismin = 0; } - else if (type == Histogram || type == OrgHistogram) - { - Bool_t allthesame = true; - for (Int_t i = 1; i < n && allthesame; i++) - { - if (lengths[i] != lengths[0]) - allthesame = false; - } - if (!allthesame && xvar != "runNumber") - for (Int_t i = 0; i < n; i++) - { - p[i]->Scale(1.0/lengths[i]); //This does NOT include events that are out of the run number range (minrun and maxrun). - //It DOES include events that are out of the histogram range. - } - maxp = (TH1F*)firstp->Clone("maxp"); - stufftodelete->Add(maxp); - maxp->SetBit(kCanDelete,true); - maxp->SetLineColor(kWhite); - for (Int_t i = 1; i <= maxp->GetNbinsX(); i++) - { - for (Int_t j = 0; j < n; j++) - { - if (!used[j]) - continue; - maxp->SetBinContent(i,TMath::Max(maxp->GetBinContent(i),p[j]->GetBinContent(i))); - } - } - maxp->SetMarkerStyle(0); - maxp->SetMinimum(0); - maxp->Draw(""); - if (xvar == "runNumber") - { - maxp->GetXaxis()->SetNdivisions(505); - maxp->Draw(""); - } + firstp->GetYaxis()->SetRangeUser(yaxismin, yaxismax); + if (xvar == "runNumber") + firstp->GetXaxis()->SetNdivisions(505); + } else if (type == Histogram || type == OrgHistogram) { + Bool_t allthesame = true; + for (Int_t i = 1; i < n && allthesame; i++) { + if (lengths[i] != lengths[0]) + allthesame = false; } - - int nEntries = 0; - for (int i = 0; i < n; i++) - if (used[i]) - nEntries++; - double width = 0.5; - if (type == Histogram || type == OrgHistogram) - width *= 2; - TLegend *legend = TkAlStyle::legend(nEntries, width); - legend->SetTextSize(0); - if (type == Histogram || type == OrgHistogram) - legend->SetNColumns(2); - stufftodelete->Add(legend); - legend->SetBit(kCanDelete,true); - - for (Int_t i = 0; i < n; i++) - { - if (!used[i]) - continue; - if (type == Resolution || type == Profile) - { - if (p[i] == firstp) - p[i]->Draw("P"); - else - p[i]->Draw("same P"); - legend->AddEntry(p[i],names[i],"pl"); - } - else if (type == Histogram || type == OrgHistogram) - { - if (styles[i] >= 100) - { - p[i]->Draw("same P0E"); - legend->AddEntry(p[i],names[i],"pl"); - } - else - { - p[i]->Draw("same hist"); - legend->AddEntry(p[i],names[i],"l"); - } - legend->AddEntry((TObject*)0,meansrmss[i],""); - } + if (!allthesame && xvar != "runNumber") + for (Int_t i = 0; i < n; i++) { + //This does NOT include events that are out of the run number range (minrun and maxrun). + //It DOES include events that are out of the histogram range. + p[i]->Scale(1.0 / lengths[i]); + } + maxp = (TH1F *)firstp->Clone("maxp"); + stufftodelete->Add(maxp); + maxp->SetBit(kCanDelete, true); + maxp->SetLineColor(kWhite); + for (Int_t i = 1; i <= maxp->GetNbinsX(); i++) { + for (Int_t j = 0; j < n; j++) { + if (!used[j]) + continue; + maxp->SetBinContent(i, TMath::Max(maxp->GetBinContent(i), p[j]->GetBinContent(i))); + } } - if (legend->GetListOfPrimitives()->At(0) == 0) - { - stufftodelete->Clear(); - deleteCanvas(c1); - return 0; + maxp->SetMarkerStyle(0); + maxp->SetMinimum(0); + maxp->Draw(""); + if (xvar == "runNumber") { + maxp->GetXaxis()->SetNdivisions(505); + maxp->Draw(""); } - - c1->Update(); - legend->Draw(); - - double legendfraction = legend->GetY2() - legend->GetY1(); //apparently GetY1 and GetY2 give NDC coordinates. This is not a mistake on my part - double padheight = gPad->GetUymax() - gPad->GetUymin(); - //legendfraction = legendheight / padheight = newlegendheight / newpadheight - //newpadheight = padheight + x - //newlegendheight = newpadheight - padheight = x so it doesn't cover anything - //==>legendfraction = x/(padheight+x) - /* ==> */ double x = padheight*legendfraction / (1-legendfraction) * 1.5; //1.5 to give extra room - maxp->GetYaxis()->SetRangeUser(gPad->GetUymin(), gPad->GetUymax() + x); - - TkAlStyle::drawStandardTitle(); - - c1->Update(); - - if (saveas != "") - saveplot(c1,saveas); - - return c1; + } + + int nEntries = 0; + for (int i = 0; i < n; i++) + if (used[i]) + nEntries++; + double width = 0.5; + if (type == Histogram || type == OrgHistogram) + width *= 2; + TLegend *legend = TkAlStyle::legend(nEntries, width); + legend->SetTextSize(0); + if (type == Histogram || type == OrgHistogram) + legend->SetNColumns(2); + stufftodelete->Add(legend); + legend->SetBit(kCanDelete, true); + + for (Int_t i = 0; i < n; i++) { + if (!used[i]) + continue; + if (type == Resolution || type == Profile) { + if (p[i] == firstp) + p[i]->Draw("P"); + else + p[i]->Draw("same P"); + legend->AddEntry(p[i], names[i], "pl"); + } else if (type == Histogram || type == OrgHistogram) { + if (styles[i] >= 100) { + p[i]->Draw("same P0E"); + legend->AddEntry(p[i], names[i], "pl"); + } else { + p[i]->Draw("same hist"); + legend->AddEntry(p[i], names[i], "l"); + } + legend->AddEntry((TObject *)0, meansrmss[i], ""); + } + } + if (legend->GetListOfPrimitives()->At(0) == 0) { + stufftodelete->Clear(); + deleteCanvas(c1); + return 0; + } + + c1->Update(); + legend->Draw(); + + double legendfraction = + legend->GetY2() - + legend->GetY1(); //apparently GetY1 and GetY2 give NDC coordinates. This is not a mistake on my part + double padheight = gPad->GetUymax() - gPad->GetUymin(); + //legendfraction = legendheight / padheight = newlegendheight / newpadheight + //newpadheight = padheight + x + //newlegendheight = newpadheight - padheight = x so it doesn't cover anything + //==>legendfraction = x/(padheight+x) + /* ==> */ double x = padheight * legendfraction / (1 - legendfraction) * 1.5; //1.5 to give extra room + maxp->GetYaxis()->SetRangeUser(gPad->GetUymin(), gPad->GetUymax() + x); + + TkAlStyle::drawStandardTitle(); + + c1->Update(); + + if (saveas != "") + saveplot(c1, saveas); + + return c1; } - //make a 1D histogram of Delta_yvar -TCanvas *trackSplitPlot(Int_t nFiles,TString *files,TString *names,TString var, - Bool_t relative,Bool_t pull,TString saveas, ostream& summaryfile) -{ - return trackSplitPlot(nFiles,files,names,"",var,relative,false,pull,saveas,summaryfile); +TCanvas *trackSplitPlot(Int_t nFiles, + TString *files, + TString *names, + TString var, + Bool_t relative, + Bool_t pull, + TString saveas, + ostream &summaryfile) { + return trackSplitPlot(nFiles, files, names, "", var, relative, false, pull, saveas, summaryfile); } - - //For 1 file -TCanvas *trackSplitPlot(TString file,TString xvar,TString yvar,Bool_t profile, - Bool_t relative,Bool_t resolution,Bool_t pull, - TString saveas, ostream& summaryfile) -{ - Int_t nFiles = 0; - if (profile) //it interprets nFiles < 1 as 1 file, make a scatterplot - nFiles = 1; - TString *files = &file; - TString name = ""; - TString *names = &name; - return trackSplitPlot(nFiles,files,names,xvar,yvar,relative,resolution,pull,saveas,summaryfile); +TCanvas *trackSplitPlot(TString file, + TString xvar, + TString yvar, + Bool_t profile, + Bool_t relative, + Bool_t resolution, + Bool_t pull, + TString saveas, + ostream &summaryfile) { + Int_t nFiles = 0; + if (profile) //it interprets nFiles < 1 as 1 file, make a scatterplot + nFiles = 1; + TString *files = &file; + TString name = ""; + TString *names = &name; + return trackSplitPlot(nFiles, files, names, xvar, yvar, relative, resolution, pull, saveas, summaryfile); } //make a 1D histogram of Delta_yvar -TCanvas *trackSplitPlot(TString file,TString var, - Bool_t relative,Bool_t pull, - TString saveas, ostream& summaryfile) -{ - Int_t nFiles = 1; - TString *files = &file; - TString name = ""; - TString *names = &name; - return trackSplitPlot(nFiles,files,names,var,relative,pull,saveas,summaryfile); +TCanvas *trackSplitPlot(TString file, TString var, Bool_t relative, Bool_t pull, TString saveas, ostream &summaryfile) { + Int_t nFiles = 1; + TString *files = &file; + TString name = ""; + TString *names = &name; + return trackSplitPlot(nFiles, files, names, var, relative, pull, saveas, summaryfile); } -void saveplot(TCanvas *c1,TString saveas) -{ - if (saveas == "") - return; - TString saveas2 = saveas, - saveas3 = saveas; - saveas2.ReplaceAll(".pngepsroot",""); - saveas3.Remove(saveas3.Length()-11); - if (saveas2 == saveas3) - { - c1->SaveAs(saveas.ReplaceAll(".pngepsroot",".png")); - c1->SaveAs(saveas.ReplaceAll(".png",".eps")); - c1->SaveAs(saveas.ReplaceAll(".eps",".root")); - c1->SaveAs(saveas.ReplaceAll(".root",".pdf")); - } - else - { - c1->SaveAs(saveas); - } +void saveplot(TCanvas *c1, TString saveas) { + if (saveas == "") + return; + TString saveas2 = saveas, saveas3 = saveas; + saveas2.ReplaceAll(".pngepsroot", ""); + saveas3.Remove(saveas3.Length() - 11); + if (saveas2 == saveas3) { + c1->SaveAs(saveas.ReplaceAll(".pngepsroot", ".png")); + c1->SaveAs(saveas.ReplaceAll(".png", ".eps")); + c1->SaveAs(saveas.ReplaceAll(".eps", ".root")); + c1->SaveAs(saveas.ReplaceAll(".root", ".pdf")); + } else { + c1->SaveAs(saveas); + } } -void deleteCanvas(TObject *canvas) -{ - if (canvas == 0) return; - if (!canvas->InheritsFrom("TCanvas")) - { - delete canvas; - return; - } - TCanvas *c1 = (TCanvas*)canvas; - TList *list = c1->GetListOfPrimitives(); - list->SetOwner(true); - list->Clear(); - delete c1; +void deleteCanvas(TObject *canvas) { + if (canvas == 0) + return; + if (!canvas->InheritsFrom("TCanvas")) { + delete canvas; + return; + } + TCanvas *c1 = (TCanvas *)canvas; + TList *list = c1->GetListOfPrimitives(); + list->SetOwner(true); + list->Clear(); + delete c1; } -void setupcolors() -{ - if (colorsset) return; - colorsset = true; - colors.clear(); - styles.clear(); - Color_t array[15] = {1,2,3,4,6,7,8,9, - kYellow+3,kOrange+10,kPink-2,kTeal+9,kAzure-8,kViolet-6,kSpring-1}; - for (int i = 0; i < 15; i++) - { - colors.push_back(array[i]); - styles.push_back(1); //Set the default to 1 - //This is to be consistent with the other validation - } +void setupcolors() { + if (colorsset) + return; + colorsset = true; + colors.clear(); + styles.clear(); + Color_t array[15] = { + 1, 2, 3, 4, 6, 7, 8, 9, kYellow + 3, kOrange + 10, kPink - 2, kTeal + 9, kAzure - 8, kViolet - 6, kSpring - 1}; + for (int i = 0; i < 15; i++) { + colors.push_back(array[i]); + styles.push_back(1); //Set the default to 1 + //This is to be consistent with the other validation + } } //This makes a plot, of Delta_yvar vs. runNumber, zoomed in to between firstrun and lastrun. @@ -699,17 +671,23 @@ void setupcolors() //There might be bins with very few events => big error bars, //or just 1 event => no error bar -void runNumberZoomed(Int_t nFiles,TString *files,TString *names,TString yvar, - Bool_t relative,Bool_t resolution,Bool_t pull, - Int_t firstRun,Int_t lastRun,TString saveas) -{ - Int_t tempminrun = minrun; - Int_t tempmaxrun = maxrun; - minrun = firstRun; - maxrun = lastRun; - trackSplitPlot(nFiles,files,names,"runNumber",yvar,relative,resolution,pull,saveas); - minrun = tempminrun; - maxrun = tempmaxrun; +void runNumberZoomed(Int_t nFiles, + TString *files, + TString *names, + TString yvar, + Bool_t relative, + Bool_t resolution, + Bool_t pull, + Int_t firstRun, + Int_t lastRun, + TString saveas) { + Int_t tempminrun = minrun; + Int_t tempmaxrun = maxrun; + minrun = firstRun; + maxrun = lastRun; + trackSplitPlot(nFiles, files, names, "runNumber", yvar, relative, resolution, pull, saveas); + minrun = tempminrun; + maxrun = tempmaxrun; } //========================== @@ -734,379 +712,525 @@ void runNumberZoomed(Int_t nFiles,TString *files,TString *names,TString yvar, //The best way to run misalignmentDependence is through makePlots. If you want to run misalignmentDependence directly, //the LAST function, all the way at the bottom of this file, is probably the most practical to use (for all three of these). - // The first function takes a canvas as its argument. This canvas needs to have been produced with trackSplitPlot using // the same values of xvar, yvar, relative, resolution, and pull or something strange could happen. void misalignmentDependence(TCanvas *c1old, - Int_t nFiles,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString xvar,TString yvar, - TF1 *function,Int_t parameter,TString parametername,TString functionname, - Bool_t relative,Bool_t resolution,Bool_t pull, - TString saveas) -{ - if (c1old == 0) return; - c1old = (TCanvas*)c1old->Clone("c1old"); - if (misalignment == "" || yvar == "") return; - Bool_t drawfits = (parameter < 0); - if (parameter < 0) - parameter = -parameter - 1; //-1 --> 0, -2 --> 1, -3 --> 2, ... - TString yaxislabel = nPart(1,parametername); - TString parameterunits = nPart(2,parametername); - if (parameterunits != "") - yaxislabel.Append(" (").Append(parameterunits).Append(")"); - TList *list = c1old->GetListOfPrimitives(); - //const int n = list->GetEntries() - 2 - (xvar == ""); - const int n = nFiles; - - gStyle->SetOptStat(0); - gStyle->SetOptFit(0); - gStyle->SetFitFormat("5.4g"); - gStyle->SetFuncColor(2); - gStyle->SetFuncStyle(1); - gStyle->SetFuncWidth(1); - - TH1 **p = new TH1*[n]; - TF1 **f = new TF1*[n]; - bool used[n]; - for (Int_t i = 0; i < n; i++) - { - stringstream s0; - s0 << "p" << i; - TString pname = s0.str(); - p[i] = (TH1*)list->/*At(i+1+(xvar == ""))*/FindObject(pname); - used[i] = (p[i] != 0); - if (used[i]) - p[i]->SetDirectory(0); - if (xvar == "") - continue; - stringstream s; - s << function->GetName() << i; - TString newname = s.str(); - f[i] = (TF1*)function->Clone(newname); - stufftodelete->Add(f[i]); - } - - Double_t *result = new Double_t[nFiles]; - Double_t *error = new Double_t[nFiles]; + Int_t nFiles, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString xvar, + TString yvar, + TF1 *function, + Int_t parameter, + TString parametername, + TString functionname, + Bool_t relative, + Bool_t resolution, + Bool_t pull, + TString saveas) { + if (c1old == 0) + return; + c1old = (TCanvas *)c1old->Clone("c1old"); + if (misalignment == "" || yvar == "") + return; + Bool_t drawfits = (parameter < 0); + if (parameter < 0) + parameter = -parameter - 1; //-1 --> 0, -2 --> 1, -3 --> 2, ... + TString yaxislabel = nPart(1, parametername); + TString parameterunits = nPart(2, parametername); + if (parameterunits != "") + yaxislabel.Append(" (").Append(parameterunits).Append(")"); + TList *list = c1old->GetListOfPrimitives(); + //const int n = list->GetEntries() - 2 - (xvar == ""); + const int n = nFiles; + + gStyle->SetOptStat(0); + gStyle->SetOptFit(0); + gStyle->SetFitFormat("5.4g"); + gStyle->SetFuncColor(2); + gStyle->SetFuncStyle(1); + gStyle->SetFuncWidth(1); + + TH1 **p = new TH1 *[n]; + TF1 **f = new TF1 *[n]; + bool used[n]; + for (Int_t i = 0; i < n; i++) { + stringstream s0; + s0 << "p" << i; + TString pname = s0.str(); + p[i] = (TH1 *)list->/*At(i+1+(xvar == ""))*/ FindObject(pname); + used[i] = (p[i] != 0); + if (used[i]) + p[i]->SetDirectory(0); if (xvar == "") - { - yaxislabel = axislabel(yvar,'y',relative,resolution,pull); - for (Int_t i = 0; i < nFiles; i++) - { - if (!used[i]) continue; - if (!resolution) - { - result[i] = p[i]->GetMean(); - error[i] = p[i]->GetMeanError(); - } - else - { - result[i] = p[i]->GetRMS(); - error[i] = p[i]->GetRMSError(); - } - cout << result[i] << " +/- " << error[i] << endl; - } + continue; + stringstream s; + s << function->GetName() << i; + TString newname = s.str(); + f[i] = (TF1 *)function->Clone(newname); + stufftodelete->Add(f[i]); + } + + Double_t *result = new Double_t[nFiles]; + Double_t *error = new Double_t[nFiles]; + if (xvar == "") { + yaxislabel = axislabel(yvar, 'y', relative, resolution, pull); + for (Int_t i = 0; i < nFiles; i++) { + if (!used[i]) + continue; + if (!resolution) { + result[i] = p[i]->GetMean(); + error[i] = p[i]->GetMeanError(); + } else { + result[i] = p[i]->GetRMS(); + error[i] = p[i]->GetRMSError(); + } + cout << result[i] << " +/- " << error[i] << endl; } - else - { - for (int i = 0; i < n; i++) - { - if (!used[i]) continue; - f[i]->SetLineColor(colors[i]); - f[i]->SetLineStyle(styles[i]); - f[i]->SetLineWidth(1); - p[i]->SetMarkerColor(colors[i]); - p[i]->SetMarkerStyle(20+i); - p[i]->SetLineColor(colors[i]); - p[i]->SetLineStyle(styles[i]); - p[i]->Fit(f[i],"IM"); - error[i] = f[i]->GetParError (parameter); - //the fits sometimes don't work if the parameters are constrained. - //take care of the constraining here. - //for sine, make the amplitude positive and the phase between 0 and 2pi. - //unless the amplitude is the only parameter (eg sagitta theta theta) - if (function->GetName() == TString("sine") && function->GetNumberFreeParameters() >= 2) - { - if (f[i]->GetParameter(0) < 0) - { - f[i]->SetParameter(0,-f[i]->GetParameter(0)); - f[i]->SetParameter(2,f[i]->GetParameter(2)+pi); - } - while(f[i]->GetParameter(2) >= 2*pi) - f[i]->SetParameter(2,f[i]->GetParameter(2)-2*pi); - while(f[i]->GetParameter(2) < 0) - f[i]->SetParameter(2,f[i]->GetParameter(2)+2*pi); - } - result[i] = f[i]->GetParameter(parameter); - } + } else { + for (int i = 0; i < n; i++) { + if (!used[i]) + continue; + f[i]->SetLineColor(colors[i]); + f[i]->SetLineStyle(styles[i]); + f[i]->SetLineWidth(1); + p[i]->SetMarkerColor(colors[i]); + p[i]->SetMarkerStyle(20 + i); + p[i]->SetLineColor(colors[i]); + p[i]->SetLineStyle(styles[i]); + p[i]->Fit(f[i], "IM"); + error[i] = f[i]->GetParError(parameter); + //the fits sometimes don't work if the parameters are constrained. + //take care of the constraining here. + //for sine, make the amplitude positive and the phase between 0 and 2pi. + //unless the amplitude is the only parameter (eg sagitta theta theta) + if (function->GetName() == TString("sine") && function->GetNumberFreeParameters() >= 2) { + if (f[i]->GetParameter(0) < 0) { + f[i]->SetParameter(0, -f[i]->GetParameter(0)); + f[i]->SetParameter(2, f[i]->GetParameter(2) + pi); + } + while (f[i]->GetParameter(2) >= 2 * pi) + f[i]->SetParameter(2, f[i]->GetParameter(2) - 2 * pi); + while (f[i]->GetParameter(2) < 0) + f[i]->SetParameter(2, f[i]->GetParameter(2) + 2 * pi); + } + result[i] = f[i]->GetParameter(parameter); } + } + TCanvas *c1 = TCanvas::MakeDefCanvas(); - TCanvas *c1 = TCanvas::MakeDefCanvas(); - - if (drawfits && xvar != "" && yvar != "") - { - TString legendtitle = "["; - legendtitle.Append(functionname); - legendtitle.Append("]"); - TLegend *legend = new TLegend(.7,.7,.9,.9,legendtitle,"br"); - stufftodelete->Add(legend); - TString drawoption = ""; - for (int i = 0; i < n; i++) - { - if (!used[i]) continue; - p[i]->Draw(drawoption); - f[i]->Draw("same"); - drawoption = "same"; - - stringstream s; - s.precision(3); - s << nPart(1,parametername) << " = " << result[i] << " #pm " << error[i]; - if (parameterunits != "") s << " " << parameterunits; - TString str = s.str(); - legend->AddEntry(p[i],names[i],"pl"); - legend->AddEntry(f[i],str,"l"); - } - c1->Update(); - Double_t x1min = .98*gPad->GetUxmin() + .02*gPad->GetUxmax(); - Double_t x2max = .02*gPad->GetUxmin() + .98*gPad->GetUxmax(); - Double_t y1min = .98*gPad->GetUymin() + .02*gPad->GetUymax(); - Double_t y2max = .02*gPad->GetUymin() + .98*gPad->GetUymax(); - Double_t width = .4*(x2max-x1min); - Double_t height = (1./20)*legend->GetListOfPrimitives()->GetEntries()*(y2max-y1min); - width *= 2; - height /= 2; - legend->SetNColumns(2); - - Double_t newy2max = placeLegend(legend,width,height,x1min,y1min,x2max,y2max); - p[0]->GetYaxis()->SetRangeUser(gPad->GetUymin(),(newy2max-.02*gPad->GetUymin())/.98); - - legend->SetFillStyle(0); - legend->Draw(); + if (drawfits && xvar != "" && yvar != "") { + TString legendtitle = "["; + legendtitle.Append(functionname); + legendtitle.Append("]"); + TLegend *legend = new TLegend(.7, .7, .9, .9, legendtitle, "br"); + stufftodelete->Add(legend); + TString drawoption = ""; + for (int i = 0; i < n; i++) { + if (!used[i]) + continue; + p[i]->Draw(drawoption); + f[i]->Draw("same"); + drawoption = "same"; + + stringstream s; + s.precision(3); + s << nPart(1, parametername) << " = " << result[i] << " #pm " << error[i]; + if (parameterunits != "") + s << " " << parameterunits; + TString str = s.str(); + legend->AddEntry(p[i], names[i], "pl"); + legend->AddEntry(f[i], str, "l"); } - else - { - if (values == 0) return; - - Bool_t phasesmatter = false; - if (misalignment == "elliptical" || misalignment == "sagitta" || misalignment == "skew") - { - if (phases == 0) - { - cout << "This misalignment has a phase, but you didn't supply the phases!" << endl - << "Can't produce plots depending on the misalignment value." << endl; - return; - } - int firstnonzero = -1; - for (Int_t i = 0; i < nFiles; i++) - { - if (values[i] == 0) continue; //if the amplitude is 0 the phase is arbitrary - if (firstnonzero == -1) firstnonzero = i; - if (phases[i] != phases[firstnonzero]) - phasesmatter = true; - } - } - - if (!phasesmatter) - { - TGraphErrors *g = new TGraphErrors(nFiles,values,result,(Double_t*)0,error); - g->SetName(""); - stufftodelete->Add(g); - - TString xaxislabel = "#epsilon_{"; - xaxislabel.Append(misalignment); - xaxislabel.Append("}"); - g->GetXaxis()->SetTitle(xaxislabel); - if (xvar != "") - { - yaxislabel.Append(" ["); - yaxislabel.Append(functionname); - yaxislabel.Append("]"); - } - g->GetYaxis()->SetTitle(yaxislabel); - - g->SetMarkerColor(colors[0]); - g->SetMarkerStyle(20); - - g->Draw("AP"); - Double_t yaxismax = g->GetYaxis()->GetXmax(); - Double_t yaxismin = g->GetYaxis()->GetXmin(); - if (yaxismin > 0) - { - yaxismax += yaxismin; - yaxismin = 0; - } - g->GetYaxis()->SetRangeUser(yaxismin,yaxismax); - g->Draw("AP"); - } - else - { - double *xvalues = new double[nFiles]; - double *yvalues = new double[nFiles]; //these are not physically x and y (except in the case of skew) - for (int i = 0; i < nFiles; i++) - { - xvalues[i] = values[i] * cos(phases[i]); - yvalues[i] = values[i] * sin(phases[i]); - } - TGraph2DErrors *g = new TGraph2DErrors(nFiles,xvalues,yvalues,result,(Double_t*)0,(Double_t*)0,error); - g->SetName(""); - stufftodelete->Add(g); - delete[] xvalues; //A TGraph2DErrors has its own copy of xvalues and yvalues, so it's ok to delete these copies. - delete[] yvalues; - - TString xaxislabel = "#epsilon_{"; - xaxislabel.Append(misalignment); - xaxislabel.Append("}cos(#delta)"); - TString realyaxislabel = xaxislabel; - realyaxislabel.ReplaceAll("cos(#delta)","sin(#delta)"); - g->GetXaxis()->SetTitle(xaxislabel); - g->GetYaxis()->SetTitle(realyaxislabel); - TString zaxislabel = /*"fake"*/yaxislabel; //yaxislabel is defined earlier - if (xvar != "") - { - zaxislabel.Append(" ["); - zaxislabel.Append(functionname); - zaxislabel.Append("]"); - } - g->GetZaxis()->SetTitle(zaxislabel); - g->SetMarkerStyle(20); - g->Draw("pcolerr"); - } + c1->Update(); + Double_t x1min = .98 * gPad->GetUxmin() + .02 * gPad->GetUxmax(); + Double_t x2max = .02 * gPad->GetUxmin() + .98 * gPad->GetUxmax(); + Double_t y1min = .98 * gPad->GetUymin() + .02 * gPad->GetUymax(); + Double_t y2max = .02 * gPad->GetUymin() + .98 * gPad->GetUymax(); + Double_t width = .4 * (x2max - x1min); + Double_t height = (1. / 20) * legend->GetListOfPrimitives()->GetEntries() * (y2max - y1min); + width *= 2; + height /= 2; + legend->SetNColumns(2); + + Double_t newy2max = placeLegend(legend, width, height, x1min, y1min, x2max, y2max); + p[0]->GetYaxis()->SetRangeUser(gPad->GetUymin(), (newy2max - .02 * gPad->GetUymin()) / .98); + + legend->SetFillStyle(0); + legend->Draw(); + } else { + if (values == 0) + return; + + Bool_t phasesmatter = false; + if (misalignment == "elliptical" || misalignment == "sagitta" || misalignment == "skew") { + if (phases == 0) { + cout << "This misalignment has a phase, but you didn't supply the phases!" << endl + << "Can't produce plots depending on the misalignment value." << endl; + return; + } + int firstnonzero = -1; + for (Int_t i = 0; i < nFiles; i++) { + if (values[i] == 0) + continue; //if the amplitude is 0 the phase is arbitrary + if (firstnonzero == -1) + firstnonzero = i; + if (phases[i] != phases[firstnonzero]) + phasesmatter = true; + } } - if (saveas != "") - { - saveplot(c1,saveas); - delete[] p; - delete[] f; - delete[] result; - delete[] error; - delete c1old; + if (!phasesmatter) { + TGraphErrors *g = new TGraphErrors(nFiles, values, result, (Double_t *)0, error); + g->SetName(""); + stufftodelete->Add(g); + + TString xaxislabel = "#epsilon_{"; + xaxislabel.Append(misalignment); + xaxislabel.Append("}"); + g->GetXaxis()->SetTitle(xaxislabel); + if (xvar != "") { + yaxislabel.Append(" ["); + yaxislabel.Append(functionname); + yaxislabel.Append("]"); + } + g->GetYaxis()->SetTitle(yaxislabel); + + g->SetMarkerColor(colors[0]); + g->SetMarkerStyle(20); + + g->Draw("AP"); + Double_t yaxismax = g->GetYaxis()->GetXmax(); + Double_t yaxismin = g->GetYaxis()->GetXmin(); + if (yaxismin > 0) { + yaxismax += yaxismin; + yaxismin = 0; + } + g->GetYaxis()->SetRangeUser(yaxismin, yaxismax); + g->Draw("AP"); + } else { + double *xvalues = new double[nFiles]; + double *yvalues = new double[nFiles]; //these are not physically x and y (except in the case of skew) + for (int i = 0; i < nFiles; i++) { + xvalues[i] = values[i] * cos(phases[i]); + yvalues[i] = values[i] * sin(phases[i]); + } + TGraph2DErrors *g = new TGraph2DErrors(nFiles, xvalues, yvalues, result, (Double_t *)0, (Double_t *)0, error); + g->SetName(""); + stufftodelete->Add(g); + delete[] xvalues; //A TGraph2DErrors has its own copy of xvalues and yvalues, so it's ok to delete these copies. + delete[] yvalues; + + TString xaxislabel = "#epsilon_{"; + xaxislabel.Append(misalignment); + xaxislabel.Append("}cos(#delta)"); + TString realyaxislabel = xaxislabel; + realyaxislabel.ReplaceAll("cos(#delta)", "sin(#delta)"); + g->GetXaxis()->SetTitle(xaxislabel); + g->GetYaxis()->SetTitle(realyaxislabel); + TString zaxislabel = /*"fake"*/ yaxislabel; //yaxislabel is defined earlier + if (xvar != "") { + zaxislabel.Append(" ["); + zaxislabel.Append(functionname); + zaxislabel.Append("]"); + } + g->GetZaxis()->SetTitle(zaxislabel); + g->SetMarkerStyle(20); + g->Draw("pcolerr"); } + } + + if (saveas != "") { + saveplot(c1, saveas); + delete[] p; + delete[] f; + delete[] result; + delete[] error; + delete c1old; + } } - //This version allows you to show multiple parameters. It runs the previous version multiple times, once for each parameter. //saveas will be modified to indicate which parameter is being used each time. void misalignmentDependence(TCanvas *c1old, - Int_t nFiles,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString xvar,TString yvar, - TF1 *function,Int_t nParameters,Int_t *parameters,TString *parameternames,TString functionname, - Bool_t relative,Bool_t resolution,Bool_t pull, - TString saveas) -{ - for (int i = 0; i < nParameters; i++) - { - TString saveasi = saveas; - TString insert = nPart(1,parameternames[i]); - insert.Prepend("."); - saveasi.Insert(saveasi.Last('.'),insert); //insert the parameter name before the file extension - misalignmentDependence(c1old, - nFiles,names,misalignment,values,phases,xvar,yvar, - function,parameters[i],parameternames[i],functionname, - relative,resolution,pull, - saveasi); - } + Int_t nFiles, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString xvar, + TString yvar, + TF1 *function, + Int_t nParameters, + Int_t *parameters, + TString *parameternames, + TString functionname, + Bool_t relative, + Bool_t resolution, + Bool_t pull, + TString saveas) { + for (int i = 0; i < nParameters; i++) { + TString saveasi = saveas; + TString insert = nPart(1, parameternames[i]); + insert.Prepend("."); + saveasi.Insert(saveasi.Last('.'), insert); //insert the parameter name before the file extension + misalignmentDependence(c1old, + nFiles, + names, + misalignment, + values, + phases, + xvar, + yvar, + function, + parameters[i], + parameternames[i], + functionname, + relative, + resolution, + pull, + saveasi); + } } - //This version does not take a canvas as its argument. It runs trackSplitPlot to produce the canvas. -void misalignmentDependence(Int_t nFiles,TString *files,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString xvar,TString yvar, - TF1 *function,Int_t parameter,TString parametername,TString functionname, - Bool_t relative,Bool_t resolution,Bool_t pull, - TString saveas) -{ - misalignmentDependence(trackSplitPlot(nFiles,files,names,xvar,yvar,relative,resolution,pull,""), - nFiles,names,misalignment,values,phases,xvar,yvar, - function,parameter,parametername,functionname, - relative,resolution,pull,saveas); +void misalignmentDependence(Int_t nFiles, + TString *files, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString xvar, + TString yvar, + TF1 *function, + Int_t parameter, + TString parametername, + TString functionname, + Bool_t relative, + Bool_t resolution, + Bool_t pull, + TString saveas) { + misalignmentDependence(trackSplitPlot(nFiles, files, names, xvar, yvar, relative, resolution, pull, ""), + nFiles, + names, + misalignment, + values, + phases, + xvar, + yvar, + function, + parameter, + parametername, + functionname, + relative, + resolution, + pull, + saveas); } -void misalignmentDependence(Int_t nFiles,TString *files,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString xvar,TString yvar, - TF1 *function,Int_t nParameters,Int_t *parameters,TString *parameternames,TString functionname, - Bool_t relative,Bool_t resolution,Bool_t pull, - TString saveas) -{ - for (int i = 0; i < nParameters; i++) - { - TString saveasi = saveas; - TString insert = nPart(1,parameternames[i]); - insert.Prepend("."); - saveasi.Insert(saveasi.Last('.'),insert); //insert the parameter name before the file extension - misalignmentDependence(nFiles,files,names,misalignment,values,phases,xvar,yvar, - function,parameters[i],parameternames[i],functionname, - relative,resolution,pull, - saveasi); - } +void misalignmentDependence(Int_t nFiles, + TString *files, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString xvar, + TString yvar, + TF1 *function, + Int_t nParameters, + Int_t *parameters, + TString *parameternames, + TString functionname, + Bool_t relative, + Bool_t resolution, + Bool_t pull, + TString saveas) { + for (int i = 0; i < nParameters; i++) { + TString saveasi = saveas; + TString insert = nPart(1, parameternames[i]); + insert.Prepend("."); + saveasi.Insert(saveasi.Last('.'), insert); //insert the parameter name before the file extension + misalignmentDependence(nFiles, + files, + names, + misalignment, + values, + phases, + xvar, + yvar, + function, + parameters[i], + parameternames[i], + functionname, + relative, + resolution, + pull, + saveasi); + } } - // This version allows you to use a string for the function. It creates a TF1 using this string and uses this TF1 void misalignmentDependence(TCanvas *c1old, - Int_t nFiles,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString xvar,TString yvar, - TString function,Int_t parameter,TString parametername,TString functionname, - Bool_t relative,Bool_t resolution,Bool_t pull, - TString saveas) -{ - TF1 *f = new TF1("func",function); - misalignmentDependence(c1old,nFiles,names,misalignment,values,phases,xvar,yvar,f,parameter,parametername,functionname,relative,resolution,pull,saveas); - delete f; + Int_t nFiles, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString xvar, + TString yvar, + TString function, + Int_t parameter, + TString parametername, + TString functionname, + Bool_t relative, + Bool_t resolution, + Bool_t pull, + TString saveas) { + TF1 *f = new TF1("func", function); + misalignmentDependence(c1old, + nFiles, + names, + misalignment, + values, + phases, + xvar, + yvar, + f, + parameter, + parametername, + functionname, + relative, + resolution, + pull, + saveas); + delete f; } void misalignmentDependence(TCanvas *c1old, - Int_t nFiles,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString xvar,TString yvar, - TString function,Int_t nParameters,Int_t *parameters,TString *parameternames,TString functionname, - Bool_t relative,Bool_t resolution,Bool_t pull, - TString saveas) -{ - for (int i = 0; i < nParameters; i++) - { - TString saveasi = saveas; - TString insert = nPart(1,parameternames[i]); - insert.Prepend("."); - saveasi.Insert(saveasi.Last('.'),insert); //insert the parameter name before the file extension - misalignmentDependence(c1old, - nFiles,names,misalignment,values,phases,xvar,yvar, - function,parameters[i],parameternames[i],functionname, - relative,resolution,pull, - saveasi); - } + Int_t nFiles, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString xvar, + TString yvar, + TString function, + Int_t nParameters, + Int_t *parameters, + TString *parameternames, + TString functionname, + Bool_t relative, + Bool_t resolution, + Bool_t pull, + TString saveas) { + for (int i = 0; i < nParameters; i++) { + TString saveasi = saveas; + TString insert = nPart(1, parameternames[i]); + insert.Prepend("."); + saveasi.Insert(saveasi.Last('.'), insert); //insert the parameter name before the file extension + misalignmentDependence(c1old, + nFiles, + names, + misalignment, + values, + phases, + xvar, + yvar, + function, + parameters[i], + parameternames[i], + functionname, + relative, + resolution, + pull, + saveasi); + } } - -void misalignmentDependence(Int_t nFiles,TString *files,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString xvar,TString yvar, - TString function,Int_t parameter,TString parametername,TString functionname, - Bool_t relative,Bool_t resolution,Bool_t pull, - TString saveas) -{ - TF1 *f = new TF1("func",function); - misalignmentDependence(nFiles,files,names,misalignment,values,phases,xvar,yvar,f,parameter,parametername,functionname,relative,resolution,pull,saveas); - delete f; +void misalignmentDependence(Int_t nFiles, + TString *files, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString xvar, + TString yvar, + TString function, + Int_t parameter, + TString parametername, + TString functionname, + Bool_t relative, + Bool_t resolution, + Bool_t pull, + TString saveas) { + TF1 *f = new TF1("func", function); + misalignmentDependence(nFiles, + files, + names, + misalignment, + values, + phases, + xvar, + yvar, + f, + parameter, + parametername, + functionname, + relative, + resolution, + pull, + saveas); + delete f; } -void misalignmentDependence(Int_t nFiles,TString *files,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString xvar,TString yvar, - TString function,Int_t nParameters,Int_t *parameters,TString *parameternames,TString functionname, - Bool_t relative,Bool_t resolution,Bool_t pull, - TString saveas) -{ - for (int i = 0; i < nParameters; i++) - { - TString saveasi = saveas; - TString insert = nPart(1,parameternames[i]); - insert.Prepend("."); - saveasi.Insert(saveasi.Last('.'),insert); //insert the parameter name before the file extension - misalignmentDependence(nFiles,files,names,misalignment,values,phases,xvar,yvar, - function,parameters[i],parameternames[i],functionname, - relative,resolution,pull, - saveasi); - } +void misalignmentDependence(Int_t nFiles, + TString *files, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString xvar, + TString yvar, + TString function, + Int_t nParameters, + Int_t *parameters, + TString *parameternames, + TString functionname, + Bool_t relative, + Bool_t resolution, + Bool_t pull, + TString saveas) { + for (int i = 0; i < nParameters; i++) { + TString saveasi = saveas; + TString insert = nPart(1, parameternames[i]); + insert.Prepend("."); + saveasi.Insert(saveasi.Last('.'), insert); //insert the parameter name before the file extension + misalignmentDependence(nFiles, + files, + names, + misalignment, + values, + phases, + xvar, + yvar, + function, + parameters[i], + parameternames[i], + functionname, + relative, + resolution, + pull, + saveasi); + } } - - - //This version does not take a function as its argument. It automatically determines what function, parameter, //functionname, and parametername to use based on misalignment, xvar, yvar, relative, resolution, and pull. //However, you have to manually put into the function which plots to fit to what shapes. @@ -1119,112 +1243,126 @@ void misalignmentDependence(Int_t nFiles,TString *files,TString *names,TString m //This is the version called by makeThesePlots.C Bool_t misalignmentDependence(TCanvas *c1old, - Int_t nFiles,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString xvar,TString yvar, + Int_t nFiles, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString xvar, + TString yvar, Bool_t drawfits, - Bool_t relative,Bool_t resolution,Bool_t pull, - TString saveas) -{ - if (xvar == "") - { - if (c1old == 0 || misalignment == "" || values == 0) return false; - misalignmentDependence(c1old,nFiles,names,misalignment,values,phases,xvar,yvar,(TF1*)0,0,"","",relative,resolution,pull,saveas); - return true; + Bool_t relative, + Bool_t resolution, + Bool_t pull, + TString saveas) { + if (xvar == "") { + if (c1old == 0 || misalignment == "" || values == 0) + return false; + misalignmentDependence(c1old, + nFiles, + names, + misalignment, + values, + phases, + xvar, + yvar, + (TF1 *)0, + 0, + "", + "", + relative, + resolution, + pull, + saveas); + return true; + } + TF1 *f = 0; + TString functionname = ""; + + //if only one parameter is of interest + TString parametername = ""; + Int_t parameter = 9999; + + //if multiple parameters are of interest + Int_t nParameters = -1; + TString *parameternames = 0; + Int_t *parameters = 0; + + if (misalignment == "sagitta") { + if (xvar == "phi" && yvar == "phi" && !resolution && !pull) { + f = new TF1("sine", "-[0]*cos([1]*x+[2])"); + f->FixParameter(1, 1); + f->SetParameter(0, 6e-4); + nParameters = 2; + Int_t tempParameters[2] = {0, 2}; + TString tempParameterNames[2] = {"A;mrad", "B"}; + parameters = tempParameters; + parameternames = tempParameterNames; + functionname = "#Delta#phi=-Acos(#phi+B)"; } - TF1 *f = 0; - TString functionname = ""; - - //if only one parameter is of interest - TString parametername = ""; - Int_t parameter = 9999; - - //if multiple parameters are of interest - Int_t nParameters = -1; - TString *parameternames = 0; - Int_t *parameters = 0; - - if (misalignment == "sagitta") - { - if (xvar == "phi" && yvar == "phi" && !resolution && !pull) - { - f = new TF1("sine","-[0]*cos([1]*x+[2])"); - f->FixParameter(1,1); - f->SetParameter(0,6e-4); - nParameters = 2; - Int_t tempParameters[2] = {0,2}; - TString tempParameterNames[2] = {"A;mrad","B"}; - parameters = tempParameters; - parameternames = tempParameterNames; - functionname = "#Delta#phi=-Acos(#phi+B)"; - } - if (xvar == "theta" && yvar == "theta" && !resolution && pull) - { - f = new TF1("line","-[0]*(x+[1])"); - f->FixParameter(1,-pi/2); - parametername = "A"; - functionname = "#Delta#theta/#delta(#Delta#theta)=-A(#theta-#pi/2)"; - parameter = 0; - } - if (xvar == "theta" && yvar == "theta" && !resolution && !pull) - { - f = new TF1("sine","[0]*sin([1]*x+[2])"); - f->FixParameter(1,2); - f->FixParameter(2,0); - parametername = "A;mrad"; - functionname = "#Delta#theta=-Asin(2#theta)"; - parameter = 0; - } + if (xvar == "theta" && yvar == "theta" && !resolution && pull) { + f = new TF1("line", "-[0]*(x+[1])"); + f->FixParameter(1, -pi / 2); + parametername = "A"; + functionname = "#Delta#theta/#delta(#Delta#theta)=-A(#theta-#pi/2)"; + parameter = 0; } - if (misalignment == "elliptical") - { - if (xvar == "phi" && yvar == "dxy" && !resolution && !pull) - { - f = new TF1("sine","[0]*sin([1]*x-[2])"); - //f = new TF1("sine","[0]*sin([1]*x-[2]) + [3]"); - f->FixParameter(1,-2); - f->SetParameter(0,5e-4); - - nParameters = 2; - Int_t tempParameters[2] = {0,2}; - TString tempParameterNames[2] = {"A;#mum","B"}; - //nParameters = 3; - //Int_t tempParameters[3] = {0,2,3}; - //TString tempParameterNames[3] = {"A;#mum","B","C;#mum"}; - - parameters = tempParameters; - parameternames = tempParameterNames; - functionname = "#Deltad_{xy}=-Asin(2#phi+B)"; - //functionname = "#Deltad_{xy}=-Asin(2#phi+B)+C"; - } - if (xvar == "phi" && yvar == "dxy" && !resolution && pull) - { - f = new TF1("sine","[0]*sin([1]*x-[2])"); - //f = new TF1("sine","[0]*sin([1]*x-[2]) + [3]"); + if (xvar == "theta" && yvar == "theta" && !resolution && !pull) { + f = new TF1("sine", "[0]*sin([1]*x+[2])"); + f->FixParameter(1, 2); + f->FixParameter(2, 0); + parametername = "A;mrad"; + functionname = "#Delta#theta=-Asin(2#theta)"; + parameter = 0; + } + } + if (misalignment == "elliptical") { + if (xvar == "phi" && yvar == "dxy" && !resolution && !pull) { + f = new TF1("sine", "[0]*sin([1]*x-[2])"); + //f = new TF1("sine","[0]*sin([1]*x-[2]) + [3]"); + f->FixParameter(1, -2); + f->SetParameter(0, 5e-4); + + nParameters = 2; + Int_t tempParameters[2] = {0, 2}; + TString tempParameterNames[2] = {"A;#mum", "B"}; + //nParameters = 3; + //Int_t tempParameters[3] = {0,2,3}; + //TString tempParameterNames[3] = {"A;#mum","B","C;#mum"}; + + parameters = tempParameters; + parameternames = tempParameterNames; + functionname = "#Deltad_{xy}=-Asin(2#phi+B)"; + //functionname = "#Deltad_{xy}=-Asin(2#phi+B)+C"; + } + if (xvar == "phi" && yvar == "dxy" && !resolution && pull) { + f = new TF1("sine", "[0]*sin([1]*x-[2])"); + //f = new TF1("sine","[0]*sin([1]*x-[2]) + [3]"); - f->FixParameter(1,-2); + f->FixParameter(1, -2); - nParameters = 2; - Int_t tempParameters[2] = {0,2}; - TString tempParameterNames[2] = {"A","B"}; - //nParameters = 3; - //Int_t tempParameters[3] = {0,2,3}; - //TString tempParameterNames[3] = {"A","B","C"}; + nParameters = 2; + Int_t tempParameters[2] = {0, 2}; + TString tempParameterNames[2] = {"A", "B"}; + //nParameters = 3; + //Int_t tempParameters[3] = {0,2,3}; + //TString tempParameterNames[3] = {"A","B","C"}; - parameters = tempParameters; - parameternames = tempParameterNames; + parameters = tempParameters; + parameternames = tempParameterNames; - functionname = "#Deltad_{xy}/#delta(#Deltad_{xy})=-Asin(2#phi+B)"; - //functionname = "#Deltad_{xy}/#delta(#Deltad_{xy})=-Asin(2#phi+B)+C"; - } + functionname = "#Deltad_{xy}/#delta(#Deltad_{xy})=-Asin(2#phi+B)"; + //functionname = "#Deltad_{xy}/#delta(#Deltad_{xy})=-Asin(2#phi+B)+C"; + } - if (xvar == "theta" && yvar == "dz" && !resolution && !pull) - { - f = new TF1("line","-[0]*(x-[1])"); - f->FixParameter(1,pi/2); - parametername = "A;#mum"; - functionname = "#Deltad_{z}=-A(#theta-#pi/2)"; - parameter = 0; - } - /* + if (xvar == "theta" && yvar == "dz" && !resolution && !pull) { + f = new TF1("line", "-[0]*(x-[1])"); + f->FixParameter(1, pi / 2); + parametername = "A;#mum"; + functionname = "#Deltad_{z}=-A(#theta-#pi/2)"; + parameter = 0; + } + /* This fit doesn't work if (xvar == "theta" && yvar == "dz" && !resolution && pull) { @@ -1236,310 +1374,357 @@ Bool_t misalignmentDependence(TCanvas *c1old, parameter = 0; } */ - if (xvar == "dxy" && yvar == "phi" && !resolution && !pull) - { - f = new TF1("line","-[0]*(x-[1])"); - f->FixParameter(1,0); - parametername = "A;mrad/cm"; - functionname = "#Delta#phi=-A(d_{xy})"; - parameter = 0; - } - if (xvar == "dxy" && yvar == "phi" && !resolution && pull) - { - f = new TF1("line","-[0]*(x-[1])"); - f->FixParameter(1,0); - parametername = "A;cm^{-1}"; - functionname = "#Delta#phi/#delta(#Delta#phi)=-A(d_{xy})"; - parameter = 0; - } + if (xvar == "dxy" && yvar == "phi" && !resolution && !pull) { + f = new TF1("line", "-[0]*(x-[1])"); + f->FixParameter(1, 0); + parametername = "A;mrad/cm"; + functionname = "#Delta#phi=-A(d_{xy})"; + parameter = 0; } - if (misalignment == "skew") - { - if (xvar == "phi" && yvar == "theta" && resolution && !pull) - { - f = new TF1("sine","[0]*sin([1]*x+[2])+[3]"); - f->FixParameter(1,2); - nParameters = 3; - Int_t tempParameters[3] = {0,2,3}; - TString tempParameterNames[3] = {"A;mrad","B","C;mrad"}; - parameters = tempParameters; - parameternames = tempParameterNames; - functionname = "#sigma(#Delta#theta)=Asin(2#phi+B)+C"; - } - if (xvar == "phi" && yvar == "eta" && resolution && !pull) - { - f = new TF1("sine","[0]*sin([1]*x+[2])+[3]"); - f->FixParameter(1,2); - nParameters = 3; - Int_t tempParameters[3] = {0,2,3}; - TString tempParameterNames[3] = {"A;mrad","B","C;mrad"}; - parameters = tempParameters; - parameternames = tempParameterNames; - functionname = "#sigma(#Delta#eta)=Asin(2#phi+B)+C"; - } - if (xvar == "phi" && yvar == "theta" && resolution && pull) - { - f = new TF1("sine","[0]*sin([1]*x+[2])+[3]"); - f->FixParameter(1,2); - nParameters = 3; - Int_t tempParameters[3] = {0,2,3}; - TString tempParameterNames[3] = {"A","B","C"}; - parameters = tempParameters; - parameternames = tempParameterNames; - functionname = "#sigma(#Delta#theta/#delta(#Delta#theta))=Asin(2#phi+B)+C"; - } - if (xvar == "phi" && yvar == "eta" && resolution && pull) - { - f = new TF1("sine","[0]*sin([1]*x+[2])+[3]"); - f->FixParameter(1,2); - nParameters = 3; - Int_t tempParameters[3] = {0,2,3}; - TString tempParameterNames[3] = {"A","B","C"}; - parameters = tempParameters; - parameternames = tempParameterNames; - functionname = "#sigma(#Delta#eta/#delta(#Delta#eta))=Asin(2#phi+B)+C"; - } - if (xvar == "phi" && yvar == "dz" && !resolution && !pull) - { - f = new TF1("tanh","[0]*(tanh([1]*(x+[2])) )"); // - tanh(([3]-[1])*x+[2]) + 1)"); - //f = new TF1("tanh","[0]*(tanh([1]*(x+[2])) + tanh([1]*([3]-[2]-x)) - 1)"); - f->SetParameter(0,100); - f->SetParLimits(1,-20,20); - f->SetParLimits(2,0,pi); - f->FixParameter(3,pi); - nParameters = 3; - Int_t tempParameters[3] = {0,1,2}; - TString tempParameterNames[3] = {"A;#mum","B","C"}; - parameters = tempParameters; - parameternames = tempParameterNames; - functionname = "#Deltad_{z}=Atanh(B(#phi+C))"; - //functionname = "#Deltad_{z}=A(tanh(B(#phi+C)) + tanh(B(#pi-#phi-C)) - 1"; - } + if (xvar == "dxy" && yvar == "phi" && !resolution && pull) { + f = new TF1("line", "-[0]*(x-[1])"); + f->FixParameter(1, 0); + parametername = "A;cm^{-1}"; + functionname = "#Delta#phi/#delta(#Delta#phi)=-A(d_{xy})"; + parameter = 0; } - if (misalignment == "layerRot") - { - if (xvar == "qoverpt" && yvar == "qoverpt" && !relative && !resolution && !pull) - { - f = new TF1("sech","[0]/cosh([1]*(x+[2]))+[3]"); - //f = new TF1("gauss","[0]/exp(([1]*(x+[2]))^2)+[3]"); //sech works better than a gaussian - f->SetParameter(0,1); - f->SetParameter(1,1); - f->SetParLimits(1,0,10); - f->FixParameter(2,0); - f->FixParameter(3,0); - nParameters = 2; - Int_t tempParameters[2] = {0,1}; - TString tempParameterNames[2] = {"A;10^{-3}e/GeV","B;GeV/e"}; - parameters = tempParameters; - parameternames = tempParameterNames; - functionname = "#Delta(q/p_{T})=Asech(B(q/p_{T}))"; - } + } + if (misalignment == "skew") { + if (xvar == "phi" && yvar == "theta" && resolution && !pull) { + f = new TF1("sine", "[0]*sin([1]*x+[2])+[3]"); + f->FixParameter(1, 2); + nParameters = 3; + Int_t tempParameters[3] = {0, 2, 3}; + TString tempParameterNames[3] = {"A;mrad", "B", "C;mrad"}; + parameters = tempParameters; + parameternames = tempParameterNames; + functionname = "#sigma(#Delta#theta)=Asin(2#phi+B)+C"; } - if (misalignment == "telescope") - { - if (xvar == "theta" && yvar == "theta" && !relative && !resolution && !pull) - { - f = new TF1("gauss","[0]/exp(([1]*(x+[2]))^2)+[3]"); - f->SetParameter(0,1); - f->SetParameter(1,1); - f->SetParLimits(1,0,10); - f->FixParameter(2,-pi/2); - f->FixParameter(3,0); - nParameters = 2; - Int_t tempParameters[2] = {0,1}; - TString tempParameterNames[2] = {"A;mrad","B"}; - parameters = tempParameters; - parameternames = tempParameterNames; - functionname = "#Delta#theta=Aexp(-(B(#theta-#pi/2))^{2})"; - } + if (xvar == "phi" && yvar == "eta" && resolution && !pull) { + f = new TF1("sine", "[0]*sin([1]*x+[2])+[3]"); + f->FixParameter(1, 2); + nParameters = 3; + Int_t tempParameters[3] = {0, 2, 3}; + TString tempParameterNames[3] = {"A;mrad", "B", "C;mrad"}; + parameters = tempParameters; + parameternames = tempParameterNames; + functionname = "#sigma(#Delta#eta)=Asin(2#phi+B)+C"; } - if (functionname == "") return false; - if (drawfits) - { - parameter = -parameter-1; - for (int i = 0; i < nParameters; i++) - parameters[i] = -parameters[i]-1; + if (xvar == "phi" && yvar == "theta" && resolution && pull) { + f = new TF1("sine", "[0]*sin([1]*x+[2])+[3]"); + f->FixParameter(1, 2); + nParameters = 3; + Int_t tempParameters[3] = {0, 2, 3}; + TString tempParameterNames[3] = {"A", "B", "C"}; + parameters = tempParameters; + parameternames = tempParameterNames; + functionname = "#sigma(#Delta#theta/#delta(#Delta#theta))=Asin(2#phi+B)+C"; } - if (nParameters > 0) - misalignmentDependence(c1old,nFiles,names,misalignment,values,phases,xvar,yvar, - f,nParameters,parameters,parameternames,functionname,relative,resolution,pull,saveas); - else - misalignmentDependence(c1old,nFiles,names,misalignment,values,phases,xvar,yvar, - f,parameter,parametername,functionname,relative,resolution,pull,saveas); - delete f; - return true; - + if (xvar == "phi" && yvar == "eta" && resolution && pull) { + f = new TF1("sine", "[0]*sin([1]*x+[2])+[3]"); + f->FixParameter(1, 2); + nParameters = 3; + Int_t tempParameters[3] = {0, 2, 3}; + TString tempParameterNames[3] = {"A", "B", "C"}; + parameters = tempParameters; + parameternames = tempParameterNames; + functionname = "#sigma(#Delta#eta/#delta(#Delta#eta))=Asin(2#phi+B)+C"; + } + if (xvar == "phi" && yvar == "dz" && !resolution && !pull) { + f = new TF1("tanh", "[0]*(tanh([1]*(x+[2])) )"); // - tanh(([3]-[1])*x+[2]) + 1)"); + //f = new TF1("tanh","[0]*(tanh([1]*(x+[2])) + tanh([1]*([3]-[2]-x)) - 1)"); + f->SetParameter(0, 100); + f->SetParLimits(1, -20, 20); + f->SetParLimits(2, 0, pi); + f->FixParameter(3, pi); + nParameters = 3; + Int_t tempParameters[3] = {0, 1, 2}; + TString tempParameterNames[3] = {"A;#mum", "B", "C"}; + parameters = tempParameters; + parameternames = tempParameterNames; + functionname = "#Deltad_{z}=Atanh(B(#phi+C))"; + //functionname = "#Deltad_{z}=A(tanh(B(#phi+C)) + tanh(B(#pi-#phi-C)) - 1"; + } + } + if (misalignment == "layerRot") { + if (xvar == "qoverpt" && yvar == "qoverpt" && !relative && !resolution && !pull) { + f = new TF1("sech", "[0]/cosh([1]*(x+[2]))+[3]"); + //f = new TF1("gauss","[0]/exp(([1]*(x+[2]))^2)+[3]"); //sech works better than a gaussian + f->SetParameter(0, 1); + f->SetParameter(1, 1); + f->SetParLimits(1, 0, 10); + f->FixParameter(2, 0); + f->FixParameter(3, 0); + nParameters = 2; + Int_t tempParameters[2] = {0, 1}; + TString tempParameterNames[2] = {"A;10^{-3}e/GeV", "B;GeV/e"}; + parameters = tempParameters; + parameternames = tempParameterNames; + functionname = "#Delta(q/p_{T})=Asech(B(q/p_{T}))"; + } + } + if (misalignment == "telescope") { + if (xvar == "theta" && yvar == "theta" && !relative && !resolution && !pull) { + f = new TF1("gauss", "[0]/exp(([1]*(x+[2]))^2)+[3]"); + f->SetParameter(0, 1); + f->SetParameter(1, 1); + f->SetParLimits(1, 0, 10); + f->FixParameter(2, -pi / 2); + f->FixParameter(3, 0); + nParameters = 2; + Int_t tempParameters[2] = {0, 1}; + TString tempParameterNames[2] = {"A;mrad", "B"}; + parameters = tempParameters; + parameternames = tempParameterNames; + functionname = "#Delta#theta=Aexp(-(B(#theta-#pi/2))^{2})"; + } + } + if (functionname == "") + return false; + if (drawfits) { + parameter = -parameter - 1; + for (int i = 0; i < nParameters; i++) + parameters[i] = -parameters[i] - 1; + } + if (nParameters > 0) + misalignmentDependence(c1old, + nFiles, + names, + misalignment, + values, + phases, + xvar, + yvar, + f, + nParameters, + parameters, + parameternames, + functionname, + relative, + resolution, + pull, + saveas); + else + misalignmentDependence(c1old, + nFiles, + names, + misalignment, + values, + phases, + xvar, + yvar, + f, + parameter, + parametername, + functionname, + relative, + resolution, + pull, + saveas); + delete f; + return true; } - //This is the most practically useful version. It does not take a canvas, but produces it automatically and then determines what //function to fit it to. -Bool_t misalignmentDependence(Int_t nFiles,TString *files,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString xvar,TString yvar, +Bool_t misalignmentDependence(Int_t nFiles, + TString *files, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString xvar, + TString yvar, Bool_t drawfits, - Bool_t relative,Bool_t resolution,Bool_t pull, - TString saveas) -{ - return misalignmentDependence(trackSplitPlot(nFiles,files,names,xvar,yvar,relative,resolution,pull,""), - nFiles,names,misalignment,values,phases,xvar,yvar, - drawfits,relative,resolution,pull,saveas); + Bool_t relative, + Bool_t resolution, + Bool_t pull, + TString saveas) { + return misalignmentDependence(trackSplitPlot(nFiles, files, names, xvar, yvar, relative, resolution, pull, ""), + nFiles, + names, + misalignment, + values, + phases, + xvar, + yvar, + drawfits, + relative, + resolution, + pull, + saveas); } -Bool_t hasFit(TString misalignment,TString xvar,TString yvar,Bool_t relative,Bool_t resolution,Bool_t pull) -{ - return misalignmentDependence((TCanvas*)0, - 0,(TString*)0,misalignment,(Double_t*)0,(Double_t*)0,xvar,yvar, - false, - relative,resolution,pull, - TString("")); +Bool_t hasFit(TString misalignment, TString xvar, TString yvar, Bool_t relative, Bool_t resolution, Bool_t pull) { + return misalignmentDependence((TCanvas *)0, + 0, + (TString *)0, + misalignment, + (Double_t *)0, + (Double_t *)0, + xvar, + yvar, + false, + relative, + resolution, + pull, + TString("")); } //============= //2. Make Plots //============= -void makePlots(Int_t nFiles,TString *files,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString directory, - Bool_t matrix[xsize][ysize]) -{ - stufftodelete->SetOwner(true); - - for (Int_t i = 0, totaltime = 0; i < nFiles; i++) - { - TFile *f = 0; - bool exists = false; - if (files[i] == "") exists = true; - - for (int j = 1; j <= 60*24 && !exists; j++, totaltime++) //wait up to 1 day for the validation to be finished - { - f = TFile::Open(files[i]); - if (f != 0) - exists = f->IsOpen(); - delete f; - if (exists) continue; - gSystem->Sleep(60000); - cout << "It's been "; - if (j >= 60) - cout << j/60 << " hour"; - if (j >= 120) - cout << "s"; - if (j % 60 != 0 && j >= 60) - cout << " and "; - if (j % 60 != 0) - cout << j%60 << " minute"; - if (j % 60 >= 2) - cout << "s"; - cout << endl; - } - if (!exists) return; - if (i == nFiles - 1 && totaltime > nFiles) - gSystem->Sleep(60000); - } - - TString directorytomake = directory; - gSystem->mkdir(directorytomake,true); - - ofstream summaryfile(directorytomake+"/TrackSplittingValidationSummary.txt"); - for (int i = 0; i < nFiles; i++) { - summaryfile << "\t" << TString(names[i]).ReplaceAll("#", "\\"); - } - summaryfile << "\tformat={}\tlatexformat={}\n"; - - if (misalignment != "") +void makePlots(Int_t nFiles, + TString *files, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString directory, + Bool_t matrix[xsize][ysize]) { + stufftodelete->SetOwner(true); + + for (Int_t i = 0, totaltime = 0; i < nFiles; i++) { + TFile *f = 0; + bool exists = false; + if (files[i] == "") + exists = true; + + for (int j = 1; j <= 60 * 24 && !exists; j++, totaltime++) //wait up to 1 day for the validation to be finished { - directorytomake.Append("/fits"); - gSystem->mkdir(directorytomake); + f = TFile::Open(files[i]); + if (f != 0) + exists = f->IsOpen(); + delete f; + if (exists) + continue; + gSystem->Sleep(60000); + cout << "It's been "; + if (j >= 60) + cout << j / 60 << " hour"; + if (j >= 120) + cout << "s"; + if (j % 60 != 0 && j >= 60) + cout << " and "; + if (j % 60 != 0) + cout << j % 60 << " minute"; + if (j % 60 >= 2) + cout << "s"; + cout << endl; } + if (!exists) + return; + if (i == nFiles - 1 && totaltime > nFiles) + gSystem->Sleep(60000); + } + + TString directorytomake = directory; + gSystem->mkdir(directorytomake, true); + + ofstream summaryfile(directorytomake + "/TrackSplittingValidationSummary.txt"); + for (int i = 0; i < nFiles; i++) { + summaryfile << "\t" << TString(names[i]).ReplaceAll("#", "\\"); + } + summaryfile << "\tformat={}\tlatexformat={}\n"; + + if (misalignment != "") { + directorytomake.Append("/fits"); + gSystem->mkdir(directorytomake); + } + + for (Int_t x = 0; x < xsize; x++) { + for (Int_t y = 0; y < ysize; y++) { + for (Int_t pull = 0; pull == 0 || (pull == 1 && yvariables[y] != ""); pull++) { + if (false) + continue; //this line is to make it easier to do e.g. all plots involving Delta eta + //(replace false with yvariables[y] != "eta") + + if (!matrix[x][y]) + continue; + + if (xvariables[x] == "" && yvariables[y] == "") + continue; + + Int_t nPlots = + nFiles + 4; //scatterplot for each (if you uncomment it), profile, resolution, and fits for each. + vector s; + + TString slashstring = ""; + if (directory.Last('/') != directory.Length() - 1) + slashstring = "/"; + + vector plotnames; + for (Int_t i = 0; i < nFiles; i++) { + plotnames.push_back(names[i]); //this is plotnames[i] + plotnames[i].ReplaceAll(" ", ""); + } + + plotnames.push_back(""); //this is plotnames[nFiles], but gets changed + if (yvariables[y] == "") + plotnames[nFiles] = "orghist"; + else if (xvariables[x] == "") + plotnames[nFiles] = "hist"; + else + plotnames[nFiles] = "profile"; + + plotnames.push_back("resolution"); //this is plotnames[nFiles+1] + + plotnames.push_back(""); //this is plotnames[nFiles+2] + plotnames.push_back(""); //this is plotnames[nFiles+3] + if (plotnames[nFiles] == "profile") { + plotnames[nFiles + 2] = ".profile"; + plotnames[nFiles + 2].Prepend(misalignment); + plotnames[nFiles + 3] = ".resolution"; + plotnames[nFiles + 3].Prepend(misalignment); + plotnames[nFiles + 2].Prepend("fits/"); + plotnames[nFiles + 3].Prepend("fits/"); + } else { + plotnames[nFiles + 2] = "profile."; + plotnames[nFiles + 2].Append(misalignment); + plotnames[nFiles + 3] = "resolution."; + plotnames[nFiles + 3].Append(misalignment); + } - for (Int_t x = 0; x < xsize; x++) - { - for (Int_t y = 0; y < ysize; y++) - { - for (Int_t pull = 0; pull == 0 || (pull == 1 && yvariables[y] != ""); pull++) - { - if (false) continue; //this line is to make it easier to do e.g. all plots involving Delta eta - //(replace false with yvariables[y] != "eta") - - if (!matrix[x][y]) continue; - - if (xvariables[x] == "" && yvariables[y] == "") continue; - - Int_t nPlots = nFiles+4; //scatterplot for each (if you uncomment it), profile, resolution, and fits for each. - vector s; - - TString slashstring = ""; - if (directory.Last('/') != directory.Length() - 1) slashstring = "/"; - - vector plotnames; - for (Int_t i = 0; i < nFiles; i++) - { - plotnames.push_back(names[i]); //this is plotnames[i] - plotnames[i].ReplaceAll(" ",""); - } - - plotnames.push_back(""); //this is plotnames[nFiles], but gets changed - if (yvariables[y] == "") - plotnames[nFiles] = "orghist"; - else if (xvariables[x] == "") - plotnames[nFiles] = "hist"; - else - plotnames[nFiles] = "profile"; - - plotnames.push_back("resolution"); //this is plotnames[nFiles+1] - - plotnames.push_back(""); //this is plotnames[nFiles+2] - plotnames.push_back(""); //this is plotnames[nFiles+3] - if (plotnames[nFiles] == "profile") - { - plotnames[nFiles+2] = ".profile"; - plotnames[nFiles+2].Prepend(misalignment); - plotnames[nFiles+3] = ".resolution"; - plotnames[nFiles+3].Prepend(misalignment); - plotnames[nFiles+2].Prepend("fits/"); - plotnames[nFiles+3].Prepend("fits/"); - } - else - { - plotnames[nFiles+2] = "profile."; - plotnames[nFiles+2].Append(misalignment); - plotnames[nFiles+3] = "resolution."; - plotnames[nFiles+3].Append(misalignment); - } - - TString pullstring = ""; - if (pull) pullstring = "pull."; - - TString xvarstring = xvariables[x]; - if (xvariables[x] != "runNumber" && !xvariables[x].BeginsWith("nHits") && xvariables[x] != "") xvarstring.Append("_org"); - if (xvariables[x] != "" && yvariables[y] != "") xvarstring.Append("."); - - TString yvarstring = yvariables[y]; - if (yvariables[y] != "") yvarstring.Prepend("Delta_"); - - TString relativestring = ""; - if (relativearray[y]) relativestring = ".relative"; - - for (Int_t i = 0; i < nPlots; i++) - { - stringstream ss; - ss << directory << slashstring << plotnames[i] << "." << pullstring - << xvarstring << yvarstring << relativestring << ".pngepsroot"; - s.push_back(ss.str()); - if (misalignment != "") - { - TString wrongway = misalignment; - TString rightway = misalignment; - wrongway.Append (".pull"); - rightway.Prepend("pull."); - s[i].ReplaceAll(wrongway,rightway); - } - } - - Int_t i; - for (i = 0; i < nFiles; i++) - { - if (xvariables[x] == "" || yvariables[y] == "") continue; - //uncomment this section to make scatterplots - /* + TString pullstring = ""; + if (pull) + pullstring = "pull."; + + TString xvarstring = xvariables[x]; + if (xvariables[x] != "runNumber" && !xvariables[x].BeginsWith("nHits") && xvariables[x] != "") + xvarstring.Append("_org"); + if (xvariables[x] != "" && yvariables[y] != "") + xvarstring.Append("."); + + TString yvarstring = yvariables[y]; + if (yvariables[y] != "") + yvarstring.Prepend("Delta_"); + + TString relativestring = ""; + if (relativearray[y]) + relativestring = ".relative"; + + for (Int_t i = 0; i < nPlots; i++) { + stringstream ss; + ss << directory << slashstring << plotnames[i] << "." << pullstring << xvarstring << yvarstring + << relativestring << ".pngepsroot"; + s.push_back(ss.str()); + if (misalignment != "") { + TString wrongway = misalignment; + TString rightway = misalignment; + wrongway.Append(".pull"); + rightway.Prepend("pull."); + s[i].ReplaceAll(wrongway, rightway); + } + } + + Int_t i; + for (i = 0; i < nFiles; i++) { + if (xvariables[x] == "" || yvariables[y] == "") + continue; + //uncomment this section to make scatterplots + /* trackSplitPlot(files[i],xvariables[x],yvariables[y],false,relativearray[y],false,(bool)pull,s[i]); stufftodelete->Clear(); for ( ; gROOT->GetListOfCanvases()->GetEntries() > 0; ) @@ -1547,110 +1732,179 @@ void makePlots(Int_t nFiles,TString *files,TString *names,TString misalignment,D for ( ; gROOT->GetListOfFiles()->GetEntries() > 0; ) delete (TFile*)gROOT->GetListOfFiles()->Last(); */ - } - - if (xvariables[x] != "" && yvariables[y] != "") - { - //make profile - TCanvas *c1 = trackSplitPlot(nFiles,files,names,xvariables[x],yvariables[y],relativearray[y],false,(bool)pull,s[i],summaryfile); - if (misalignmentDependence(c1,nFiles,names,misalignment,values,phases,xvariables[x],yvariables[y], - true,relativearray[y],false,(bool)pull,s[i+2])) - { - s[i+2].ReplaceAll(".png",".parameter.png"); - misalignmentDependence(c1,nFiles,names,misalignment,values,phases,xvariables[x],yvariables[y], - false,relativearray[y],false,(bool)pull,s[i+2]); - } - stufftodelete->Clear(); - for ( ; gROOT->GetListOfCanvases()->GetEntries() > 0; ) - deleteCanvas( gROOT->GetListOfCanvases()->Last()); - for ( ; gROOT->GetListOfFiles()->GetEntries() > 0; ) - delete (TFile*)gROOT->GetListOfFiles()->Last(); - - //make resolution plot - TCanvas *c2 = trackSplitPlot(nFiles,files,names,xvariables[x],yvariables[y],relativearray[y],true ,(bool)pull,s[i+1],summaryfile); - if (misalignmentDependence(c2,nFiles,names,misalignment,values,phases,xvariables[x],yvariables[y], - true,relativearray[y],true,(bool)pull,s[i+3])) - { - s[i+3].ReplaceAll(".png",".parameter.png"); - misalignmentDependence(c2,nFiles,names,misalignment,values,phases,xvariables[x],yvariables[y], - false,relativearray[y],true,(bool)pull,s[i+3]); - } - stufftodelete->Clear(); - for ( ; gROOT->GetListOfCanvases()->GetEntries() > 0; ) - deleteCanvas( gROOT->GetListOfCanvases()->Last()); - for ( ; gROOT->GetListOfFiles()->GetEntries() > 0; ) - delete (TFile*)gROOT->GetListOfFiles()->Last(); - } - else - { - //make histogram - TCanvas *c1 = trackSplitPlot(nFiles,files,names,xvariables[x],yvariables[y],relativearray[y],false,(bool)pull,s[i],summaryfile); - if (misalignmentDependence(c1,nFiles,names,misalignment,values,phases,xvariables[x],yvariables[y], - true,relativearray[y],false,(bool)pull,s[i+2])) - { - misalignmentDependence(c1,nFiles,names,misalignment,values,phases,xvariables[x],yvariables[y], - true,relativearray[y],true,(bool)pull,s[i+3]); - } - stufftodelete->Clear(); - for ( ; gROOT->GetListOfCanvases()->GetEntries() > 0; ) - deleteCanvas( gROOT->GetListOfCanvases()->Last()); - for ( ; gROOT->GetListOfFiles()->GetEntries() > 0; ) - delete (TFile*)gROOT->GetListOfFiles()->Last(); - } - } - cout << y + ysize * x + 1 << "/" << xsize*ysize << endl; } + + if (xvariables[x] != "" && yvariables[y] != "") { + //make profile + TCanvas *c1 = trackSplitPlot( + nFiles, files, names, xvariables[x], yvariables[y], relativearray[y], false, (bool)pull, s[i], summaryfile); + if (misalignmentDependence(c1, + nFiles, + names, + misalignment, + values, + phases, + xvariables[x], + yvariables[y], + true, + relativearray[y], + false, + (bool)pull, + s[i + 2])) { + s[i + 2].ReplaceAll(".png", ".parameter.png"); + misalignmentDependence(c1, + nFiles, + names, + misalignment, + values, + phases, + xvariables[x], + yvariables[y], + false, + relativearray[y], + false, + (bool)pull, + s[i + 2]); + } + stufftodelete->Clear(); + for (; gROOT->GetListOfCanvases()->GetEntries() > 0;) + deleteCanvas(gROOT->GetListOfCanvases()->Last()); + for (; gROOT->GetListOfFiles()->GetEntries() > 0;) + delete (TFile *)gROOT->GetListOfFiles()->Last(); + + //make resolution plot + TCanvas *c2 = trackSplitPlot(nFiles, + files, + names, + xvariables[x], + yvariables[y], + relativearray[y], + true, + (bool)pull, + s[i + 1], + summaryfile); + if (misalignmentDependence(c2, + nFiles, + names, + misalignment, + values, + phases, + xvariables[x], + yvariables[y], + true, + relativearray[y], + true, + (bool)pull, + s[i + 3])) { + s[i + 3].ReplaceAll(".png", ".parameter.png"); + misalignmentDependence(c2, + nFiles, + names, + misalignment, + values, + phases, + xvariables[x], + yvariables[y], + false, + relativearray[y], + true, + (bool)pull, + s[i + 3]); + } + stufftodelete->Clear(); + for (; gROOT->GetListOfCanvases()->GetEntries() > 0;) + deleteCanvas(gROOT->GetListOfCanvases()->Last()); + for (; gROOT->GetListOfFiles()->GetEntries() > 0;) + delete (TFile *)gROOT->GetListOfFiles()->Last(); + } else { + //make histogram + TCanvas *c1 = trackSplitPlot( + nFiles, files, names, xvariables[x], yvariables[y], relativearray[y], false, (bool)pull, s[i], summaryfile); + if (misalignmentDependence(c1, + nFiles, + names, + misalignment, + values, + phases, + xvariables[x], + yvariables[y], + true, + relativearray[y], + false, + (bool)pull, + s[i + 2])) { + misalignmentDependence(c1, + nFiles, + names, + misalignment, + values, + phases, + xvariables[x], + yvariables[y], + true, + relativearray[y], + true, + (bool)pull, + s[i + 3]); + } + stufftodelete->Clear(); + for (; gROOT->GetListOfCanvases()->GetEntries() > 0;) + deleteCanvas(gROOT->GetListOfCanvases()->Last()); + for (; gROOT->GetListOfFiles()->GetEntries() > 0;) + delete (TFile *)gROOT->GetListOfFiles()->Last(); + } + } + cout << y + ysize * x + 1 << "/" << xsize * ysize << endl; } + } } -void makePlots(Int_t nFiles,TString *files,TString *names,TString directory, Bool_t matrix[xsize][ysize]) -{ - makePlots(nFiles,files,names,"",(Double_t*)0,(Double_t*)0,directory, - matrix); +void makePlots(Int_t nFiles, TString *files, TString *names, TString directory, Bool_t matrix[xsize][ysize]) { + makePlots(nFiles, files, names, "", (Double_t *)0, (Double_t *)0, directory, matrix); } -void makePlots(TString file,TString misalignment,Double_t *values,Double_t *phases,TString directory,Bool_t matrix[xsize][ysize]) -{ - setupcolors(); - file.Remove(TString::kTrailing, ','); - int n = file.CountChar(',') + 1; - TString *files = new TString[n]; - TString *names = new TString[n]; - vector tempcolors = colors; - vector tempstyles = styles; - for (int i = 0; i < n; i++) - { - TString thisfile = nPart(i+1,file,","); - int numberofpipes = thisfile.CountChar('|'); - if (numberofpipes >= 0 && nPart(numberofpipes+1,thisfile,"|").IsDigit()) - { - if (numberofpipes >= 1 && nPart(numberofpipes,thisfile,"|").IsDigit()) - { - colors[i] = nPart(numberofpipes,thisfile,"|").Atoi(); - styles[i] = nPart(numberofpipes+1,thisfile,"|").Atoi(); - thisfile.Remove(thisfile.Length() - nPart(numberofpipes,thisfile,"|").Length() - nPart(numberofpipes+1,thisfile,"|").Length() - 2); - } - else - { - colors[i] = nPart(numberofpipes + 1,thisfile,"|").Atoi(); - thisfile.Remove(thisfile.Length() - nPart(numberofpipes+1,thisfile,"|").Length() - 2); - } - } - files[i] = nPart(1,thisfile,"=",true); - names[i] = nPart(2,thisfile,"=",false); +void makePlots(TString file, + TString misalignment, + Double_t *values, + Double_t *phases, + TString directory, + Bool_t matrix[xsize][ysize]) { + setupcolors(); + file.Remove(TString::kTrailing, ','); + int n = file.CountChar(',') + 1; + TString *files = new TString[n]; + TString *names = new TString[n]; + vector tempcolors = colors; + vector tempstyles = styles; + for (int i = 0; i < n; i++) { + TString thisfile = nPart(i + 1, file, ","); + int numberofpipes = thisfile.CountChar('|'); + if (numberofpipes >= 0 && nPart(numberofpipes + 1, thisfile, "|").IsDigit()) { + if (numberofpipes >= 1 && nPart(numberofpipes, thisfile, "|").IsDigit()) { + colors[i] = nPart(numberofpipes, thisfile, "|").Atoi(); + styles[i] = nPart(numberofpipes + 1, thisfile, "|").Atoi(); + thisfile.Remove(thisfile.Length() - nPart(numberofpipes, thisfile, "|").Length() - + nPart(numberofpipes + 1, thisfile, "|").Length() - 2); + } else { + colors[i] = nPart(numberofpipes + 1, thisfile, "|").Atoi(); + thisfile.Remove(thisfile.Length() - nPart(numberofpipes + 1, thisfile, "|").Length() - 2); + } } - if (n == 1 && names[0] == "") - names[0] = "scatterplot"; //With 1 file there's no legend, so this is only used in the filename of the scatterplots, if made - makePlots(n,files,names,misalignment,values,phases,directory,matrix); - delete[] files; - delete[] names; - colors = tempcolors; - styles = tempstyles; + files[i] = nPart(1, thisfile, "=", true); + names[i] = nPart(2, thisfile, "=", false); + } + if (n == 1 && names[0] == "") + names[0] = + "scatterplot"; //With 1 file there's no legend, so this is only used in the filename of the scatterplots, if made + makePlots(n, files, names, misalignment, values, phases, directory, matrix); + delete[] files; + delete[] names; + colors = tempcolors; + styles = tempstyles; } -void makePlots(TString file,TString directory,Bool_t matrix[xsize][ysize]) -{ - makePlots(file,"",(Double_t*)0,(Double_t*)0,directory,matrix); +void makePlots(TString file, TString directory, Bool_t matrix[xsize][ysize]) { + makePlots(file, "", (Double_t *)0, (Double_t *)0, directory, matrix); } //*************************************************************************** @@ -1663,795 +1917,729 @@ void makePlots(TString file,TString directory,Bool_t matrix[xsize][ysize]) // (including Delta_pt/pt_org) //*************************************************************************** -void makePlots(Int_t nFiles,TString *files,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString directory, - TString xvar,TString yvar) -{ - Bool_t matrix[xsize][ysize]; - for (int x = 0; x < xsize; x++) - for (int y = 0; y < ysize; y++) - { - bool xmatch = (xvar == "all" || xvar == xvariables[x]); - bool ymatch = (yvar == "all" || yvar == yvariables[y]); - if (yvar == "pt" && yvariables[y] == "pt" && relativearray[y] == true) - ymatch = false; - if (yvar == "ptrel" && yvariables[y] == "pt" && relativearray[y] == true) - ymatch = true; - matrix[x][y] = (xmatch && ymatch); - } - makePlots(nFiles,files,names,misalignment,values,phases,directory,matrix); +void makePlots(Int_t nFiles, + TString *files, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString directory, + TString xvar, + TString yvar) { + Bool_t matrix[xsize][ysize]; + for (int x = 0; x < xsize; x++) + for (int y = 0; y < ysize; y++) { + bool xmatch = (xvar == "all" || xvar == xvariables[x]); + bool ymatch = (yvar == "all" || yvar == yvariables[y]); + if (yvar == "pt" && yvariables[y] == "pt" && relativearray[y] == true) + ymatch = false; + if (yvar == "ptrel" && yvariables[y] == "pt" && relativearray[y] == true) + ymatch = true; + matrix[x][y] = (xmatch && ymatch); + } + makePlots(nFiles, files, names, misalignment, values, phases, directory, matrix); } -void makePlots(Int_t nFiles,TString *files,TString *names,TString directory, - TString xvar,TString yvar) -{ - makePlots(nFiles,files,names,"",(Double_t*)0,(Double_t*)0,directory, - xvar,yvar); +void makePlots(Int_t nFiles, TString *files, TString *names, TString directory, TString xvar, TString yvar) { + makePlots(nFiles, files, names, "", (Double_t *)0, (Double_t *)0, directory, xvar, yvar); } -void makePlots(TString file,TString misalignment,Double_t *values,Double_t *phases,TString directory, - TString xvar,TString yvar) -{ - setupcolors(); - file.Remove(TString::kTrailing, ','); - int n = file.CountChar(',') + 1; - TString *files = new TString[n]; - TString *names = new TString[n]; - vector tempcolors = colors; - vector tempstyles = styles; - for (int i = 0; i < n; i++) - { - TString thisfile = nPart(i+1,file,","); - int numberofpipes = thisfile.CountChar('|'); - if (numberofpipes >= 0 && nPart(numberofpipes+1,thisfile,"|").IsDigit()) - { - if (numberofpipes >= 1 && nPart(numberofpipes,thisfile,"|").IsDigit()) - { - colors[i] = nPart(numberofpipes,thisfile,"|").Atoi(); - styles[i] = nPart(numberofpipes+1,thisfile,"|").Atoi(); - thisfile.Remove(thisfile.Length() - nPart(numberofpipes,thisfile,"|").Length() - nPart(numberofpipes+1,thisfile,"|").Length() - 2); - } - else - { - colors[i] = nPart(numberofpipes + 1,thisfile,"|").Atoi(); - thisfile.Remove(thisfile.Length() - nPart(numberofpipes+1,thisfile,"|").Length() - 2); - } - } - files[i] = nPart(1,thisfile,"=",true); - names[i] = nPart(2,thisfile,"=",false); +void makePlots(TString file, + TString misalignment, + Double_t *values, + Double_t *phases, + TString directory, + TString xvar, + TString yvar) { + setupcolors(); + file.Remove(TString::kTrailing, ','); + int n = file.CountChar(',') + 1; + TString *files = new TString[n]; + TString *names = new TString[n]; + vector tempcolors = colors; + vector tempstyles = styles; + for (int i = 0; i < n; i++) { + TString thisfile = nPart(i + 1, file, ","); + int numberofpipes = thisfile.CountChar('|'); + if (numberofpipes >= 0 && nPart(numberofpipes + 1, thisfile, "|").IsDigit()) { + if (numberofpipes >= 1 && nPart(numberofpipes, thisfile, "|").IsDigit()) { + colors[i] = nPart(numberofpipes, thisfile, "|").Atoi(); + styles[i] = nPart(numberofpipes + 1, thisfile, "|").Atoi(); + thisfile.Remove(thisfile.Length() - nPart(numberofpipes, thisfile, "|").Length() - + nPart(numberofpipes + 1, thisfile, "|").Length() - 2); + } else { + colors[i] = nPart(numberofpipes + 1, thisfile, "|").Atoi(); + thisfile.Remove(thisfile.Length() - nPart(numberofpipes + 1, thisfile, "|").Length() - 2); + } } - if (n == 1 && names[0] == "") - names[0] = "scatterplot"; //With 1 file there's no legend, so this is only used in the filename of the scatterplots, if made - makePlots(n,files,names,misalignment,values,phases,directory,xvar,yvar); - delete[] files; - delete[] names; - colors = tempcolors; - styles = tempstyles; + files[i] = nPart(1, thisfile, "=", true); + names[i] = nPart(2, thisfile, "=", false); + } + if (n == 1 && names[0] == "") + names[0] = + "scatterplot"; //With 1 file there's no legend, so this is only used in the filename of the scatterplots, if made + makePlots(n, files, names, misalignment, values, phases, directory, xvar, yvar); + delete[] files; + delete[] names; + colors = tempcolors; + styles = tempstyles; } -void makePlots(TString file,TString directory,TString xvar,TString yvar) -{ - makePlots(file,"",(Double_t*)0,(Double_t*)0,directory,xvar,yvar); +void makePlots(TString file, TString directory, TString xvar, TString yvar) { + makePlots(file, "", (Double_t *)0, (Double_t *)0, directory, xvar, yvar); } //*************************** //functions to make all plots //*************************** -void makePlots(Int_t nFiles,TString *files,TString *names,TString misalignment,Double_t *values,Double_t *phases,TString directory) -{ - makePlots(nFiles,files,names,misalignment,values,phases,directory,"all","all"); +void makePlots(Int_t nFiles, + TString *files, + TString *names, + TString misalignment, + Double_t *values, + Double_t *phases, + TString directory) { + makePlots(nFiles, files, names, misalignment, values, phases, directory, "all", "all"); } -void makePlots(Int_t nFiles,TString *files,TString *names,TString directory) -{ - makePlots(nFiles,files,names,"",(Double_t*)0,(Double_t*)0,directory); +void makePlots(Int_t nFiles, TString *files, TString *names, TString directory) { + makePlots(nFiles, files, names, "", (Double_t *)0, (Double_t *)0, directory); } -void makePlots(TString file,TString misalignment,Double_t *values,Double_t *phases,TString directory) -{ - setupcolors(); - file.Remove(TString::kTrailing, ','); - int n = file.CountChar(',') + 1; - TString *files = new TString[n]; - TString *names = new TString[n]; - vector tempcolors = colors; - vector tempstyles = styles; - for (int i = 0; i < n; i++) - { - TString thisfile = nPart(i+1,file,","); - int numberofpipes = thisfile.CountChar('|'); - if (numberofpipes >= 0 && nPart(numberofpipes+1,thisfile,"|").IsDigit()) - { - if (numberofpipes >= 1 && nPart(numberofpipes,thisfile,"|").IsDigit()) - { - colors[i] = nPart(numberofpipes,thisfile,"|").Atoi(); - styles[i] = nPart(numberofpipes+1,thisfile,"|").Atoi(); - thisfile.Remove(thisfile.Length() - nPart(numberofpipes,thisfile,"|").Length() - nPart(numberofpipes+1,thisfile,"|").Length() - 2); - } - else - { - colors[i] = nPart(numberofpipes + 1,thisfile,"|").Atoi(); - thisfile.Remove(thisfile.Length() - nPart(numberofpipes+1,thisfile,"|").Length() - 2); - } - } - files[i] = nPart(1,thisfile,"=",true); - names[i] = nPart(2,thisfile,"=",false); +void makePlots(TString file, TString misalignment, Double_t *values, Double_t *phases, TString directory) { + setupcolors(); + file.Remove(TString::kTrailing, ','); + int n = file.CountChar(',') + 1; + TString *files = new TString[n]; + TString *names = new TString[n]; + vector tempcolors = colors; + vector tempstyles = styles; + for (int i = 0; i < n; i++) { + TString thisfile = nPart(i + 1, file, ","); + int numberofpipes = thisfile.CountChar('|'); + if (numberofpipes >= 0 && nPart(numberofpipes + 1, thisfile, "|").IsDigit()) { + if (numberofpipes >= 1 && nPart(numberofpipes, thisfile, "|").IsDigit()) { + colors[i] = nPart(numberofpipes, thisfile, "|").Atoi(); + styles[i] = nPart(numberofpipes + 1, thisfile, "|").Atoi(); + thisfile.Remove(thisfile.Length() - nPart(numberofpipes, thisfile, "|").Length() - + nPart(numberofpipes + 1, thisfile, "|").Length() - 2); + } else { + colors[i] = nPart(numberofpipes + 1, thisfile, "|").Atoi(); + thisfile.Remove(thisfile.Length() - nPart(numberofpipes + 1, thisfile, "|").Length() - 2); + } } - if (n == 1 && names[0] == "") - names[0] = "scatterplot"; //With 1 file there's no legend, so this is only used in the filename of the scatterplots, if made - makePlots(n,files,names,misalignment,values,phases,directory); - delete[] files; - delete[] names; - colors = tempcolors; - styles = tempstyles; + files[i] = nPart(1, thisfile, "=", true); + names[i] = nPart(2, thisfile, "=", false); + } + if (n == 1 && names[0] == "") + names[0] = + "scatterplot"; //With 1 file there's no legend, so this is only used in the filename of the scatterplots, if made + makePlots(n, files, names, misalignment, values, phases, directory); + delete[] files; + delete[] names; + colors = tempcolors; + styles = tempstyles; } -void makePlots(TString file,TString directory) -{ - makePlots(file,"",(Double_t*)0,(Double_t*)0,directory); -} +void makePlots(TString file, TString directory) { makePlots(file, "", (Double_t *)0, (Double_t *)0, directory); } //============= //3. Axis Label //============= -TString fancyname(TString variable) -{ - if (variable == "pt") - return "p_{T}"; - else if (variable == "phi") - return "#phi"; - else if (variable == "eta") - return "#eta"; - else if (variable == "theta") - return "#theta"; - else if (variable == "qoverpt") - return "q/p_{T}"; - else if (variable == "runNumber") - return "run number"; - else if (variable == "dxy" || variable == "dz") - return variable.ReplaceAll("d","d_{").Append("}"); - else - return variable; +TString fancyname(TString variable) { + if (variable == "pt") + return "p_{T}"; + else if (variable == "phi") + return "#phi"; + else if (variable == "eta") + return "#eta"; + else if (variable == "theta") + return "#theta"; + else if (variable == "qoverpt") + return "q/p_{T}"; + else if (variable == "runNumber") + return "run number"; + else if (variable == "dxy" || variable == "dz") + return variable.ReplaceAll("d", "d_{").Append("}"); + else + return variable; } //this gives the units, to be put in the axis label -TString units(TString variable,Char_t axis) -{ - if (variable == "pt") - return "GeV"; - if (variable == "dxy" || variable == "dz") - { - if (axis == 'y') - return "#mum"; //in the tree, it's listed in centimeters, but in trackSplitPlot the value is divided by 1e4 - if (axis == 'x') - return "cm"; - } - if (variable == "qoverpt") - { - if (axis == 'y') - return "#times10^{-3}e/GeV"; //e/TeV is not particularly intuitive - if (axis == 'x') - return "e/GeV"; - } - if (axis == 'y' && (variable == "phi" || variable == "theta")) - return "mrad"; - return ""; +TString units(TString variable, Char_t axis) { + if (variable == "pt") + return "GeV"; + if (variable == "dxy" || variable == "dz") { + if (axis == 'y') + return "#mum"; //in the tree, it's listed in centimeters, but in trackSplitPlot the value is divided by 1e4 + if (axis == 'x') + return "cm"; + } + if (variable == "qoverpt") { + if (axis == 'y') + return "#times10^{-3}e/GeV"; //e/TeV is not particularly intuitive + if (axis == 'x') + return "e/GeV"; + } + if (axis == 'y' && (variable == "phi" || variable == "theta")) + return "mrad"; + return ""; } TString plainunits(TString variable, char axis) { - TString result = units(variable, axis); - result.ReplaceAll("#mu", "u"); - result.ReplaceAll("#times10^{-3}", "* 1e-3 "); - return result; + TString result = units(variable, axis); + result.ReplaceAll("#mu", "u"); + result.ReplaceAll("#times10^{-3}", "* 1e-3 "); + return result; } TString latexunits(TString variable, char axis) { - TString result = units(variable, axis); - result.ReplaceAll("#", "\\").ReplaceAll("{", "{{").ReplaceAll("}", "}}") - .ReplaceAll("\\mum", "$\\mu$m") - .ReplaceAll("\\times10^{{-3}}", "$\\times10^{{-3}}$"); - return result; + TString result = units(variable, axis); + result.ReplaceAll("#", "\\") + .ReplaceAll("{", "{{") + .ReplaceAll("}", "}}") + .ReplaceAll("\\mum", "$\\mu$m") + .ReplaceAll("\\times10^{{-3}}", "$\\times10^{{-3}}$"); + return result; } //this gives the full axis label, including units. It can handle any combination of relative, resolution, and pull. -TString axislabel(TString variable, Char_t axis, Bool_t relative, Bool_t resolution, Bool_t pull) -{ - if (axis == 'X' || axis == 'Y') - { - double min, max, bins; - axislimits(0,0,variable,tolower(axis),relative,pull,min,max,bins); - - if (variable.BeginsWith("nHits")) - return "fraction of tracks"; - if (variable == "runNumber") - return "number of tracks"; +TString axislabel(TString variable, Char_t axis, Bool_t relative, Bool_t resolution, Bool_t pull) { + if (axis == 'X' || axis == 'Y') { + double min, max, bins; + axislimits(0, 0, variable, tolower(axis), relative, pull, min, max, bins); - stringstream s; - s << "fraction of tracks / " << (max-min)/bins; - if (!pull && !relative) - { - TString varunits = units(variable, tolower(axis)); - if (varunits != "") - s << " " << varunits; - } - TString result = s.str(); - result.ReplaceAll(" #times","#times"); - return result; - } + if (variable.BeginsWith("nHits")) + return "fraction of tracks"; + if (variable == "runNumber") + return "number of tracks"; stringstream s; - if (resolution && axis == 'y') - s << "#sigma("; - if (axis == 'y') - s << "#Delta"; - s << fancyname(variable); - if (relative && axis == 'y') - { - s << " / "; - if (!pull) - s << "("; - s << fancyname(variable); + s << "fraction of tracks / " << (max - min) / bins; + if (!pull && !relative) { + TString varunits = units(variable, tolower(axis)); + if (varunits != "") + s << " " << varunits; } - if (axis == 'y') - { - if (pull) - { - s << " / #delta(#Delta" << fancyname(variable); - if (relative) - s << " / " << fancyname(variable); - s << ")"; - } - else - { - if (!relative) - s << " / "; - s << "#sqrt{2}"; - if (relative) - s << ")"; - } - } - if (resolution && axis == 'y') - s << ")"; - if (((!relative && !pull) || axis == 'x') && units(variable,axis) != "") - s << " (" << units(variable,axis) << ")"; TString result = s.str(); - result.ReplaceAll("#Deltaq/p_{T}","#Delta(q/p_{T})"); + result.ReplaceAll(" #times", "#times"); return result; + } + + stringstream s; + if (resolution && axis == 'y') + s << "#sigma("; + if (axis == 'y') + s << "#Delta"; + s << fancyname(variable); + if (relative && axis == 'y') { + s << " / "; + if (!pull) + s << "("; + s << fancyname(variable); + } + if (axis == 'y') { + if (pull) { + s << " / #delta(#Delta" << fancyname(variable); + if (relative) + s << " / " << fancyname(variable); + s << ")"; + } else { + if (!relative) + s << " / "; + s << "#sqrt{2}"; + if (relative) + s << ")"; + } + } + if (resolution && axis == 'y') + s << ")"; + if (((!relative && !pull) || axis == 'x') && units(variable, axis) != "") + s << " (" << units(variable, axis) << ")"; + TString result = s.str(); + result.ReplaceAll("#Deltaq/p_{T}", "#Delta(q/p_{T})"); + return result; } TString latexlabel(TString variable, Char_t axis, Bool_t relative, Bool_t resolution, Bool_t pull) { - TString result = axislabel(variable, axis, relative, resolution, pull); - result.ReplaceAll(" ("+units(variable, axis)+")", ""); - result.ReplaceAll("#", "\\").ReplaceAll("\\Delta", "\\Delta "); - return result; + TString result = axislabel(variable, axis, relative, resolution, pull); + result.ReplaceAll(" (" + units(variable, axis) + ")", ""); + result.ReplaceAll("#", "\\").ReplaceAll("\\Delta", "\\Delta "); + return result; } -void setAxisLabels(TH1 *p, PlotType type,TString xvar,TString yvar,Bool_t relative,Bool_t pull) -{ - if (type == Histogram) - p->SetXTitle(axislabel(yvar,'y',relative,false,pull)); - if (type == ScatterPlot || type == Profile || type == Resolution || type == OrgHistogram) - p->SetXTitle(axislabel(xvar,'x')); - - if (type == Histogram) - p->SetYTitle(axislabel(yvar,'Y',relative,false,pull)); - if (type == OrgHistogram) - p->SetYTitle(axislabel(xvar,'X',relative,false,pull)); - if (type == ScatterPlot || type == Profile) - p->SetYTitle(axislabel(yvar,'y',relative,false,pull)); - if (type == Resolution) - p->SetYTitle(axislabel(yvar,'y',relative,true,pull)); +void setAxisLabels(TH1 *p, PlotType type, TString xvar, TString yvar, Bool_t relative, Bool_t pull) { + if (type == Histogram) + p->SetXTitle(axislabel(yvar, 'y', relative, false, pull)); + if (type == ScatterPlot || type == Profile || type == Resolution || type == OrgHistogram) + p->SetXTitle(axislabel(xvar, 'x')); + + if (type == Histogram) + p->SetYTitle(axislabel(yvar, 'Y', relative, false, pull)); + if (type == OrgHistogram) + p->SetYTitle(axislabel(xvar, 'X', relative, false, pull)); + if (type == ScatterPlot || type == Profile) + p->SetYTitle(axislabel(yvar, 'y', relative, false, pull)); + if (type == Resolution) + p->SetYTitle(axislabel(yvar, 'y', relative, true, pull)); } -void setAxisLabels(TMultiGraph *p, PlotType type,TString xvar,TString yvar,Bool_t relative,Bool_t pull) -{ - if (type == Histogram) - p->GetXaxis()->SetTitle(axislabel(yvar,'y',relative,false,pull)); - if (type == ScatterPlot || type == Profile || type == Resolution || type == OrgHistogram) - p->GetXaxis()->SetTitle(axislabel(xvar,'x')); - - if (type == Histogram) - p->GetYaxis()->SetTitle(axislabel(yvar,'Y',relative,false,pull)); - if (type == OrgHistogram) - p->GetYaxis()->SetTitle(axislabel(xvar,'X',relative,false,pull)); - if (type == ScatterPlot || type == Profile) - p->GetYaxis()->SetTitle(axislabel(yvar,'y',relative,false,pull)); - if (type == Resolution) - p->GetYaxis()->SetTitle(axislabel(yvar,'y',relative,true,pull)); +void setAxisLabels(TMultiGraph *p, PlotType type, TString xvar, TString yvar, Bool_t relative, Bool_t pull) { + if (type == Histogram) + p->GetXaxis()->SetTitle(axislabel(yvar, 'y', relative, false, pull)); + if (type == ScatterPlot || type == Profile || type == Resolution || type == OrgHistogram) + p->GetXaxis()->SetTitle(axislabel(xvar, 'x')); + + if (type == Histogram) + p->GetYaxis()->SetTitle(axislabel(yvar, 'Y', relative, false, pull)); + if (type == OrgHistogram) + p->GetYaxis()->SetTitle(axislabel(xvar, 'X', relative, false, pull)); + if (type == ScatterPlot || type == Profile) + p->GetYaxis()->SetTitle(axislabel(yvar, 'y', relative, false, pull)); + if (type == Resolution) + p->GetYaxis()->SetTitle(axislabel(yvar, 'y', relative, true, pull)); } - -TString nPart(Int_t part,TString string,TString delimit,Bool_t removerest) -{ - if (part <= 0) return ""; - for (int i = 1; i < part; i++) //part-1 times - { - if (string.Index(delimit) < 0) return ""; - string.Replace(0,string.Index(delimit)+1,"",0); - } - if (string.Index(delimit) >= 0 && removerest) - string.Remove(string.Index(delimit)); - return string; +TString nPart(Int_t part, TString string, TString delimit, Bool_t removerest) { + if (part <= 0) + return ""; + for (int i = 1; i < part; i++) //part-1 times + { + if (string.Index(delimit) < 0) + return ""; + string.Replace(0, string.Index(delimit) + 1, "", 0); + } + if (string.Index(delimit) >= 0 && removerest) + string.Remove(string.Index(delimit)); + return string; } //============== //4. Axis Limits //============== +Double_t findStatistic( + Statistic what, Int_t nFiles, TString *files, TString var, Char_t axis, Bool_t relative, Bool_t pull) { + Double_t x = 0, //if axis == 'x', var_org goes in x; if axis == 'y', Delta_var goes in x + rel = 1, //if relative, var_org goes in rel. x is divided by rel, so you get Delta_var/var_org + sigma1 = 1, //if pull, the error for split track 1 goes in sigma1 and the error for split track 2 goes in sigma2. + sigma2 = 1, //x is divided by sqrt(sigma1^2+sigma2^2). If !pull && axis == 'y', this divides by sqrt(2) + sigmaorg = 0; // because we want the error in one track. sigmaorg is used when relative && pull + Int_t xint = 0, + xint2 = 0; //xint is used for run number and nHits. xint2 is used for nHits because each event has 2 values. + + Int_t runNumber = 0; //this is used to make sure the run number is between minrun and maxrun + + if (axis == 'x') { + sigma1 = 1 / sqrt(2); //if axis == 'x' don't divide by sqrt(2) + sigma2 = 1 / sqrt(2); + } + + Double_t totallength = 0; + vector xvect; + Double_t result = 0; + if (what == Minimum) + result = 1e100; + if (what == Maximum) + result = -1e100; + + stringstream sx, srel, ssigma1, ssigma2, ssigmaorg; + + if (axis == 'y') + sx << "Delta_"; + sx << var; + if (axis == 'x' && var != "runNumber" && !var.BeginsWith("nHits")) + sx << "_org"; + if (axis == 'x' && var.BeginsWith("nHits")) + sx << "1_spl"; + TString variable = sx.str(), variable2 = variable; + variable2.ReplaceAll("1_spl", "2_spl"); + + TString relvariable = "1"; + if (relative) { + srel << var << "_org"; + relvariable = srel.str(); + } + + if (pull) { + ssigma1 << var << "1Err_spl"; + ssigma2 << var << "2Err_spl"; + } + TString sigma1variable = ssigma1.str(); + TString sigma2variable = ssigma2.str(); + + if (pull && relative) + ssigmaorg << var << "Err_org"; + TString sigmaorgvariable = ssigmaorg.str(); + + if (!relative && !pull && (variable == "Delta_dxy" || variable == "Delta_dz")) + rel = 1e-4; //it's in cm but we want um + if (!relative && !pull && (variable == "Delta_phi" || variable == "Delta_theta" || variable == "Delta_qoverpt")) + rel = 1e-3; //make the axis labels manageable + + for (Int_t j = 0; j < nFiles; j++) { + if (((var == "runNumber" && what != Maximum) ? findMax(files[j], "runNumber", 'x') < 2 : false) || + files[j] == "") //if it's MC data (run 1), the run number is meaningless + continue; + TFile *f = TFile::Open(files[j]); + TTree *tree = (TTree *)f->Get("cosmicValidation/splitterTree"); + if (tree == 0) + tree = (TTree *)f->Get("splitterTree"); + Int_t length = tree->GetEntries(); + + tree->SetBranchAddress("runNumber", &runNumber); + if (var == "runNumber") + tree->SetBranchAddress(variable, &xint); + else if (var.BeginsWith("nHits")) { + tree->SetBranchAddress(variable, &xint); + tree->SetBranchAddress(variable2, &xint2); + } else + tree->SetBranchAddress(variable, &x); -Double_t findStatistic(Statistic what,Int_t nFiles,TString *files,TString var,Char_t axis,Bool_t relative,Bool_t pull) -{ - Double_t x = 0, //if axis == 'x', var_org goes in x; if axis == 'y', Delta_var goes in x - rel = 1, //if relative, var_org goes in rel. x is divided by rel, so you get Delta_var/var_org - sigma1 = 1, //if pull, the error for split track 1 goes in sigma1 and the error for split track 2 goes in sigma2. - sigma2 = 1, //x is divided by sqrt(sigma1^2+sigma2^2). If !pull && axis == 'y', this divides by sqrt(2) - sigmaorg = 0; // because we want the error in one track. sigmaorg is used when relative && pull - Int_t xint = 0, xint2 = 0; //xint is used for run number and nHits. xint2 is used for nHits because each event has 2 values. - - Int_t runNumber = 0; //this is used to make sure the run number is between minrun and maxrun - - if (axis == 'x') - { - sigma1 = 1/sqrt(2); //if axis == 'x' don't divide by sqrt(2) - sigma2 = 1/sqrt(2); - } - - Double_t totallength = 0; - vector xvect; - Double_t result = 0; - if (what == Minimum) result = 1e100; - if (what == Maximum) result = -1e100; - - stringstream sx,srel,ssigma1,ssigma2,ssigmaorg; - - if (axis == 'y') - sx << "Delta_"; - sx << var; - if (axis == 'x' && var != "runNumber" && !var.BeginsWith("nHits")) - sx << "_org"; - if (axis == 'x' && var.BeginsWith("nHits")) - sx << "1_spl"; - TString variable = sx.str(), - variable2 = variable; - variable2.ReplaceAll("1_spl","2_spl"); - - TString relvariable = "1"; if (relative) - { - srel << var << "_org"; - relvariable = srel.str(); + tree->SetBranchAddress(relvariable, &rel); + if (pull) { + tree->SetBranchAddress(sigma1variable, &sigma1); + tree->SetBranchAddress(sigma2variable, &sigma2); } - - if (pull) - { - ssigma1 << var << "1Err_spl"; - ssigma2 << var << "2Err_spl"; - } - TString sigma1variable = ssigma1.str(); - TString sigma2variable = ssigma2.str(); - - if (pull && relative) - ssigmaorg << var << "Err_org"; - TString sigmaorgvariable = ssigmaorg.str(); - - if (!relative && !pull && (variable == "Delta_dxy" || variable == "Delta_dz")) - rel = 1e-4; //it's in cm but we want um - if (!relative && !pull && (variable == "Delta_phi" || variable == "Delta_theta" || variable == "Delta_qoverpt")) - rel = 1e-3; //make the axis labels manageable - - for (Int_t j = 0; j < nFiles; j++) - { - if (((var == "runNumber" && what != Maximum) ? findMax(files[j],"runNumber",'x') < 2 : false) || files[j] == "") //if it's MC data (run 1), the run number is meaningless - continue; - TFile *f = TFile::Open(files[j]); - TTree *tree = (TTree*)f->Get("cosmicValidation/splitterTree"); - if (tree == 0) - tree = (TTree*)f->Get("splitterTree"); - Int_t length = tree->GetEntries(); - - tree->SetBranchAddress("runNumber",&runNumber); - if (var == "runNumber") - tree->SetBranchAddress(variable,&xint); - else if (var.BeginsWith("nHits")) - { - tree->SetBranchAddress(variable,&xint); - tree->SetBranchAddress(variable2,&xint2); - } - else - tree->SetBranchAddress(variable,&x); - - if (relative) - tree->SetBranchAddress(relvariable,&rel); - if (pull) - { - tree->SetBranchAddress(sigma1variable,&sigma1); - tree->SetBranchAddress(sigma2variable,&sigma2); - } - if (relative && pull) - tree->SetBranchAddress(sigmaorgvariable,&sigmaorg); - - for (Int_t i = 0; iGetEntry(i); - if (var == "runNumber" || var.BeginsWith("nHits")) - x = xint; - if (var == "runNumber") - runNumber = x; - if (var == "phi" && x >= pi) - x -= 2*pi; - if (var == "phi" && x <= -pi) - x += 2*pi; - if ((runNumber < minrun && runNumber > 1) || (runNumber > maxrun && maxrun > 0)) continue; - - totallength++; - - Double_t error; - if (relative && pull) - error = sqrt((sigma1/rel)*(sigma1/rel) + (sigma2/rel)*(sigma2/rel) + (sigmaorg*x/(rel*rel))*(sigmaorg*x/(rel*rel))); - else - error = sqrt(sigma1 * sigma1 + sigma2 * sigma2); // = 1 if axis == 'x' && !pull - // = sqrt(2) if axis == 'y' && !pull, so that you get the error in 1 track - // when you divide by it - x /= (rel * error); - if (!std::isfinite(x)) //e.g. in data with no pixels, the error occasionally comes out to be NaN - continue; //Filling a histogram with NaN is irrelevant, but here it would cause the whole result to be NaN - - if (what == Minimum && x < result) - result = x; - if (what == Maximum && x > result) - result = x; - xvect.push_back(x); - if (var.BeginsWith("nHits")) - { - x = xint2; - if (what == Minimum && x < result) - result = x; - if (what == Maximum && x > result) - result = x; - xvect.push_back(x); - } - } - delete f; //automatically closes the file + if (relative && pull) + tree->SetBranchAddress(sigmaorgvariable, &sigmaorg); + + for (Int_t i = 0; i < length; i++) { + tree->GetEntry(i); + if (var == "runNumber" || var.BeginsWith("nHits")) + x = xint; + if (var == "runNumber") + runNumber = x; + if (var == "phi" && x >= pi) + x -= 2 * pi; + if (var == "phi" && x <= -pi) + x += 2 * pi; + if ((runNumber < minrun && runNumber > 1) || (runNumber > maxrun && maxrun > 0)) + continue; + + totallength++; + + Double_t error; + if (relative && pull) + error = sqrt((sigma1 / rel) * (sigma1 / rel) + (sigma2 / rel) * (sigma2 / rel) + + (sigmaorg * x / (rel * rel)) * (sigmaorg * x / (rel * rel))); + else + error = sqrt(sigma1 * sigma1 + sigma2 * sigma2); // = 1 if axis == 'x' && !pull + // = sqrt(2) if axis == 'y' && !pull, so that you get the error in 1 track + // when you divide by it + x /= (rel * error); + if (!std::isfinite(x)) //e.g. in data with no pixels, the error occasionally comes out to be NaN + continue; //Filling a histogram with NaN is irrelevant, but here it would cause the whole result to be NaN + + if (what == Minimum && x < result) + result = x; + if (what == Maximum && x > result) + result = x; + xvect.push_back(x); + if (var.BeginsWith("nHits")) { + x = xint2; + if (what == Minimum && x < result) + result = x; + if (what == Maximum && x > result) + result = x; + xvect.push_back(x); + } } + delete f; //automatically closes the file + } - if (what == Minimum || what == Maximum) - return result; - - sort(xvect.begin(), xvect.end()); - - for (unsigned int i = (unsigned int)(xvect.size()*(1-outliercut)/2); i <= (unsigned int)(xvect.size()*(1+outliercut)/2 + .999); i++, totallength++) - result += xvect[i]; - - result /= totallength; - - if (what == RMS) - { - double average = result; - result = 0; - for (unsigned int i = (unsigned int)(xvect.size()*(1-outliercut)/2); i <= (unsigned int)(xvect.size()*(1+outliercut)/2 + .999); i++) - result += (x - average) * (x - average); - result = sqrt(result / (totallength - 1)); - } + if (what == Minimum || what == Maximum) return result; -} -Double_t findAverage(Int_t nFiles,TString *files,TString var,Char_t axis,Bool_t relative,Bool_t pull) -{ - return findStatistic(Average,nFiles,files,var,axis,relative,pull); + sort(xvect.begin(), xvect.end()); + + for (unsigned int i = (unsigned int)(xvect.size() * (1 - outliercut) / 2); + i <= (unsigned int)(xvect.size() * (1 + outliercut) / 2 + .999); + i++, totallength++) + result += xvect[i]; + + result /= totallength; + + if (what == RMS) { + double average = result; + result = 0; + for (unsigned int i = (unsigned int)(xvect.size() * (1 - outliercut) / 2); + i <= (unsigned int)(xvect.size() * (1 + outliercut) / 2 + .999); + i++) + result += (x - average) * (x - average); + result = sqrt(result / (totallength - 1)); + } + return result; } -Double_t findMin(Int_t nFiles,TString *files,TString var,Char_t axis,Bool_t relative,Bool_t pull) -{ - return findStatistic(Minimum,nFiles,files,var,axis,relative,pull); +Double_t findAverage(Int_t nFiles, TString *files, TString var, Char_t axis, Bool_t relative, Bool_t pull) { + return findStatistic(Average, nFiles, files, var, axis, relative, pull); } -Double_t findMax(Int_t nFiles,TString *files,TString var,Char_t axis,Bool_t relative,Bool_t pull) -{ - return findStatistic(Maximum,nFiles,files,var,axis,relative,pull); +Double_t findMin(Int_t nFiles, TString *files, TString var, Char_t axis, Bool_t relative, Bool_t pull) { + return findStatistic(Minimum, nFiles, files, var, axis, relative, pull); } -Double_t findRMS(Int_t nFiles,TString *files,TString var,Char_t axis,Bool_t relative,Bool_t pull) -{ - return findStatistic(RMS,nFiles,files,var,axis,relative,pull); +Double_t findMax(Int_t nFiles, TString *files, TString var, Char_t axis, Bool_t relative, Bool_t pull) { + return findStatistic(Maximum, nFiles, files, var, axis, relative, pull); } +Double_t findRMS(Int_t nFiles, TString *files, TString var, Char_t axis, Bool_t relative, Bool_t pull) { + return findStatistic(RMS, nFiles, files, var, axis, relative, pull); +} //These functions are for 1 file -Double_t findStatistic(Statistic what,TString file,TString var,Char_t axis,Bool_t relative,Bool_t pull) -{ - return findStatistic(what,1,&file,var,axis,relative,pull); +Double_t findStatistic(Statistic what, TString file, TString var, Char_t axis, Bool_t relative, Bool_t pull) { + return findStatistic(what, 1, &file, var, axis, relative, pull); } -Double_t findAverage(TString file,TString var,Char_t axis,Bool_t relative,Bool_t pull) -{ - return findStatistic(Average,file,var,axis,relative,pull); +Double_t findAverage(TString file, TString var, Char_t axis, Bool_t relative, Bool_t pull) { + return findStatistic(Average, file, var, axis, relative, pull); } -Double_t findMin(TString file,TString var,Char_t axis,Bool_t relative,Bool_t pull) -{ - return findStatistic(Minimum,file,var,axis,relative,pull); +Double_t findMin(TString file, TString var, Char_t axis, Bool_t relative, Bool_t pull) { + return findStatistic(Minimum, file, var, axis, relative, pull); } -Double_t findMax(TString file,TString var,Char_t axis,Bool_t relative,Bool_t pull) -{ - return findStatistic(Maximum,file,var,axis,relative,pull); +Double_t findMax(TString file, TString var, Char_t axis, Bool_t relative, Bool_t pull) { + return findStatistic(Maximum, file, var, axis, relative, pull); } -Double_t findRMS(TString file,TString var,Char_t axis,Bool_t relative,Bool_t pull) -{ - return findStatistic(RMS,file,var,axis,relative,pull); +Double_t findRMS(TString file, TString var, Char_t axis, Bool_t relative, Bool_t pull) { + return findStatistic(RMS, file, var, axis, relative, pull); } - - - //This puts the axis limits that should be used for trackSplitPlot in min and max. //Default axis limits are defined for pt, qoverpt, dxy, dz, theta, eta, and phi. //For run number and nHits, the minimum and maximum are used. //For any other variable, average +/- 5*rms are used. //To use this instead of the default values, just comment out the part that says [else] if (var == "?") {min = ?; max = ?;} -void axislimits(Int_t nFiles,TString *files,TString var,Char_t axis,Bool_t relative,Bool_t pull,Double_t &min,Double_t &max,Double_t &bins) -{ - bool pixel = subdetector.Contains("PIX"); - if (axis == 'x') - { - if (var == "pt") - { - min = 5; - max = 100; - bins = 38; - } - else if (var == "qoverpt") - { - min = -.35; - max = .35; - bins = 35; - } - else if (var == "dxy") - { - min = -100; - max = 100; - if (pixel) - { - min = -10; - max = 10; - } - bins = 20; - } - else if (var == "dz") - { - min = -250; - max = 250; - if (pixel) - { - min = -25; - max = 25; - } - bins = 25; - } - else if (var == "theta") - { - min = .5; - max = 2.5; - bins = 40; - } - else if (var == "eta") - { - min = -1.2; - max = 1.2; - bins = 40; - } - else if (var == "phi") - { - min = -3; - max = 0; - bins = 30; - } - else if (var == "runNumber" || var.BeginsWith("nHits")) - { - min = findMin(nFiles,files,var,'x') - .5; - max = findMax(nFiles,files,var,'x') + .5; - bins = max-min; - } - else - { - cout << "No x axis limits for " << var << ". Using average +/- 5*rms" << endl; - Double_t average = findAverage(nFiles,files,var,'x'); - Double_t rms = findRMS (nFiles,files,var,'x'); - max = TMath::Min(average + 5 * rms,findMax(nFiles,files,var,'x')); - min = TMath::Max(average - 5 * rms,findMin(nFiles,files,var,'x')); - bins = 50; - } +void axislimits(Int_t nFiles, + TString *files, + TString var, + Char_t axis, + Bool_t relative, + Bool_t pull, + Double_t &min, + Double_t &max, + Double_t &bins) { + bool pixel = subdetector.Contains("PIX"); + if (axis == 'x') { + if (var == "pt") { + min = 5; + max = 100; + bins = 38; + } else if (var == "qoverpt") { + min = -.35; + max = .35; + bins = 35; + } else if (var == "dxy") { + min = -100; + max = 100; + if (pixel) { + min = -10; + max = 10; + } + bins = 20; + } else if (var == "dz") { + min = -250; + max = 250; + if (pixel) { + min = -25; + max = 25; + } + bins = 25; + } else if (var == "theta") { + min = .5; + max = 2.5; + bins = 40; + } else if (var == "eta") { + min = -1.2; + max = 1.2; + bins = 40; + } else if (var == "phi") { + min = -3; + max = 0; + bins = 30; + } else if (var == "runNumber" || var.BeginsWith("nHits")) { + min = findMin(nFiles, files, var, 'x') - .5; + max = findMax(nFiles, files, var, 'x') + .5; + bins = max - min; + } else { + cout << "No x axis limits for " << var << ". Using average +/- 5*rms" << endl; + Double_t average = findAverage(nFiles, files, var, 'x'); + Double_t rms = findRMS(nFiles, files, var, 'x'); + max = TMath::Min(average + 5 * rms, findMax(nFiles, files, var, 'x')); + min = TMath::Max(average - 5 * rms, findMin(nFiles, files, var, 'x')); + bins = 50; } - if (axis == 'y') - { - if (pull) - { - min = -5; - max = 5; - bins = 40; - } - else if (var == "pt" && relative) - { - min = -.06; - max = .06; - bins = 30; - } - else if (var == "pt" && !relative) - { - min = -.8; - max = .8; - bins = 40; - } - else if (var == "qoverpt") - { - min = -2.5; - max = 2.5; - bins = 50; - } - else if (var == "dxy") - { - min = -1250; - max = 1250; - if (pixel) - { - min = -125; - max = 125; - } - bins = 50; - } - else if (var == "dz") - { - min = -2000; - max = 2000; - if (pixel) - { - min = -200; - max = 200; - } - bins = 40; - } - else if (var == "theta") - { - min = -10; - max = 10; - if (pixel) - { - min = -5; - max = 5; - } - bins = 50; - } - else if (var == "eta") - { - min = -.007; - max = .007; - if (pixel) - { - min = -.003; - max = .003; - } - bins = 30; - } - else if (var == "phi") - { - min = -2; - max = 2; - bins = 40; - } - else - { - cout << "No y axis limits for " << var << ". Using average +/- 5 * rms." << endl; - Double_t average = 0 /*findAverage(nFiles,files,var,'y',relative,pull)*/; - Double_t rms = findRMS (nFiles,files,var,'y',relative,pull); - min = TMath::Max(TMath::Max(-TMath::Abs(average) - 5*rms, - findMin(nFiles,files,var,'y',relative,pull)), - -findMax(nFiles,files,var,'y',relative,pull)); - max = -min; - bins = 50; - } + } + if (axis == 'y') { + if (pull) { + min = -5; + max = 5; + bins = 40; + } else if (var == "pt" && relative) { + min = -.06; + max = .06; + bins = 30; + } else if (var == "pt" && !relative) { + min = -.8; + max = .8; + bins = 40; + } else if (var == "qoverpt") { + min = -2.5; + max = 2.5; + bins = 50; + } else if (var == "dxy") { + min = -1250; + max = 1250; + if (pixel) { + min = -125; + max = 125; + } + bins = 50; + } else if (var == "dz") { + min = -2000; + max = 2000; + if (pixel) { + min = -200; + max = 200; + } + bins = 40; + } else if (var == "theta") { + min = -10; + max = 10; + if (pixel) { + min = -5; + max = 5; + } + bins = 50; + } else if (var == "eta") { + min = -.007; + max = .007; + if (pixel) { + min = -.003; + max = .003; + } + bins = 30; + } else if (var == "phi") { + min = -2; + max = 2; + bins = 40; + } else { + cout << "No y axis limits for " << var << ". Using average +/- 5 * rms." << endl; + Double_t average = 0 /*findAverage(nFiles,files,var,'y',relative,pull)*/; + Double_t rms = findRMS(nFiles, files, var, 'y', relative, pull); + min = TMath::Max(TMath::Max(-TMath::Abs(average) - 5 * rms, findMin(nFiles, files, var, 'y', relative, pull)), + -findMax(nFiles, files, var, 'y', relative, pull)); + max = -min; + bins = 50; } + } } //=============== //5. Place Legend //=============== -Double_t placeLegend(TLegend *l, Double_t width, Double_t height, Double_t x1min, Double_t y1min, Double_t x2max, Double_t y2max) -{ - for (int i = legendGrid; i >= 0; i--) - { - for (int j = legendGrid; j >= 0; j--) - { - Double_t x1 = x1min * (1-(double)i/legendGrid) + (x2max - width) * (double)i/legendGrid - margin*width; - Double_t y1 = y1min * (1-(double)j/legendGrid) + (y2max - height) * (double)j/legendGrid - margin*height; - Double_t x2 = x1 + (1+2*margin) * width; - Double_t y2 = y1 + (1+2*margin) * height; - if (fitsHere(l,x1,y1,x2,y2)) - { - x1 += margin*width; - y1 += margin*height; - x2 -= margin*width; - y2 -= margin*height; - l->SetX1(x1); - l->SetY1(y1); - l->SetX2(x2); - l->SetY2(y2); - return y2max; - } - } +Double_t placeLegend( + TLegend *l, Double_t width, Double_t height, Double_t x1min, Double_t y1min, Double_t x2max, Double_t y2max) { + for (int i = legendGrid; i >= 0; i--) { + for (int j = legendGrid; j >= 0; j--) { + Double_t x1 = x1min * (1 - (double)i / legendGrid) + (x2max - width) * (double)i / legendGrid - margin * width; + Double_t y1 = y1min * (1 - (double)j / legendGrid) + (y2max - height) * (double)j / legendGrid - margin * height; + Double_t x2 = x1 + (1 + 2 * margin) * width; + Double_t y2 = y1 + (1 + 2 * margin) * height; + if (fitsHere(l, x1, y1, x2, y2)) { + x1 += margin * width; + y1 += margin * height; + x2 -= margin * width; + y2 -= margin * height; + l->SetX1(x1); + l->SetY1(y1); + l->SetX2(x2); + l->SetY2(y2); + return y2max; + } } - Double_t newy2max = y2max + increaseby * (y2max-y1min); - Double_t newheight = height * (newy2max - y1min) / (y2max - y1min); - return placeLegend(l,width,newheight,x1min,y1min,x2max,newy2max); + } + Double_t newy2max = y2max + increaseby * (y2max - y1min); + Double_t newheight = height * (newy2max - y1min) / (y2max - y1min); + return placeLegend(l, width, newheight, x1min, y1min, x2max, newy2max); } -Bool_t fitsHere(TLegend *l,Double_t x1, Double_t y1, Double_t x2, Double_t y2) -{ - Bool_t fits = true; - TList *list = l->GetListOfPrimitives(); - for (Int_t k = 0; list->At(k) != 0 && fits; k++) +Bool_t fitsHere(TLegend *l, Double_t x1, Double_t y1, Double_t x2, Double_t y2) { + Bool_t fits = true; + TList *list = l->GetListOfPrimitives(); + for (Int_t k = 0; list->At(k) != 0 && fits; k++) { + TObject *obj = ((TLegendEntry *)(list->At(k)))->GetObject(); + if (obj == 0) + continue; + TClass *cl = obj->IsA(); + + //Histogram, drawn as a histogram + if (cl->InheritsFrom("TH1") && !cl->InheritsFrom("TH2") && !cl->InheritsFrom("TH3") && cl != TProfile::Class() && + ((TH1 *)obj)->GetMarkerColor() == kWhite) { + Int_t where = 0; + TH1 *h = (TH1 *)obj; + for (Int_t i = 1; i <= h->GetNbinsX() && fits; i++) { + if (h->GetBinLowEdge(i) + h->GetBinWidth(i) < x1) + continue; //to the left of the legend + if (h->GetBinLowEdge(i) > x2) + continue; //to the right of the legend + if (h->GetBinContent(i) > y1 && h->GetBinContent(i) < y2) + fits = false; //inside the legend + if (h->GetBinContent(i) < y1) { + if (where == 0) + where = -1; //below the legend + if (where == 1) + fits = false; //a previous bin was above it so there's a vertical line through it + } + if (h->GetBinContent(i) > y2) { + if (where == 0) + where = 1; //above the legend + if (where == -1) + fits = false; //a previous bin was below it so there's a vertical line through it + } + } + continue; + } + //Histogram, drawn with Draw("P") + else if (cl->InheritsFrom("TH1") && !cl->InheritsFrom("TH2") && !cl->InheritsFrom("TH3") && cl != TProfile::Class()) + //Probably TProfile would be the same but I haven't tested it { - TObject *obj = ((TLegendEntry*)(list->At(k)))->GetObject(); - if (obj == 0) continue; - TClass *cl = obj->IsA(); - - //Histogram, drawn as a histogram - if (cl->InheritsFrom("TH1") && !cl->InheritsFrom("TH2") && !cl->InheritsFrom("TH3") - && cl != TProfile::Class() && ((TH1*)obj)->GetMarkerColor() == kWhite) - { - Int_t where = 0; - TH1 *h = (TH1*)obj; - for (Int_t i = 1; i <= h->GetNbinsX() && fits; i++) - { - if (h->GetBinLowEdge(i) + h->GetBinWidth(i) < x1) continue; //to the left of the legend - if (h->GetBinLowEdge(i) > x2) continue; //to the right of the legend - if (h->GetBinContent(i) > y1 && h->GetBinContent(i) < y2) fits = false; //inside the legend - if (h->GetBinContent(i) < y1) - { - if (where == 0) where = -1; //below the legend - if (where == 1) fits = false; //a previous bin was above it so there's a vertical line through it - } - if (h->GetBinContent(i) > y2) - { - if (where == 0) where = 1; //above the legend - if (where == -1) fits = false; //a previous bin was below it so there's a vertical line through it - } - } - continue; - } - //Histogram, drawn with Draw("P") - else if (cl->InheritsFrom("TH1") && !cl->InheritsFrom("TH2") && !cl->InheritsFrom("TH3") - && cl != TProfile::Class()) - //Probably TProfile would be the same but I haven't tested it - { - TH1 *h = (TH1*)obj; - for (Int_t i = 1; i <= h->GetNbinsX() && fits; i++) - { - if (h->GetBinLowEdge(i) + h->GetBinWidth(i)/2 < x1) continue; - if (h->GetBinLowEdge(i) > x2) continue; - if (h->GetBinContent(i) > y1 && h->GetBinContent(i) < y2) fits = false; - if (h->GetBinContent(i) + h->GetBinError(i) > y2 && h->GetBinContent(i) - h->GetBinError(i) < y2) fits = false; - if (h->GetBinContent(i) + h->GetBinError(i) > y1 && h->GetBinContent(i) - h->GetBinError(i) < y1) fits = false; - } - } - else if (cl->InheritsFrom("TF1") && !cl->InheritsFrom("TF2")) - { - TF1 *f = (TF1*)obj; - Double_t max = f->GetMaximum(x1,x2); - Double_t min = f->GetMinimum(x1,x2); - if (min < y2 && max > y1) fits = false; - } - // else if (cl->InheritsFrom(...... add more objects here - else - { - cout << "Don't know how to place the legend around objects of type " << obj->ClassName() << "." << endl - << "Add this class into fitsHere() if you want it to work properly." << endl - << "The legend will still be placed around any other objects." << endl; - } + TH1 *h = (TH1 *)obj; + for (Int_t i = 1; i <= h->GetNbinsX() && fits; i++) { + if (h->GetBinLowEdge(i) + h->GetBinWidth(i) / 2 < x1) + continue; + if (h->GetBinLowEdge(i) > x2) + continue; + if (h->GetBinContent(i) > y1 && h->GetBinContent(i) < y2) + fits = false; + if (h->GetBinContent(i) + h->GetBinError(i) > y2 && h->GetBinContent(i) - h->GetBinError(i) < y2) + fits = false; + if (h->GetBinContent(i) + h->GetBinError(i) > y1 && h->GetBinContent(i) - h->GetBinError(i) < y1) + fits = false; + } + } else if (cl->InheritsFrom("TF1") && !cl->InheritsFrom("TF2")) { + TF1 *f = (TF1 *)obj; + Double_t max = f->GetMaximum(x1, x2); + Double_t min = f->GetMinimum(x1, x2); + if (min < y2 && max > y1) + fits = false; + } + // else if (cl->InheritsFrom(...... add more objects here + else { + cout << "Don't know how to place the legend around objects of type " << obj->ClassName() << "." << endl + << "Add this class into fitsHere() if you want it to work properly." << endl + << "The legend will still be placed around any other objects." << endl; } - return fits; + } + return fits; } diff --git a/Alignment/OfflineValidation/python/TkAlStyle.py b/Alignment/OfflineValidation/python/TkAlStyle.py index 4bed74f8a465c..0520af32f5130 100644 --- a/Alignment/OfflineValidation/python/TkAlStyle.py +++ b/Alignment/OfflineValidation/python/TkAlStyle.py @@ -1,5 +1,5 @@ import ROOT -ROOT.gROOT.ProcessLine('#include "Alignment/OfflineValidation/macros/TkAlStyle.cc"') +ROOT.gROOT.ProcessLine('#include "Alignment/OfflineValidation/interface/TkAlStyle.h"') from ROOT import TkAlStyle From e3347b71b09d513e286dffe61e2786782c6681c4 Mon Sep 17 00:00:00 2001 From: mmusich Date: Wed, 3 Jan 2024 15:29:56 +0100 Subject: [PATCH 192/281] add a unit test for TkAlStyle --- .../OfflineValidation/test/BuildFile.xml | 4 +++ .../OfflineValidation/test/testTkAlStyle.C | 35 +++++++++---------- 2 files changed, 21 insertions(+), 18 deletions(-) diff --git a/Alignment/OfflineValidation/test/BuildFile.xml b/Alignment/OfflineValidation/test/BuildFile.xml index daf54f09d1962..a8bfe03534a9b 100644 --- a/Alignment/OfflineValidation/test/BuildFile.xml +++ b/Alignment/OfflineValidation/test/BuildFile.xml @@ -30,6 +30,10 @@ + + + + diff --git a/Alignment/OfflineValidation/test/testTkAlStyle.C b/Alignment/OfflineValidation/test/testTkAlStyle.C index 039561b000528..e1148728d4dcc 100644 --- a/Alignment/OfflineValidation/test/testTkAlStyle.C +++ b/Alignment/OfflineValidation/test/testTkAlStyle.C @@ -6,51 +6,50 @@ #include "TPaveText.h" #include "TROOT.h" -#include "../macros/TkAlStyle.cc" - +#include "../interface/TkAlStyle.h" void testTkAlStyle() { - gROOT->ProcessLine(".L ../macros/TkAlStyle.cc+"); - TkAlStyle::set(PRELIMINARY); // set publication status + //gROOT->ProcessLine(".L ../src/TkAlStyle.cc++g"); + TkAlStyle::set(PRELIMINARY); // set publication status - TCanvas* can = new TCanvas("can","can",500,500); + TCanvas* can = new TCanvas("can", "can", 500, 500); can->cd(); - // Create dummy histograms representing validation plots, // e.g. DMR plots, for a particular alignment object, using // line style accordingly - TH1* h1 = new TH1D("h1",";x title;y title",100,-10,10); - h1->FillRandom("gaus",1000); + TH1* h1 = new TH1D("h1", ";x title;y title", 100, -10, 10); + h1->FillRandom("gaus", 1000); h1->SetLineColor(TkAlStyle::color(IDEALAlign)); h1->SetLineStyle(TkAlStyle::style(IDEALAlign)); - h1->GetYaxis()->SetRangeUser(0,110); + h1->GetYaxis()->SetRangeUser(0, 110); - TH1* h2 = new TH1D("h2",";x title;y title",100,-10,10); - h2->FillRandom("gaus",500); + TH1* h2 = new TH1D("h2", ";x title;y title", 100, -10, 10); + h2->FillRandom("gaus", 500); h2->SetLineColor(TkAlStyle::color(CRAFTAlign)); h2->SetLineStyle(TkAlStyle::style(CRAFTAlign)); - h2->GetYaxis()->SetRangeUser(0,110); + h2->GetYaxis()->SetRangeUser(0, 110); h1->Draw(); h2->Draw("same"); - // Add a title that specifies the data-taking era // (title specifies also the publication label "CMS Preliminary" // etc. according to the status set above) - TPaveText* title = TkAlStyle::standardTitle(CRAFT15); + TPaveText* title = TkAlStyle::standardRightTitle(CRAFT15); title->Draw("same"); - // Add a legend at the top left with 2 entries stretching // over 60% of the pad's width. Legend labels depend on // the alignment object. - TLegend* leg = TkAlStyle::legend("top left",2,0.6); - leg->AddEntry(h1,toTString(IDEALAlign),"L"); - leg->AddEntry(h2,toTString(CRAFTAlign),"L"); + TLegend* leg = TkAlStyle::legend("top left", 2, 0.6); + leg->AddEntry(h1, TkAlStyle::toTString(IDEALAlign), "L"); + leg->AddEntry(h2, TkAlStyle::toTString(CRAFTAlign), "L"); leg->Draw("same"); gPad->RedrawAxis(); can->SaveAs("test.pdf"); } + +// main function for unit test +int main(int argc, char** argv) { testTkAlStyle(); } From 7af27c7525f2718e5b3d8ec7101734867e80fc67 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Thu, 4 Jan 2024 10:23:31 -0600 Subject: [PATCH 193/281] Moved to global modules in SimMuon - removed need to do work on Run transitions - use modern framework syntax --- .../DTDigitizer/plugins/DTChamberMasker.cc | 49 +++++-------- .../GEMDigitizer/plugins/GEMChamberMasker.cc | 70 +++++++------------ .../GEMDigitizer/plugins/ME0ChamberMasker.cc | 65 +++++++---------- 3 files changed, 71 insertions(+), 113 deletions(-) diff --git a/SimMuon/DTDigitizer/plugins/DTChamberMasker.cc b/SimMuon/DTDigitizer/plugins/DTChamberMasker.cc index 5f0ef724f3592..179a841a66808 100644 --- a/SimMuon/DTDigitizer/plugins/DTChamberMasker.cc +++ b/SimMuon/DTDigitizer/plugins/DTChamberMasker.cc @@ -25,7 +25,7 @@ // user include files #include "FWCore/Framework/interface/ConsumesCollector.h" #include "FWCore/Framework/interface/Frameworkfwd.h" -#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/global/EDProducer.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "DataFormats/Common/interface/Handle.h" @@ -60,25 +60,22 @@ // class declaration // -class DTChamberMasker : public edm::stream::EDProducer<> { +class DTChamberMasker : public edm::global::EDProducer<> { public: explicit DTChamberMasker(const edm::ParameterSet &); - ~DTChamberMasker() override; static void fillDescriptions(edm::ConfigurationDescriptions &); private: - void produce(edm::Event &, const edm::EventSetup &) override; - - void beginRun(edm::Run const &, edm::EventSetup const &) override; + void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override; void createMaskedChamberCollection(edm::ESHandle &); // ----------member data --------------------------- - edm::EDGetTokenT m_digiToken; - edm::ESGetToken m_agingObjToken; - std::map m_ChEffs; + const edm::EDGetTokenT m_digiToken; + const edm::EDPutTokenT m_putToken; + const edm::ESGetToken m_agingObjToken; }; // @@ -89,23 +86,24 @@ class DTChamberMasker : public edm::stream::EDProducer<> { // constructors and destructor // DTChamberMasker::DTChamberMasker(const edm::ParameterSet &iConfig) - : m_digiToken(consumes(iConfig.getParameter("digiTag"))), - m_agingObjToken(esConsumes()) { - produces(); -} - -DTChamberMasker::~DTChamberMasker() {} + : m_digiToken(consumes(iConfig.getParameter("digiTag"))), + m_putToken(produces()), + m_agingObjToken(esConsumes()) {} // // member functions // // ------------ method called to produce the data ------------ -void DTChamberMasker::produce(edm::Event &event, const edm::EventSetup &conditions) { +void DTChamberMasker::produce(edm::StreamID, edm::Event &event, const edm::EventSetup &conditions) const { edm::Service randGenService; CLHEP::HepRandomEngine &randGen = randGenService->getEngine(event.streamID()); - std::unique_ptr filteredDigis(new DTDigiCollection()); + MuonSystemAging const &agingObj = conditions.getData(m_agingObjToken); + + auto const &chEffs = agingObj.m_DTChambEffs; + + DTDigiCollection filteredDigis; if (!m_digiToken.isUninitialized()) { edm::Handle dtDigis; @@ -113,23 +111,14 @@ void DTChamberMasker::produce(edm::Event &event, const edm::EventSetup &conditio for (const auto &dtLayerId : (*dtDigis)) { uint32_t rawId = (dtLayerId.first).chamberId().rawId(); - auto chEffIt = m_ChEffs.find(rawId); + auto chEffIt = chEffs.find(rawId); - if (chEffIt == m_ChEffs.end() || randGen.flat() <= chEffIt->second) - filteredDigis->put(dtLayerId.second, dtLayerId.first); + if (chEffIt == chEffs.end() || randGen.flat() <= chEffIt->second) + filteredDigis.put(dtLayerId.second, dtLayerId.first); } } - event.put(std::move(filteredDigis)); -} - -// ------------ method called when starting to processes a run ------------ -void DTChamberMasker::beginRun(edm::Run const &run, edm::EventSetup const &iSetup) { - m_ChEffs.clear(); - - edm::ESHandle agingObj = iSetup.getHandle(m_agingObjToken); - - m_ChEffs = agingObj->m_DTChambEffs; + event.emplace(m_putToken, std::move(filteredDigis)); } // ------------ method fills 'descriptions' with the allowed parameters for the diff --git a/SimMuon/GEMDigitizer/plugins/GEMChamberMasker.cc b/SimMuon/GEMDigitizer/plugins/GEMChamberMasker.cc index ffe2efa7d79b4..e13e2fd09a70e 100644 --- a/SimMuon/GEMDigitizer/plugins/GEMChamberMasker.cc +++ b/SimMuon/GEMDigitizer/plugins/GEMChamberMasker.cc @@ -8,7 +8,7 @@ // user include files #include "FWCore/Framework/interface/Frameworkfwd.h" -#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/global/EDProducer.h" #include "FWCore/Framework/interface/ConsumesCollector.h" #include "FWCore/Framework/interface/ESHandle.h" #include "FWCore/Utilities/interface/ESGetToken.h" @@ -27,29 +27,25 @@ // class declaration // -class GEMChamberMasker : public edm::stream::EDProducer<> { +class GEMChamberMasker : public edm::global::EDProducer<> { public: explicit GEMChamberMasker(const edm::ParameterSet&); - ~GEMChamberMasker() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void produce(edm::Event&, const edm::EventSetup&) override; - - void beginRun(edm::Run const&, edm::EventSetup const&) override; - void endRun(edm::Run const&, edm::EventSetup const&) override; + void produce(edm::StreamID, edm::Event&, const edm::EventSetup&) const override; // ----------member data --------------------------- - edm::InputTag digiTag_; - bool ge11Minus_; - bool ge11Plus_; - bool ge21Minus_; - bool ge21Plus_; - - edm::EDGetTokenT m_digiTag; - edm::ESGetToken m_agingObj; - std::map m_maskedGEMIDs; + const edm::InputTag digiTag_; + const bool ge11Minus_; + const bool ge11Plus_; + const bool ge21Minus_; + const bool ge21Plus_; + + const edm::EDGetTokenT m_digiTag; + const edm::EDPutTokenT m_putToken; + const edm::ESGetToken m_agingObj; }; // @@ -68,28 +64,28 @@ GEMChamberMasker::GEMChamberMasker(const edm::ParameterSet& iConfig) ge11Minus_(iConfig.getParameter("ge11Minus")), ge11Plus_(iConfig.getParameter("ge11Plus")), ge21Minus_(iConfig.getParameter("ge21Minus")), - ge21Plus_(iConfig.getParameter("ge21Plus")) { - m_digiTag = consumes(digiTag_); - m_agingObj = esConsumes(); - produces(); -} - -GEMChamberMasker::~GEMChamberMasker() {} + ge21Plus_(iConfig.getParameter("ge21Plus")), + m_digiTag(consumes(digiTag_)), + m_putToken(produces()), + m_agingObj(esConsumes()) {} // // member functions // // ------------ method called to produce the data ------------ -void GEMChamberMasker::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { +void GEMChamberMasker::produce(edm::StreamID, edm::Event& iEvent, const edm::EventSetup& iSetup) const { using namespace edm; - std::unique_ptr filteredDigis(new GEMDigiCollection()); + GEMDigiCollection filteredDigis; + + auto const& agingObj = iSetup.getData(m_agingObj); + + auto const& maskedGEMIDs = agingObj.m_GEMChambEffs; if (!digiTag_.label().empty()) { - edm::Handle gemDigis; - iEvent.getByToken(m_digiTag, gemDigis); + GEMDigiCollection const& gemDigis = iEvent.get(m_digiTag); - for (const auto& gemLayerId : (*gemDigis)) { + for (const auto& gemLayerId : gemDigis) { auto chambId = gemLayerId.first.chamberId(); bool keepDigi = (!ge11Minus_ && chambId.station() == 1 && chambId.region() < 0) || @@ -98,27 +94,15 @@ void GEMChamberMasker::produce(edm::Event& iEvent, const edm::EventSetup& iSetup (!ge21Plus_ && chambId.station() == 2 && chambId.region() > 0); uint32_t rawId = chambId.rawId(); - if (keepDigi || m_maskedGEMIDs.find(rawId) == m_maskedGEMIDs.end()) { - filteredDigis->put(gemLayerId.second, gemLayerId.first); + if (keepDigi || maskedGEMIDs.find(rawId) == maskedGEMIDs.end()) { + filteredDigis.put(gemLayerId.second, gemLayerId.first); } } } - iEvent.put(std::move(filteredDigis)); + iEvent.emplace(m_putToken, std::move(filteredDigis)); } -// ------------ method called when starting to processes a run ------------ - -void GEMChamberMasker::beginRun(edm::Run const& run, edm::EventSetup const& iSetup) { - edm::ESHandle agingObj = iSetup.getHandle(m_agingObj); - - m_maskedGEMIDs = agingObj->m_GEMChambEffs; -} - -// ------------ method called when ending the processing of a run ------------ - -void GEMChamberMasker::endRun(edm::Run const&, edm::EventSetup const&) {} - void GEMChamberMasker::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; desc.add("digiTag", edm::InputTag("simMuonGEMDigis")); diff --git a/SimMuon/GEMDigitizer/plugins/ME0ChamberMasker.cc b/SimMuon/GEMDigitizer/plugins/ME0ChamberMasker.cc index b35992fd29b54..18f92a7e80b90 100644 --- a/SimMuon/GEMDigitizer/plugins/ME0ChamberMasker.cc +++ b/SimMuon/GEMDigitizer/plugins/ME0ChamberMasker.cc @@ -12,7 +12,7 @@ // user include files #include "FWCore/Framework/interface/Frameworkfwd.h" -#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/global/EDProducer.h" #include "FWCore/Framework/interface/ConsumesCollector.h" #include "FWCore/Framework/interface/ESHandle.h" #include "FWCore/Utilities/interface/ESGetToken.h" @@ -31,26 +31,22 @@ // class declaration // -class ME0ChamberMasker : public edm::stream::EDProducer<> { +class ME0ChamberMasker : public edm::global::EDProducer<> { public: explicit ME0ChamberMasker(const edm::ParameterSet&); - ~ME0ChamberMasker() override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void produce(edm::Event&, const edm::EventSetup&) override; - - void beginRun(edm::Run const&, edm::EventSetup const&) override; - void endRun(edm::Run const&, edm::EventSetup const&) override; + void produce(edm::StreamID, edm::Event&, const edm::EventSetup&) const override; // ----------member data --------------------------- - bool me0Minus_; - bool me0Plus_; - edm::InputTag digiTag_; - edm::EDGetTokenT m_digiTag; - edm::ESGetToken m_agingObjTag; - std::map m_maskedME0IDs; + const bool me0Minus_; + const bool me0Plus_; + const edm::InputTag digiTag_; + const edm::EDGetTokenT m_digiTag; + const edm::EDPutTokenT m_putToken; + const edm::ESGetToken m_agingObjTag; }; // @@ -67,54 +63,43 @@ class ME0ChamberMasker : public edm::stream::EDProducer<> { ME0ChamberMasker::ME0ChamberMasker(const edm::ParameterSet& iConfig) : me0Minus_(iConfig.getParameter("me0Minus")), me0Plus_(iConfig.getParameter("me0Plus")), - digiTag_(iConfig.getParameter("digiTag")) { - m_digiTag = consumes(digiTag_); - m_agingObjTag = esConsumes(); - produces(); -} - -ME0ChamberMasker::~ME0ChamberMasker() {} + digiTag_(iConfig.getParameter("digiTag")), + m_digiTag(consumes(digiTag_)), + m_putToken(produces()), + m_agingObjTag(esConsumes()) {} // // member functions // // ------------ method called to produce the data ------------ -void ME0ChamberMasker::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { +void ME0ChamberMasker::produce(edm::StreamID, edm::Event& iEvent, const edm::EventSetup& iSetup) const { using namespace edm; - std::unique_ptr filteredDigis(new ME0DigiPreRecoCollection()); + + MuonSystemAging const& agingObj = iSetup.getData(m_agingObjTag); + + auto const& maskedME0IDs = agingObj.m_ME0ChambEffs; + + ME0DigiPreRecoCollection filteredDigis; if (!digiTag_.label().empty()) { - edm::Handle me0Digis; - iEvent.getByToken(m_digiTag, me0Digis); + ME0DigiPreRecoCollection const& me0Digis = iEvent.get(m_digiTag); - for (const auto& me0LayerId : (*me0Digis)) { + for (const auto& me0LayerId : me0Digis) { auto chambId = me0LayerId.first.chamberId(); bool keepDigi = (!me0Minus_ && chambId.region() < 0) || (!me0Plus_ && chambId.region() > 0); uint32_t rawId = chambId.rawId(); - if (keepDigi || m_maskedME0IDs.find(rawId) == m_maskedME0IDs.end()) { - filteredDigis->put(me0LayerId.second, me0LayerId.first); + if (keepDigi || maskedME0IDs.find(rawId) == maskedME0IDs.end()) { + filteredDigis.put(me0LayerId.second, me0LayerId.first); } } } - iEvent.put(std::move(filteredDigis)); + iEvent.emplace(m_putToken, std::move(filteredDigis)); } -// ------------ method called when starting to processes a run ------------ - -void ME0ChamberMasker::beginRun(edm::Run const& run, edm::EventSetup const& iSetup) { - edm::ESHandle agingObj = iSetup.getHandle(m_agingObjTag); - - m_maskedME0IDs = agingObj->m_ME0ChambEffs; -} - -// ------------ method called when ending the processing of a run ------------ - -void ME0ChamberMasker::endRun(edm::Run const&, edm::EventSetup const&) {} - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void ME0ChamberMasker::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; From a8cdf72b415ba4da49e28a274b770694e69ba047 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Thu, 4 Jan 2024 11:14:27 -0600 Subject: [PATCH 194/281] Changed StubAssociator to a global module - Also modernized some of the framework calls --- .../plugins/StubAssociator.cc | 38 +++++++------------ 1 file changed, 14 insertions(+), 24 deletions(-) diff --git a/SimTracker/TrackTriggerAssociation/plugins/StubAssociator.cc b/SimTracker/TrackTriggerAssociation/plugins/StubAssociator.cc index 2dfec2580aac7..9b669b53130d7 100644 --- a/SimTracker/TrackTriggerAssociation/plugins/StubAssociator.cc +++ b/SimTracker/TrackTriggerAssociation/plugins/StubAssociator.cc @@ -1,4 +1,4 @@ -#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/Framework/interface/global/EDProducer.h" #include "FWCore/Framework/interface/Run.h" #include "FWCore/Framework/interface/EventSetup.h" #include "FWCore/Framework/interface/Event.h" @@ -34,17 +34,12 @@ namespace tt { * \author Thomas Schuh * \date 2020, Apr */ - class StubAssociator : public stream::EDProducer<> { + class StubAssociator : public global::EDProducer<> { public: explicit StubAssociator(const ParameterSet&); - ~StubAssociator() override {} private: - void beginRun(const Run&, const EventSetup&) override; - void produce(Event&, const EventSetup&) override; - void endJob() {} - // helper classe to store configurations - const Setup* setup_ = nullptr; + void produce(StreamID, Event&, const EventSetup&) const override; // ED input token of TTStubs EDGetTokenT getTokenTTStubDetSetVec_; // ED input token of TTClusterAssociation @@ -64,20 +59,16 @@ namespace tt { putTokenReconstructable_ = produces(iConfig.getParameter("BranchReconstructable")); putTokenSelection_ = produces(iConfig.getParameter("BranchSelection")); // book ES product - esGetTokenSetup_ = esConsumes(); + esGetTokenSetup_ = esConsumes(); } - void StubAssociator::beginRun(const Run& iRun, const EventSetup& iSetup) { - setup_ = &iSetup.getData(esGetTokenSetup_); - } + void StubAssociator::produce(StreamID, Event& iEvent, const EventSetup& iSetup) const { + auto const& setup = iSetup.getData(esGetTokenSetup_); - void StubAssociator::produce(Event& iEvent, const EventSetup& iSetup) { // associate TTStubs with TrackingParticles - Handle handleTTStubDetSetVec; - iEvent.getByToken(getTokenTTStubDetSetVec_, handleTTStubDetSetVec); - Handle handleTTClusterAssMap; - Handle handleTTStubAssMap; - iEvent.getByToken(getTokenTTClusterAssMap_, handleTTClusterAssMap); + Handle handleTTStubDetSetVec = iEvent.getHandle(getTokenTTStubDetSetVec_); + auto const& ttClusterAssMap = iEvent.get(getTokenTTClusterAssMap_); + map> mapTPPtrsTTStubRefs; auto isNonnull = [](const TPPtr& tpPtr) { return tpPtr.isNonnull(); }; for (TTStubDetSetVec::const_iterator ttModule = handleTTStubDetSetVec->begin(); @@ -87,8 +78,7 @@ namespace tt { const TTStubRef ttStubRef = makeRefTo(handleTTStubDetSetVec, ttStub); set tpPtrs; for (unsigned int iClus = 0; iClus < 2; iClus++) { - const vector& assocPtrs = - handleTTClusterAssMap->findTrackingParticlePtrs(ttStubRef->clusterRef(iClus)); + const vector& assocPtrs = ttClusterAssMap.findTrackingParticlePtrs(ttStubRef->clusterRef(iClus)); copy_if(assocPtrs.begin(), assocPtrs.end(), inserter(tpPtrs, tpPtrs.begin()), isNonnull); } for (const TPPtr& tpPtr : tpPtrs) @@ -96,13 +86,13 @@ namespace tt { } } // associate reconstructable TrackingParticles with TTStubs - StubAssociation reconstructable(setup_); - StubAssociation selection(setup_); + StubAssociation reconstructable(&setup); + StubAssociation selection(&setup); for (const auto& p : mapTPPtrsTTStubRefs) { - if (!setup_->useForReconstructable(*p.first) || !setup_->reconstructable(p.second)) + if (!setup.useForReconstructable(*p.first) || !setup.reconstructable(p.second)) continue; reconstructable.insert(p.first, p.second); - if (setup_->useForAlgEff(*p.first)) + if (setup.useForAlgEff(*p.first)) selection.insert(p.first, p.second); } iEvent.emplace(putTokenReconstructable_, std::move(reconstructable)); From 06067b48fb2e2356b6f3c48ef1de0b15fe734f92 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Thu, 4 Jan 2024 14:52:58 -0600 Subject: [PATCH 195/281] Removed begin/endRun method from AlCaHBHEMuonProducer --- .../plugins/AlCaHBHEMuonProducer.cc | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/Calibration/HcalAlCaRecoProducers/plugins/AlCaHBHEMuonProducer.cc b/Calibration/HcalAlCaRecoProducers/plugins/AlCaHBHEMuonProducer.cc index 095a17166d565..ce7b2ebb3dab2 100644 --- a/Calibration/HcalAlCaRecoProducers/plugins/AlCaHBHEMuonProducer.cc +++ b/Calibration/HcalAlCaRecoProducers/plugins/AlCaHBHEMuonProducer.cc @@ -60,12 +60,10 @@ class AlCaHBHEMuonProducer : public edm::stream::EDProducer("BeamSpotLabel")), labelVtx_(iConfig.getParameter("VertexLabel")), @@ -235,15 +232,6 @@ void AlCaHBHEMuonProducer::fillDescriptions(edm::ConfigurationDescriptions& desc descriptions.add("alcaHBHEMuonProducer", desc); } -void AlCaHBHEMuonProducer::beginRun(edm::Run const& iRun, edm::EventSetup const& iSetup) { - edm::LogVerbatim("HcalHBHEMuon") << "Run[" << nRun_ << "] " << iRun.run(); -} - -void AlCaHBHEMuonProducer::endRun(edm::Run const& iRun, edm::EventSetup const&) { - ++nRun_; - edm::LogVerbatim("HcalHBHEMuon") << "endRun[" << nRun_ << "] " << iRun.run(); -} - bool AlCaHBHEMuonProducer::select(const reco::MuonCollection& muons) { bool ok(false); for (unsigned int k = 0; k < muons.size(); ++k) { From 28cb626e5d8266505f1b83702f3c0b2b5eed09c1 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Thu, 4 Jan 2024 15:08:24 -0600 Subject: [PATCH 196/281] Removed empty beginRun in DPGAnalysis/HcalNanoAOD modules --- DPGAnalysis/HcalNanoAOD/plugins/HcalUHTRTableProducer.cc | 3 --- DPGAnalysis/HcalNanoAOD/plugins/HcalUMNioTableProducer.cc | 3 --- 2 files changed, 6 deletions(-) diff --git a/DPGAnalysis/HcalNanoAOD/plugins/HcalUHTRTableProducer.cc b/DPGAnalysis/HcalNanoAOD/plugins/HcalUHTRTableProducer.cc index 423cd96763dd5..3f66ccb559f15 100644 --- a/DPGAnalysis/HcalNanoAOD/plugins/HcalUHTRTableProducer.cc +++ b/DPGAnalysis/HcalNanoAOD/plugins/HcalUHTRTableProducer.cc @@ -56,12 +56,9 @@ class HcalUHTRTableProducer : public edm::stream::EDProducer<> { */ private: - void beginRun(edm::Run const&, edm::EventSetup const&) override; void produce(edm::Event&, edm::EventSetup const&) override; }; -void HcalUHTRTableProducer::beginRun(edm::Run const& iRun, edm::EventSetup const& iSetup) {} - void HcalUHTRTableProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { std::vector crate; std::vector slot; diff --git a/DPGAnalysis/HcalNanoAOD/plugins/HcalUMNioTableProducer.cc b/DPGAnalysis/HcalNanoAOD/plugins/HcalUMNioTableProducer.cc index 2f2d499239260..566b7ba8cc749 100644 --- a/DPGAnalysis/HcalNanoAOD/plugins/HcalUMNioTableProducer.cc +++ b/DPGAnalysis/HcalNanoAOD/plugins/HcalUMNioTableProducer.cc @@ -40,12 +40,9 @@ class HcalUMNioTableProducer : public edm::stream::EDProducer<> { */ private: - void beginRun(edm::Run const&, edm::EventSetup const&) override; void produce(edm::Event&, edm::EventSetup const&) override; }; -void HcalUMNioTableProducer::beginRun(edm::Run const& iRun, edm::EventSetup const& iSetup) {} - void HcalUMNioTableProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { edm::Handle uMNioDigi; iEvent.getByToken(tokenUMNio_, uMNioDigi); From e4e7537a5d3484b6d18fc1d3ece36b5f6de1312e Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Thu, 4 Jan 2024 15:20:58 -0600 Subject: [PATCH 197/281] Removed empty Run/LuminosityBlock methods --- EventFilter/L1TRawToDigi/plugins/L1TRawToDigi.cc | 5 ----- EventFilter/RPCRawToDigi/plugins/RPCDigiMerger.cc | 2 -- EventFilter/RPCRawToDigi/plugins/RPCDigiMerger.h | 1 - 3 files changed, 8 deletions(-) diff --git a/EventFilter/L1TRawToDigi/plugins/L1TRawToDigi.cc b/EventFilter/L1TRawToDigi/plugins/L1TRawToDigi.cc index 8e8acec018fc5..af8bb008fc7a3 100644 --- a/EventFilter/L1TRawToDigi/plugins/L1TRawToDigi.cc +++ b/EventFilter/L1TRawToDigi/plugins/L1TRawToDigi.cc @@ -52,11 +52,6 @@ namespace l1t { private: void produce(edm::Event&, const edm::EventSetup&) override; - void beginRun(edm::Run const&, edm::EventSetup const&) override{}; - void endRun(edm::Run const&, edm::EventSetup const&) override{}; - void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override{}; - void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override{}; - // ----------member data --------------------------- edm::EDGetTokenT fedData_; std::vector fedIds_; diff --git a/EventFilter/RPCRawToDigi/plugins/RPCDigiMerger.cc b/EventFilter/RPCRawToDigi/plugins/RPCDigiMerger.cc index 2ce728ff2ed04..63597221608ef 100644 --- a/EventFilter/RPCRawToDigi/plugins/RPCDigiMerger.cc +++ b/EventFilter/RPCRawToDigi/plugins/RPCDigiMerger.cc @@ -57,8 +57,6 @@ void RPCDigiMerger::fillDescriptions(edm::ConfigurationDescriptions& descs) { descs.add("rpcDigiMerger", desc); } -void RPCDigiMerger::beginRun(edm::Run const& run, edm::EventSetup const& setup) {} - void RPCDigiMerger::produce(edm::Event& event, edm::EventSetup const& setup) { // Get the digis // new RPCDigiCollection diff --git a/EventFilter/RPCRawToDigi/plugins/RPCDigiMerger.h b/EventFilter/RPCRawToDigi/plugins/RPCDigiMerger.h index 45c155ffee844..154794554ab5f 100644 --- a/EventFilter/RPCRawToDigi/plugins/RPCDigiMerger.h +++ b/EventFilter/RPCRawToDigi/plugins/RPCDigiMerger.h @@ -28,7 +28,6 @@ class RPCDigiMerger : public edm::stream::EDProducer<> { static void fillDescriptions(edm::ConfigurationDescriptions& descs); - void beginRun(edm::Run const& run, edm::EventSetup const& setup) override; void produce(edm::Event& event, edm::EventSetup const& setup) override; protected: From 0a0d18ccb8d32567160a72fa2f8f37c1110f2fa1 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Thu, 4 Jan 2024 15:24:28 -0600 Subject: [PATCH 198/281] Move EventSetup get to produce in ExcludedFEDListProducer --- .../plugins/ExcludedFEDListProducer.cc | 23 ++++--------------- .../plugins/ExcludedFEDListProducer.h | 3 --- 2 files changed, 5 insertions(+), 21 deletions(-) diff --git a/EventFilter/SiStripRawToDigi/plugins/ExcludedFEDListProducer.cc b/EventFilter/SiStripRawToDigi/plugins/ExcludedFEDListProducer.cc index 487410142a80e..7f85e1cba45c9 100644 --- a/EventFilter/SiStripRawToDigi/plugins/ExcludedFEDListProducer.cc +++ b/EventFilter/SiStripRawToDigi/plugins/ExcludedFEDListProducer.cc @@ -18,27 +18,12 @@ namespace sistrip { ExcludedFEDListProducer::ExcludedFEDListProducer(const edm::ParameterSet& pset) - : runNumber_(0), - cacheId_(0), - cabling_(nullptr), - token_(consumes(pset.getParameter("ProductLabel"))), - cablingToken_(esConsumes()) { + : runNumber_(0), token_(consumes(pset.getParameter("ProductLabel"))), cablingToken_(esConsumes()) { produces(); } ExcludedFEDListProducer::~ExcludedFEDListProducer() {} - void ExcludedFEDListProducer::beginRun(const edm::Run& run, const edm::EventSetup& es) { - uint32_t cacheId = es.get().cacheIdentifier(); - - if (cacheId_ != cacheId) { - cacheId_ = cacheId; - - edm::ESHandle c = es.getHandle(cablingToken_); - cabling_ = c.product(); - } - } - void ExcludedFEDListProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; desc.add("ProductLabel", edm::InputTag("rawDataCollector")); @@ -49,6 +34,8 @@ namespace sistrip { if (runNumber_ != event.run()) { runNumber_ = event.run(); + auto const& cabling = es.getData(cablingToken_); + DetIdVector emptyDetIdVector; detids_.swap(emptyDetIdVector); // Reserve space in bad module list @@ -58,7 +45,7 @@ namespace sistrip { event.getByToken(token_, buffers); // Retrieve FED ids from cabling map and iterate through - for (auto ifed = cabling_->fedIds().begin(); ifed != cabling_->fedIds().end(); ifed++) { + for (auto ifed = cabling.fedIds().begin(); ifed != cabling.fedIds().end(); ifed++) { // ignore trigger FED // if ( *ifed == triggerFedId_ ) { continue; } @@ -69,7 +56,7 @@ namespace sistrip { if (input.size() == 0) { // std::cout << "Input size == 0 for FED number " << static_cast(*ifed) << std::endl; // get the cabling connections for this FED - auto conns = cabling_->fedConnections(*ifed); + auto conns = cabling.fedConnections(*ifed); // Mark FED modules as bad detids_.reserve(detids_.size() + conns.size()); for (auto iconn = conns.begin(); iconn != conns.end(); ++iconn) { diff --git a/EventFilter/SiStripRawToDigi/plugins/ExcludedFEDListProducer.h b/EventFilter/SiStripRawToDigi/plugins/ExcludedFEDListProducer.h index 21318c0ef55ea..74f177f851311 100644 --- a/EventFilter/SiStripRawToDigi/plugins/ExcludedFEDListProducer.h +++ b/EventFilter/SiStripRawToDigi/plugins/ExcludedFEDListProducer.h @@ -30,14 +30,11 @@ namespace sistrip { ExcludedFEDListProducer(const edm::ParameterSet& pset); /// default constructor ~ExcludedFEDListProducer() override; - void beginRun(const edm::Run& run, const edm::EventSetup& es) override; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); void produce(edm::Event& event, const edm::EventSetup& es) override; private: unsigned int runNumber_; - uint32_t cacheId_; - const SiStripFedCabling* cabling_; const edm::EDGetTokenT token_; edm::ESGetToken cablingToken_; From 900f60ee0b3a1a1b496de227175cdfcf0f59393d Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Thu, 4 Jan 2024 15:41:37 -0600 Subject: [PATCH 199/281] Removed empty beginRun from FastTSGFromL2Muon Removed unused theService member data. --- FastSimulation/Muons/plugins/FastTSGFromL2Muon.cc | 4 ---- FastSimulation/Muons/plugins/FastTSGFromL2Muon.h | 2 -- 2 files changed, 6 deletions(-) diff --git a/FastSimulation/Muons/plugins/FastTSGFromL2Muon.cc b/FastSimulation/Muons/plugins/FastTSGFromL2Muon.cc index a90ccb4fb2175..7bfe5ec77589f 100644 --- a/FastSimulation/Muons/plugins/FastTSGFromL2Muon.cc +++ b/FastSimulation/Muons/plugins/FastTSGFromL2Muon.cc @@ -29,10 +29,6 @@ FastTSGFromL2Muon::FastTSGFromL2Muon(const edm::ParameterSet& cfg) theRegionBuilder = std::make_unique(regionBuilderPSet, consumesCollector()); } -void FastTSGFromL2Muon::beginRun(edm::Run const& run, edm::EventSetup const& es) { - //region builder -} - void FastTSGFromL2Muon::produce(edm::Event& ev, const edm::EventSetup& es) { // Initialize the output product std::unique_ptr result(new L3MuonTrajectorySeedCollection()); diff --git a/FastSimulation/Muons/plugins/FastTSGFromL2Muon.h b/FastSimulation/Muons/plugins/FastTSGFromL2Muon.h index cdc14dd20b671..a0a0fa8ae54e7 100644 --- a/FastSimulation/Muons/plugins/FastTSGFromL2Muon.h +++ b/FastSimulation/Muons/plugins/FastTSGFromL2Muon.h @@ -27,7 +27,6 @@ class FastTSGFromL2Muon : public edm::stream::EDProducer<> { public: FastTSGFromL2Muon(const edm::ParameterSet& cfg); ~FastTSGFromL2Muon() override = default; - void beginRun(edm::Run const& run, edm::EventSetup const& es) override; void produce(edm::Event& ev, const edm::EventSetup& es) override; private: @@ -46,7 +45,6 @@ class FastTSGFromL2Muon : public edm::stream::EDProducer<> { const edm::EDGetTokenT l2TrackToken_; std::vector > > seedToken_; - MuonServiceProxy* theService; std::unique_ptr theRegionBuilder; }; #endif From c630163884bcb97fdf2c8ea6340d63b7fb4c1475 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Thu, 4 Jan 2024 16:11:07 -0600 Subject: [PATCH 200/281] Removed empty beginRun methods --- L1Trigger/L1TCaloLayer1/plugins/L1TCaloSummary.cc | 4 +--- L1Trigger/L1TZDC/plugins/L1TZDCProducer.cc | 5 ----- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/L1Trigger/L1TCaloLayer1/plugins/L1TCaloSummary.cc b/L1Trigger/L1TCaloLayer1/plugins/L1TCaloSummary.cc index 4b93638dbce5a..0287cdb7f5448 100644 --- a/L1Trigger/L1TCaloLayer1/plugins/L1TCaloSummary.cc +++ b/L1Trigger/L1TCaloLayer1/plugins/L1TCaloSummary.cc @@ -82,8 +82,6 @@ class L1TCaloSummary : public edm::stream::EDProducer<> { void produce(edm::Event&, const edm::EventSetup&) override; //void endJob() override; - void beginRun(edm::Run const&, edm::EventSetup const&) override{}; - void print(); // ----------member data --------------------------- @@ -305,4 +303,4 @@ typedef L1TCaloSummary, ap_fixed<11, 5>> L1TCaloSummaryCICADAv typedef L1TCaloSummary, ap_ufixed<16, 8>> L1TCaloSummaryCICADAv2; //define type version plugins DEFINE_FWK_MODULE(L1TCaloSummaryCICADAv1); -DEFINE_FWK_MODULE(L1TCaloSummaryCICADAv2); \ No newline at end of file +DEFINE_FWK_MODULE(L1TCaloSummaryCICADAv2); diff --git a/L1Trigger/L1TZDC/plugins/L1TZDCProducer.cc b/L1Trigger/L1TZDC/plugins/L1TZDCProducer.cc index 9fc2f680861fe..8db6de8069b02 100644 --- a/L1Trigger/L1TZDC/plugins/L1TZDCProducer.cc +++ b/L1Trigger/L1TZDC/plugins/L1TZDCProducer.cc @@ -66,8 +66,6 @@ class L1TZDCProducer : public edm::stream::EDProducer<> { private: void produce(edm::Event&, const edm::EventSetup&) override; - void beginRun(edm::Run const&, edm::EventSetup const&) override; - // ----------member data --------------------------- // input tokens @@ -157,9 +155,6 @@ void L1TZDCProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) iEvent.emplace(etToken_, std::move(etsumsReduced)); } -// ------------ method called when starting to processes a run ------------ -void L1TZDCProducer::beginRun(edm::Run const& iRun, edm::EventSetup const& iSetup) {} - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void L1TZDCProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; From 2a1c2032d22cb607ccc6e1a5660047401669805a Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Thu, 4 Jan 2024 16:14:21 -0600 Subject: [PATCH 201/281] Modernized CaloTruthCellsProducer - moved EventSetup get to produce - changed to new framework syntax --- .../plugins/CaloTruthCellsProducer.cc | 25 +++++++------------ 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/L1Trigger/L1THGCalUtilities/plugins/CaloTruthCellsProducer.cc b/L1Trigger/L1THGCalUtilities/plugins/CaloTruthCellsProducer.cc index d3200dfed83f7..c21f3e2e298f5 100644 --- a/L1Trigger/L1THGCalUtilities/plugins/CaloTruthCellsProducer.cc +++ b/L1Trigger/L1THGCalUtilities/plugins/CaloTruthCellsProducer.cc @@ -31,7 +31,6 @@ class CaloTruthCellsProducer : public edm::stream::EDProducer<> { static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: - void beginRun(const edm::Run&, const edm::EventSetup&) override; void produce(edm::Event&, edm::EventSetup const&) override; std::unordered_map makeHitMap(edm::Event const&, @@ -47,7 +46,6 @@ class CaloTruthCellsProducer : public edm::stream::EDProducer<> { edm::EDGetTokenT> simHitsTokenHEfront_; edm::EDGetTokenT> simHitsTokenHEback_; edm::ESGetToken triggerGeomToken_; - edm::ESHandle triggerGeomHandle_; HGCalClusteringDummyImpl dummyClustering_; HGCalShowerShape showerShape_; @@ -74,24 +72,19 @@ CaloTruthCellsProducer::CaloTruthCellsProducer(edm::ParameterSet const& config) CaloTruthCellsProducer::~CaloTruthCellsProducer() {} -void CaloTruthCellsProducer::beginRun(const edm::Run& /*run*/, const edm::EventSetup& es) { - triggerGeomHandle_ = es.getHandle(triggerGeomToken_); -} - void CaloTruthCellsProducer::produce(edm::Event& event, edm::EventSetup const& setup) { - edm::Handle caloParticlesHandle; - event.getByToken(caloParticlesToken_, caloParticlesHandle); - auto const& caloParticles(*caloParticlesHandle); + auto caloParticlesHandle = event.getHandle(caloParticlesToken_); + auto const& caloParticles = *caloParticlesHandle; - edm::Handle triggerCellsHandle; - event.getByToken(triggerCellsToken_, triggerCellsHandle); - auto const& triggerCells(*triggerCellsHandle); + auto const& triggerCellsHandle = event.getHandle(triggerCellsToken_); + auto const& triggerCells = *triggerCellsHandle; - auto const& geometry(*triggerGeomHandle_); + auto const& geometry = setup.getData(triggerGeomToken_); + ; - dummyClustering_.setGeometry(triggerGeomHandle_.product()); - showerShape_.setGeometry(triggerGeomHandle_.product()); - triggerTools_.setGeometry(triggerGeomHandle_.product()); + dummyClustering_.setGeometry(&geometry); + showerShape_.setGeometry(&geometry); + triggerTools_.setGeometry(&geometry); std::unordered_map tcToCalo; From 78950552b3b56164ca0af61b88b974a8a7c8caa7 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Fri, 5 Jan 2024 05:53:10 +0100 Subject: [PATCH 202/281] Resolve the scenario for V18 version of HGCal Geometry --- Configuration/Geometry/python/dict2026Geometry.py | 2 +- .../PyReleaseValidation/python/upgradeWorkflowComponents.py | 2 +- Configuration/StandardSequences/python/Eras.py | 3 ++- .../data/dd4hep/cmsExtendedGeometry2026D104.xml | 2 +- .../python/cmsExtendedGeometry2026D104XML_cfi.py | 2 +- SimG4CMS/Calo/src/CaloSD.cc | 2 +- SimG4CMS/Calo/src/HGCalSD.cc | 6 ++---- 7 files changed, 9 insertions(+), 10 deletions(-) diff --git a/Configuration/Geometry/python/dict2026Geometry.py b/Configuration/Geometry/python/dict2026Geometry.py index 68864e9d560a6..e0935db605d55 100644 --- a/Configuration/Geometry/python/dict2026Geometry.py +++ b/Configuration/Geometry/python/dict2026Geometry.py @@ -771,7 +771,7 @@ 'Geometry/HcalSimData/data/hfpmt.xml', 'Geometry/HcalSimData/data/hffibrebundle.xml', 'Geometry/HcalSimData/data/CaloUtil/2026/v2c/CaloUtil.xml', - 'Geometry/HGCalSimData/data/hgcsensv17n.xml', + 'Geometry/HGCalSimData/data/hgcsensv15.xml', ], 4 : [ 'Geometry/HcalSimData/data/HcalProdCuts/2026/v1/HcalProdCuts.xml', diff --git a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py index ea6041c9d2822..5d252044a091a 100644 --- a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py +++ b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py @@ -2822,7 +2822,7 @@ def condition(self, fragment, stepList, key, hasHarvest): 'Geom' : 'Extended2026D104', 'HLTmenu': '@relval2026', 'GT' : 'auto:phase2_realistic_T33', - 'Era' : 'Phase2C17I13M9', + 'Era' : 'Phase2C22I13M9', 'ScenToRun' : ['GenSimHLBeamSpot','DigiTrigger','RecoGlobal', 'HARVESTGlobal', 'ALCAPhase2'], }, '2026D105' : { diff --git a/Configuration/StandardSequences/python/Eras.py b/Configuration/StandardSequences/python/Eras.py index 4bcab0186e509..9c875e8fba998 100644 --- a/Configuration/StandardSequences/python/Eras.py +++ b/Configuration/StandardSequences/python/Eras.py @@ -61,7 +61,8 @@ def __init__(self): 'Phase2C11I13T25M9', 'Phase2C11I13T26M9', 'Phase2C17I13M9', - 'Phase2C20I13M9' + 'Phase2C20I13M9', + 'Phase2C22I13M9' ] internalUseMods = ['run2_common', 'run2_25ns_specific', diff --git a/Geometry/CMSCommonData/data/dd4hep/cmsExtendedGeometry2026D104.xml b/Geometry/CMSCommonData/data/dd4hep/cmsExtendedGeometry2026D104.xml index 77e3f36b5b14e..271fd4b72906b 100644 --- a/Geometry/CMSCommonData/data/dd4hep/cmsExtendedGeometry2026D104.xml +++ b/Geometry/CMSCommonData/data/dd4hep/cmsExtendedGeometry2026D104.xml @@ -102,7 +102,7 @@ - + diff --git a/Geometry/CMSCommonData/python/cmsExtendedGeometry2026D104XML_cfi.py b/Geometry/CMSCommonData/python/cmsExtendedGeometry2026D104XML_cfi.py index ce325b8706057..54e962ca392b4 100644 --- a/Geometry/CMSCommonData/python/cmsExtendedGeometry2026D104XML_cfi.py +++ b/Geometry/CMSCommonData/python/cmsExtendedGeometry2026D104XML_cfi.py @@ -105,7 +105,7 @@ 'Geometry/HcalSimData/data/hfpmt.xml', 'Geometry/HcalSimData/data/hffibrebundle.xml', 'Geometry/HcalSimData/data/CaloUtil/2026/v2c/CaloUtil.xml', - 'Geometry/HGCalSimData/data/hgcsensv17n.xml', + 'Geometry/HGCalSimData/data/hgcsensv15.xml', 'Geometry/MuonSimData/data/PhaseII/v2/muonSens.xml', 'Geometry/DTGeometryBuilder/data/dtSpecsFilter/2021/v1/dtSpecsFilter.xml', 'Geometry/CSCGeometryBuilder/data/cscSpecsFilter.xml', diff --git a/SimG4CMS/Calo/src/CaloSD.cc b/SimG4CMS/Calo/src/CaloSD.cc index 1506ca39e1a99..e5d2ba26ff20b 100644 --- a/SimG4CMS/Calo/src/CaloSD.cc +++ b/SimG4CMS/Calo/src/CaloSD.cc @@ -487,7 +487,7 @@ bool CaloSD::hitExists(const G4Step* aStep, int k) { bool CaloSD::checkHit(int k) { #ifdef EDM_ML_DEBUG - edm::LogVerbatim("CaloSim") << "CaloSD: checkHit for " << k; + edm::LogVerbatim("CaloSim") << "CaloSD: checkHit for " << k << " for map " << useMap << ":" << &hitMap[k] << " Nhits " << nCheckedHits[k] << " HC " << theHC[k] << " ID " << currentID[k]; #endif //look in the HitContainer whether a hit with the same ID already exists: bool found = false; diff --git a/SimG4CMS/Calo/src/HGCalSD.cc b/SimG4CMS/Calo/src/HGCalSD.cc index c426eb6b0eace..bc82b81e7e010 100644 --- a/SimG4CMS/Calo/src/HGCalSD.cc +++ b/SimG4CMS/Calo/src/HGCalSD.cc @@ -334,11 +334,9 @@ void HGCalSD::update(const BeginOfJob* job) { } else { throw cms::Exception("Unknown", "HGCalSD") << "Cannot find HGCalDDDConstants for " << nameX_ << "\n"; } - if ((nHC_ > 1) && calibCells_) { + if ((nHC_ > 1) && calibCells_) newCollection(collName_[1], ps_); - cellOffset_ = std::make_unique( - waferSize_, hgcons_->getUVMax(0), hgcons_->getUVMax(1), guardRingOffset_, mouseBiteCut_); - } + cellOffset_ = std::make_unique(waferSize_, hgcons_->getUVMax(0), hgcons_->getUVMax(1), guardRingOffset_, mouseBiteCut_); } void HGCalSD::initRun() {} From 7082c6d171f82da48734c4d6f7ef7d631232e536 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Fri, 5 Jan 2024 06:03:51 +0100 Subject: [PATCH 203/281] Code check --- SimG4CMS/Calo/src/CaloSD.cc | 3 ++- SimG4CMS/Calo/src/HGCalSD.cc | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/SimG4CMS/Calo/src/CaloSD.cc b/SimG4CMS/Calo/src/CaloSD.cc index e5d2ba26ff20b..56ad1e0eb1f99 100644 --- a/SimG4CMS/Calo/src/CaloSD.cc +++ b/SimG4CMS/Calo/src/CaloSD.cc @@ -487,7 +487,8 @@ bool CaloSD::hitExists(const G4Step* aStep, int k) { bool CaloSD::checkHit(int k) { #ifdef EDM_ML_DEBUG - edm::LogVerbatim("CaloSim") << "CaloSD: checkHit for " << k << " for map " << useMap << ":" << &hitMap[k] << " Nhits " << nCheckedHits[k] << " HC " << theHC[k] << " ID " << currentID[k]; + edm::LogVerbatim("CaloSim") << "CaloSD: checkHit for " << k << " for map " << useMap << ":" << &hitMap[k] << " Nhits " + << nCheckedHits[k] << " HC " << theHC[k] << " ID " << currentID[k]; #endif //look in the HitContainer whether a hit with the same ID already exists: bool found = false; diff --git a/SimG4CMS/Calo/src/HGCalSD.cc b/SimG4CMS/Calo/src/HGCalSD.cc index bc82b81e7e010..0743754f9fc8c 100644 --- a/SimG4CMS/Calo/src/HGCalSD.cc +++ b/SimG4CMS/Calo/src/HGCalSD.cc @@ -336,7 +336,8 @@ void HGCalSD::update(const BeginOfJob* job) { } if ((nHC_ > 1) && calibCells_) newCollection(collName_[1], ps_); - cellOffset_ = std::make_unique(waferSize_, hgcons_->getUVMax(0), hgcons_->getUVMax(1), guardRingOffset_, mouseBiteCut_); + cellOffset_ = std::make_unique( + waferSize_, hgcons_->getUVMax(0), hgcons_->getUVMax(1), guardRingOffset_, mouseBiteCut_); } void HGCalSD::initRun() {} From 4e4e5b6c7bfad94dddb020fbb30fba45716ba199 Mon Sep 17 00:00:00 2001 From: mmusich Date: Thu, 4 Jan 2024 16:46:53 +0100 Subject: [PATCH 204/281] Improve SiPixelQualityProbabilities_PayloadInspector: - improve labeling for SiPixelQualityProbabilitiesScenariosCount - add class to display the aggregate probability density function vs scenario (per PU bin) --- ...elQualityProbabilities_PayloadInspector.cc | 166 ++++++++++++++++-- .../SiPixelPlugins/test/testMiscellanea.sh | 25 +++ 2 files changed, 180 insertions(+), 11 deletions(-) diff --git a/CondCore/SiPixelPlugins/plugins/SiPixelQualityProbabilities_PayloadInspector.cc b/CondCore/SiPixelPlugins/plugins/SiPixelQualityProbabilities_PayloadInspector.cc index 4f443978c4927..8715ed5d90210 100644 --- a/CondCore/SiPixelPlugins/plugins/SiPixelQualityProbabilities_PayloadInspector.cc +++ b/CondCore/SiPixelPlugins/plugins/SiPixelQualityProbabilities_PayloadInspector.cc @@ -24,6 +24,7 @@ #include #include #include +#include // include ROOT #include "TH2F.h" @@ -42,7 +43,7 @@ namespace { using namespace cond::payloadInspector; /************************************************ - 1d histogram of SiPixelQualityProbabilities of 1 IOV + 1d histogram of n. scenarios per PU bin in 1 IOV of SiPixelQualityProbabilities *************************************************/ class SiPixelQualityProbabilitiesScenariosCount : public PlotImage { @@ -53,6 +54,7 @@ namespace { bool fill() override { auto tag = PlotBase::getTag<0>(); auto iov = tag.iovs.front(); + auto tagname = tag.name; std::shared_ptr payload = fetchPayload(std::get<1>(iov)); auto PUbins = payload->getPileUpBins(); auto span = PUbins.back() - PUbins.front(); @@ -62,7 +64,7 @@ namespace { TCanvas canvas("Canv", "Canv", 1200, 1000); canvas.cd(); auto h1 = std::make_unique("Count", - "SiPixelQualityProbablities Scenarios count;PU bin;n. of scenarios", + "SiPixelQualityProbablities Scenarios count;PU bin;n. of scenarios per PU bin", span, PUbins.front(), PUbins.back()); @@ -70,11 +72,11 @@ namespace { canvas.SetTopMargin(0.06); canvas.SetBottomMargin(0.12); - canvas.SetLeftMargin(0.12); + canvas.SetLeftMargin(0.13); canvas.SetRightMargin(0.05); canvas.Modified(); - for (const auto &bin : PUbins) { + for (const auto& bin : PUbins) { h1->SetBinContent(bin + 1, payload->nelements(bin)); } @@ -89,21 +91,23 @@ namespace { canvas.Update(); - TLegend legend = TLegend(0.40, 0.88, 0.95, 0.94); + TLegend legend = TLegend(0.40, 0.88, 0.94, 0.93); legend.SetHeader(("Payload hash: #bf{" + (std::get<1>(iov)) + "}").c_str(), - "C"); // option "C" allows to center the header - //legend.AddEntry(h1.get(), ("IOV: " + std::to_string(std::get<0>(iov))).c_str(), "PL"); + "C"); // option "C" allows to center the header + legend.SetBorderSize(0); // Set the border size to zero to remove visible borders legend.SetTextSize(0.025); legend.Draw("same"); auto ltx = TLatex(); ltx.SetTextFont(62); //ltx.SetTextColor(kBlue); - ltx.SetTextSize(0.05); + ltx.SetTextSize(0.037); ltx.SetTextAlign(11); - ltx.DrawLatexNDC(gPad->GetLeftMargin() + 0.1, - 1 - gPad->GetTopMargin() + 0.01, - ("SiPixelQualityProbabilities IOV:" + std::to_string(std::get<0>(iov))).c_str()); + + const auto& headerText = + fmt::sprintf("#color[4]{%s},IOV: #color[4]{%s}", tagname, std::to_string(std::get<0>(iov))); + + ltx.DrawLatexNDC(gPad->GetLeftMargin() + 0.1, 1 - gPad->GetTopMargin() + 0.01, headerText.c_str()); std::string fileName(m_imageFileName); canvas.SaveAs(fileName.c_str()); @@ -112,9 +116,149 @@ namespace { } }; + /************************************************ + Probability density per PU bin of 1 IOV of SiPixelQualityProbabilities + *************************************************/ + + class SiPixelQualityProbabilityDensityPerPUbin : public PlotImage { + public: + SiPixelQualityProbabilityDensityPerPUbin() : PlotImage("") { + PlotBase::addInputParam("PU bin"); + } + + bool fill() override { + auto tag = PlotBase::getTag<0>(); + auto iov = tag.iovs.front(); + auto tagname = tag.name; + std::shared_ptr payload = fetchPayload(std::get<1>(iov)); + auto PUbins = payload->getPileUpBins(); + + // initialize the PUbin + unsigned int PUbin(0); + auto paramValues = PlotBase::inputParamValues(); + auto ip = paramValues.find("PU bin"); + if (ip != paramValues.end()) { + PUbin = std::stoul(ip->second); + } else { + edm::LogWarning("SiPixelQualityProbabilityDensityPerPUbin") + << "\n WARNING!!!! \n The needed parameter 'PU bin' has not been passed. Will use all PU bins! \n"; + PUbin = k_ALLPUBINS; + } + + // graphics + TGaxis::SetMaxDigits(3); + + SiPixelQualityProbabilities::probabilityVec probVec; + if (PUbin != k_ALLPUBINS) { + probVec = payload->getProbabilities(PUbin); + } else { + if (PUbins.front() == 0) { + // if a PU bin = 0 exist the PU-averaged is in bin=0 + probVec = payload->getProbabilities(0); + } else { + // we need to build the PDF by hand + // create a list of the probabilities for all the PU bins + std::vector listOfProbabilityVec; + for (unsigned int bin = PUbins.front(); bin <= PUbins.back(); bin++) { + const auto& probsForBin = payload->getProbabilities(bin); + listOfProbabilityVec.push_back(probsForBin); + } + + // Map to store string and pair of floats (sum and count) + std::map> stringFloatMap; + + // Loop through the list of probabilityVec elements + for (const auto& vec : listOfProbabilityVec) { + // For each pair in the current vector + for (const auto& pair : vec) { + const std::string& currentScen = pair.first; + const float& currentProb = pair.second; + + // Check if the string exists in the map + auto it = stringFloatMap.find(currentScen); + if (it != stringFloatMap.end()) { + // If the scenario already exists, update the probability sum and count + it->second.first += currentProb; + it->second.second++; + } else { + // If the string doesn't exist, add it to the map + stringFloatMap[currentScen] = {currentProb, 1}; // Initialize sum and count + } + } + } + + // Calculate the average and populate the new probabilityVec from the map + for (const auto& pair : stringFloatMap) { + float average = pair.second.first / pair.second.second; // Calculate average + probVec.emplace_back(pair.first, average); + } + } // if the first PU bin is not 0 + } // if we're asking for all the PU bins + + TCanvas canvas("Canv", "Canv", 1200, 1000); + canvas.cd(); + auto h1 = std::make_unique("SiPixelQuality PDF", + "probability density vs scenario; scenario serial ID number; probability", + probVec.size(), + -0.5, + probVec.size() - 0.5); + h1->SetStats(false); + + canvas.SetTopMargin(0.06); + canvas.SetBottomMargin(0.12); + canvas.SetLeftMargin(0.13); + canvas.SetRightMargin(0.09); + canvas.Modified(); + + unsigned int count{0}; + for (const auto& [name, prob] : probVec) { + h1->SetBinContent(count, prob); + count++; + } + + h1->SetTitle(""); + h1->GetYaxis()->SetRangeUser(0., h1->GetMaximum() * 1.30); + h1->SetFillColor(kRed); + h1->SetMarkerStyle(20); + h1->SetMarkerSize(1); + h1->Draw("bar2"); + + SiPixelPI::makeNicePlotStyle(h1.get()); + + canvas.Update(); + + TLegend legend = TLegend(0.39, 0.88, 0.89, 0.93); + std::string puBinString = (PUbin == k_ALLPUBINS) ? "PU bin: #bf{all}" : fmt::sprintf("PU bin: #bf{%u}", PUbin); + legend.SetHeader(("#splitline{Payload hash: #bf{" + (std::get<1>(iov)) + "}}{" + puBinString + "}").c_str(), + "C"); // option "C" allows to center the header + legend.SetBorderSize(0); // Set the border size to zero to remove visible borders + legend.SetTextSize(0.025); + legend.Draw("same"); + + auto ltx = TLatex(); + ltx.SetTextFont(62); + ltx.SetTextSize(0.03); + ltx.SetTextAlign(11); + + const auto& headerText = + fmt::sprintf("#color[4]{%s}, IOV: #color[4]{%s}", tagname, std::to_string(std::get<0>(iov))); + + ltx.DrawLatexNDC(gPad->GetLeftMargin() + 0.1, 1 - gPad->GetTopMargin() + 0.01, headerText.c_str()); + + std::string fileName(m_imageFileName); + canvas.SaveAs(fileName.c_str()); + + return true; + } + + private: + static constexpr unsigned int k_ALLPUBINS = 9999; + }; + } // namespace // Register the classes as boost python plugin PAYLOAD_INSPECTOR_MODULE(SiPixelQualityProbabilities) { PAYLOAD_INSPECTOR_CLASS(SiPixelQualityProbabilitiesScenariosCount); + PAYLOAD_INSPECTOR_CLASS(SiPixelQualityProbabilityDensityPerPUbin); } diff --git a/CondCore/SiPixelPlugins/test/testMiscellanea.sh b/CondCore/SiPixelPlugins/test/testMiscellanea.sh index 2ae5130a845e6..828f468647e5c 100755 --- a/CondCore/SiPixelPlugins/test/testMiscellanea.sh +++ b/CondCore/SiPixelPlugins/test/testMiscellanea.sh @@ -19,3 +19,28 @@ getPayloadData.py \ --test ; mv *.png $W_DIR/display/testPixelMap.png + +# test a given PU bin +getPayloadData.py \ + --plugin pluginSiPixelQualityProbabilities_PayloadInspector \ + --plot plot_SiPixelQualityProbabilityDensityPerPUbin \ + --tag SiPixelQualityProbabilities_UltraLegacy2018_v0_mc \ + --input_params '{"PU bin": "10"}' \ + --time_type Run \ + --iovs '{"start_iov": "1", "end_iov": "1"}' \ + --db Prod \ + --test ; + +mv *.png $W_DIR/display/testSiPixelQualityProbabilityDensity.png + +# test all PU bins +getPayloadData.py \ + --plugin pluginSiPixelQualityProbabilities_PayloadInspector \ + --plot plot_SiPixelQualityProbabilityDensityPerPUbin \ + --tag SiPixelQualityProbabilities_2023_v2_BPix_mc \ + --time_type Run \ + --iovs '{"start_iov": "1", "end_iov": "1"}' \ + --db Prod \ + --test ; + +mv *.png $W_DIR/display/testSiPixelQualityProbabilityDensity_v2.png From 48c4805a23e6d5b14b5fb54aa51cd7397ad3193f Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Fri, 5 Jan 2024 08:34:10 -0600 Subject: [PATCH 205/281] Removed beginRun use from Electron producers - moved EventSetup get to produce method - fixed member data names to match CMS convention --- .../plugins/ElectronSeedProducer.cc | 30 +++++++++---------- .../plugins/GsfElectronProducer.cc | 21 ++++++------- 2 files changed, 24 insertions(+), 27 deletions(-) diff --git a/RecoEgamma/EgammaElectronProducers/plugins/ElectronSeedProducer.cc b/RecoEgamma/EgammaElectronProducers/plugins/ElectronSeedProducer.cc index 5ad841ea3729f..5fc5eb39adb2d 100644 --- a/RecoEgamma/EgammaElectronProducers/plugins/ElectronSeedProducer.cc +++ b/RecoEgamma/EgammaElectronProducers/plugins/ElectronSeedProducer.cc @@ -37,14 +37,14 @@ class ElectronSeedProducer : public edm::stream::EDProducer<> { public: explicit ElectronSeedProducer(const edm::ParameterSet&); - void beginRun(const edm::Run&, const edm::EventSetup&) override; void produce(edm::Event&, const edm::EventSetup&) final; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: reco::SuperClusterRefVector filterClusters(math::XYZPoint const& beamSpotPosition, - const edm::Handle& superClusters) const; + const edm::Handle& superClusters, + HcalPFCuts const* hcalCuts) const; edm::EDGetTokenT superClusters_[2]; std::vector> initialSeeds_; @@ -62,8 +62,7 @@ class ElectronSeedProducer : public edm::stream::EDProducer<> { std::unique_ptr hgcClusterTools_; edm::ESGetToken hcalCutsToken_; - bool cutsFromDB; - HcalPFCuts const* hcalCuts = nullptr; + bool cutsFromDB_; }; using namespace reco; @@ -111,9 +110,9 @@ ElectronSeedProducer::ElectronSeedProducer(const edm::ParameterSet& conf) } //Retrieve HCAL PF thresholds - from config or from DB - cutsFromDB = conf.getParameter("usePFThresholdsFromDB"); - if (cutsFromDB) { - hcalCutsToken_ = esConsumes(edm::ESInputTag("", "withTopo")); + cutsFromDB_ = conf.getParameter("usePFThresholdsFromDB"); + if (cutsFromDB_) { + hcalCutsToken_ = esConsumes(edm::ESInputTag("", "withTopo")); } ElectronSeedGenerator::Tokens esg_tokens; @@ -129,15 +128,14 @@ ElectronSeedProducer::ElectronSeedProducer(const edm::ParameterSet& conf) produces(); } -void ElectronSeedProducer::beginRun(const edm::Run& run, const edm::EventSetup& iSetup) { - if (cutsFromDB) { - hcalCuts = &iSetup.getData(hcalCutsToken_); - } -} - void ElectronSeedProducer::produce(edm::Event& e, const edm::EventSetup& iSetup) { LogDebug("ElectronSeedProducer") << "[ElectronSeedProducer::produce] entering "; + HcalPFCuts const* hcalCuts = nullptr; + if (cutsFromDB_) { + hcalCuts = &iSetup.getData(hcalCutsToken_); + } + std::vector initialSeedCollections; std::unique_ptr initialSeedCollectionPtr = nullptr; //created on the fly @@ -162,7 +160,7 @@ void ElectronSeedProducer::produce(edm::Event& e, const edm::EventSetup& iSetup) // loop over barrel + endcap for (unsigned int i = 0; i < 2; i++) { - auto clusterRefs = filterClusters(beamSpotPosition, e.getHandle(superClusters_[i])); + auto clusterRefs = filterClusters(beamSpotPosition, e.getHandle(superClusters_[i]), hcalCuts); matcher_->run(e, clusterRefs, initialSeedCollections, *seeds); } @@ -185,7 +183,9 @@ void ElectronSeedProducer::produce(edm::Event& e, const edm::EventSetup& iSetup) //=============================== SuperClusterRefVector ElectronSeedProducer::filterClusters( - math::XYZPoint const& beamSpotPosition, const edm::Handle& superClusters) const { + math::XYZPoint const& beamSpotPosition, + const edm::Handle& superClusters, + HcalPFCuts const* hcalCuts) const { SuperClusterRefVector sclRefs; for (unsigned int i = 0; i < superClusters->size(); ++i) { diff --git a/RecoEgamma/EgammaElectronProducers/plugins/GsfElectronProducer.cc b/RecoEgamma/EgammaElectronProducers/plugins/GsfElectronProducer.cc index fe5bd008f18d7..0651579540b9c 100644 --- a/RecoEgamma/EgammaElectronProducers/plugins/GsfElectronProducer.cc +++ b/RecoEgamma/EgammaElectronProducers/plugins/GsfElectronProducer.cc @@ -132,7 +132,6 @@ class GsfElectronProducer : public edm::stream::EDProducer tfSessions_; edm::ESGetToken hcalCutsToken_; - bool cutsFromDB; - HcalPFCuts const* hcalCuts = nullptr; + bool cutsFromDB_; }; void GsfElectronProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { @@ -406,12 +404,6 @@ namespace { } }; // namespace -void GsfElectronProducer::beginRun(const edm::Run& run, const edm::EventSetup& setup) { - if (cutsFromDB) { - hcalCuts = &setup.getData(hcalCutsToken_); - } -} - GsfElectronProducer::GsfElectronProducer(const edm::ParameterSet& cfg, const GsfElectronAlgo::HeavyObjectCache* gcache) : cutsCfg_{makeCutsConfiguration(cfg.getParameter("preselection"))}, ecalSeedingParametersChecked_(false), @@ -424,9 +416,9 @@ GsfElectronProducer::GsfElectronProducer(const edm::ParameterSet& cfg, const Gsf } //Retrieve HCAL PF thresholds - from config or from DB - cutsFromDB = cfg.getParameter("usePFThresholdsFromDB"); - if (cutsFromDB) { - hcalCutsToken_ = esConsumes(edm::ESInputTag("", "withTopo")); + cutsFromDB_ = cfg.getParameter("usePFThresholdsFromDB"); + if (cutsFromDB_) { + hcalCutsToken_ = esConsumes(edm::ESInputTag("", "withTopo")); } inputCfg_.gsfElectronCores = consumes(cfg.getParameter("gsfElectronCoresTag")); @@ -745,6 +737,11 @@ bool GsfElectronProducer::isPreselected(GsfElectron const& ele) const { // ------------ method called to produce the data ------------ void GsfElectronProducer::produce(edm::Event& event, const edm::EventSetup& setup) { + HcalPFCuts const* hcalCuts = nullptr; + if (cutsFromDB_) { + hcalCuts = &setup.getData(hcalCutsToken_); + } + // check configuration if (!ecalSeedingParametersChecked_) { ecalSeedingParametersChecked_ = true; From 4e1e43c9487ca4e596654473375eadd2a59d7bda Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Fri, 5 Jan 2024 08:36:00 -0600 Subject: [PATCH 206/281] Removed use of beginLuminosityBlock Call moved to produce --- .../plugins/LowPtGsfElectronSeedProducer.cc | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/RecoEgamma/EgammaElectronProducers/plugins/LowPtGsfElectronSeedProducer.cc b/RecoEgamma/EgammaElectronProducers/plugins/LowPtGsfElectronSeedProducer.cc index 6492ecdd1b94b..76ee75fc6f02e 100644 --- a/RecoEgamma/EgammaElectronProducers/plugins/LowPtGsfElectronSeedProducer.cc +++ b/RecoEgamma/EgammaElectronProducers/plugins/LowPtGsfElectronSeedProducer.cc @@ -66,8 +66,6 @@ class LowPtGsfElectronSeedProducer final static void globalEndJob(lowptgsfeleseed::HeavyObjectCache const*) {} - void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; - void produce(edm::Event&, const edm::EventSetup&) override; static void fillDescriptions(edm::ConfigurationDescriptions&); @@ -184,7 +182,7 @@ LowPtGsfElectronSeedProducer::LowPtGsfElectronSeedProducer(const edm::ParameterS trajectoryFitterToken_{esConsumes(conf.getParameter("Fitter"))}, trajectorySmootherToken_{esConsumes(conf.getParameter("Smoother"))}, builderToken_{esConsumes(conf.getParameter("TTRHBuilder"))}, - magToken_{esConsumes()}, + magToken_{esConsumes()}, ecalClusterToolsESGetTokens_{consumesCollector()}, passThrough_(conf.getParameter("PassThrough")), usePfTracks_(conf.getParameter("UsePfTracks")), @@ -202,15 +200,10 @@ LowPtGsfElectronSeedProducer::LowPtGsfElectronSeedProducer(const edm::ParameterS produces >(); // indexed by edm::Ref.index() } -////////////////////////////////////////////////////////////////////////////////////////// -// -void LowPtGsfElectronSeedProducer::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const& setup) { - field_ = setup.getHandle(magToken_); -} - ////////////////////////////////////////////////////////////////////////////////////////// // void LowPtGsfElectronSeedProducer::produce(edm::Event& event, const edm::EventSetup& setup) { + field_ = setup.getHandle(magToken_); // Products auto seeds = std::make_unique(); auto ecalPreIds = std::make_unique(); From dbf341ae93a1e4b9a906da8d3ddd74a438b3afb4 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Fri, 5 Jan 2024 09:10:22 -0600 Subject: [PATCH 207/281] Removed beginRun use in EgammaPhotonProducers modules - changed member data names to match CMS conventions --- .../src/ConvertedPhotonProducer.cc | 26 +++++++--------- .../src/GEDPhotonProducer.cc | 31 +++++++++---------- .../src/PhotonProducer.cc | 21 ++++++------- 3 files changed, 35 insertions(+), 43 deletions(-) diff --git a/RecoEgamma/EgammaPhotonProducers/src/ConvertedPhotonProducer.cc b/RecoEgamma/EgammaPhotonProducers/src/ConvertedPhotonProducer.cc index 1a83e3cc068ad..71d0581f0296d 100644 --- a/RecoEgamma/EgammaPhotonProducers/src/ConvertedPhotonProducer.cc +++ b/RecoEgamma/EgammaPhotonProducers/src/ConvertedPhotonProducer.cc @@ -48,7 +48,6 @@ class ConvertedPhotonProducer : public edm::stream::EDProducer<> { public: ConvertedPhotonProducer(const edm::ParameterSet& ps); - void beginRun(edm::Run const&, const edm::EventSetup& es) final; void produce(edm::Event& evt, const edm::EventSetup& es) override; private: @@ -79,8 +78,8 @@ class ConvertedPhotonProducer : public edm::stream::EDProducer<> { edm::EDGetTokenT generalTrackProducer_; edm::ESGetToken hcalCutsToken_; - bool cutsFromDB; - HcalPFCuts const* hcalCuts = nullptr; + bool cutsFromDB_; + HcalPFCuts const* hcalCuts_ = nullptr; // Register the product edm::EDPutTokenT convertedPhotonCollectionPutToken_; @@ -146,9 +145,8 @@ ConvertedPhotonProducer::ConvertedPhotonProducer(const edm::ParameterSet& config scIslandEndcapProducer_{consumes(config.getParameter("scIslandEndcapProducer"))}, hbheRecHits_{consumes(config.getParameter("hbheRecHits"))}, caloGeomToken_{esConsumes()}, - mFToken_{esConsumes()}, - transientTrackToken_{esConsumes( - edm::ESInputTag("", "TransientTrackBuilder"))}, + mFToken_{esConsumes()}, + transientTrackToken_{esConsumes(edm::ESInputTag("", "TransientTrackBuilder"))}, vertexFinder_{config}, algoName_{config.getParameter("AlgorithmName")}, @@ -166,9 +164,9 @@ ConvertedPhotonProducer::ConvertedPhotonProducer(const edm::ParameterSet& config // instantiate the Track Pair Finder algorithm likelihoodCalc_.setWeightsFile(edm::FileInPath{likelihoodWeights_.c_str()}.fullPath().c_str()); - cutsFromDB = config.getParameter("usePFThresholdsFromDB"); - if (cutsFromDB) { - hcalCutsToken_ = esConsumes(edm::ESInputTag("", "withTopo")); + cutsFromDB_ = config.getParameter("usePFThresholdsFromDB"); + if (cutsFromDB_) { + hcalCutsToken_ = esConsumes(edm::ESInputTag("", "withTopo")); } ElectronHcalHelper::Configuration cfgCone; @@ -188,18 +186,16 @@ ConvertedPhotonProducer::ConvertedPhotonProducer(const edm::ParameterSet& config hcalHelper_ = std::make_unique(cfgCone, consumesCollector()); } -void ConvertedPhotonProducer::beginRun(edm::Run const& r, edm::EventSetup const& theEventSetup) { +void ConvertedPhotonProducer::produce(edm::Event& theEvent, const edm::EventSetup& theEventSetup) { magneticField_ = &theEventSetup.getData(mFToken_); // Transform Track into TransientTrack (needed by the Vertex fitter) transientTrackBuilder_ = &theEventSetup.getData(transientTrackToken_); - if (cutsFromDB) { - hcalCuts = &theEventSetup.getData(hcalCutsToken_); + if (cutsFromDB_) { + hcalCuts_ = &theEventSetup.getData(hcalCutsToken_); } -} -void ConvertedPhotonProducer::produce(edm::Event& theEvent, const edm::EventSetup& theEventSetup) { // // create empty output collections // @@ -357,7 +353,7 @@ void ConvertedPhotonProducer::buildCollections( continue; const reco::CaloCluster* pClus = &(*aClus); auto const* sc = dynamic_cast(pClus); - double HoE = hcalHelper.hcalESum(*sc, 0, hcalCuts) / sc->energy(); + double HoE = hcalHelper.hcalESum(*sc, 0, hcalCuts_) / sc->energy(); if (HoE >= maxHOverE_) continue; ///// diff --git a/RecoEgamma/EgammaPhotonProducers/src/GEDPhotonProducer.cc b/RecoEgamma/EgammaPhotonProducers/src/GEDPhotonProducer.cc index 6d7d08dddeba4..20547ad868f5c 100644 --- a/RecoEgamma/EgammaPhotonProducers/src/GEDPhotonProducer.cc +++ b/RecoEgamma/EgammaPhotonProducers/src/GEDPhotonProducer.cc @@ -89,7 +89,6 @@ class GEDPhotonProducer : public edm::stream::EDProducer initializeGlobalCache(const edm::ParameterSet&); @@ -99,8 +98,8 @@ class GEDPhotonProducer : public edm::stream::EDProducer hcalCutsToken_; - bool cutsFromDB; - HcalPFCuts const* hcalCuts = nullptr; + bool cutsFromDB_; + HcalPFCuts const* hcalCuts_ = nullptr; class RecoStepInfo { public: @@ -289,9 +288,9 @@ GEDPhotonProducer::GEDPhotonProducer(const edm::ParameterSet& config, const Cach hcalHelperCone_(nullptr), hcalHelperBc_(nullptr) { //Retrieve HCAL PF thresholds - from config or from DB - cutsFromDB = config.getParameter("usePFThresholdsFromDB"); - if (cutsFromDB) { - hcalCutsToken_ = esConsumes(edm::ESInputTag("", "withTopo")); + cutsFromDB_ = config.getParameter("usePFThresholdsFromDB"); + if (cutsFromDB_) { + hcalCutsToken_ = esConsumes(edm::ESInputTag("", "withTopo")); } if (recoStep_.isFinal()) { @@ -485,12 +484,6 @@ GEDPhotonProducer::GEDPhotonProducer(const edm::ParameterSet& config, const Cach } } -void GEDPhotonProducer::beginRun(const edm::Run& run, const edm::EventSetup& eventSetup) { - if (cutsFromDB) { - hcalCuts = &eventSetup.getData(hcalCutsToken_); - } -} - std::unique_ptr GEDPhotonProducer::initializeGlobalCache(const edm::ParameterSet& config) { // this method is supposed to create, initialize and return a CacheData instance return std::make_unique(config); @@ -505,6 +498,10 @@ void GEDPhotonProducer::endStream() { void GEDPhotonProducer::produce(edm::Event& theEvent, const edm::EventSetup& eventSetup) { using namespace edm; + if (cutsFromDB_) { + hcalCuts_ = &eventSetup.getData(hcalCutsToken_); + } + auto outputPhotonCollection_p = std::make_unique(); edm::ValueMap pfEGCandToPhotonMap; @@ -819,7 +816,7 @@ void GEDPhotonProducer::fillPhotonCollection(edm::Event& evt, reco::Photon::FiducialFlags fiducialFlags; reco::Photon::IsolationVariables isolVarR03, isolVarR04; if (!EcalTools::isHGCalDet(thedet)) { - photonIsoCalculator_->calculate(&newCandidate, evt, es, fiducialFlags, isolVarR04, isolVarR03, hcalCuts); + photonIsoCalculator_->calculate(&newCandidate, evt, es, fiducialFlags, isolVarR04, isolVarR03, hcalCuts_); } newCandidate.setFiducialVolumeFlags(fiducialFlags); newCandidate.setIsolationVariables(isolVarR04, isolVarR03); @@ -835,10 +832,10 @@ void GEDPhotonProducer::fillPhotonCollection(edm::Event& evt, showerShape.sigmaIetaIeta = sigmaIetaIeta; for (uint id = 0; id < showerShape.hcalOverEcal.size(); ++id) { showerShape.hcalOverEcal[id] = - (hcalHelperCone != nullptr) ? hcalHelperCone->hcalESum(*scRef, id + 1, hcalCuts) / scRef->energy() : 0.f; + (hcalHelperCone != nullptr) ? hcalHelperCone->hcalESum(*scRef, id + 1, hcalCuts_) / scRef->energy() : 0.f; showerShape.hcalOverEcalBc[id] = - (hcalHelperBc != nullptr) ? hcalHelperBc->hcalESum(*scRef, id + 1, hcalCuts) / scRef->energy() : 0.f; + (hcalHelperBc != nullptr) ? hcalHelperBc->hcalESum(*scRef, id + 1, hcalCuts_) / scRef->energy() : 0.f; } showerShape.invalidHcal = (hcalHelperBc != nullptr) ? !hcalHelperBc->hasActiveHcal(*scRef) : false; if (hcalHelperBc != nullptr) @@ -950,9 +947,9 @@ void GEDPhotonProducer::fillPhotonCollection(edm::Event& evt, full5x5_showerShape.effSigmaRR = sigmaRR; for (uint id = 0; id < full5x5_showerShape.hcalOverEcal.size(); ++id) { full5x5_showerShape.hcalOverEcal[id] = - (hcalHelperCone != nullptr) ? hcalHelperCone->hcalESum(*scRef, id + 1, hcalCuts) / full5x5_e5x5 : 0.f; + (hcalHelperCone != nullptr) ? hcalHelperCone->hcalESum(*scRef, id + 1, hcalCuts_) / full5x5_e5x5 : 0.f; full5x5_showerShape.hcalOverEcalBc[id] = - (hcalHelperBc != nullptr) ? hcalHelperBc->hcalESum(*scRef, id + 1, hcalCuts) / full5x5_e5x5 : 0.f; + (hcalHelperBc != nullptr) ? hcalHelperBc->hcalESum(*scRef, id + 1, hcalCuts_) / full5x5_e5x5 : 0.f; } full5x5_showerShape.pre7DepthHcal = false; newCandidate.full5x5_setShowerShapeVariables(full5x5_showerShape); diff --git a/RecoEgamma/EgammaPhotonProducers/src/PhotonProducer.cc b/RecoEgamma/EgammaPhotonProducers/src/PhotonProducer.cc index c44344a383ea2..7fed2882a787c 100644 --- a/RecoEgamma/EgammaPhotonProducers/src/PhotonProducer.cc +++ b/RecoEgamma/EgammaPhotonProducers/src/PhotonProducer.cc @@ -49,7 +49,6 @@ class PhotonProducer : public edm::stream::EDProducer<> { public: PhotonProducer(const edm::ParameterSet& ps); - void beginRun(const edm::Run&, const edm::EventSetup&) override; void produce(edm::Event& evt, const edm::EventSetup& es) override; private: @@ -57,6 +56,7 @@ class PhotonProducer : public edm::stream::EDProducer<> { edm::EventSetup const& es, const edm::Handle& photonCoreHandle, const CaloTopology* topology, + const HcalPFCuts* hcalCuts, const EcalRecHitCollection* ecalBarrelHits, const EcalRecHitCollection* ecalEndcapHits, ElectronHcalHelper const& hcalHelperCone, @@ -116,8 +116,7 @@ class PhotonProducer : public edm::stream::EDProducer<> { bool hcalRun2EffDepth_; edm::ESGetToken hcalCutsToken_; - bool cutsFromDB; - HcalPFCuts const* hcalCuts = nullptr; + bool cutsFromDB_; }; #include "FWCore/Framework/interface/MakerMacros.h" @@ -147,9 +146,9 @@ PhotonProducer::PhotonProducer(const edm::ParameterSet& config) posCalculator_ = PositionCalc(posCalcParameters); //Retrieve HCAL PF thresholds - from config or from DB - cutsFromDB = config.getParameter("usePFThresholdsFromDB"); - if (cutsFromDB) { - hcalCutsToken_ = esConsumes(edm::ESInputTag("", "withTopo")); + cutsFromDB_ = config.getParameter("usePFThresholdsFromDB"); + if (cutsFromDB_) { + hcalCutsToken_ = esConsumes(edm::ESInputTag("", "withTopo")); } //AA @@ -254,13 +253,11 @@ PhotonProducer::PhotonProducer(const edm::ParameterSet& config) produces(PhotonCollection_); } -void PhotonProducer::beginRun(const edm::Run& run, const edm::EventSetup& theEventSetup) { - if (cutsFromDB) { +void PhotonProducer::produce(edm::Event& theEvent, const edm::EventSetup& theEventSetup) { + HcalPFCuts const* hcalCuts = nullptr; + if (cutsFromDB_) { hcalCuts = &theEventSetup.getData(hcalCutsToken_); } -} - -void PhotonProducer::produce(edm::Event& theEvent, const edm::EventSetup& theEventSetup) { using namespace edm; // nEvt_++; @@ -326,6 +323,7 @@ void PhotonProducer::produce(edm::Event& theEvent, const edm::EventSetup& theEve theEventSetup, photonCoreHandle, topology, + hcalCuts, &barrelRecHits, &endcapRecHits, *hcalHelperCone_, @@ -351,6 +349,7 @@ void PhotonProducer::fillPhotonCollection(edm::Event& evt, edm::EventSetup const& es, const edm::Handle& photonCoreHandle, const CaloTopology* topology, + const HcalPFCuts* hcalCuts, const EcalRecHitCollection* ecalBarrelHits, const EcalRecHitCollection* ecalEndcapHits, ElectronHcalHelper const& hcalHelperCone, From 296dff754fdcf3a4a14d59faaa961a2368a76e72 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Fri, 5 Jan 2024 09:22:27 -0600 Subject: [PATCH 208/281] Removed beginRun from FixedGridRhoProducerFastjetFromRecHit Moved EventSetup get call to produce. --- .../plugins/FixedGridRhoProducerFastjetFromRecHit.cc | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/RecoJets/JetProducers/plugins/FixedGridRhoProducerFastjetFromRecHit.cc b/RecoJets/JetProducers/plugins/FixedGridRhoProducerFastjetFromRecHit.cc index 0281ebfdfa13c..0767ec0ee4460 100644 --- a/RecoJets/JetProducers/plugins/FixedGridRhoProducerFastjetFromRecHit.cc +++ b/RecoJets/JetProducers/plugins/FixedGridRhoProducerFastjetFromRecHit.cc @@ -37,7 +37,6 @@ class FixedGridRhoProducerFastjetFromRecHit : public edm::stream::EDProducer<> { static void fillDescriptions(edm::ConfigurationDescriptions &descriptions); private: - void beginRun(edm::Run const &, edm::EventSetup const &) override; void produce(edm::Event &, const edm::EventSetup &) override; std::array getHitP4(const DetId &detId, const double hitE, const CaloGeometry &caloGeometry) const; bool passedHcalNoiseCut(const HBHERecHit &hit, const HcalPFCuts *) const; @@ -82,7 +81,7 @@ FixedGridRhoProducerFastjetFromRecHit::FixedGridRhoProducerFastjetFromRecHit(con << "skipHCAL and skipECAL both can't be True. Please make at least one of them False."; } if (cutsFromDB_) { - hcalCutsToken_ = esConsumes(edm::ESInputTag("", "withTopo")); + hcalCutsToken_ = esConsumes(edm::ESInputTag("", "withTopo")); } produces(); } @@ -107,13 +106,11 @@ void FixedGridRhoProducerFastjetFromRecHit::fillDescriptions(edm::ConfigurationD FixedGridRhoProducerFastjetFromRecHit::~FixedGridRhoProducerFastjetFromRecHit() = default; -void FixedGridRhoProducerFastjetFromRecHit::beginRun(edm::Run const &r, edm::EventSetup const &es) { +void FixedGridRhoProducerFastjetFromRecHit::produce(edm::Event &iEvent, const edm::EventSetup &iSetup) { if (cutsFromDB_) { - paramPF_ = &es.getData(hcalCutsToken_); + paramPF_ = &iSetup.getData(hcalCutsToken_); } -} -void FixedGridRhoProducerFastjetFromRecHit::produce(edm::Event &iEvent, const edm::EventSetup &iSetup) { std::vector inputs; auto const &thresholds = iSetup.getData(ecalPFRecHitThresholdsToken_); auto const &caloGeometry = iSetup.getData(caloGeometryToken_); From a0b50e808680beaaea94c611f39fb9b90c1d8db3 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Fri, 5 Jan 2024 09:41:21 -0600 Subject: [PATCH 209/281] Removed empty beginRun methods --- RecoLocalCalo/HGCalRecProducers/plugins/EERecHitGPU.cc | 3 --- RecoLocalCalo/HGCalRecProducers/plugins/HEBRecHitGPU.cc | 3 --- RecoLocalCalo/HGCalRecProducers/plugins/HEFRecHitGPU.cc | 3 --- RecoLocalCalo/HcalRecProducers/src/HFPreReconstructor.cc | 3 --- 4 files changed, 12 deletions(-) diff --git a/RecoLocalCalo/HGCalRecProducers/plugins/EERecHitGPU.cc b/RecoLocalCalo/HGCalRecProducers/plugins/EERecHitGPU.cc index aa0e41bd82b6c..5fdc4fbd3a93a 100644 --- a/RecoLocalCalo/HGCalRecProducers/plugins/EERecHitGPU.cc +++ b/RecoLocalCalo/HGCalRecProducers/plugins/EERecHitGPU.cc @@ -25,7 +25,6 @@ class EERecHitGPU : public edm::stream::EDProducer<> { public: explicit EERecHitGPU(const edm::ParameterSet &ps); ~EERecHitGPU() override; - void beginRun(edm::Run const &, edm::EventSetup const &) override; void produce(edm::Event &, const edm::EventSetup &) override; @@ -106,8 +105,6 @@ void EERecHitGPU::assert_sizes_constants_(const HGCConstantVectorData &vd) { "weights", HGCeeUncalibRecHitConstantData::ee_weights, vdata_.weights_.size()); } -void EERecHitGPU::beginRun(edm::Run const &, edm::EventSetup const &setup) {} - void EERecHitGPU::produce(edm::Event &event, const edm::EventSetup &setup) { cms::cuda::ScopedContextProduce ctx{event.streamID()}; diff --git a/RecoLocalCalo/HGCalRecProducers/plugins/HEBRecHitGPU.cc b/RecoLocalCalo/HGCalRecProducers/plugins/HEBRecHitGPU.cc index b9c08de83d519..cc2d206fe67bc 100644 --- a/RecoLocalCalo/HGCalRecProducers/plugins/HEBRecHitGPU.cc +++ b/RecoLocalCalo/HGCalRecProducers/plugins/HEBRecHitGPU.cc @@ -25,7 +25,6 @@ class HEBRecHitGPU : public edm::stream::EDProducer<> { public: explicit HEBRecHitGPU(const edm::ParameterSet &ps); ~HEBRecHitGPU() override; - void beginRun(edm::Run const &, edm::EventSetup const &) override; void produce(edm::Event &, const edm::EventSetup &) override; @@ -88,8 +87,6 @@ void HEBRecHitGPU::assert_sizes_constants_(const HGCConstantVectorData &vd) { edm::LogError("WrongSize") << this->assert_error_message_("weights", vdata_.fCPerMIP_.size()); } -void HEBRecHitGPU::beginRun(edm::Run const &, edm::EventSetup const &setup) {} - void HEBRecHitGPU::produce(edm::Event &event, const edm::EventSetup &setup) { cms::cuda::ScopedContextProduce ctx{event.streamID()}; diff --git a/RecoLocalCalo/HGCalRecProducers/plugins/HEFRecHitGPU.cc b/RecoLocalCalo/HGCalRecProducers/plugins/HEFRecHitGPU.cc index 7ceedccb5d28e..eeb1dc0209817 100644 --- a/RecoLocalCalo/HGCalRecProducers/plugins/HEFRecHitGPU.cc +++ b/RecoLocalCalo/HGCalRecProducers/plugins/HEFRecHitGPU.cc @@ -25,7 +25,6 @@ class HEFRecHitGPU : public edm::stream::EDProducer<> { public: explicit HEFRecHitGPU(const edm::ParameterSet &ps); ~HEFRecHitGPU() override; - void beginRun(edm::Run const &, edm::EventSetup const &) override; void produce(edm::Event &, const edm::EventSetup &) override; @@ -108,8 +107,6 @@ void HEFRecHitGPU::assert_sizes_constants_(const HGCConstantVectorData &vd) { "weights", HGChefUncalibRecHitConstantData::hef_weights, vdata_.weights_.size()); } -void HEFRecHitGPU::beginRun(edm::Run const &, edm::EventSetup const &setup) {} - void HEFRecHitGPU::produce(edm::Event &event, const edm::EventSetup &setup) { cms::cuda::ScopedContextProduce ctx{event.streamID()}; diff --git a/RecoLocalCalo/HcalRecProducers/src/HFPreReconstructor.cc b/RecoLocalCalo/HcalRecProducers/src/HFPreReconstructor.cc index 4dc732c7666fd..ff751d2e830e5 100644 --- a/RecoLocalCalo/HcalRecProducers/src/HFPreReconstructor.cc +++ b/RecoLocalCalo/HcalRecProducers/src/HFPreReconstructor.cc @@ -60,7 +60,6 @@ class HFPreReconstructor : public edm::stream::EDProducer<> { typedef std::pair PmtAnodeId; typedef std::pair QIE10InfoWithId; - void beginRun(const edm::Run&, const edm::EventSetup&) override; void produce(edm::Event&, const edm::EventSetup&) override; // Module configuration parameters @@ -202,8 +201,6 @@ void HFPreReconstructor::fillInfos(const edm::Event& e, const edm::EventSetup& e } } -void HFPreReconstructor::beginRun(const edm::Run& r, const edm::EventSetup& es) {} - // ------------ method called to produce the data ------------ void HFPreReconstructor::produce(edm::Event& e, const edm::EventSetup& eventSetup) { // Process the input data From f04f6a8b510ecfbf35f1aa5e9b57dc092ff5ad55 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Fri, 5 Jan 2024 09:47:56 -0600 Subject: [PATCH 210/281] Removed beginRun from EcalDetIdToBeRecoveredProducer Moved EventSetup get calls to produce --- .../plugins/EcalDetIdToBeRecoveredProducer.cc | 21 +++++++------------ 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/RecoLocalCalo/EcalRecProducers/plugins/EcalDetIdToBeRecoveredProducer.cc b/RecoLocalCalo/EcalRecProducers/plugins/EcalDetIdToBeRecoveredProducer.cc index 5bc751776abd4..765bc264bb38f 100644 --- a/RecoLocalCalo/EcalRecProducers/plugins/EcalDetIdToBeRecoveredProducer.cc +++ b/RecoLocalCalo/EcalRecProducers/plugins/EcalDetIdToBeRecoveredProducer.cc @@ -38,7 +38,6 @@ class EcalDetIdToBeRecoveredProducer : public edm::stream::EDProducer<> { public: explicit EcalDetIdToBeRecoveredProducer(const edm::ParameterSet& ps); void produce(edm::Event& evt, const edm::EventSetup& es) final; - void beginRun(edm::Run const& run, const edm::EventSetup& es) final; static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: @@ -82,9 +81,9 @@ class EcalDetIdToBeRecoveredProducer : public edm::stream::EDProducer<> { }; EcalDetIdToBeRecoveredProducer::EcalDetIdToBeRecoveredProducer(const edm::ParameterSet& ps) { - ecalMappingToken_ = esConsumes(); - channelStatusToken_ = esConsumes(); - ttMapToken_ = esConsumes(); + ecalMappingToken_ = esConsumes(); + channelStatusToken_ = esConsumes(); + ttMapToken_ = esConsumes(); // SRP collections ebSrFlagToken_ = consumes(ps.getParameter("ebSrFlagCollection")); eeSrFlagToken_ = consumes(ps.getParameter("eeSrFlagCollection")); @@ -119,16 +118,6 @@ EcalDetIdToBeRecoveredProducer::EcalDetIdToBeRecoveredProducer(const edm::Parame produces>(scDetIdCollection_); } -void EcalDetIdToBeRecoveredProducer::beginRun(edm::Run const& run, const edm::EventSetup& es) { - edm::ESHandle pEcalMapping = es.getHandle(ecalMappingToken_); - ecalMapping_ = pEcalMapping.product(); - - edm::ESHandle pChStatus = es.getHandle(channelStatusToken_); - chStatus_ = pChStatus.product(); - - ttMap_ = es.getHandle(ttMapToken_); -} - // fuction return true if "coll" have "item" template bool include(const CollT& coll, const ItemT& item) { @@ -137,6 +126,10 @@ bool include(const CollT& coll, const ItemT& item) { } void EcalDetIdToBeRecoveredProducer::produce(edm::Event& ev, const edm::EventSetup& es) { + ecalMapping_ = &es.getData(ecalMappingToken_); + chStatus_ = &es.getData(channelStatusToken_); + ttMap_ = es.getHandle(ttMapToken_); + std::vector> ebDetIdColls; std::vector> eeDetIdColls; std::vector> ttColls; From cc3d3a8f196be5a1e06e9961de7ef633624afcd0 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Fri, 5 Jan 2024 09:57:50 -0600 Subject: [PATCH 211/281] Removed empty beginRun from PFCandidateChecker Also removed empty destructor. --- RecoParticleFlow/PFProducer/plugins/PFCandidateChecker.cc | 8 -------- 1 file changed, 8 deletions(-) diff --git a/RecoParticleFlow/PFProducer/plugins/PFCandidateChecker.cc b/RecoParticleFlow/PFProducer/plugins/PFCandidateChecker.cc index 7cc2379a0ea5c..6fe62d2352a1b 100644 --- a/RecoParticleFlow/PFProducer/plugins/PFCandidateChecker.cc +++ b/RecoParticleFlow/PFProducer/plugins/PFCandidateChecker.cc @@ -24,12 +24,8 @@ class PFCandidateChecker : public edm::stream::EDAnalyzer<> { public: explicit PFCandidateChecker(const edm::ParameterSet&); - ~PFCandidateChecker() override; - void analyze(const edm::Event&, const edm::EventSetup&) override; - void beginRun(const edm::Run& r, const edm::EventSetup& c) override; - private: void printJets(const reco::PFJetCollection& pfJetsReco, const reco::PFJetCollection& pfJetsReReco) const; @@ -96,10 +92,6 @@ PFCandidateChecker::PFCandidateChecker(const edm::ParameterSet& iConfig) { << inputTagPFCandidatesReReco_; } -PFCandidateChecker::~PFCandidateChecker() {} - -void PFCandidateChecker::beginRun(const edm::Run& run, const edm::EventSetup& es) {} - void PFCandidateChecker::analyze(const Event& iEvent, const EventSetup& iSetup) { LogDebug("PFCandidateChecker") << "START event: " << iEvent.id().event() << " in run " << iEvent.id().run() << endl; From 77bd4fb34f19cf1ac80c63bf47fe5b0d21f68fa3 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Fri, 5 Jan 2024 10:14:35 -0600 Subject: [PATCH 212/281] Removed beginRun/endRun methods in TrackTriggerAssociation modules Moved printout to constructor. --- .../plugins/TTClusterAssociator.h | 17 ----------------- .../plugins/TTStubAssociator.h | 17 ----------------- .../plugins/TTTrackAssociator.h | 15 ++------------- 3 files changed, 2 insertions(+), 47 deletions(-) diff --git a/SimTracker/TrackTriggerAssociation/plugins/TTClusterAssociator.h b/SimTracker/TrackTriggerAssociation/plugins/TTClusterAssociator.h index a6c1e92513f9d..da5372e2a1822 100644 --- a/SimTracker/TrackTriggerAssociation/plugins/TTClusterAssociator.h +++ b/SimTracker/TrackTriggerAssociation/plugins/TTClusterAssociator.h @@ -47,9 +47,6 @@ class TTClusterAssociator : public edm::stream::EDProducer<> { /// Constructors explicit TTClusterAssociator(const edm::ParameterSet& iConfig); - /// Destructor - ~TTClusterAssociator() override; - private: /// Data members edm::Handle > thePixelDigiSimLinkHandle_; @@ -64,8 +61,6 @@ class TTClusterAssociator : public edm::stream::EDProducer<> { edm::ESGetToken theTrackerGeometryToken_; /// Mandatory methods - void beginRun(const edm::Run& run, const edm::EventSetup& iSetup) override; - void endRun(const edm::Run& run, const edm::EventSetup& iSetup) override; void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) override; }; /// Close class @@ -93,23 +88,11 @@ TTClusterAssociator::TTClusterAssociator(const edm::ParameterSet& iConfig) { } theTrackerGeometryToken_ = esConsumes(); -} - -/// Destructor -template -TTClusterAssociator::~TTClusterAssociator() {} -/// Begin run -template -void TTClusterAssociator::beginRun(const edm::Run& run, const edm::EventSetup& iSetup) { /// Print some information when loaded edm::LogInfo("TTClusterAssociator< ") << templateNameFinder() << " > loaded."; } -/// End run -template -void TTClusterAssociator::endRun(const edm::Run& run, const edm::EventSetup& iSetup) {} - /// Implement the producer template <> void TTClusterAssociator::produce(edm::Event& iEvent, const edm::EventSetup& iSetup); diff --git a/SimTracker/TrackTriggerAssociation/plugins/TTStubAssociator.h b/SimTracker/TrackTriggerAssociation/plugins/TTStubAssociator.h index 1799fca4e867b..f43c6a9fd5a6d 100644 --- a/SimTracker/TrackTriggerAssociation/plugins/TTStubAssociator.h +++ b/SimTracker/TrackTriggerAssociation/plugins/TTStubAssociator.h @@ -48,9 +48,6 @@ class TTStubAssociator : public edm::stream::EDProducer<> { /// Constructors explicit TTStubAssociator(const edm::ParameterSet& iConfig); - /// Destructor - ~TTStubAssociator() override; - private: /// Data members std::vector ttStubsInputTags_; @@ -63,8 +60,6 @@ class TTStubAssociator : public edm::stream::EDProducer<> { edm::ESGetToken theTrackerTopologyToken_; /// Mandatory methods - void beginRun(const edm::Run& run, const edm::EventSetup& iSetup) override; - void endRun(const edm::Run& run, const edm::EventSetup& iSetup) override; void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) override; }; /// Close class @@ -94,23 +89,11 @@ TTStubAssociator::TTStubAssociator(const edm::ParameterSet& iConfig) { theTrackerGeometryToken_ = esConsumes(); theTrackerTopologyToken_ = esConsumes(); -} - -/// Destructor -template -TTStubAssociator::~TTStubAssociator() {} -/// Begin run -template -void TTStubAssociator::beginRun(const edm::Run& run, const edm::EventSetup& iSetup) { /// Print some information when loaded edm::LogInfo("TTStubAssociator< ") << templateNameFinder() << " > loaded."; } -/// End run -template -void TTStubAssociator::endRun(const edm::Run& run, const edm::EventSetup& iSetup) {} - /// Implement the producer template <> void TTStubAssociator::produce(edm::Event& iEvent, const edm::EventSetup& iSetup); diff --git a/SimTracker/TrackTriggerAssociation/plugins/TTTrackAssociator.h b/SimTracker/TrackTriggerAssociation/plugins/TTTrackAssociator.h index a936057ae03c6..0c1a507a07006 100644 --- a/SimTracker/TrackTriggerAssociation/plugins/TTTrackAssociator.h +++ b/SimTracker/TrackTriggerAssociation/plugins/TTTrackAssociator.h @@ -59,8 +59,6 @@ class TTTrackAssociator : public edm::stream::EDProducer<> { bool TTTrackAllowOneFalse2SStub; /// Mandatory methods - void beginRun(const edm::Run& run, const edm::EventSetup& iSetup) override; - void endRun(const edm::Run& run, const edm::EventSetup& iSetup) override; void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) override; }; /// Close class @@ -90,22 +88,13 @@ TTTrackAssociator::TTTrackAssociator(const edm::ParameterSet& iConfig) { produces >(iTag.instance()); } -} - -/// Destructor -template -TTTrackAssociator::~TTTrackAssociator() {} - -/// Begin run -template -void TTTrackAssociator::beginRun(const edm::Run& run, const edm::EventSetup& iSetup) { /// Print some information when loaded edm::LogInfo("TTStubAssociator< ") << "TTTrackAssociator< " << templateNameFinder() << " > loaded."; } -/// End run +/// Destructor template -void TTTrackAssociator::endRun(const edm::Run& run, const edm::EventSetup& iSetup) {} +TTTrackAssociator::~TTTrackAssociator() {} /// Implement the producer template <> From 6b3e37e5f3f840f327d2d7efb8f55dc3c80f0171 Mon Sep 17 00:00:00 2001 From: Vladimir Date: Fri, 5 Jan 2024 18:59:28 +0100 Subject: [PATCH 213/281] Fixed compilation in debug mode --- SimG4CMS/Forward/src/ZdcSD.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/SimG4CMS/Forward/src/ZdcSD.cc b/SimG4CMS/Forward/src/ZdcSD.cc index d953eed4ef2c3..95f16c5db92ce 100644 --- a/SimG4CMS/Forward/src/ZdcSD.cc +++ b/SimG4CMS/Forward/src/ZdcSD.cc @@ -215,6 +215,7 @@ double ZdcSD::getEnergyDeposit(const G4Step* aStep) { G4StepPoint* postStepPoint = aStep->GetPostStepPoint(); G4VPhysicalVolume* postPV = postStepPoint->GetPhysicalVolume(); std::string postnameVolume = ForwardName::getName(postPV->GetName()); + std::string nameVolume = preStepPoint->GetPhysicalVolume()->GetName(); edm::LogVerbatim("ForwardSim") << "ZdcSD:: getEnergyDeposit: \n" << " preStepPoint: " << nameVolume << "," << stepL << "," << stepE << "," << beta << "," << charge << "\n" From ec6f524638542bc7edcd99d28d9249e73c04d7d8 Mon Sep 17 00:00:00 2001 From: mmusich Date: Sat, 16 Dec 2023 16:35:50 +0100 Subject: [PATCH 214/281] SiStrip Condition tools: add more APV gain inspection tools --- .../plugins/SiStripApvGainInspector.cc | 1145 +++++++++++++++++ .../SiStripGainPayloadCopyAndExclude.cc | 195 +++ CondTools/SiStrip/test/BuildFile.xml | 1 + .../test/SiStripApvGainInspector_cfg.py | 52 + .../SiStripGainPayloadCopyAndExclude_cfg.py | 98 ++ .../test/testSiStripGainManipulation.sh | 25 + 6 files changed, 1516 insertions(+) create mode 100644 CondTools/SiStrip/plugins/SiStripApvGainInspector.cc create mode 100644 CondTools/SiStrip/plugins/SiStripGainPayloadCopyAndExclude.cc create mode 100644 CondTools/SiStrip/test/SiStripApvGainInspector_cfg.py create mode 100644 CondTools/SiStrip/test/SiStripGainPayloadCopyAndExclude_cfg.py create mode 100755 CondTools/SiStrip/test/testSiStripGainManipulation.sh diff --git a/CondTools/SiStrip/plugins/SiStripApvGainInspector.cc b/CondTools/SiStrip/plugins/SiStripApvGainInspector.cc new file mode 100644 index 0000000000000..3203328cd36c5 --- /dev/null +++ b/CondTools/SiStrip/plugins/SiStripApvGainInspector.cc @@ -0,0 +1,1145 @@ +// -*- C++ -*- +// +// Package: CondTools/SiStrip +// Class: SiStripApvGainInspector +// +/* + *\class SiStripApvGainInspector SiStripApvGainInspector.cc CalibTracker/SiStripChannelGain/plugins/SiStripApvGainInspector.cc + + Description: This module allows redo the per-APV gain fits with different PDFs (landau, landau + gaus convolution, etc.) starting from the Charge vs APV index plot produced in the SiStrip G2 APV gain PCL workflow. It is possible to inspect the 1D charge distributions for certain APVs after fitting by means of specifying them via the parameter selectedModules. + + Implementation: largely based off CalibTracker/SiStripChannelGain/src/SiStripGainsPCLHarvester.cc + +*/ +// +// Original Author: Marco Musich +// Created: Tue, 05 Jun 2018 15:46:15 GMT +// +// + +// system include files +#include /* log */ +#include + +// user include files +#include "CalibFormats/SiStripObjects/interface/SiStripDetCabling.h" +#include "CalibFormats/SiStripObjects/interface/SiStripGain.h" +#include "CalibFormats/SiStripObjects/interface/SiStripQuality.h" +#include "CalibTracker/Records/interface/SiStripDetCablingRcd.h" +#include "CalibTracker/Records/interface/SiStripGainRcd.h" +#include "CalibTracker/SiStripChannelGain/interface/APVGainStruct.h" +#include "CalibTracker/Records/interface/SiStripQualityRcd.h" +#include "CommonTools/TrackerMap/interface/TrackerMap.h" +#include "CommonTools/UtilAlgos/interface/TFileService.h" +#include "CondCore/DBOutputService/interface/PoolDBOutputService.h" +#include "CondFormats/SiStripObjects/interface/SiStripApvGain.h" +#include "CondTools/SiStrip/interface/SiStripMiscalibrateHelper.h" +#include "DataFormats/SiStripDetId/interface/StripSubdetector.h" +#include "DataFormats/TrackerCommon/interface/TrackerTopology.h" +#include "FWCore/Framework/interface/ESHandle.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/EventSetup.h" +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/Framework/interface/one/EDAnalyzer.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ServiceRegistry/interface/Service.h" +#include "FWCore/Utilities/interface/InputTag.h" +#include "Geometry/CommonDetUnit/interface/TrackingGeometry.h" +#include "Geometry/CommonTopologies/interface/PixelGeomDetUnit.h" +#include "Geometry/Records/interface/TrackerDigiGeometryRecord.h" +#include "Geometry/Records/interface/TrackerTopologyRcd.h" +#include "Geometry/TrackerGeometryBuilder/interface/StripGeomDetUnit.h" +#include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h" +#include "Geometry/TrackerNumberingBuilder/interface/GeometricDet.h" + +// ROOT includes +#include "TStyle.h" +#include "TCanvas.h" +#include "TFile.h" +#include "TTree.h" +#include "TH1F.h" +#include "TH2S.h" +#include "TProfile.h" +#include "TF1.h" + +// +// class declaration +// +class SiStripApvGainInspector : public edm::one::EDAnalyzer { +public: + explicit SiStripApvGainInspector(const edm::ParameterSet&); + ~SiStripApvGainInspector() override; + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + +private: + void beginJob() override; + void analyze(const edm::Event&, const edm::EventSetup&) override; + void endJob() override; + void checkBookAPVColls(const edm::EventSetup& es); + void checkAndRetrieveTopology(const edm::EventSetup& setup); + bool isGoodLandauFit(double* FitResults); + void getPeakOfLandau(TH1* InputHisto, double* FitResults, double LowRange = 50, double HighRange = 5400); + void getPeakOfLanGau(TH1* InputHisto, double* FitResults, double LowRange = 50, double HighRange = 5400); + void doFakeFit(TH1* InputHisto, double* FitResults); + void getPeakOfLandauAroundMax(TH1* InputHisto, double* FitResults, double LowRange = 100, double HighRange = 100); + static double langaufun(Double_t* x, Double_t* par); + void storeOnTree(TFileService* tfs); + void makeNicePlotStyle(TH1F* plot); + std::unique_ptr getNewObject(); + std::map bookQualityMonitor(const TFileDirectory& dir); + void fillQualityMonitor(); + + void inline fill1D(std::map& h, const std::string& s, double x) { + if (h.count(s) == 0) { + edm::LogWarning("SiStripApvGainInspector") << "Trying to fill non-existing Histogram named " << s << std::endl; + return; + } + h[s]->Fill(x); + } + + void inline fill2D(std::map& h, const std::string& s, double x, double y) { + if (h.count(s) == 0) { + edm::LogWarning("SiStripApvGainInspector") << "Trying to fill non-existing Histogram named " << s << std::endl; + return; + } + h[s]->Fill(x, y); + } + + // ----------member data --------------------------- + enum fitMode { landau = 1, landauAroundMax = 2, landauGauss = 3, fake = 4 }; + + const std::vector fitModeStrings = { + "", // Enum values start from 1, so index 0 is empty or can be used as "invalid" + "landau", + "landauAroundMax", + "landauGauss", + "fake"}; + + inline bool isValidMode(int mode) const { + return mode == landau || mode == landauAroundMax || mode == landauGauss || mode == fake; + } + + const edm::ESGetToken gainToken_; + const edm::ESGetToken qualityToken_; + const edm::ESGetToken tkGeomToken_; + const edm::ESGetToken tTopoToken_; + + TFileService* tfs; + + // map the APV ids to the charge plots + std::map, TH1F*> histoMap_; + + edm::ESHandle tkGeom_; + const TrackerGeometry* bareTkGeomPtr_; // ugly hack to fill APV colls only once, but checks + const TrackerTopology* tTopo_; + + int NStripAPVs; + int NPixelDets; + + unsigned int GOOD; + unsigned int BAD; + unsigned int MASKED; + + std::vector> APVsCollOrdered; + std::unordered_map> APVsColl; + + const TH2F* Charge_Vs_Index; + TFile* fin; + fitMode fitMode_; // Declare the enum variable + const std::string filename_; + double minNrEntries; + std::vector wantedmods; + + std::unique_ptr ratio_map; + std::unique_ptr old_payload_map; + std::unique_ptr new_payload_map; + std::unique_ptr mpv_map; + std::unique_ptr mpv_err_map; + std::unique_ptr entries_map; + std::unique_ptr fitChi2_map; + + std::map hControl; +}; + +// +// constructors and destructor +// +SiStripApvGainInspector::SiStripApvGainInspector(const edm::ParameterSet& iConfig) + : gainToken_(esConsumes()), + qualityToken_(esConsumes()), + tkGeomToken_(esConsumes()), + tTopoToken_(esConsumes()), + bareTkGeomPtr_(nullptr), + tTopo_(nullptr), + GOOD(0), + BAD(0), + filename_(iConfig.getUntrackedParameter("inputFile")), + minNrEntries(iConfig.getUntrackedParameter("minNrEntries", 20)), + wantedmods(iConfig.getUntrackedParameter>("selectedModules")) { + usesResource(TFileService::kSharedResource); + usesResource(cond::service::PoolDBOutputService::kSharedResource); + + sort(wantedmods.begin(), wantedmods.end()); + + edm::LogInfo("SelectedModules") << "Selected module list"; + for (std::vector::const_iterator mod = wantedmods.begin(); mod != wantedmods.end(); mod++) { + edm::LogVerbatim("SelectedModules") << *mod; + } + + int modeValue = iConfig.getParameter("fitMode"); + if (!isValidMode(modeValue)) { + throw std::invalid_argument("Invalid value provided for 'fitMode'"); + } else { + edm::LogPrint("SiStripApvGainInspector") << "Chosen fitting mode: " << fitModeStrings[modeValue]; + } + + fitMode_ = static_cast(modeValue); + + //now do what ever initialization is needed + fin = TFile::Open(filename_.c_str(), "READ"); + Charge_Vs_Index = (TH2F*)fin->Get("DQMData/Run 999999/AlCaReco/Run summary/SiStripGainsAAG/Charge_Vs_Index_AagBunch"); + + ratio_map = std::make_unique("ratio"); + ratio_map->setTitle("Average by module of the G2 Gain payload ratio (new/old)"); + ratio_map->setPalette(1); + + new_payload_map = std::make_unique("new_payload"); + new_payload_map->setTitle("Tracker Map of Updated G2 Gain payload averaged by module"); + new_payload_map->setPalette(1); + + old_payload_map = std::make_unique("old_payload"); + old_payload_map->setTitle("Tracker Map of Starting G2 Gain Payload averaged by module"); + old_payload_map->setPalette(1); + + // fit quality maps + + mpv_map = std::make_unique("MPV"); + mpv_map->setTitle("Landau Fit MPV average value per module [ADC counts/mm]"); + mpv_map->setPalette(1); + + mpv_err_map = std::make_unique("MPVerr"); + mpv_err_map->setTitle("Landau Fit MPV average error per module [ADC counts/mm]"); + mpv_err_map->setPalette(1); + + entries_map = std::make_unique("Entries"); + entries_map->setTitle("log_{10}(entries) average per module"); + entries_map->setPalette(1); + + fitChi2_map = std::make_unique("FitChi2"); + fitChi2_map->setTitle("log_{10}(Fit #chi^{2}/ndf) average per module"); + fitChi2_map->setPalette(1); +} + +// do anything here that needs to be done at desctruction time +// (e.g. close files, deallocate resources etc.) +SiStripApvGainInspector::~SiStripApvGainInspector() { + fin->Close(); + delete fin; +} + +// +// member functions +// + +// ------------ method called for each event ------------ +void SiStripApvGainInspector::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { + using namespace edm; + this->checkBookAPVColls(iSetup); // check whether APV colls are booked and do so if not yet done + this->checkAndRetrieveTopology(iSetup); + + edm::ESHandle gainHandle = iSetup.getHandle(gainToken_); + if (!gainHandle.isValid()) { + edm::LogError("SiStripApvGainInspector") << "gainHandle is not valid\n"; + exit(0); + } + + edm::ESHandle SiStripQuality_ = iSetup.getHandle(qualityToken_); + + for (unsigned int a = 0; a < APVsCollOrdered.size(); a++) { + std::shared_ptr APV = APVsCollOrdered[a]; + + if (APV->SubDet == PixelSubdetector::PixelBarrel || APV->SubDet == PixelSubdetector::PixelEndcap) + continue; + + APV->isMasked = SiStripQuality_->IsApvBad(APV->DetId, APV->APVId); + + if (gainHandle->getNumberOfTags() != 2) { + edm::LogError("SiStripApvGainInspector") << "NUMBER OF GAIN TAG IS EXPECTED TO BE 2\n"; + fflush(stdout); + exit(0); + }; + float newPreviousGain = gainHandle->getApvGain(APV->APVId, gainHandle->getRange(APV->DetId, 1), 1); + if (APV->PreviousGain != 1 and newPreviousGain != APV->PreviousGain) + edm::LogWarning("SiStripApvGainInspector") << "WARNING: ParticleGain in the global tag changed\n"; + APV->PreviousGain = newPreviousGain; + + float newPreviousGainTick = gainHandle->getApvGain(APV->APVId, gainHandle->getRange(APV->DetId, 0), 0); + if (APV->PreviousGainTick != 1 and newPreviousGainTick != APV->PreviousGainTick) { + edm::LogWarning("SiStripApvGainInspector") + << "WARNING: TickMarkGain in the global tag changed\n" + << std::endl + << " APV->SubDet: " << APV->SubDet << " APV->APVId:" << APV->APVId << std::endl + << " APV->PreviousGainTick: " << APV->PreviousGainTick << " newPreviousGainTick: " << newPreviousGainTick + << std::endl; + } + APV->PreviousGainTick = newPreviousGainTick; + } + + unsigned int I = 0; + TH1F* Proj = nullptr; + double FitResults[6]; + double MPVmean = 300; + + if (Charge_Vs_Index == nullptr) { + edm::LogError("SiStripGainsPCLHarvester") << "Harvesting: could not find input histogram " << std::endl; + return; + } + + printf("Progressing Bar :0%% 20%% 40%% 60%% 80%% 100%%\n"); + printf("Fitting Charge Distribution :"); + int TreeStep = APVsColl.size() / 50; + + for (auto it = APVsColl.begin(); it != APVsColl.end(); it++, I++) { + if (I % TreeStep == 0) { + printf("."); + fflush(stdout); + } + std::shared_ptr APV = it->second; + if (APV->Bin < 0) + APV->Bin = Charge_Vs_Index->GetXaxis()->FindBin(APV->Index); + + Proj = (TH1F*)(Charge_Vs_Index->ProjectionY( + "", Charge_Vs_Index->GetXaxis()->FindBin(APV->Index), Charge_Vs_Index->GetXaxis()->FindBin(APV->Index), "e")); + if (!Proj) + continue; + + switch (fitMode_) { + case landau: + getPeakOfLandau(Proj, FitResults); + break; + case landauAroundMax: + getPeakOfLandauAroundMax(Proj, FitResults); + break; + case landauGauss: + getPeakOfLanGau(Proj, FitResults); + break; + case fake: + doFakeFit(Proj, FitResults); + break; + default: + throw std::invalid_argument("Invalid value provided for 'fitMode'"); + } + + APV->FitMPV = FitResults[0]; + APV->FitMPVErr = FitResults[1]; + APV->FitWidth = FitResults[2]; + APV->FitWidthErr = FitResults[3]; + APV->FitChi2 = FitResults[4]; + APV->FitNorm = FitResults[5]; + APV->NEntries = Proj->GetEntries(); + + for (const auto& mod : wantedmods) { + if (mod == APV->DetId) { + edm::LogInfo("ModuleFound") << " module " << mod << " found! Storing... " << std::endl; + histoMap_[std::make_pair(APV->APVId, APV->DetId)] = (TH1F*)Proj->Clone(Form("hClone_%s", Proj->GetName())); + } + } + + if (isGoodLandauFit(FitResults)) { + APV->Gain = APV->FitMPV / MPVmean; + if (APV->SubDet > 2) + GOOD++; + } else { + APV->Gain = APV->PreviousGain; + if (APV->SubDet > 2) + BAD++; + } + if (APV->Gain <= 0) + APV->Gain = 1; + + delete Proj; + } + printf("\n"); +} + +//********************************************************************************// +// ------------ method called once each job just before starting event loop ------------ +void SiStripApvGainInspector::checkBookAPVColls(const edm::EventSetup& es) { + tkGeom_ = es.getHandle(tkGeomToken_); + const TrackerGeometry* newBareTkGeomPtr = &(*tkGeom_); + if (newBareTkGeomPtr == bareTkGeomPtr_) + return; // already filled APVColls, nothing changed + + if (!bareTkGeomPtr_) { // pointer not yet set: called the first time => fill the APVColls + auto const& Det = newBareTkGeomPtr->dets(); + + unsigned int Index = 0; + + for (unsigned int i = 0; i < Det.size(); i++) { + DetId Detid = Det[i]->geographicalId(); + int SubDet = Detid.subdetId(); + + if (SubDet == StripSubdetector::TIB || SubDet == StripSubdetector::TID || SubDet == StripSubdetector::TOB || + SubDet == StripSubdetector::TEC) { + auto DetUnit = dynamic_cast(Det[i]); + if (!DetUnit) + continue; + + const StripTopology& Topo = DetUnit->specificTopology(); + unsigned int NAPV = Topo.nstrips() / 128; + + for (unsigned int j = 0; j < NAPV; j++) { + auto APV = std::make_shared(); + APV->Index = Index; + APV->Bin = -1; + APV->DetId = Detid.rawId(); + APV->APVId = j; + APV->SubDet = SubDet; + APV->FitMPV = -1; + APV->FitMPVErr = -1; + APV->FitWidth = -1; + APV->FitWidthErr = -1; + APV->FitChi2 = -1; + APV->FitNorm = -1; + APV->Gain = -1; + APV->PreviousGain = 1; + APV->PreviousGainTick = 1; + APV->x = DetUnit->position().basicVector().x(); + APV->y = DetUnit->position().basicVector().y(); + APV->z = DetUnit->position().basicVector().z(); + APV->Eta = DetUnit->position().basicVector().eta(); + APV->Phi = DetUnit->position().basicVector().phi(); + APV->R = DetUnit->position().basicVector().transverse(); + APV->Thickness = DetUnit->surface().bounds().thickness(); + APV->NEntries = 0; + APV->isMasked = false; + + APVsCollOrdered.push_back(APV); + APVsColl[(APV->DetId << 4) | APV->APVId] = APV; + Index++; + NStripAPVs++; + } // loop on APVs + } // if is Strips + } // loop on dets + + for (unsigned int i = 0; i < Det.size(); + i++) { //Make two loop such that the Pixel information is added at the end --> make transition simpler + DetId Detid = Det[i]->geographicalId(); + int SubDet = Detid.subdetId(); + if (SubDet == PixelSubdetector::PixelBarrel || SubDet == PixelSubdetector::PixelEndcap) { + auto DetUnit = dynamic_cast(Det[i]); + if (!DetUnit) + continue; + + const PixelTopology& Topo = DetUnit->specificTopology(); + unsigned int NROCRow = Topo.nrows() / (80.); + unsigned int NROCCol = Topo.ncolumns() / (52.); + + for (unsigned int j = 0; j < NROCRow; j++) { + for (unsigned int i = 0; i < NROCCol; i++) { + auto APV = std::make_shared(); + APV->Index = Index; + APV->Bin = -1; + APV->DetId = Detid.rawId(); + APV->APVId = (j << 3 | i); + APV->SubDet = SubDet; + APV->FitMPV = -1; + APV->FitMPVErr = -1; + APV->FitWidth = -1; + APV->FitWidthErr = -1; + APV->FitChi2 = -1; + APV->Gain = -1; + APV->PreviousGain = 1; + APV->PreviousGainTick = 1; + APV->x = DetUnit->position().basicVector().x(); + APV->y = DetUnit->position().basicVector().y(); + APV->z = DetUnit->position().basicVector().z(); + APV->Eta = DetUnit->position().basicVector().eta(); + APV->Phi = DetUnit->position().basicVector().phi(); + APV->R = DetUnit->position().basicVector().transverse(); + APV->Thickness = DetUnit->surface().bounds().thickness(); + APV->isMasked = false; //SiPixelQuality_->IsModuleBad(Detid.rawId()); + APV->NEntries = 0; + + APVsCollOrdered.push_back(APV); + APVsColl[(APV->DetId << 4) | APV->APVId] = APV; + Index++; + NPixelDets++; + + } // loop on ROC cols + } // loop on ROC rows + } // if Pixel + } // loop on Dets + } //if (!bareTkGeomPtr_) ... + bareTkGeomPtr_ = newBareTkGeomPtr; +} + +void SiStripApvGainInspector::storeOnTree(TFileService* tfs) { + unsigned int tree_Index; + unsigned int tree_Bin; + unsigned int tree_DetId; + unsigned char tree_APVId; + unsigned char tree_SubDet; + float tree_x; + float tree_y; + float tree_z; + float tree_Eta; + float tree_R; + float tree_Phi; + float tree_Thickness; + float tree_FitMPV; + float tree_FitMPVErr; + float tree_FitWidth; + float tree_FitWidthErr; + float tree_FitChi2NDF; + float tree_FitNorm; + double tree_Gain; + double tree_PrevGain; + double tree_PrevGainTick; + double tree_NEntries; + bool tree_isMasked; + + TTree* MyTree; + MyTree = tfs->make("APVGain", "APVGain"); + MyTree->Branch("Index", &tree_Index, "Index/i"); + MyTree->Branch("Bin", &tree_Bin, "Bin/i"); + MyTree->Branch("DetId", &tree_DetId, "DetId/i"); + MyTree->Branch("APVId", &tree_APVId, "APVId/b"); + MyTree->Branch("SubDet", &tree_SubDet, "SubDet/b"); + MyTree->Branch("x", &tree_x, "x/F"); + MyTree->Branch("y", &tree_y, "y/F"); + MyTree->Branch("z", &tree_z, "z/F"); + MyTree->Branch("Eta", &tree_Eta, "Eta/F"); + MyTree->Branch("R", &tree_R, "R/F"); + MyTree->Branch("Phi", &tree_Phi, "Phi/F"); + MyTree->Branch("Thickness", &tree_Thickness, "Thickness/F"); + MyTree->Branch("FitMPV", &tree_FitMPV, "FitMPV/F"); + MyTree->Branch("FitMPVErr", &tree_FitMPVErr, "FitMPVErr/F"); + MyTree->Branch("FitWidth", &tree_FitWidth, "FitWidth/F"); + MyTree->Branch("FitWidthErr", &tree_FitWidthErr, "FitWidthErr/F"); + MyTree->Branch("FitChi2NDF", &tree_FitChi2NDF, "FitChi2NDF/F"); + MyTree->Branch("FitNorm", &tree_FitNorm, "FitNorm/F"); + MyTree->Branch("Gain", &tree_Gain, "Gain/D"); + MyTree->Branch("PrevGain", &tree_PrevGain, "PrevGain/D"); + MyTree->Branch("PrevGainTick", &tree_PrevGainTick, "PrevGainTick/D"); + MyTree->Branch("NEntries", &tree_NEntries, "NEntries/D"); + MyTree->Branch("isMasked", &tree_isMasked, "isMasked/O"); + + uint32_t cachedId(0); + SiStripMiscalibrate::Entry gain_ratio; + SiStripMiscalibrate::Entry o_gain; + SiStripMiscalibrate::Entry n_gain; + SiStripMiscalibrate::Entry mpv; + SiStripMiscalibrate::Entry mpv_err; + SiStripMiscalibrate::Entry entries; + SiStripMiscalibrate::Entry fitChi2; + + for (unsigned int a = 0; a < APVsCollOrdered.size(); a++) { + std::shared_ptr APV = APVsCollOrdered[a]; + if (APV == nullptr) + continue; + // printf( "%i | %i | PreviousGain = %7.5f NewGain = %7.5f (#clusters=%8.0f)\n", APV->DetId,APV->APVId,APV->PreviousGain,APV->Gain, APV->NEntries); + //fprintf(Gains,"%i | %i | PreviousGain = %7.5f(tick) x %7.5f(particle) NewGain (particle) = %7.5f (#clusters=%8.0f)\n", APV->DetId,APV->APVId,APV->PreviousGainTick, APV->PreviousGain,APV->Gain, APV->NEntries); + + // do not fill the Pixel + if (APV->SubDet == PixelSubdetector::PixelBarrel || APV->SubDet == PixelSubdetector::PixelEndcap) + continue; + + tree_Index = APV->Index; + tree_Bin = Charge_Vs_Index->GetXaxis()->FindBin(APV->Index); + tree_DetId = APV->DetId; + tree_APVId = APV->APVId; + tree_SubDet = APV->SubDet; + tree_x = APV->x; + tree_y = APV->y; + tree_z = APV->z; + tree_Eta = APV->Eta; + tree_R = APV->R; + tree_Phi = APV->Phi; + tree_Thickness = APV->Thickness; + tree_FitMPV = APV->FitMPV; + tree_FitMPVErr = APV->FitMPVErr; + tree_FitWidth = APV->FitWidth; + tree_FitWidthErr = APV->FitWidthErr; + tree_FitChi2NDF = APV->FitChi2; + tree_FitNorm = APV->FitNorm; + tree_Gain = APV->Gain; + tree_PrevGain = APV->PreviousGain; + tree_PrevGainTick = APV->PreviousGainTick; + tree_NEntries = APV->NEntries; + tree_isMasked = APV->isMasked; + + // flush the counters + if (cachedId != 0 && tree_DetId != cachedId) { + //ratio_map->fill(cachedId,gain_ratio.mean()); + ratio_map->fill(cachedId, o_gain.mean() / n_gain.mean()); + old_payload_map->fill(cachedId, o_gain.mean()); + new_payload_map->fill(cachedId, n_gain.mean()); + + if (entries.mean() > 0) { + mpv_map->fill(cachedId, mpv.mean()); + mpv_err_map->fill(cachedId, mpv_err.mean()); + entries_map->fill(cachedId, log10(entries.mean())); + if (fitChi2.mean() > 0) { + fitChi2_map->fill(cachedId, log10(fitChi2.mean())); + } else { + fitChi2_map->fill(cachedId, -1); + } + } + + gain_ratio.reset(); + o_gain.reset(); + n_gain.reset(); + + mpv.reset(); + mpv_err.reset(); + entries.reset(); + fitChi2.reset(); + } + + cachedId = tree_DetId; + gain_ratio.add(tree_PrevGain / tree_Gain); + o_gain.add(tree_PrevGain); + n_gain.add(tree_Gain); + mpv.add(tree_FitMPV); + mpv_err.add(tree_FitMPVErr); + entries.add(tree_NEntries); + fitChi2.add(tree_FitChi2NDF); + + if (tree_DetId == 402673324) { + printf("%i | %i : %f --> %f (%f)\n", tree_DetId, tree_APVId, tree_PrevGain, tree_Gain, tree_NEntries); + } + + MyTree->Fill(); + } +} + +//********************************************************************************// +void SiStripApvGainInspector::checkAndRetrieveTopology(const edm::EventSetup& setup) { + if (!tTopo_) { + edm::ESHandle TopoHandle = setup.getHandle(tTopoToken_); + tTopo_ = TopoHandle.product(); + } +} + +//********************************************************************************// +void SiStripApvGainInspector::getPeakOfLandau(TH1* InputHisto, double* FitResults, double LowRange, double HighRange) { + FitResults[0] = -0.5; //MPV + FitResults[1] = 0; //MPV error + FitResults[2] = -0.5; //Width + FitResults[3] = 0; //Width error + FitResults[4] = -0.5; //Fit Chi2/NDF + FitResults[5] = 0; //Normalization + + if (InputHisto->GetEntries() < minNrEntries) + return; + + // perform fit with standard landau + TF1 MyLandau("MyLandau", "landau", LowRange, HighRange); + MyLandau.SetParameter(1, 300); + InputHisto->Fit(&MyLandau, "QR WW"); + + // MPV is parameter 1 (0=constant, 1=MPV, 2=Sigma) + FitResults[0] = MyLandau.GetParameter(1); //MPV + FitResults[1] = MyLandau.GetParError(1); //MPV error + FitResults[2] = MyLandau.GetParameter(2); //Width + FitResults[3] = MyLandau.GetParError(2); //Width error + FitResults[4] = MyLandau.GetChisquare() / MyLandau.GetNDF(); //Fit Chi2/NDF + FitResults[5] = MyLandau.GetParameter(0); +} + +void SiStripApvGainInspector::doFakeFit(TH1* InputHisto, double* FitResults) { + FitResults[0] = -0.5; //MPV + FitResults[1] = 0; //MPV error + FitResults[2] = -0.5; //Width + FitResults[3] = 0; //Width error + FitResults[4] = -0.5; //Fit Chi2/NDF + FitResults[5] = 0; //Normalization +} + +//********************************************************************************// +double SiStripApvGainInspector::langaufun(Double_t* x, Double_t* par) +//********************************************************************************// +{ + //Fit parameters: + //par[0]=Width (scale) parameter of Landau density + //par[1]=Most Probable (MP, location) parameter of Landau density + //par[2]=Total area (integral -inf to inf, normalization constant) + //par[3]=Width (sigma) of convoluted Gaussian function + // + //In the Landau distribution (represented by the CERNLIB approximation), + //the maximum is located at x=-0.22278298 with the location parameter=0. + //This shift is corrected within this function, so that the actual + //maximum is identical to the MP parameter. + + // Numeric constants + Double_t invsq2pi = 0.3989422804014; // (2 pi)^(-1/2) + Double_t mpshift = -0.22278298; // Landau maximum location + + // Control constants + Double_t np = 100.0; // number of convolution steps + Double_t sc = 5.0; // convolution extends to +-sc Gaussian sigmas + + // Variables + Double_t xx; + Double_t mpc; + Double_t fland; + Double_t sum = 0.0; + Double_t xlow, xupp; + Double_t step; + Double_t i; + + // MP shift correction + mpc = par[1] - mpshift * par[0]; + + // Range of convolution integral + xlow = x[0] - sc * par[3]; + xupp = x[0] + sc * par[3]; + + step = (xupp - xlow) / np; + + // Convolution integral of Landau and Gaussian by sum + for (i = 1.0; i <= np / 2; i++) { + xx = xlow + (i - .5) * step; + fland = TMath::Landau(xx, mpc, par[0]) / par[0]; + sum += fland * TMath::Gaus(x[0], xx, par[3]); + + xx = xupp - (i - .5) * step; + fland = TMath::Landau(xx, mpc, par[0]) / par[0]; + sum += fland * TMath::Gaus(x[0], xx, par[3]); + } + + return (par[2] * step * sum * invsq2pi / par[3]); +} + +//********************************************************************************// +void SiStripApvGainInspector::getPeakOfLanGau(TH1* InputHisto, double* FitResults, double LowRange, double HighRange) { + FitResults[0] = -0.5; //MPV + FitResults[1] = 0; //MPV error + FitResults[2] = -0.5; //Width + FitResults[3] = 0; //Width error + FitResults[4] = -0.5; //Fit Chi2/NDF + FitResults[5] = 0; //Normalization + + if (InputHisto->GetEntries() < minNrEntries) + return; + + // perform fit with standard landau + TF1 MyLandau("MyLandau", "landau", LowRange, HighRange); + MyLandau.SetParameter(1, 300); + InputHisto->Fit(&MyLandau, "QR WW"); + + double startvalues[4] = {100, 300, 10000, 100}; + double parlimitslo[4] = {0, 250, 10, 0}; + double parlimitshi[4] = {200, 350, 1000000, 200}; + + TF1 MyLangau("MyLanGau", langaufun, LowRange, HighRange, 4); + + MyLangau.SetParameters(startvalues); + MyLangau.SetParNames("Width", "MP", "Area", "GSigma"); + + for (unsigned int i = 0; i < 4; i++) { + MyLangau.SetParLimits(i, parlimitslo[i], parlimitshi[i]); + } + + InputHisto->Fit("MyLanGau", "QRB0"); // fit within specified range, use ParLimits, do not plot + + // MPV is parameter 1 (0=constant, 1=MPV, 2=Sigma) + FitResults[0] = MyLangau.GetParameter(1); //MPV + FitResults[1] = MyLangau.GetParError(1); //MPV error + FitResults[2] = MyLangau.GetParameter(0); //Width + FitResults[3] = MyLangau.GetParError(0); //Width error + FitResults[4] = MyLangau.GetChisquare() / MyLangau.GetNDF(); //Fit Chi2/NDF + FitResults[5] = MyLangau.GetParameter(3); +} + +//********************************************************************************// +void SiStripApvGainInspector::getPeakOfLandauAroundMax(TH1* InputHisto, + double* FitResults, + double LowRange, + double HighRange) { + FitResults[0] = -0.5; //MPV + FitResults[1] = 0; //MPV error + FitResults[2] = -0.5; //Width + FitResults[3] = 0; //Width error + FitResults[4] = -0.5; //Fit Chi2/NDF + FitResults[5] = 0; //Normalization + + if (InputHisto->GetEntries() < minNrEntries) + return; + + int maxbin = InputHisto->GetMaximumBin(); + int maxbin2 = -9999.; + + if (InputHisto->GetBinContent(maxbin - 1) > InputHisto->GetBinContent(maxbin + 1)) { + maxbin2 = maxbin - 1; + } else { + maxbin2 = maxbin + 1; + } + + float maxbincenter = (InputHisto->GetBinCenter(maxbin) + InputHisto->GetBinCenter(maxbin2)) / 2; + + TF1 MyLandau("MyLandau", "[2]*TMath::Landau(x,[0],[1],0)", maxbincenter - LowRange, maxbincenter + HighRange); + // TF1 MyLandau("MyLandau", "landau", LowRange, HighRange); + // MyLandau.SetParameter(1, 300); + InputHisto->Fit(&MyLandau, "QR WW"); + + MyLandau.SetParameter(0, maxbincenter); + MyLandau.SetParameter(1, maxbincenter / 10.); + MyLandau.SetParameter(2, InputHisto->GetMaximum()); + + float mpv = MyLandau.GetParameter(1); + MyLandau.SetParameter(1, mpv); + //InputHisto->Rebin(3); + InputHisto->Fit(&MyLandau, "QOR", "", mpv - 50, mpv + 100); + + InputHisto->Fit(&MyLandau, "QOR", "", maxbincenter - LowRange, maxbincenter + HighRange); + InputHisto->Fit(&MyLandau, "QOR", "", maxbincenter - LowRange, maxbincenter + HighRange); + + // MPV is parameter 1 (0=constant, 1=MPV, 2=Sigma) + FitResults[0] = MyLandau.GetParameter(1); //MPV + FitResults[1] = MyLandau.GetParError(1); //MPV error + FitResults[2] = MyLandau.GetParameter(2); //Width + FitResults[3] = MyLandau.GetParError(2); //Width error + FitResults[4] = MyLandau.GetChisquare() / MyLandau.GetNDF(); //Fit Chi2/NDF + FitResults[5] = MyLandau.GetParameter(0); +} + +//********************************************************************************// +bool SiStripApvGainInspector::isGoodLandauFit(double* FitResults) { + if (FitResults[0] <= 0) + return false; + // if(FitResults[1] > MaxMPVError )return false; + // if(FitResults[4] > MaxChi2OverNDF)return false; + return true; +} + +/*--------------------------------------------------------------------*/ +void SiStripApvGainInspector::makeNicePlotStyle(TH1F* plot) +/*--------------------------------------------------------------------*/ +{ + plot->GetXaxis()->CenterTitle(true); + plot->GetYaxis()->CenterTitle(true); + plot->GetXaxis()->SetTitleFont(42); + plot->GetYaxis()->SetTitleFont(42); + plot->GetXaxis()->SetTitleSize(0.05); + plot->GetYaxis()->SetTitleSize(0.05); + plot->GetXaxis()->SetTitleOffset(0.9); + plot->GetYaxis()->SetTitleOffset(1.3); + plot->GetXaxis()->SetLabelFont(42); + plot->GetYaxis()->SetLabelFont(42); + plot->GetYaxis()->SetLabelSize(.05); + plot->GetXaxis()->SetLabelSize(.05); +} + +//********************************************************************************// +std::unique_ptr SiStripApvGainInspector::getNewObject() { + std::unique_ptr obj = std::make_unique(); + + std::vector theSiStripVector; + unsigned int PreviousDetId = 0; + for (unsigned int a = 0; a < APVsCollOrdered.size(); a++) { + std::shared_ptr APV = APVsCollOrdered[a]; + if (APV == nullptr) { + printf("Bug\n"); + continue; + } + if (APV->SubDet <= 2) + continue; + if (APV->DetId != PreviousDetId) { + if (!theSiStripVector.empty()) { + SiStripApvGain::Range range(theSiStripVector.begin(), theSiStripVector.end()); + if (!obj->put(PreviousDetId, range)) + printf("Bug to put detId = %i\n", PreviousDetId); + } + theSiStripVector.clear(); + PreviousDetId = APV->DetId; + } + theSiStripVector.push_back(APV->Gain); + + LogDebug("SiStripGainsPCLHarvester") << " DetId: " << APV->DetId << " APV: " << APV->APVId + << " Gain: " << APV->Gain << std::endl; + } + if (!theSiStripVector.empty()) { + SiStripApvGain::Range range(theSiStripVector.begin(), theSiStripVector.end()); + if (!obj->put(PreviousDetId, range)) + printf("Bug to put detId = %i\n", PreviousDetId); + } + + return obj; +} + +// ------------ method called once each job just before starting event loop ------------ +void SiStripApvGainInspector::beginJob() { + TFileDirectory control_dir = tfs->mkdir("Control"); + //DA.cd(); + hControl = this->bookQualityMonitor(control_dir); +} + +// ------------ method called once each job just after ending the event loop ------------ +void SiStripApvGainInspector::endJob() { + edm::LogVerbatim("SelectedModules") << "Selected APVs:" << histoMap_.size() << std::endl; + for (const auto& plot : histoMap_) { + TCanvas* c1 = new TCanvas(Form("c1_%i_%i", plot.first.second, plot.first.first), + Form("c1_%i_%i", plot.first.second, plot.first.first), + 800, + 600); + // Define common things for the different fits + + gStyle->SetOptFit(1011); + c1->Clear(); + + c1->SetLeftMargin(0.15); + c1->SetRightMargin(0.10); + plot.second->SetTitle(Form("Cluster Charge (%i,%i)", plot.first.second, plot.first.first)); + plot.second->GetXaxis()->SetTitle("Normalized Cluster Charge [ADC counts/mm]"); + plot.second->GetYaxis()->SetTitle("On-track clusters"); + plot.second->GetXaxis()->SetRangeUser(0., 1000.); + + this->makeNicePlotStyle(plot.second); + plot.second->Draw(); + edm::LogVerbatim("SelectedModules") << " DetId: " << plot.first.second << " (" << plot.first.first << ")" + << std::endl; + ; + + c1->Print(Form("c1_%i_%i.png", plot.first.second, plot.first.first)); + c1->Print(Form("c1_%i_%i.pdf", plot.first.second, plot.first.first)); + } + + tfs = edm::Service().operator->(); + storeOnTree(tfs); + + auto range = SiStripMiscalibrate::getTruncatedRange(ratio_map.get()); + + ratio_map->save(true, range.first, range.second, "G2_gain_ratio_map.pdf"); + ratio_map->save(true, range.first, range.second, "G2_gain_ratio_map.png"); + + range = SiStripMiscalibrate::getTruncatedRange(old_payload_map.get()); + + old_payload_map->save(true, range.first, range.second, "starting_G2_gain_payload_map.pdf"); + old_payload_map->save(true, range.first, range.second, "starting_G2_gain_payload_map.png"); + + range = SiStripMiscalibrate::getTruncatedRange(new_payload_map.get()); + + new_payload_map->save(true, range.first, range.second, "new_G2_gain_payload_map.pdf"); + new_payload_map->save(true, range.first, range.second, "new_G2_gain_payload_map.png"); + + mpv_map->save(true, 250, 350., "mpv_map.pdf"); + mpv_map->save(true, 250, 350., "mpv_map.png"); + + mpv_err_map->save(true, 0., 3., "mpv_err_map.pdf"); + mpv_err_map->save(true, 0., 3., "mpv_err_map.png"); + + entries_map->save(true, 0, 0, "entries_map.pdf"); + entries_map->save(true, 0, 0, "entries_map.png"); + + fitChi2_map->save(true, 0., 0., "fitChi2_map.pdf"); + fitChi2_map->save(true, 0., 0., "fitChi2_map.png"); + + fillQualityMonitor(); + + std::unique_ptr theAPVGains = this->getNewObject(); + + // write out the APVGains record + edm::Service poolDbService; + + if (poolDbService.isAvailable()) + poolDbService->writeOneIOV(theAPVGains.get(), poolDbService->currentTime(), "SiStripApvGainRcd"); + else + throw std::runtime_error("PoolDBService required."); +} + +std::map SiStripApvGainInspector::bookQualityMonitor(const TFileDirectory& dir) { + int MPVbin = 300; + float MPVmin = 0.; + float MPVmax = 600.; + + TH1F::SetDefaultSumw2(kTRUE); + std::map h; + + h["MPV_Vs_EtaTIB"] = dir.make("MPVvsEtaTIB", "MPV vs Eta TIB", 50, -3.0, 3.0, MPVbin, MPVmin, MPVmax); + h["MPV_Vs_EtaTID"] = dir.make("MPVvsEtaTID", "MPV vs Eta TID", 50, -3.0, 3.0, MPVbin, MPVmin, MPVmax); + h["MPV_Vs_EtaTOB"] = dir.make("MPVvsEtaTOB", "MPV vs Eta TOB", 50, -3.0, 3.0, MPVbin, MPVmin, MPVmax); + h["MPV_Vs_EtaTEC"] = dir.make("MPVvsEtaTEC", "MPV vs Eta TEC", 50, -3.0, 3.0, MPVbin, MPVmin, MPVmax); + h["MPV_Vs_EtaTECthin"] = dir.make("MPVvsEtaTEC1", "MPV vs Eta TEC-thin", 50, -3.0, 3.0, MPVbin, MPVmin, MPVmax); + h["MPV_Vs_EtaTECthick"] = + dir.make("MPVvsEtaTEC2", "MPV vs Eta TEC-thick", 50, -3.0, 3.0, MPVbin, MPVmin, MPVmax); + + h["MPV_Vs_PhiTIB"] = dir.make("MPVvsPhiTIB", "MPV vs Phi TIB", 50, -3.4, 3.4, MPVbin, MPVmin, MPVmax); + h["MPV_Vs_PhiTID"] = dir.make("MPVvsPhiTID", "MPV vs Phi TID", 50, -3.4, 3.4, MPVbin, MPVmin, MPVmax); + h["MPV_Vs_PhiTOB"] = dir.make("MPVvsPhiTOB", "MPV vs Phi TOB", 50, -3.4, 3.4, MPVbin, MPVmin, MPVmax); + h["MPV_Vs_PhiTEC"] = dir.make("MPVvsPhiTEC", "MPV vs Phi TEC", 50, -3.4, 3.4, MPVbin, MPVmin, MPVmax); + h["MPV_Vs_PhiTECthin"] = + dir.make("MPVvsPhiTEC1", "MPV vs Phi TEC-thin ", 50, -3.4, 3.4, MPVbin, MPVmin, MPVmax); + h["MPV_Vs_PhiTECthick"] = + dir.make("MPVvsPhiTEC2", "MPV vs Phi TEC-thick", 50, -3.4, 3.4, MPVbin, MPVmin, MPVmax); + + h["NoMPVfit"] = dir.make("NoMPVfit", "Modules with bad Landau Fit", 350, -350, 350, 240, 0, 120); + h["NoMPVmasked"] = dir.make("NoMPVmasked", "Masked Modules", 350, -350, 350, 240, 0, 120); + + h["Gains"] = dir.make("Gains", "Gains", 300, 0, 2); + h["MPVs"] = dir.make("MPVs", "MPVs", MPVbin, MPVmin, MPVmax); + h["MPVs320"] = dir.make("MPV_320", "MPV 320 thickness", MPVbin, MPVmin, MPVmax); + h["MPVs500"] = dir.make("MPV_500", "MPV 500 thickness", MPVbin, MPVmin, MPVmax); + h["MPVsTIB"] = dir.make("MPV_TIB", "MPV TIB", MPVbin, MPVmin, MPVmax); + h["MPVsTID"] = dir.make("MPV_TID", "MPV TID", MPVbin, MPVmin, MPVmax); + h["MPVsTIDP"] = dir.make("MPV_TIDP", "MPV TIDP", MPVbin, MPVmin, MPVmax); + h["MPVsTIDM"] = dir.make("MPV_TIDM", "MPV TIDM", MPVbin, MPVmin, MPVmax); + h["MPVsTOB"] = dir.make("MPV_TOB", "MPV TOB", MPVbin, MPVmin, MPVmax); + h["MPVsTEC"] = dir.make("MPV_TEC", "MPV TEC", MPVbin, MPVmin, MPVmax); + h["MPVsTECP"] = dir.make("MPV_TECP", "MPV TECP", MPVbin, MPVmin, MPVmax); + h["MPVsTECM"] = dir.make("MPV_TECM", "MPV TECM", MPVbin, MPVmin, MPVmax); + h["MPVsTECthin"] = dir.make("MPV_TEC1", "MPV TEC thin", MPVbin, MPVmin, MPVmax); + h["MPVsTECthick"] = dir.make("MPV_TEC2", "MPV TEC thick", MPVbin, MPVmin, MPVmax); + h["MPVsTECP1"] = dir.make("MPV_TECP1", "MPV TECP thin ", MPVbin, MPVmin, MPVmax); + h["MPVsTECP2"] = dir.make("MPV_TECP2", "MPV TECP thick", MPVbin, MPVmin, MPVmax); + h["MPVsTECM1"] = dir.make("MPV_TECM1", "MPV TECM thin", MPVbin, MPVmin, MPVmax); + h["MPVsTECM2"] = dir.make("MPV_TECM2", "MPV TECM thick", MPVbin, MPVmin, MPVmax); + + h["MPVError"] = dir.make("MPVError", "MPV Error", 150, 0, 150); + h["MPVErrorVsMPV"] = dir.make("MPVErrorVsMPV", "MPV Error vs MPV", 300, 0, 600, 150, 0, 150); + h["MPVErrorVsEta"] = dir.make("MPVErrorVsEta", "MPV Error vs Eta", 50, -3.0, 3.0, 150, 0, 150); + h["MPVErrorVsPhi"] = dir.make("MPVErrorVsPhi", "MPV Error vs Phi", 50, -3.4, 3.4, 150, 0, 150); + h["MPVErrorVsN"] = dir.make("MPVErrorVsN", "MPV Error vs N", 500, 0, 1000, 150, 0, 150); + + h["DiffWRTPrevGainTIB"] = dir.make("DiffWRTPrevGainTIB", "Diff w.r.t. PrevGain TIB", 250, 0.5, 1.5); + h["DiffWRTPrevGainTID"] = dir.make("DiffWRTPrevGainTID", "Diff w.r.t. PrevGain TID", 250, 0.5, 1.5); + h["DiffWRTPrevGainTOB"] = dir.make("DiffWRTPrevGainTOB", "Diff w.r.t. PrevGain TOB", 250, 0.5, 1.5); + h["DiffWRTPrevGainTEC"] = dir.make("DiffWRTPrevGainTEC", "Diff w.r.t. PrevGain TEC", 250, 0.5, 1.5); + + h["GainVsPrevGainTIB"] = dir.make("GainVsPrevGainTIB", "Gain vs PrevGain TIB", 100, 0, 2, 100, 0, 2); + h["GainVsPrevGainTID"] = dir.make("GainVsPrevGainTID", "Gain vs PrevGain TID", 100, 0, 2, 100, 0, 2); + h["GainVsPrevGainTOB"] = dir.make("GainVsPrevGainTOB", "Gain vs PrevGain TOB", 100, 0, 2, 100, 0, 2); + h["GainVsPrevGainTEC"] = dir.make("GainVsPrevGainTEC", "Gain vs PrevGain TEC", 100, 0, 2, 100, 0, 2); + + return h; +} + +void SiStripApvGainInspector::fillQualityMonitor() { + for (unsigned int a = 0; a < APVsCollOrdered.size(); a++) { + std::shared_ptr APV = APVsCollOrdered[a]; + if (APV == nullptr) + continue; + + //unsigned int Index = APV->Index; + //unsigned int DetId = APV->DetId; + unsigned int SubDet = APV->SubDet; + float z = APV->z; + float Eta = APV->Eta; + float R = APV->R; + float Phi = APV->Phi; + float Thickness = APV->Thickness; + double FitMPV = APV->FitMPV; + double FitMPVErr = APV->FitMPVErr; + double Gain = APV->Gain; + double NEntries = APV->NEntries; + double PreviousGain = APV->PreviousGain; + + if (SubDet < 3) + continue; // avoid to loop over Pixel det id + + if (FitMPV <= 0.) { // No fit of MPV + if (APV->isMasked) + fill2D(hControl, "NoMPVmasked", z, R); + else + fill2D(hControl, "NoMPVfit", z, R); + } else { // Fit of MPV + if (FitMPV > 0.) + fill1D(hControl, "Gains", Gain); + + fill1D(hControl, "MPVs", FitMPV); + if (Thickness < 0.04) + fill1D(hControl, "MPVs320", FitMPV); + if (Thickness > 0.04) + fill1D(hControl, "MPVs500", FitMPV); + + fill1D(hControl, "MPVError", FitMPVErr); + fill2D(hControl, "MPVErrorVsMPV", FitMPV, FitMPVErr); + fill2D(hControl, "MPVErrorVsEta", Eta, FitMPVErr); + fill2D(hControl, "MPVErrorVsPhi", Phi, FitMPVErr); + fill2D(hControl, "MPVErrorVsN", NEntries, FitMPVErr); + + if (SubDet == 3) { + fill2D(hControl, "MPV_Vs_EtaTIB", Eta, FitMPV); + fill2D(hControl, "MPV_Vs_PhiTIB", Phi, FitMPV); + fill1D(hControl, "MPVsTIB", FitMPV); + + } else if (SubDet == 4) { + fill2D(hControl, "MPV_Vs_EtaTID", Eta, FitMPV); + fill2D(hControl, "MPV_Vs_PhiTID", Phi, FitMPV); + fill1D(hControl, "MPVsTID", FitMPV); + if (Eta < 0.) + fill1D(hControl, "MPVsTIDM", FitMPV); + if (Eta > 0.) + fill1D(hControl, "MPVsTIDP", FitMPV); + + } else if (SubDet == 5) { + fill2D(hControl, "MPV_Vs_EtaTOB", Eta, FitMPV); + fill2D(hControl, "MPV_Vs_PhiTOB", Phi, FitMPV); + fill1D(hControl, "MPVsTOB", FitMPV); + + } else if (SubDet == 6) { + fill2D(hControl, "MPV_Vs_EtaTEC", Eta, FitMPV); + fill2D(hControl, "MPV_Vs_PhiTEC", Phi, FitMPV); + fill1D(hControl, "MPVsTEC", FitMPV); + if (Eta < 0.) + fill1D(hControl, "MPVsTECM", FitMPV); + if (Eta > 0.) + fill1D(hControl, "MPVsTECP", FitMPV); + if (Thickness < 0.04) { + fill2D(hControl, "MPV_Vs_EtaTECthin", Eta, FitMPV); + fill2D(hControl, "MPV_Vs_PhiTECthin", Phi, FitMPV); + fill1D(hControl, "MPVsTECthin", FitMPV); + if (Eta > 0.) + fill1D(hControl, "MPVsTECP1", FitMPV); + if (Eta < 0.) + fill1D(hControl, "MPVsTECM1", FitMPV); + } + if (Thickness > 0.04) { + fill2D(hControl, "MPV_Vs_EtaTECthick", Eta, FitMPV); + fill2D(hControl, "MPV_Vs_PhiTECthick", Phi, FitMPV); + fill1D(hControl, "MPVsTECthick", FitMPV); + if (Eta > 0.) + fill1D(hControl, "MPVsTECP2", FitMPV); + if (Eta < 0.) + fill1D(hControl, "MPVsTECM2", FitMPV); + } + } + } + + if (SubDet == 3 && PreviousGain != 0.) + fill1D(hControl, "DiffWRTPrevGainTIB", Gain / PreviousGain); + else if (SubDet == 4 && PreviousGain != 0.) + fill1D(hControl, "DiffWRTPrevGainTID", Gain / PreviousGain); + else if (SubDet == 5 && PreviousGain != 0.) + fill1D(hControl, "DiffWRTPrevGainTOB", Gain / PreviousGain); + else if (SubDet == 6 && PreviousGain != 0.) + fill1D(hControl, "DiffWRTPrevGainTEC", Gain / PreviousGain); + + if (SubDet == 3) + fill2D(hControl, "GainVsPrevGainTIB", PreviousGain, Gain); + else if (SubDet == 4) + fill2D(hControl, "GainVsPrevGainTID", PreviousGain, Gain); + else if (SubDet == 5) + fill2D(hControl, "GainVsPrevGainTOB", PreviousGain, Gain); + else if (SubDet == 6) + fill2D(hControl, "GainVsPrevGainTEC", PreviousGain, Gain); + + } // loop on the APV collections +} + +// ------------ method fills 'descriptions' with the allowed parameters for the module ------------ +void SiStripApvGainInspector::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.addUntracked("inputFile", {}); + desc.addUntracked("minNrEntries", 20); + desc.add("fitMode", 2) + ->setComment("fit mode. Available options: 1: landau\n 2: landau around max\n 3:landau&gaus convo\n 4: fake"); + desc.addUntracked>("selectedModules", {}); + descriptions.addWithDefaultLabel(desc); +} + +//define this as a plug-in +DEFINE_FWK_MODULE(SiStripApvGainInspector); diff --git a/CondTools/SiStrip/plugins/SiStripGainPayloadCopyAndExclude.cc b/CondTools/SiStrip/plugins/SiStripGainPayloadCopyAndExclude.cc new file mode 100644 index 0000000000000..bac00aa99d3b0 --- /dev/null +++ b/CondTools/SiStrip/plugins/SiStripGainPayloadCopyAndExclude.cc @@ -0,0 +1,195 @@ +// -*- C++ -*- +// +// Package: CondTools/SiStrip +// Class: SiStripGainPayloadCopyAndExclude +// +/* + *\class SiStripGainPayloadCopyAndExclude SiStripGainPayloadCopyAndExclude.cc CondTools/SiStrip/plugins/SiStripGainPayloadCopyAndExclude.cc + + Description: This module is meant to copy the content of a SiStrip APV Gain payload (either G1 or G2) from a local sqlite file (that should be feeded to the Event Setup via the SiStripApvGain3Rcd and put in another local sqlite file, excepted for the modules specified in the excludedModules parameter. If the doReverse parameter is true, the opposite action is performed. + + Implementation: The implemenation takes advantage of the convenience record SiStripApvGain3Rcd in the EventSetup to be able to hold at the same time two instances of the Strip Gains in the same job. + +*/ +// +// Original Author: Marco Musich +// Created: Fri, 08 Jun 2018 08:28:01 GMT +// +// + +// system include files +#include +#include + +// user include files +#include "CLHEP/Random/RandGauss.h" +#include "CalibFormats/SiStripObjects/interface/SiStripGain.h" +#include "CalibTracker/Records/interface/SiStripGainRcd.h" +#include "CommonTools/TrackerMap/interface/TrackerMap.h" +#include "CondCore/DBOutputService/interface/PoolDBOutputService.h" +#include "CondFormats/DataRecord/interface/SiStripApvGainRcd.h" +#include "CondFormats/SiStripObjects/interface/SiStripApvGain.h" +#include "CondFormats/SiStripObjects/interface/SiStripSummary.h" +#include "DataFormats/SiStripDetId/interface/SiStripDetId.h" +#include "DataFormats/SiStripDetId/interface/StripSubdetector.h" +#include "DataFormats/TrackerCommon/interface/TrackerTopology.h" +#include "FWCore/Framework/interface/ESHandle.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/EventSetup.h" +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/Framework/interface/one/EDAnalyzer.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ServiceRegistry/interface/Service.h" +#include "Geometry/Records/interface/TrackerTopologyRcd.h" + +// +// class declaration +// +class SiStripGainPayloadCopyAndExclude : public edm::one::EDAnalyzer { +public: + explicit SiStripGainPayloadCopyAndExclude(const edm::ParameterSet&); + ~SiStripGainPayloadCopyAndExclude() override = default; + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + +private: + void analyze(const edm::Event&, const edm::EventSetup&) override; + std::unique_ptr getNewObject(const std::map, float>& theMap); + + // ----------member data --------------------------- + const edm::ESGetToken m_gainToken; + const edm::ESGetToken m_gain3Token; + std::vector m_excludedMods; + const std::string m_Record; + const uint32_t m_gainType; + const bool m_reverseSelect; +}; + +// +// constructors and destructor +// +SiStripGainPayloadCopyAndExclude::SiStripGainPayloadCopyAndExclude(const edm::ParameterSet& iConfig) + : m_gainToken{esConsumes()}, + m_gain3Token{esConsumes()}, + m_excludedMods{iConfig.getUntrackedParameter>("excludedModules")}, + m_Record{iConfig.getUntrackedParameter("record", "SiStripApvGainRcd")}, + m_gainType{iConfig.getUntrackedParameter("gainType", 1)}, + m_reverseSelect{iConfig.getUntrackedParameter("reverseSelection", false)} { + usesResource(cond::service::PoolDBOutputService::kSharedResource); + + //now do what ever initialization is needed + sort(m_excludedMods.begin(), m_excludedMods.end()); + + edm::LogInfo("ExcludedModules") << "Selected module list"; + for (std::vector::const_iterator mod = m_excludedMods.begin(); mod != m_excludedMods.end(); mod++) { + edm::LogVerbatim("ExcludedModules") << *mod; + } +} + +// +// member functions +// + +// ------------ method called for each event ------------ +void SiStripGainPayloadCopyAndExclude::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { + using namespace edm; + + // gain to be validated + edm::ESHandle gNew = iSetup.getHandle(m_gain3Token); + edm::ESHandle gOld = iSetup.getHandle(m_gainToken); + + std::map, float> theMap, oldPayloadMap; + + std::vector detid; + gNew->getDetIds(detid); + for (const auto& d : detid) { + SiStripApvGain::Range range_new = gNew->getRange(d); + SiStripApvGain::Range range_old = gOld->getRange(d, m_gainType); + float nAPV = 0; + + for (int it = 0; it < range_new.second - range_new.first; it++) { + nAPV += 1; + float Gain = gNew->getApvGain(it, range_new); + float patchGain = gOld->getApvGain(it, range_old); + std::pair index = std::make_pair(d, nAPV); + + oldPayloadMap[index] = Gain; + + bool found(false); + for (const auto& mod : m_excludedMods) { + if (d == mod) { + edm::LogInfo("ModuleFound") << " module " << mod << " found! Excluded... " << std::endl; + found = true; + break; + } + } + + if (m_reverseSelect) + found = (!found); + + if (!found) { + theMap[index] = Gain; + } else { + theMap[index] = patchGain; + } + + } // loop over APVs + } // loop over DetIds + + std::unique_ptr theAPVGains = this->getNewObject(theMap); + + // write out the APVGains record + edm::Service poolDbService; + + if (poolDbService.isAvailable()) + poolDbService->writeOneIOV(theAPVGains.get(), poolDbService->currentTime(), m_Record); + else + throw std::runtime_error("PoolDBService required."); +} + +//********************************************************************************// +std::unique_ptr SiStripGainPayloadCopyAndExclude::getNewObject( + const std::map, float>& theMap) { + std::unique_ptr obj = std::make_unique(); + + std::vector theSiStripVector; + uint32_t PreviousDetId = 0; + for (const auto& element : theMap) { + uint32_t DetId = element.first.first; + if (DetId != PreviousDetId) { + if (!theSiStripVector.empty()) { + SiStripApvGain::Range range(theSiStripVector.begin(), theSiStripVector.end()); + if (!obj->put(PreviousDetId, range)) + printf("Bug to put detId = %i\n", PreviousDetId); + } + theSiStripVector.clear(); + PreviousDetId = DetId; + } + theSiStripVector.push_back(element.second); + + edm::LogInfo("SiStripGainPayloadCopyAndExclude") + << " DetId: " << DetId << " APV: " << element.first.second << " Gain: " << element.second << std::endl; + } + + if (!theSiStripVector.empty()) { + SiStripApvGain::Range range(theSiStripVector.begin(), theSiStripVector.end()); + if (!obj->put(PreviousDetId, range)) + printf("Bug to put detId = %i\n", PreviousDetId); + } + + return obj; +} + +// ------------ method fills 'descriptions' with the allowed parameters for the module ------------ +void SiStripGainPayloadCopyAndExclude::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.addUntracked>("excludedModules", {}); + desc.addUntracked("record", "SiStripApvGainRcd"); + desc.addUntracked("gainType", 1); + desc.addUntracked("reverseSelection", false); + descriptions.addWithDefaultLabel(desc); +} + +//define this as a plug-in +DEFINE_FWK_MODULE(SiStripGainPayloadCopyAndExclude); diff --git a/CondTools/SiStrip/test/BuildFile.xml b/CondTools/SiStrip/test/BuildFile.xml index fd0ab2a0a150e..571b47f8e6c9e 100644 --- a/CondTools/SiStrip/test/BuildFile.xml +++ b/CondTools/SiStrip/test/BuildFile.xml @@ -4,3 +4,4 @@ + diff --git a/CondTools/SiStrip/test/SiStripApvGainInspector_cfg.py b/CondTools/SiStrip/test/SiStripApvGainInspector_cfg.py new file mode 100644 index 0000000000000..75d4490a4ed26 --- /dev/null +++ b/CondTools/SiStrip/test/SiStripApvGainInspector_cfg.py @@ -0,0 +1,52 @@ +import FWCore.ParameterSet.Config as cms + +process = cms.Process("Demo") +process.load("FWCore.MessageService.MessageLogger_cfi") + +process.source = cms.Source("EmptyIOVSource", + firstValue = cms.uint64(317340), + lastValue = cms.uint64(317340), + timetype = cms.string('runnumber'), + interval = cms.uint64(1) + ) + + +process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(1) ) + +process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff") +from Configuration.AlCa.GlobalTag import GlobalTag +process.GlobalTag = GlobalTag(process.GlobalTag, '101X_dataRun2_Express_v7', '') + +process.load("Configuration.Geometry.GeometryRecoDB_cff") + +#################################################################### +# Output file +#################################################################### +process.TFileService = cms.Service("TFileService", + fileName=cms.string("APVGainsTree.root") + ) + + +## +## Output database (in this case local sqlite file) +## +process.load("CondCore.CondDB.CondDB_cfi") +process.CondDB.connect = "sqlite_file:updatedGains.db" +process.PoolDBOutputService = cms.Service("PoolDBOutputService", + process.CondDB, + timetype = cms.untracked.string('runnumber'), + toPut = cms.VPSet(cms.PSet(record = cms.string('SiStripApvGainRcd'), + tag = cms.string('modifiedGains')) + )) + +process.demo = cms.EDAnalyzer('SiStripApvGainInspector', + fitMode = cms.int32(2), # landau around max + #inputFile = cms.untracked.string("DQM_V0001_R000999999__StreamExpress__Run2018B-PromptCalibProdSiStripGainsAAG-Express-v1-317279-317340__ALCAPROMPT.root"), + inputFile = cms.untracked.string("root://eoscms.cern.ch//eos/cms/store/group/alca_global/multiruns/results/prod//slc6_amd64_gcc630/CMSSW_10_1_5/86791_1p_0f/DQM_V0001_R000999999__StreamExpress__Run2018B-PromptCalibProdSiStripGainsAAG-Express-v1-317382-317488__ALCAPROMPT.root"), + ### FED 387 + selectedModules = cms.untracked.vuint32(436281608,436281604,436281592,436281624,436281620,436281644,436281640,436281648,436281668,436281680,436281684,436281688,436281720,436281700,436281708,436281556,436281552,436281704,436281764,436281768,436281572,436281576,436281748,436281744,436281740,436281780,436281784,436281612,436281616,436281588,436281580,436281584,436281636,436281656,436281652,436281676,436281672,436281732,436281736,436281716,436281712,436281776,436281772,436281548,436281544,436281540,436281752,436281560) + #### FED 434 + ###selectedModules = cms.untracked.vuint32(436266168,436266028,436266020,436266024,436266160,436266164,436266000,436266004,436266008,436265976,436265972,436266064,436266060,436266068,436265964,436265960,436265968,436265988,436266088,436266084,436266040,436266128,436266116,436266132,436266136,436266156,436266152,436266100,436266032,436266036,436266096,436266052,436266056,436265956,436266092,436265992,436265996,436266104,436266072,436266124,436266120,436266148) + ) + +process.p = cms.Path(process.demo) diff --git a/CondTools/SiStrip/test/SiStripGainPayloadCopyAndExclude_cfg.py b/CondTools/SiStrip/test/SiStripGainPayloadCopyAndExclude_cfg.py new file mode 100644 index 0000000000000..63a7b129e5183 --- /dev/null +++ b/CondTools/SiStrip/test/SiStripGainPayloadCopyAndExclude_cfg.py @@ -0,0 +1,98 @@ +''' +This file is an example configuration of the SiStripPayloadCopyAndExclude module. +This module is meant to copy the content of a SiStrip APV Gain payload (either G1 or G2) +from a local sqlite file (that should be feeded to the Event Setup via the SiStripApvGain3Rcd +and put in another local sqlite file, excepted for the modules specified in the excludedModules +parameter. If the doReverse parameter is true, the opposite action is performed. +''' + +import FWCore.ParameterSet.Config as cms +import FWCore.ParameterSet.VarParsing as VarParsing + +process = cms.Process("SiStripPayloadCopyAndExclude") + +options = VarParsing.VarParsing("analysis") + +options.register ('globalTag', + "101X_dataRun2_Express_v7", + VarParsing.VarParsing.multiplicity.singleton, # singleton or list + VarParsing.VarParsing.varType.string, # string, int, or float + "GlobalTag") + +options.register ('runNumber', + 317478, + VarParsing.VarParsing.multiplicity.singleton, # singleton or list + VarParsing.VarParsing.varType.int, # string, int, or float + "run number") + +options.register ('doReverse', + False, + VarParsing.VarParsing.multiplicity.singleton, # singleton or list + VarParsing.VarParsing.varType.bool, # string, int, or float + "reverse the selection") + +options.parseArguments() + + +if(options.doReverse): + print("====================================================================================================================================") + print("%MSG-i DoReverse: : Going to revert the selection. All modules will be taken from GT, unless they are specified in the modules list!") + print("====================================================================================================================================") + +## +## Messages +## +process.load("FWCore.MessageService.MessageLogger_cfi") + +## +## Event Source +## +process.source = cms.Source("EmptyIOVSource", + firstValue = cms.uint64(options.runNumber), + lastValue = cms.uint64(options.runNumber), + timetype = cms.string('runnumber'), + interval = cms.uint64(1) + ) + +process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(1) ) + +## +## Conditions inputs +## +process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff") +from Configuration.AlCa.GlobalTag import GlobalTag +process.GlobalTag = GlobalTag(process.GlobalTag,options.globalTag, '') +process.GlobalTag.toGet = cms.VPSet( + cms.PSet(record = cms.string("SiStripApvGain3Rcd"), + tag = cms.string("SiStripApvGainAAG_pcl"), + #connect = cms.string("sqlite_file:/eos/cms/store/group/alca_global/multiruns/results/prod//slc6_amd64_gcc630/CMSSW_10_1_5/86791_1p_0f/promptCalibConditions86791.db") + connect = cms.string("sqlite_file:promptCalibConditions86791.db") # locally copied file for unit test + ) + ) + +## +## Worker module +## +process.SiStripGainPayloadCopyAndExclude = cms.EDAnalyzer('SiStripGainPayloadCopyAndExclude', + ### FED 387 + excludedModules = cms.untracked.vuint32(436281608,436281604,436281592,436281624,436281620,436281644,436281640,436281648,436281668,436281680,436281684,436281688,436281720,436281700,436281708,436281556,436281552,436281704,436281764,436281768,436281572,436281576,436281748,436281744,436281740,436281780,436281784,436281612,436281616,436281588,436281580,436281584,436281636,436281656,436281652,436281676,436281672,436281732,436281736,436281716,436281712,436281776,436281772,436281548,436281544,436281540,436281752,436281560), + reverseSelection = cms.untracked.bool(options.doReverse), # if True it will take everything from GT, but the execludedModules from the Gain3 tag + record = cms.untracked.string("SiStripApvGainRcd"), + gainType = cms.untracked.uint32(1) # 0 for G1, 1 for G2 +) + +## +## Output database (in this case local sqlite file) +## +process.load("CondCore.CondDB.CondDB_cfi") +process.CondDB.connect = "sqlite_file:modifiedGains_"+process.GlobalTag.globaltag._value+'_IOV_'+str(options.runNumber)+("_reverse.db" if options.doReverse else ".db") +process.PoolDBOutputService = cms.Service("PoolDBOutputService", + process.CondDB, + timetype = cms.untracked.string('runnumber'), + toPut = cms.VPSet(cms.PSet(record = cms.string('SiStripApvGainRcd'), + tag = cms.string('modifiedGains') + ) + ) +) + +process.p = cms.Path(process.SiStripGainPayloadCopyAndExclude) diff --git a/CondTools/SiStrip/test/testSiStripGainManipulation.sh b/CondTools/SiStrip/test/testSiStripGainManipulation.sh new file mode 100755 index 0000000000000..270f7a9aff942 --- /dev/null +++ b/CondTools/SiStrip/test/testSiStripGainManipulation.sh @@ -0,0 +1,25 @@ +#!/bin/sh + +function die { echo $1: status $2 ; exit $2; } + +if [ "${SCRAM_TEST_NAME}" != "" ] ; then + mkdir ${SCRAM_TEST_NAME} + cd ${SCRAM_TEST_NAME} +fi + +echo -e "===== testing SiStripApV Gain manipulations =====\n\n" + +entries=("SiStripGainPayloadCopyAndExclude_cfg.py" "SiStripApvGainInspector_cfg.py") + +echo -e "===== copying IOV 317478 from tag SiStripApvGainAfterAbortGap_PCL_multirun_v0_prompt on dev DB =====" + +conddb --yes --db dev copy SiStripApvGainAfterAbortGap_PCL_multirun_v0_prompt SiStripApvGainAAG_pcl --from 317478 --to 317478 --destdb promptCalibConditions86791.db + +for entry in "${entries[@]}"; +do + echo -e "===== executing cmsRun "${SCRAM_TEST_PATH}/$entry" ======\n" + (cmsRun "${SCRAM_TEST_PATH}/"$entry) || die "Failure using cmsRun $entry" $? + echo -e "===== executed $entry test ======\n" +done + +echo -e "\n\n ===== Done with the Gain manipulations tests! =====\n\n" From 93296899133e9a1a8179e7785f14d60756775bd4 Mon Sep 17 00:00:00 2001 From: Aleksandra Krzeminska Date: Mon, 13 Nov 2023 16:17:59 +0100 Subject: [PATCH 215/281] major refactor, updating typedefs, redefining PI plugin for PPSTiming with input params --- ...STimingCalibrationPayloadInspectorHelper.h | 189 +- .../PPSTimingCalibration_PayloadInspector.cc | 3543 +---------------- .../test/testPPSTimingCalibration.cpp | 17 +- .../test/testPPSTimingCalibration.sh | 84 +- 4 files changed, 125 insertions(+), 3708 deletions(-) diff --git a/CondCore/CTPPSPlugins/interface/PPSTimingCalibrationPayloadInspectorHelper.h b/CondCore/CTPPSPlugins/interface/PPSTimingCalibrationPayloadInspectorHelper.h index a839603e89bf8..a1196ab356b2b 100644 --- a/CondCore/CTPPSPlugins/interface/PPSTimingCalibrationPayloadInspectorHelper.h +++ b/CondCore/CTPPSPlugins/interface/PPSTimingCalibrationPayloadInspectorHelper.h @@ -19,167 +19,69 @@ #include "TLatex.h" #include "TGraph.h" -class PPSTimingCalibrationPI { -public: +namespace PPSTimingCalibrationPI { enum parameter { parameter0 = 0, parameter1 = 1, parameter2 = 2, parameter3 = 3 }; - enum conditions_db { db0 = 0, db1 = 1 }; - - enum conditions_plane { plane0 = 0, plane1 = 1, plane2 = 2, plane3 = 3 }; - - enum conditions_channel { - channel0 = 0, - channel1 = 1, - channel2 = 2, - channel3 = 3, - channel4 = 4, - channel5 = 5, - channel6 = 6, - channel7 = 7, - channel8 = 8, - channel9 = 9, - channel10 = 10, - channel11 = 11 - - }; - - static std::string getStringFromParamEnum(const parameter& parameter) { - switch (parameter) { - case 0: - return "parameter 0"; - case 1: - return "parameter 1"; - case 2: - return "parameter 2"; - case 3: - return "parameter 3"; - - default: - return "not here"; - } - } + inline std::string getStringFromParamEnum(const parameter& parameter) { + const std::map parameters = {{parameter0, "parameter 0"}, + {parameter1, "parameter 1"}, + {parameter2, "parameter 2"}, + {parameter3, "parameter 3"}}; - static std::string getStringFromDbEnum(const conditions_db& db) { - switch (db) { - case 0: - return "db = 0"; - case 1: - return "db = 1"; - - default: - return "not here"; - } - } - - static std::string getStringFromPlaneEnum(const conditions_plane& plane) { - switch (plane) { - case 0: - return "plane = 0"; - case 1: - return "plane = 1"; - case 2: - return "plane = 2"; - case 3: - return "plane = 3"; - - default: - return "not here"; + auto it = parameters.find(parameter); + if (it != parameters.end()) { + return it->second; + } else { + return "no param"; } } - static std::string getStringFromChannelEnum(const conditions_channel& channel) { - switch (channel) { - case 0: - return "channel = 0"; - case 1: - return "channel = 1"; - case 2: - return "channel = 2"; - case 3: - return "channel = 3"; - case 4: - return "channel = 4"; - case 5: - return "channel = 5"; - case 6: - return "channel = 6"; - case 7: - return "channel = 7"; - case 8: - return "channel = 8"; - case 9: - return "channel = 9"; - case 10: - return "channel = 10"; - case 11: - return "channel = 11"; - - default: - return "not here"; - } - } -}; + const std::string ARM = "db (0,1)"; + const std::string STATION = "station (1,2)"; + const std::string PLANE = "plane (0-3)"; + const std::string CHANNEL = "channel (0-11)"; +} // namespace PPSTimingCalibrationPI /************************************************ History plots *************************************************/ -template +template class ParametersPerRun : public cond::payloadInspector::HistoryPlot { public: ParametersPerRun() : cond::payloadInspector::HistoryPlot( - PPSTimingCalibrationPI::getStringFromParamEnum(param) + " " + - PPSTimingCalibrationPI::getStringFromDbEnum(db) + " " + - PPSTimingCalibrationPI::getStringFromPlaneEnum(plane) + " " + - PPSTimingCalibrationPI::getStringFromChannelEnum(channel) + " vs. Runs", - PPSTimingCalibrationPI::getStringFromParamEnum(param)) {} + "Parameter " + PPSTimingCalibrationPI::getStringFromParamEnum(param) + " vs. Runs", + PPSTimingCalibrationPI::getStringFromParamEnum(param)) { + cond::payloadInspector::PlotBase::addInputParam(PPSTimingCalibrationPI::ARM); + cond::payloadInspector::PlotBase::addInputParam(PPSTimingCalibrationPI::STATION); + cond::payloadInspector::PlotBase::addInputParam(PPSTimingCalibrationPI::PLANE); + cond::payloadInspector::PlotBase::addInputParam(PPSTimingCalibrationPI::CHANNEL); + } - float getFromPayload(PayloadType& payload) override { return payload.parameters(db, 1, plane, channel)[param]; } -}; + float getFromPayload(PayloadType& payload) override { + auto paramValues = cond::payloadInspector::PlotBase::inputParamValues(); + auto db = paramValues.find(PPSTimingCalibrationPI::ARM)->second; + auto station = paramValues.find(PPSTimingCalibrationPI::STATION)->second; + auto plane = paramValues.find(PPSTimingCalibrationPI::PLANE)->second; + auto channel = paramValues.find(PPSTimingCalibrationPI::CHANNEL)->second; -/************************************************ - X-Y correlation plots -*************************************************/ -template -class PpPCorrelation : public cond::payloadInspector::ScatterPlot { -public: - PpPCorrelation() - : cond::payloadInspector::ScatterPlot( - "TimingCalibration " + PPSTimingCalibrationPI::getStringFromParamEnum(param1) + " vs. " + - PPSTimingCalibrationPI::getStringFromParamEnum(param2) + " on " + - PPSTimingCalibrationPI::getStringFromDbEnum(db) + " " + - PPSTimingCalibrationPI::getStringFromPlaneEnum(plane) + " " + - PPSTimingCalibrationPI::getStringFromChannelEnum(channel), - PPSTimingCalibrationPI::getStringFromParamEnum(param1), - PPSTimingCalibrationPI::getStringFromParamEnum(param2)) {} - - std::tuple getFromPayload(PayloadType& payload) override { - return std::make_tuple(payload.parameters(db, 1, plane, channel)[param1], - payload.parameters(db, 1, plane, channel)[param2]); + return payload.parameters(std::stoi(db), std::stoi(station), std::stoi(plane), std::stoi(channel))[param]; } }; /************************************************ - Other plots + Image plots *************************************************/ -template +template class ParametersPerChannel : public cond::payloadInspector::PlotImage { public: ParametersPerChannel() : cond::payloadInspector::PlotImage( - "PPSTimingCalibration parameters per channel") {} + "PPSTimingCalibration parameters per channel") { + cond::payloadInspector::PlotBase::addInputParam(PPSTimingCalibrationPI::ARM); + cond::payloadInspector::PlotBase::addInputParam(PPSTimingCalibrationPI::STATION); + cond::payloadInspector::PlotBase::addInputParam(PPSTimingCalibrationPI::PLANE); + } bool fill() override { auto tag = cond::payloadInspector::PlotBase::getTag<0>(); @@ -187,6 +89,11 @@ class ParametersPerChannel : public cond::payloadInspector::PlotImagefetchPayload(std::get<1>(iov)); + auto paramValues = cond::payloadInspector::PlotBase::inputParamValues(); + auto db = paramValues.find(PPSTimingCalibrationPI::ARM)->second; + auto station = paramValues.find(PPSTimingCalibrationPI::STATION)->second; + auto plane = paramValues.find(PPSTimingCalibrationPI::PLANE)->second; + if (m_payload != nullptr) { TCanvas canvas( "PPSTimingCalibration parameters per channel", "PPSTimingCalibration parameters per channel", 1400, 1000); @@ -196,14 +103,14 @@ class ParametersPerChannel : public cond::payloadInspector::PlotImageparameters(db, 1, plane, i)[param]; + y[i] = m_payload->parameters(std::stoi(db), std::stoi(station), std::stoi(plane), i)[param]; x[i] = i; } TGraph* graph = new TGraph(n, x, y); - graph->SetTitle(("PPSTimingCalibration " + PPSTimingCalibrationPI::getStringFromDbEnum(db) + " " + - PPSTimingCalibrationPI::getStringFromPlaneEnum(plane) + " " + - PPSTimingCalibrationPI::getStringFromParamEnum(param) + " per channel; channel; parameter") + graph->SetTitle(("PPSTimingCalibration db = " + db + ", " + "station = " + station + ", " + "plane = " + plane + + ", " + PPSTimingCalibrationPI::getStringFromParamEnum(param) + " PER channel; channel; " + + PPSTimingCalibrationPI::getStringFromParamEnum(param)) .c_str()); graph->SetMarkerColor(2); graph->SetMarkerSize(1.5); @@ -223,4 +130,4 @@ class ParametersPerChannel : public cond::payloadInspector::PlotImage - PPSTimingCalibration_history_htdc_calibration_db0pl0ch0_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch0_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch0_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch0_param3; - - //db=0, plane=0, channel=1 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch1_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch1_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch1_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch1_param3; - - //db=0, plane=0, channel=2 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch2_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch2_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch2_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch2_param3; - - //db=0, plane=0, channel=3 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch3_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch3_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch3_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch3_param3; - - //db=0, plane=0, channel=4 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch4_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch4_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch4_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch4_param3; - - //db=0, plane=0, channel=5 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch5_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch5_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch5_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch5_param3; - - //db=0, plane=0, channel=6 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch6_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch6_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch6_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch6_param3; - - //db=0, plane=0, channel=7 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch7_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch7_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch7_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch7_param3; - - //db=0, plane=0, channel=8 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch8_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch8_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch8_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch8_param3; - - //db=0, plane=0, channel=9 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch9_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch9_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch9_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch9_param3; - - //db=0, plane=0, channel=10 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch10_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch10_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch10_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch10_param3; - - //db=0, plane=0, channel=11 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch11_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch11_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch11_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl0ch11_param3; - - //db=0, plane=1, channel=0 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch0_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch0_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch0_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch0_param3; - - //db=0, plane=1, channel=1 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch1_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch1_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch1_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch1_param3; - - //db=0, plane=1, channel=2 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch2_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch2_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch2_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch2_param3; - - //db=0, plane=1, channel=3 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch3_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch3_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch3_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch3_param3; - - //db=0, plane=1, channel=4 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch4_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch4_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch4_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch4_param3; - - //db=0, plane=1, channel=5 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch5_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch5_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch5_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch5_param3; - - //db=0, plane=1, channel=6 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch6_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch6_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch6_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch6_param3; - - //db=0, plane=1, channel=7 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch7_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch7_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch7_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch7_param3; - - //db=0, plane=1, channel=8 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch8_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch8_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch8_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch8_param3; - - //db=0, plane=1, channel=9 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch9_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch9_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch9_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch9_param3; - - //db=0, plane=1, channel=10 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch10_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch10_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch10_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch10_param3; - - //db=0, plane=1, channel=11 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch11_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch11_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch11_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl1ch11_param3; - - //db=0, plane=2, channel=0 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch0_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch0_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch0_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch0_param3; - - //db=0, plane=2, channel=1 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch1_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch1_param1; + using PPSTimingCalibration_history_htdc_calibration_param0 = + ParametersPerRun; + using PPSTimingCalibration_history_htdc_calibration_param1 = + ParametersPerRun; + using PPSTimingCalibration_history_htdc_calibration_param2 = + ParametersPerRun; + using PPSTimingCalibration_history_htdc_calibration_param3 = + ParametersPerRun; - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch1_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch1_param3; - - //db=0, plane=2, channel=2 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch2_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch2_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch2_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch2_param3; - - //db=0, plane=2, channel=3 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch3_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch3_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch3_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch3_param3; - - //db=0, plane=2, channel=4 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch4_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch4_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch4_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch4_param3; - - //db=0, plane=2, channel=5 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch5_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch5_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch5_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch5_param3; - - //db=0, plane=2, channel=6 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch6_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch6_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch6_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch6_param3; - - //db=0, plane=2, channel=7 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch7_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch7_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch7_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch7_param3; - - //db=0, plane=2, channel=8 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch8_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch8_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch8_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch8_param3; - - //db=0, plane=2, channel=9 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch9_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch9_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch9_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch9_param3; - - //db=0, plane=2, channel=10 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch10_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch10_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch10_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch10_param3; - - //db=0, plane=2, channel=11 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch11_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch11_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch11_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl2ch11_param3; - - //db=0, plane=3, channel=0 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch0_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch0_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch0_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch0_param3; - - //db=0, plane=3, channel=1 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch1_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch1_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch1_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch1_param3; - - //db=0, plane=3, channel=2 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch2_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch2_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch2_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch2_param3; - - //db=0, plane=3, channel=3 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch3_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch3_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch3_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch3_param3; - - //db=0, plane=3, channel=4 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch4_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch4_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch4_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch4_param3; - - //db=0, plane=3, channel=5 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch5_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch5_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch5_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch5_param3; - - //db=0, plane=3, channel=6 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch6_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch6_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch6_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch6_param3; - - //db=0, plane=3, channel=7 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch7_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch7_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch7_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch7_param3; - - //db=0, plane=3, channel=8 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch8_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch8_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch8_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch8_param3; - - //db=0, plane=3, channel=9 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch9_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch9_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch9_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch9_param3; - - //db=0, plane=3, channel=10 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch10_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch10_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch10_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch10_param3; - - //db=0, plane=3, channel=11 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch11_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch11_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch11_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db0pl3ch11_param3; - - //db=1, plane=0, channel=0 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch0_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch0_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch0_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch0_param3; - - //db=1, plane=0, channel=1 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch1_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch1_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch1_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch1_param3; - - //db=1, plane=0, channel=2 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch2_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch2_param1; + /************************************************ + Image plots + *************************************************/ - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch2_param2; + using PPSTimingCalibration_htdc_calibration_param0_per_channels = + ParametersPerChannel; + using PPSTimingCalibration_htdc_calibration_param1_per_channels = + ParametersPerChannel; + using PPSTimingCalibration_htdc_calibration_param2_per_channels = + ParametersPerChannel; + using PPSTimingCalibration_htdc_calibration_param3_per_channels = + ParametersPerChannel; - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch2_param3; - - //db=1, plane=0, channel=3 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch3_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch3_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch3_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch3_param3; - - //db=1, plane=0, channel=4 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch4_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch4_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch4_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch4_param3; - - //db=1, plane=0, channel=5 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch5_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch5_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch5_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch5_param3; - - //db=1, plane=0, channel=6 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch6_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch6_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch6_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch6_param3; - - //db=1, plane=0, channel=7 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch7_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch7_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch7_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch7_param3; - - //db=1, plane=0, channel=8 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch8_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch8_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch8_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch8_param3; - - //db=1, plane=0, channel=9 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch9_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch9_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch9_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch9_param3; - - //db=1, plane=0, channel=10 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch10_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch10_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch10_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch10_param3; - - //db=1, plane=0, channel=11 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch11_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch11_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch11_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl0ch11_param3; - - //db=1, plane=1, channel=0 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch0_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch0_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch0_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch0_param3; - - //db=1, plane=1, channel=1 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch1_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch1_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch1_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch1_param3; - - //db=1, plane=1, channel=2 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch2_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch2_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch2_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch2_param3; - - //db=1, plane=1, channel=3 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch3_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch3_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch3_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch3_param3; - - //db=1, plane=1, channel=4 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch4_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch4_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch4_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch4_param3; - - //db=1, plane=1, channel=5 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch5_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch5_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch5_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch5_param3; - - //db=1, plane=1, channel=6 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch6_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch6_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch6_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch6_param3; - - //db=1, plane=1, channel=7 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch7_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch7_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch7_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch7_param3; - - //db=1, plane=1, channel=8 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch8_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch8_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch8_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch8_param3; - - //db=1, plane=1, channel=9 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch9_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch9_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch9_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch9_param3; - - //db=1, plane=1, channel=10 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch10_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch10_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch10_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch10_param3; - - //db=1, plane=1, channel=11 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch11_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch11_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch11_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl1ch11_param3; - - //db=1, plane=2, channel=0 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch0_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch0_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch0_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch0_param3; - - //db=1, plane=2, channel=1 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch1_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch1_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch1_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch1_param3; - - //db=1, plane=2, channel=2 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch2_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch2_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch2_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch2_param3; - - //db=1, plane=2, channel=3 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch3_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch3_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch3_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch3_param3; - - //db=1, plane=2, channel=4 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch4_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch4_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch4_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch4_param3; - - //db=1, plane=2, channel=5 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch5_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch5_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch5_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch5_param3; - - //db=1, plane=2, channel=6 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch6_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch6_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch6_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch6_param3; - - //db=1, plane=2, channel=7 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch7_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch7_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch7_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch7_param3; - - //db=1, plane=2, channel=8 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch8_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch8_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch8_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch8_param3; - - //db=1, plane=2, channel=9 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch9_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch9_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch9_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch9_param3; - - //db=1, plane=2, channel=10 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch10_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch10_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch10_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch10_param3; - - //db=1, plane=2, channel=11 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch11_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch11_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch11_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl2ch11_param3; - - //db=1, plane=3, channel=0 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch0_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch0_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch0_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch0_param3; - - //db=1, plane=3, channel=1 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch1_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch1_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch1_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch1_param3; - - //db=1, plane=3, channel=2 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch2_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch2_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch2_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch2_param3; - - //db=1, plane=3, channel=3 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch3_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch3_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch3_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch3_param3; - - //db=1, plane=3, channel=4 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch4_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch4_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch4_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch4_param3; - - //db=1, plane=3, channel=5 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch5_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch5_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch5_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch5_param3; - - //db=1, plane=3, channel=6 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch6_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch6_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch6_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch6_param3; - - //db=1, plane=3, channel=7 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch7_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch7_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch7_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch7_param3; - - //db=1, plane=3, channel=8 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch8_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch8_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch8_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch8_param3; - - //db=1, plane=3, channel=9 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch9_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch9_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch9_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch9_param3; - - //db=1, plane=3, channel=10 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch10_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch10_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch10_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch10_param3; - - //db=1, plane=3, channel=11 - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch11_param0; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch11_param1; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch11_param2; - - typedef ParametersPerRun - PPSTimingCalibration_history_htdc_calibration_db1pl3ch11_param3; - - /************************************************ - X-Y correlation plots - *************************************************/ - - /************************************************ - Image plots - *************************************************/ - - //db=0, plane=0 - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl0param0_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl0param1_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl0param2_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl0param3_per_channels; - - //db=0, plane=1 - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl1param0_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl1param1_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl1param2_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl1param3_per_channels; - - //db=0, plane=2 - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl2param0_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl2param1_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl2param2_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl2param3_per_channels; - - //db=0, plane=3 - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl3param0_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl3param1_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl3param2_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db0pl3param3_per_channels; - - //db=1, plane=0 - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl0param0_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl0param1_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl0param2_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl0param3_per_channels; - - //db=1, plane=1 - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl1param0_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl1param1_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl1param2_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl1param3_per_channels; - - //db=1, plane=2 - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl2param0_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl2param1_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl2param2_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl2param3_per_channels; - - //db=1, plane=3 - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl3param0_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl3param1_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl3param2_per_channels; - - typedef ParametersPerChannel - PPSTimingCalibration_htdc_calibration_db1pl3param3_per_channels; - -} // namespace +} // namespace PAYLOAD_INSPECTOR_MODULE(PPSTimingCalibration) { - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch0_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch0_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch0_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch0_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch1_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch1_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch1_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch1_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch2_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch2_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch2_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch2_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch3_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch3_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch3_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch3_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch4_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch4_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch4_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch4_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch5_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch5_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch5_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch5_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch6_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch6_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch6_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch6_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch7_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch7_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch7_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch7_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch8_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch8_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch8_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch8_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch9_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch9_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch9_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch9_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch10_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch10_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch10_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch10_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch11_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch11_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch11_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl0ch11_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch0_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch0_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch0_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch0_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch1_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch1_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch1_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch1_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch2_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch2_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch2_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch2_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch3_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch3_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch3_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch3_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch4_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch4_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch4_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch4_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch5_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch5_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch5_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch5_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch6_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch6_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch6_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch6_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch7_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch7_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch7_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch7_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch8_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch8_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch8_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch8_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch9_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch9_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch9_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch9_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch10_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch10_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch10_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch10_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch11_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch11_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch11_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl1ch11_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch0_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch0_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch0_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch0_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch1_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch1_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch1_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch1_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch2_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch2_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch2_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch2_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch3_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch3_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch3_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch3_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch4_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch4_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch4_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch4_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch5_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch5_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch5_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch5_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch6_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch6_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch6_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch6_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch7_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch7_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch7_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch7_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch8_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch8_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch8_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch8_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch9_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch9_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch9_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch9_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch10_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch10_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch10_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch10_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch11_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch11_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch11_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl2ch11_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch0_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch0_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch0_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch0_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch1_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch1_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch1_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch1_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch2_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch2_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch2_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch2_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch3_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch3_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch3_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch3_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch4_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch4_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch4_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch4_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch5_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch5_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch5_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch5_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch6_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch6_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch6_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch6_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch7_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch7_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch7_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch7_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch8_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch8_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch8_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch8_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch9_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch9_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch9_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch9_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch10_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch10_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch10_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch10_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch11_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch11_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch11_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db0pl3ch11_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch0_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch0_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch0_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch0_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch1_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch1_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch1_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch1_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch2_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch2_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch2_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch2_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch3_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch3_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch3_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch3_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch4_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch4_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch4_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch4_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch5_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch5_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch5_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch5_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch6_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch6_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch6_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch6_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch7_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch7_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch7_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch7_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch8_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch8_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch8_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch8_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch9_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch9_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch9_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch9_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch10_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch10_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch10_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch10_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch11_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch11_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch11_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl0ch11_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch0_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch0_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch0_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch0_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch1_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch1_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch1_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch1_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch2_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch2_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch2_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch2_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch3_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch3_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch3_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch3_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch4_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch4_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch4_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch4_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch5_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch5_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch5_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch5_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch6_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch6_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch6_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch6_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch7_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch7_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch7_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch7_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch8_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch8_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch8_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch8_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch9_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch9_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch9_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch9_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch10_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch10_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch10_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch10_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch11_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch11_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch11_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl1ch11_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch0_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch0_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch0_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch0_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch1_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch1_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch1_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch1_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch2_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch2_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch2_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch2_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch3_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch3_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch3_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch3_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch4_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch4_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch4_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch4_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch5_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch5_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch5_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch5_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch6_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch6_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch6_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch6_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch7_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch7_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch7_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch7_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch8_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch8_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch8_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch8_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch9_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch9_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch9_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch9_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch10_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch10_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch10_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch10_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch11_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch11_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch11_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl2ch11_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch0_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch0_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch0_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch0_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch1_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch1_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch1_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch1_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch2_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch2_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch2_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch2_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch3_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch3_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch3_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch3_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch4_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch4_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch4_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch4_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch5_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch5_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch5_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch5_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch6_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch6_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch6_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch6_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch7_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch7_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch7_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch7_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch8_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch8_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch8_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch8_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch9_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch9_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch9_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch9_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch10_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch10_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch10_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch10_param3); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch11_param0); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch11_param1); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch11_param2); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_db1pl3ch11_param3); - - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl0param0_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl0param1_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl0param2_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl0param3_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl1param0_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl1param1_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl1param2_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl1param3_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl2param0_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl2param1_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl2param2_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl2param3_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl3param0_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl3param1_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl3param2_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db0pl3param3_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl0param0_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl0param1_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl0param2_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl0param3_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl1param0_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl1param1_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl1param2_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl1param3_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl2param0_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl2param1_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl2param2_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl2param3_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl3param0_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl3param1_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl3param2_per_channels); - PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_db1pl3param3_per_channels); -} + PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_param0) + PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_param1) + PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_param2) + PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_history_htdc_calibration_param3) + + PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_param0_per_channels) + PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_param1_per_channels) + PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_param2_per_channels) + PAYLOAD_INSPECTOR_CLASS(PPSTimingCalibration_htdc_calibration_param3_per_channels) +} \ No newline at end of file diff --git a/CondCore/CTPPSPlugins/test/testPPSTimingCalibration.cpp b/CondCore/CTPPSPlugins/test/testPPSTimingCalibration.cpp index 9db167a2852d2..8ecbd37e06336 100644 --- a/CondCore/CTPPSPlugins/test/testPPSTimingCalibration.cpp +++ b/CondCore/CTPPSPlugins/test/testPPSTimingCalibration.cpp @@ -30,12 +30,19 @@ int main(int argc, char** argv) { edm::LogPrint("testPPSCalibrationPI") << "## Exercising TimingCalibration plots "; - ParametersPerChannel - test; + ParametersPerChannel test; + py::dict inputs; + inputs["db (0,1)"] = "0"; + inputs["station (1,2)"] = "1"; + inputs["plane (0-3)"] = "0"; + test.setInputParamValues(inputs); test.process(connectionString, PI::mk_input(tag, start, end)); edm::LogPrint("testparametersPerChannel") << test.data(); + + inputs.clear(); +#if PY_MAJOR_VERSION >= 3 + Py_INCREF(inputs.ptr()); +#endif + Py_Finalize(); } diff --git a/CondCore/CTPPSPlugins/test/testPPSTimingCalibration.sh b/CondCore/CTPPSPlugins/test/testPPSTimingCalibration.sh index 278afede43461..c512c449c6b23 100755 --- a/CondCore/CTPPSPlugins/test/testPPSTimingCalibration.sh +++ b/CondCore/CTPPSPlugins/test/testPPSTimingCalibration.sh @@ -10,70 +10,54 @@ then echo "Testing history plots" - for db in 0 1 + for db in 0 #1 do - for pl in 0 1 2 3 + for station in 1 #2 do - for ch in 0 1 2 3 4 5 6 7 8 9 10 11 + for pl in 0 #1 2 3 do - for param in 0 1 2 3 + for ch in 0 #1 2 3 4 5 6 7 8 9 10 11 do - python3 CondCore/Utilities/scripts/getPayloadData.py \ - --plugin pluginPPSTimingCalibration_PayloadInspector \ - --plot plot_PPSTimingCalibration_history_htdc_calibration_db${db}pl${pl}ch${ch}_param${param} \ - --tag CTPPPSTimingCalibration_HPTDC_byPCL_v0_prompt \ - --time_type Run \ - --iovs '{"start_iov": "355892", "end_iov": "357079"}' \ - --db Prod \ - --test 2> CondCore/CTPPSPlugins/test/results/data_history__db${db}pl${pl}ch${ch}_param${param}.json + for param in 0 #1 2 3 + do + python3 CondCore/Utilities/scripts/getPayloadData.py \ + --plugin pluginPPSTimingCalibration_PayloadInspector \ + --plot plot_PPSTimingCalibration_history_htdc_calibration_param${param} \ + --input_params '{"db (0,1)":"'${db}'","station (1,2)":"'${station}'", "plane (0-3)":"'${pl}'", "channel (0-11)":"'${ch}'"}' \ + --tag CTPPPSTimingCalibration_HPTDC_byPCL_v0_prompt \ + --time_type Run \ + --iovs '{"start_iov": "357079", "end_iov": "357079"}' \ + --db Prod \ + --test 2> CondCore/CTPPSPlugins/test/results/data_history__db${db}st${station}pl${pl}ch${ch}_param${param}.json + done done done done done - - echo "Testing parameters plots" - - for param1 in 0 1 2 3 - do - for param2 in 1 2 3 - do - if [ "$param1" -lt "$param2" ] - then - getPayloadData.py \ - --plugin pluginPPSTimingCalibration_PayloadInspector \ - --plot plot_PPSTimingCalibration_htdc_calibration_params${param1}${param2} \ - --tag CTPPPSTimingCalibration_HPTDC_byPCL_v0_prompt \ - --time_type Run \ - --iovs '{"start_iov": "355892", "end_iov": "357079"}' \ - --db Prod \ - --test 2> CondCore/CTPPSPlugins/test/results/data_params_${param1}${param2}.json - fi - done - done - python3 CondCore/CTPPSPlugins/test/graph_check.py - echo "Testing channel plots" - - - for db in 0 1 + for db in 0 #1 do - for pl in 0 1 2 3 + for station in 1 #2 do - for param in 0 1 2 3 + for pl in 0 #1 2 3 do - getPayloadData.py \ - --plugin pluginPPSTimingCalibration_PayloadInspector \ - --plot plot_PPSTimingCalibration_htdc_calibration_db${db}pl${pl}param${param}_per_channels \ - --tag CTPPPSTimingCalibration_HPTDC_byPCL_v0_prompt \ - --time_type Run \ - --iovs '{"start_iov": "356489", "end_iov": "356489"}' \ - --db Prod \ - --test - mv *.png CondCore/CTPPSPlugins/test/results/plot_PPSTimingCalibration_db${db}pl${pl}param${param}_per_channels.png - done - done + for param in 0 #1 2 3 + do + getPayloadData.py \ + --plugin pluginPPSTimingCalibration_PayloadInspector \ + --plot plot_PPSTimingCalibration_htdc_calibration_param${param}_per_channels \ + --input_params '{"db (0,1)":"'${db}'","station (1,2)":"'${station}'", "plane (0-3)":"'${pl}'"}' \ + --tag CTPPPSTimingCalibration_HPTDC_byPCL_v1_prompt \ + --time_type Run \ + --iovs '{"start_iov": "370092", "end_iov": "370092"}' \ + --db Prod \ + --test + mv *.png CondCore/CTPPSPlugins/test/results/plot_PPSTimingCalibration_db${db}pl${pl}param${param}_per_channels.png + done + done + done done From 04e3b622bc471bb91e0885676fe49f935ed016ee Mon Sep 17 00:00:00 2001 From: Marino Missiroli Date: Fri, 6 Jan 2023 18:36:44 +0100 Subject: [PATCH 216/281] make hltFindDuplicates work again --- .../Configuration/scripts/hltFindDuplicates | 323 +++++++++++++----- HLTrigger/Configuration/test/BuildFile.xml | 3 + .../test/test_hltFindDuplicates.sh | 78 +++++ .../test/test_hltFindDuplicates_cfg.py | 131 +++++++ 4 files changed, 444 insertions(+), 91 deletions(-) create mode 100755 HLTrigger/Configuration/test/test_hltFindDuplicates.sh create mode 100644 HLTrigger/Configuration/test/test_hltFindDuplicates_cfg.py diff --git a/HLTrigger/Configuration/scripts/hltFindDuplicates b/HLTrigger/Configuration/scripts/hltFindDuplicates index 0dd2f41c92eee..6a771dd358fb3 100755 --- a/HLTrigger/Configuration/scripts/hltFindDuplicates +++ b/HLTrigger/Configuration/scripts/hltFindDuplicates @@ -1,11 +1,33 @@ -#! /usr/bin/env python3 +#!/usr/bin/env python3 +"""hltFindDuplicates: script to find duplicate modules of an HLT configuration. + +Input. + Path to a local cmsRun configuration file, or stdin. + +Output. + A directory containing + (1) the input cmsRun configuration, and + (2) text files listing the groups of duplicate modules. + +Examples. + + # input: local configuration file + hltFindDuplicates tmp.py -o output_dir + + # input: stdin + hltConfigFromDB --configName /dev/CMSSW_X_Y_0/GRun/Vn | hltFindDuplicates -o output_dir + hltGetConfiguration /dev/CMSSW_X_Y_0/GRun/Vn | hltFindDuplicates -o output_dir -x realData=0 globalTag=@ +""" +import os +import sys +import argparse +import re +import itertools +import shutil -from __future__ import print_function -import sys, imp, re, itertools -from HLTrigger.Configuration.Tools.frozendict import frozendict import FWCore.ParameterSet.Config as cms -debug = True +from HLTrigger.Configuration.Tools.frozendict import frozendict whitelist_types = [ 'HLTPrescaler', @@ -22,19 +44,21 @@ whitelist_labels = [ def whitelist(module): return module.label in whitelist_labels or module.type in whitelist_types +def iterate(arg): + return (not isinstance(arg, str) and '__iter__' in dir(arg)) def freeze(arg): if type(arg) == dict: - return frozendict((k, freeze(v)) for (k, v) in arg.iteritems()) - elif '__iter__' in dir(arg): + return frozendict((k, freeze(v)) for (k, v) in iter(arg.items())) + elif iterate(arg): return tuple( freeze(v) for v in arg ) else: return arg def unfreeze(arg): if type(arg) == frozendict: - return dict((k, unfreeze(v)) for (k, v) in arg.iteritems()) - elif '__iter__' in dir(arg): + return dict((k, unfreeze(v)) for (k, v) in iter(arg.items())) + elif iterate(arg): return list( unfreeze(v) for v in arg ) else: return arg @@ -43,68 +67,87 @@ def pythonize(arg): if 'parameters_' in dir(arg): arg = arg.parameters_() - if 'value' in dir(arg): + elif 'value' in dir(arg): arg = arg.value() if type(arg) == dict: - return frozendict((k, pythonize(v)) for (k, v) in arg.iteritems()) - elif '__iter__' in dir(arg): + return frozendict((k, pythonize(v)) for (k, v) in iter(arg.items())) + elif iterate(arg): return tuple( pythonize(v) for v in arg ) else: return arg +def mkdirp(dirpath): + try: + os.makedirs(dirpath) + except OSError: + if not os.path.isdir(dirpath): + raise class Module(object): - type = '' - label = '' + type = '' + label = '' params = frozendict() - hash = 0 + hash = 0 def __init__(self, module): - self.label = module.label_() - self.type = module.type_() + self.label = module.label_() + self.type = module.type_() self.params = pythonize(module.parameters_()) - self.__rehash() + self.__rehash(self.params) + def __str__(self): + return f'{self.label} (type: {self.type}): {self.params}' def key(self): return self.hash - def __rehash(self): - self.hash = (hash(self.type) << 4) + hash(self.params) + def __rehash(self, params): + self.hash = (hash(self.type) << 4) + hash(params) - def __check(self, value, group): - return type(value) is str and bool(group.match(value)) + def __check(self, value, check): + if isinstance(value, list): + return any(self.__check(foo, check) for foo in value) + elif isinstance(value, dict): + return any(self.__check(value[foo], check) for foo in value) + else: + return isinstance(value, str) and bool(check.match(value)) def __sub(self, value, group, label): - if type(value) is str: + if isinstance(value, list): + return [self.__sub(foo, group, label) for foo in value] + elif isinstance(value, dict): + return {foo:self.__sub(value[foo], group, label) for foo in value} + elif isinstance(value, str): return group.sub(r'%s\2' % label, value) else: return value - def apply_rename(self, groups): + def apply_rename(self, groups, verbosity_level): modified = False newparams = unfreeze(self.params) - for label, (group, check) in groups.iteritems(): - for k, p in newparams.iteritems(): - if '__iter__' in dir(p): - if any(self.__check(v, check) for v in p): - newparams[k] = tuple(self.__sub(v, check, label) for v in p) - modified = True - else: - if self.__check(p, check): - newparams[k] = self.__sub(p, check, label) - modified = True - if modified: - self.params = frozendict(newparams) - self.__rehash() + if verbosity_level > 2: + print('') + print(f' {self.label} ({self.type})') + print(f' parameters before: {newparams}') + for label, (group, check) in iter(groups.items()): + for k, p in iter(newparams.items()): + if self.__check(p, check): + newparams[k] = self.__sub(p, check, label) + modified = True + if verbosity_level > 2: + print(f' parameters after: {newparams}') + print(f' modified = {modified}') + if modified: + self.__rehash(frozendict(newparams)) class ModuleList(object): modules = [] + hashToLabelDict = {} def append(self, module): m = Module(module) @@ -117,98 +160,196 @@ class ModuleList(object): def __init__(self, *args): for arg in args: - if '__iter__' in dir(arg): + if iterate(arg): self.extend(arg) else: self.append(arg) + def hash_label(self, hash_value): + return self.hashToLabelDict.get(hash_value, None) + def sort(self): self.modules.sort(key = Module.key) def group(self): groups = dict() self.sort() - i = 0 for v, g in itertools.groupby(self.modules, Module.key): group = list(g) if len(group) > 1: - i = i + 1 g = [ m.label for m in group ] g.sort() - l = 'hltGroup%d' %i + # hash identifying the group (it is the same for every module in the group) + g_key = group[0].key() + if g_key not in self.hashToLabelDict: + # label identifying this group of modules + # (set only once so it cannot change from step to step) + self.hashToLabelDict[g_key] = f'{group[0].type} ({g[0]})' r = re.compile(r'^(%s)($|:)' % r'|'.join(g)) - groups[l] = (g, r) + groups[g_key] = (g, r) return groups - def apply_rename(self, groups): + def apply_rename(self, groups, verbosity_level): for module in self.modules: - module.apply_rename(groups) + module.apply_rename(groups, verbosity_level) - def dump(self): + def dump(self, indent=0): for m in self.modules: - print("%s = (%s) {" % (m.label, m.type)) - for k, v in m.params.iteritems(): - print("\t%s = %s" % (k, v)) - print('}') - print() - + print(' '*indent + "%s = (%s) {" % (m.label, m.type)) + for k, v in iter(m.params.items()): + print(' '*indent + " %s = %s" % (k, v)) + print(' '*indent + '}\n') +def findDuplicates(process, output_dir, verbosity_level): + mkdirp(output_dir) -def findDuplicates(process): modules = ModuleList( - process._Process__analyzers.itervalues(), - process._Process__producers.itervalues(), - process._Process__filters.itervalues() + iter(process.analyzers_().values()), + iter(process.producers_().values()), + iter(process.filters_().values()) ) oldups = 0 groups = modules.group() - dups = sum(len(g[0]) for g in groups.itervalues()) - len(groups) + dups = sum(len(g[0]) for g in groups.values()) - len(groups) index = 1 - while(dups != oldups): - if debug: - dump = open('step%d.sed' % index, 'w') - for target, (group, regexp) in groups.iteritems(): - dump.write('s#\\<\\(%s\\)\\>#%s#g\n' % ('\\|'.join(group), target)) - dump.close() - dump = open('step%d.txt' % index, 'w') - for target, (group, regexp) in groups.iteritems(): - dump.write('#%s\n%s\n\n' % ( target, '\n'.join(group))) - dump.close() - print("found %3d duplicates in %3d groups" % (dups, len(groups))) + while dups != oldups: + groupLabelToHashDict = {modules.hash_label(group_hash):group_hash for group_hash in groups} + + dump = open(os.path.join(output_dir, f'step{index}.sed'), 'w') + for group_label in sorted(groupLabelToHashDict.keys()): + (group, regexp) = groups[groupLabelToHashDict[group_label]] + dump.write('s#\\<\\(%s\\)\\>#%s#g\n' % ('\\|'.join(group), group_label)) + dump.close() + + dump = open(os.path.join(output_dir, f'step{index}.txt'), 'w') + first_entry = True + for group_label in sorted(groupLabelToHashDict.keys()): + (group, regexp) = groups[groupLabelToHashDict[group_label]] + dump.write('\n'*(not first_entry) + '# %s\n%s\n' % ( group_label, '\n'.join(group))) + first_entry = False + dump.close() + + if verbosity_level > 0: + print(f"[step {index:>2d}] found {dups:>3d} duplicates in {len(groups):>3d} groups") + + if verbosity_level > 2: + print(f'[step {index:>2d}] groups={groups}') + print(f'[step {index:>2d}] ---------------') + print(f'[step {index:>2d}] apply_rename ..') + oldups = dups - modules.apply_rename(groups) + modules.apply_rename(groups, verbosity_level) + + if verbosity_level > 2: + print() + print(f' ------------------------') + print(f' modules (after renaming)') + print(f' ------------------------') + modules.dump(indent=14) + groups = modules.group() - dups = sum(len(g[0]) for g in groups.itervalues()) - len(groups) - index = index + 1 + dups = sum(len(g[0]) for g in groups.values()) - len(groups) + index += 1 - dump = open('groups.sed', 'w') - for target, (group, regexp) in groups.iteritems(): - dump.write('s#\\<\\(%s\\)\\>#%s#\n' % ('\\|'.join(group), target)) - dump.close() + groupLabelToHashDict = {modules.hash_label(group_hash):group_hash for group_hash in groups} - dump = open('groups.txt', 'w') - for target, (group, regexp) in groups.iteritems(): - dump.write('#%s\n%s\n\n' % ( target, '\n'.join(group))) + dump = open(os.path.join(output_dir, 'groups.sed'), 'w') + for group_label in sorted(groupLabelToHashDict.keys()): + (group, regexp) = groups[groupLabelToHashDict[group_label]] + dump.write('s#\\<\\(%s\\)\\>#%s#\n' % ('\\|'.join(group), group_label)) dump.close() + dump = open(os.path.join(output_dir, 'groups.txt'), 'w') + first_entry = True + for group_label in sorted(groupLabelToHashDict.keys()): + (group, regexp) = groups[groupLabelToHashDict[group_label]] + dump.write('\n'*(not first_entry) + '# %s\n%s\n' % ( group_label, '\n'.join(group))) + first_entry = False + dump.close() +## +## main +## +if __name__ == '__main__': + + ### args + parser = argparse.ArgumentParser( + prog = './'+os.path.basename(__file__), + formatter_class = argparse.RawDescriptionHelpFormatter, + description = __doc__, + argument_default = argparse.SUPPRESS, + ) + + # menu: name of ConfDB config, or local cmsRun cfg file, or stdin + parser.add_argument('menu', + nargs = '?', + metavar = 'MENU', + default = None, + help = 'Path to cmsRun configuration file (if not specified, stdin is used)') + + # output-dir: path to directory containing output files + parser.add_argument('-o', '--output-dir', + metavar = 'OUTPUT_DIR', + default = 'hltFindDuplicates_output', + help = 'Path to directory containing output files') + + # menu arguments: list of arguments to be applied to the cmsRun configuration file + # (via argparse, VarParsing, or similar) + parser.add_argument('-x', '--menu-args', + nargs = '+', + metavar = 'MENU_ARGS', + default = [], + help = 'List of arguments (each without whitespaces) to be applied to the cmsRun configuration file') + + # verbosity level: level of verbosity of stdout/stderr printouts + parser.add_argument('-v', '--verbosity-level', + metavar = 'VERBOSITY_LEVEL', + type = int, + default = 1, + help = 'Verbosity level') + + # parse command line arguments and options + opts = parser.parse_args() + + print('-'*25) + print('hltFindDuplicates') + print('-'*25) + + # create new output directory + if os.path.exists(opts.output_dir): + log_msg = 'Failed to create output directory (a directory or file already exists under that path)' + raise RuntimeError(f'{log_msg}: {opts.output_dir}') + + mkdirp(opts.output_dir) + output_config_filepath = os.path.join(opts.output_dir, 'config.py') + + print(f'output directory: {opts.output_dir}') + print('-'*25) + + # parse the HLT configuration from a local cfg file, or from standard input + hlt = {'process': None, 'fragment': None} + + if opts.menu != None: + if not os.path.isfile(opts.menu): + raise RuntimeError(f'Invalid path to input file (file does not exist): {opts.menu}') + shutil.copyfile(opts.menu, output_config_filepath) + else: + with open(output_config_filepath, 'w') as config_file: + config_file.write(sys.stdin.read()) -def main(): - # parse the HLT configuration from standard input or from the given file - hlt = imp.new_module('hlt') - try: - configname = sys.argv[1] - except: - config = sys.stdin - else: - config = open(configname) - exec(config, globals(), hlt.__dict__) - config.close() - findDuplicates(hlt.process) + sys.argv = [sys.argv[0], output_config_filepath] + opts.menu_args + exec(open(output_config_filepath).read(), globals(), hlt) + # find cms.Process object + process = None + if hlt['process'] != None: + process = hlt['process'] + if hlt['fragment'] != None: + process = hlt['fragment'] -if __name__ == "__main__": - main() + if process == None or not isinstance(process, cms.Process): + raise RuntimeError('Failed to find object of type cms.Process !') + findDuplicates(process, output_dir=opts.output_dir, verbosity_level=opts.verbosity_level) diff --git a/HLTrigger/Configuration/test/BuildFile.xml b/HLTrigger/Configuration/test/BuildFile.xml index 11c72ffe9f4fb..e106df22c9b7d 100644 --- a/HLTrigger/Configuration/test/BuildFile.xml +++ b/HLTrigger/Configuration/test/BuildFile.xml @@ -11,3 +11,6 @@ + + + diff --git a/HLTrigger/Configuration/test/test_hltFindDuplicates.sh b/HLTrigger/Configuration/test/test_hltFindDuplicates.sh new file mode 100755 index 0000000000000..34087048908c9 --- /dev/null +++ b/HLTrigger/Configuration/test/test_hltFindDuplicates.sh @@ -0,0 +1,78 @@ +#!/bin/bash + +# Pass in name and status +function die { + printf "\n%s: status %s\n" "$1" "$2" + if [ $# -gt 2 ]; then + printf "%s\n" "=== Log File ==========" + cat $3 + printf "%s\n" "=== End of Log File ===" + fi + exit $2 +} + +if [ -z "${SCRAM_TEST_PATH}" ]; then + printf "\n%s\n\n" "ERROR -- environment variable SCRAM_TEST_PATH not defined" + exit 1 +fi + +### +### test #1: "mode == 0" +### +rm -rf test_hltFindDuplicates_mode0_output + +hltFindDuplicates "${SCRAM_TEST_PATH}"/test_hltFindDuplicates_cfg.py -x="--mode=0" -v 2 \ + -o test_hltFindDuplicates_mode0_output &> test_hltFindDuplicates_mode0_log \ + || die 'Failure running hltFindDuplicates (mode: 0)' $? test_hltFindDuplicates_mode0_log + +cat <<@EOF > test_hltFindDuplicates_mode0_groups_expected +# A3 (d3x) +d3x +d3y +m3x +m3y + +# F2 (d2x) +d2x +d2y +m2x +m2y + +# P1 (d1x) +d1x +d1y +m1x +m1y +@EOF + +diff test_hltFindDuplicates_mode0_groups_expected test_hltFindDuplicates_mode0_output/groups.txt \ + || die "Unexpected differences in groups.txt output of hltFindDuplicates (mode: 0)" $? + +### +### test #2: "mode == 1" +### +rm -rf test_hltFindDuplicates_mode1_output + +hltFindDuplicates "${SCRAM_TEST_PATH}"/test_hltFindDuplicates_cfg.py -x="--mode=1" -v 2 \ + -o test_hltFindDuplicates_mode1_output &> test_hltFindDuplicates_mode1_log \ + || die 'Failure running hltFindDuplicates (mode: 1)' $? test_hltFindDuplicates_mode1_log + +cat <<@EOF > test_hltFindDuplicates_mode1_groups_expected +# A3 (d3x) +d3x +d3y +m3x + +# F2 (d2x) +d2x +d2y +m2x + +# P1 (d1x) +d1x +d1y +m1x +@EOF + +diff test_hltFindDuplicates_mode1_groups_expected test_hltFindDuplicates_mode1_output/groups.txt \ + || die "Unexpected differences in groups.txt output of hltFindDuplicates (mode: 1)" $? diff --git a/HLTrigger/Configuration/test/test_hltFindDuplicates_cfg.py b/HLTrigger/Configuration/test/test_hltFindDuplicates_cfg.py new file mode 100644 index 0000000000000..9ab81636a9e8e --- /dev/null +++ b/HLTrigger/Configuration/test/test_hltFindDuplicates_cfg.py @@ -0,0 +1,131 @@ +#!/usr/bin/env python3 +""" +Configuration file to be used as input in unit tests of the utility hltFindDuplicates. + +The configuration is made of modules labelled "d*" and "m*". + +Details on the configuration. + - For each group of modules (d* and m*), + - modules are ordered in 3 levels (e.g. d1*, d2*, d3*), and + - for every level, there are two versions (*x and *y) of the module (e.g. d1x, d1y). + - The *x (*y) modules depend only on *x (*y) modules, and not on *y (*x) modules. + - The *2* modules depend on *1* modules. + - The *3* modules depend on *1* and *2* modules. + - The m* modules are the counterparts of the d* modules. + - The m* modules do not depend on d* modules (and viceversa). + - A given m{1,2,3}{x,y} module may or may not be a duplicate of the corresponding d* module. + +The --mode option determines how the ED modules are configured. + + - mode == 0: + the m* modules are duplicates of the corresponding d* modules. + + - mode == 1: + one parameter in m1y is changed compared to d1y + and this makes all the m*y modules unique, + while the m*x modules should ultimately + be identified as duplicates of the d*x modules. +""" +import FWCore.ParameterSet.Config as cms + +import os +import argparse + +parser = argparse.ArgumentParser( + prog = 'python3 '+os.path.basename(__file__), + formatter_class = argparse.RawDescriptionHelpFormatter, + description = __doc__, + argument_default = argparse.SUPPRESS, +) + +parser.add_argument("--mode", + type = int, + default = 0, + choices = [0,1], + help = "Choose how to configure the modules." +) + +args,_ = parser.parse_known_args() + +process = cms.Process('TEST') + +### "d*" modules: the duplicates +### - the *x (*y) modules depend only on *x (*y) modules, and not on *y (*x) modules +### - the *2* modules depend on *1* modules +### - the *3* modules depend on *1* and *2* modules +process.d1x = cms.EDProducer('P1', + p1 = cms.InputTag('rawDataCollector'), + p2 = cms.bool(False), + p3 = cms.vbool(False, True), + p4 = cms.uint32(1), + p5 = cms.vuint32(1,2,3), + p6 = cms.int32(-1), + p7 = cms.vint32(-1,2,-3), + p8 = cms.double(1.1), + p9 = cms.vdouble(2.3, 4.5) +) + +process.d1y = process.d1x.clone() + +process.d2x = cms.EDFilter('F2', + p1 = cms.vint32(1, 2, 3), + p2 = cms.VInputTag('d1x'), + p3 = cms.PSet( + theStrings = cms.vstring('keyword1', 'keyword2') + ) +) + +process.d2y = process.d2x.clone( p2 = ['d1y'] ) + +process.d3x = cms.EDAnalyzer('A3', + p1 = cms.VPSet( + cms.PSet( + pset_a = cms.PSet( + tag1 = cms.InputTag('d1x') + ), + pset_b = cms.PSet( + tag2 = cms.InputTag('d2x') + ), + ) + ), + p2 = cms.PSet( + p_a = cms.PSet( + p_b = cms.PSet( + p_c = cms.VInputTag('d2x', 'd1x') + ) + ) + ) +) + +process.d3y = process.d3x.clone() +process.d3y.p1[0].pset_a.tag1 = 'd1y' +process.d3y.p1[0].pset_b.tag2 = 'd2y' +process.d3y.p2.p_a.p_b.p_c = ['d2y', 'd1y'] + +### m* modules +### - the m* modules are the counterparts of the d* modules +### - m* modules do not depend on d* modules (and viceversa) +### - if the mode "unique-m*y" is chosen, +### one parameter in m1y is changed compared to d1y +### and this makes all the m*y modules unique, +### while the m*x modules should ultimately +### be flagged as duplicates of the d*x modules +process.m1x = process.d1x.clone() + +if args.mode == 0: + process.m1y = process.d1y.clone() +elif args.mode == 1: + process.m1y = process.d1y.clone( p2 = True ) + +process.m2x = process.d2x.clone( p2 = ['m1x'] ) +process.m2y = process.d2y.clone( p2 = ['m1y'] ) +process.m3x = process.d3x.clone() + +process.m3x.p1[0].pset_a.tag1 = 'm1x' +process.m3x.p1[0].pset_b.tag2 = 'm2x' +process.m3x.p2.p_a.p_b.p_c = ['m2x', 'm1x'] + +process.m3y = process.d3y.clone() +process.m3y.p1[0].pset_a.tag1 = 'm1y' +process.m3y.p1[0].pset_b.tag2 = 'm2y' +process.m3y.p2.p_a.p_b.p_c = ['m2y', 'm1y'] From f725fe244b28c15faed4166a95b25f4efba28ae0 Mon Sep 17 00:00:00 2001 From: Christopher McGinn Date: Sun, 7 Jan 2024 22:10:01 -0500 Subject: [PATCH 217/281] Removed line of commented out zdcLUT file --- L1Trigger/L1TCalorimeter/python/caloParams_cfi.py | 1 - 1 file changed, 1 deletion(-) diff --git a/L1Trigger/L1TCalorimeter/python/caloParams_cfi.py b/L1Trigger/L1TCalorimeter/python/caloParams_cfi.py index dfe70b9da7cfe..29bfc87f44d35 100644 --- a/L1Trigger/L1TCalorimeter/python/caloParams_cfi.py +++ b/L1Trigger/L1TCalorimeter/python/caloParams_cfi.py @@ -142,7 +142,6 @@ minimumBiasThresholds = cms.vint32(0, 0, 0, 0), centralityLUTFile = cms.FileInPath("L1Trigger/L1TCalorimeter/data/centralityLUT_stage1.txt"), q2LUTFile = cms.FileInPath("L1Trigger/L1TCalorimeter/data/q2LUT_stage1.txt"), -# zdcLUTFile = cms.FileInPath("L1Trigger/L1TZDC/data/zdcLUT_HI_v0_1.txt"), # HCal FB LUT layer1HCalFBLUTUpper = cms.vuint32([ From c906e8fc98eaafc73bb9a555c1b68a302ceeef1f Mon Sep 17 00:00:00 2001 From: Ivan Razumov Date: Mon, 8 Jan 2024 10:03:58 +0100 Subject: [PATCH 218/281] Always define stack variable in edm-global-class.py --- Utilities/StaticAnalyzers/scripts/edm-global-class.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Utilities/StaticAnalyzers/scripts/edm-global-class.py b/Utilities/StaticAnalyzers/scripts/edm-global-class.py index e9937bcc8e5bf..32968f024c713 100755 --- a/Utilities/StaticAnalyzers/scripts/edm-global-class.py +++ b/Utilities/StaticAnalyzers/scripts/edm-global-class.py @@ -135,6 +135,8 @@ visited.add(node) if node in Hdg: stack = [(node, iter(Hdg[node]))] + else: + stack = [] if node in Idg: Qdg = nx.dfs_preorder_nodes(Idg, node) for q in Qdg: From f61b144d5bc13c963299934b0eefd55972f2e853 Mon Sep 17 00:00:00 2001 From: mmusich Date: Tue, 2 Jan 2024 16:46:46 +0100 Subject: [PATCH 219/281] miscellaneous improvements to SingleLongTrackProducer. Also use earlyMuons collections in order to comply with the trackingOnly DQM sequence --- .../python/shortTrackResolution_cff.py | 27 ++++++---- .../plugins/SingleLongTrackProducer.cc | 51 ++++++++++++++----- .../python/SingleLongTrackProducer_cfi.py | 2 +- 3 files changed, 56 insertions(+), 24 deletions(-) diff --git a/DQM/TrackingMonitorSource/python/shortTrackResolution_cff.py b/DQM/TrackingMonitorSource/python/shortTrackResolution_cff.py index e38489adb17f9..b07c24d88cb99 100644 --- a/DQM/TrackingMonitorSource/python/shortTrackResolution_cff.py +++ b/DQM/TrackingMonitorSource/python/shortTrackResolution_cff.py @@ -5,32 +5,32 @@ from RecoTracker.FinalTrackSelectors.trackerTrackHitFilter_cfi import trackerTrackHitFilter as _trackerTrackHitFilter ShortTrackCandidates = _trackerTrackHitFilter.clone(src = "SingleLongTrackProducer", - truncateTracks = True, - replaceWithInactiveHits = True, - rejectBadStoNHits = True, - usePixelQualityFlag = True) + truncateTracks = True, + replaceWithInactiveHits = True, + rejectBadStoNHits = True, + usePixelQualityFlag = True) from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker phase2_tracker.toModify(ShortTrackCandidates, isPhase2 = True) ShortTrackCandidates3 = ShortTrackCandidates.clone(minimumHits = 3, - layersRemaining = 3) + layersRemaining = 3) ShortTrackCandidates4 = ShortTrackCandidates.clone(minimumHits = 4, - layersRemaining = 4) + layersRemaining = 4) ShortTrackCandidates5 = ShortTrackCandidates.clone(minimumHits = 5, - layersRemaining = 5) + layersRemaining = 5) ShortTrackCandidates6 = ShortTrackCandidates.clone(minimumHits = 6, - layersRemaining = 6) + layersRemaining = 6) ShortTrackCandidates7 = ShortTrackCandidates.clone(minimumHits = 7, - layersRemaining = 7) + layersRemaining = 7) ShortTrackCandidates8 = ShortTrackCandidates.clone(minimumHits = 8, - layersRemaining = 8) + layersRemaining = 8) import RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cff RefittedShortTracks = RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cff.ctfWithMaterialTracks.clone(src = 'ShortTrackCandidates') @@ -51,7 +51,12 @@ maxTracksPtInput = 99999.9, maxDrInput = 0.01, tracksInputTag = "SingleLongTrackProducer", - tracksRerecoInputTag = ["RefittedShortTracks3","RefittedShortTracks4","RefittedShortTracks5","RefittedShortTracks6","RefittedShortTracks7","RefittedShortTracks8"]) + tracksRerecoInputTag = ["RefittedShortTracks3", + "RefittedShortTracks4", + "RefittedShortTracks5", + "RefittedShortTracks6", + "RefittedShortTracks7", + "RefittedShortTracks8"]) shortTrackResolution3to8 = cms.Sequence(SingleLongTrackProducer * ShortTrackCandidates3 * diff --git a/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc b/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc index 7af6c8c97145b..a9b8141f423ac 100644 --- a/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc +++ b/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc @@ -54,15 +54,35 @@ SingleLongTrackProducer::SingleLongTrackProducer(const edm::ParameterSet &iConfi void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup &iSetup) { using namespace edm; + // register output collection: + std::unique_ptr goodTracks(new reco::TrackCollection); + // register input collections: const auto &tracks = iEvent.getHandle(tracksToken); + if (!tracks.isValid()) { + edm::LogError("SingleLongTrackProducer") + << "Input track collection is not valid.\n Returning empty output track collection."; + iEvent.put(std::move(goodTracks), ""); + return; + } + const auto &muons = iEvent.getHandle(muonsToken); + if (!muons.isValid()) { + edm::LogError("SingleLongTrackProducer") + << "Input muon collection is not valid.\n Returning empty output track collection."; + iEvent.put(std::move(goodTracks), ""); + return; + } - const auto &vtx_h = iEvent.getHandle(PrimVtxToken); - const reco::Vertex vtx = vtx_h->at(0); + const auto &vertices = iEvent.getHandle(PrimVtxToken); + if (!vertices.isValid()) { + edm::LogError("SingleLongTrackProducer") + << "Input vertex collection is not valid.\n Returning empty output track collection."; + iEvent.put(std::move(goodTracks), ""); + return; + } - // register output collection: - std::unique_ptr goodTracks(new reco::TrackCollection); + const reco::Vertex vtx = vertices->at(0); // Preselection of long quality tracks std::vector selTracks; @@ -80,7 +100,7 @@ void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup if (track.pt() < minPt) continue; - if (abs(track.eta()) > maxEta) + if (std::abs(track.eta()) > maxEta) continue; if (hitpattern.trackerLayersWithMeasurement() < minNumberOfLayers) @@ -116,16 +136,16 @@ void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup bestTrack.setExtra(track.extra()); } if (debug) - edm::LogPrint("SingleLongTrackProducer") << " deltaR (general) track to matched Track: " << dRmin << std::endl; + edm::LogPrint("SingleLongTrackProducer") << " deltaR (general) track to matched Track: " << dRmin; if (debug) - edm::LogPrint("SingleLongTrackProducer") << "chi2Ndof:" << chiNdof << " best Track: " << fitProb << std::endl; + edm::LogPrint("SingleLongTrackProducer") << "chi2Ndof:" << chiNdof << " best Track: " << fitProb; } selTracks.push_back(bestTrack); if (debug) - edm::LogPrint("SingleLongTrackProducer") << " number of Tracker Muons: " << tMuon << ", thereof " - << selTracks.size() << " tracks passed preselection." << std::endl; + edm::LogPrint("SingleLongTrackProducer") + << " number of Tracker Muons: " << tMuon << ", thereof " << selTracks.size() << " tracks passed preselection."; // check hits validity in preselected tracks bool hitIsNotValid{false}; @@ -170,14 +190,14 @@ void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup if (onlyValidHits && !hit.isValid()) { if (debug) - edm::LogPrint("SingleLongTrackProducer") << "hit not valid: " << h << std::endl; + edm::LogPrint("SingleLongTrackProducer") << "hit not valid: " << h; continue; } // loop over the hits of the track. if (onlyValidHits && !(hitpattern.validHitFilter(pHit))) { if (debug) - edm::LogPrint("SingleLongTrackProducer") << "hit not valid: " << h << std::endl; + edm::LogPrint("SingleLongTrackProducer") << "hit not valid: " << h; continue; } } @@ -193,6 +213,13 @@ void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup << "found tracks with " << deref << "missing valid hits and " << deref2 << " missing hit pattern"; } + if (debug) { + auto const &moduleType = moduleDescription().moduleName(); + auto const &moduleLabel = moduleDescription().moduleLabel(); + edm::LogPrint("SingleLongTrackProducer") << "[" << moduleType << "] (" << moduleLabel << ") " + << " output track size: " << goodTracks.get()->size(); + } + // save track collection in event: iEvent.put(std::move(goodTracks), ""); } @@ -200,7 +227,7 @@ void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup void SingleLongTrackProducer::fillDescriptions(edm::ConfigurationDescriptions &descriptions) { edm::ParameterSetDescription desc; desc.add("allTracks", edm::InputTag("generalTracks")); - desc.add("matchMuons", edm::InputTag("muons")); + desc.add("matchMuons", edm::InputTag("earlyMuons")); desc.add("PrimaryVertex", edm::InputTag("offlinePrimaryVertices")); desc.add("minNumberOfLayers", 10); desc.add("requiredDr", 0.01); diff --git a/RecoTracker/FinalTrackSelectors/python/SingleLongTrackProducer_cfi.py b/RecoTracker/FinalTrackSelectors/python/SingleLongTrackProducer_cfi.py index 181a536038cfe..1f97050cea9ba 100644 --- a/RecoTracker/FinalTrackSelectors/python/SingleLongTrackProducer_cfi.py +++ b/RecoTracker/FinalTrackSelectors/python/SingleLongTrackProducer_cfi.py @@ -4,7 +4,7 @@ SingleLongTrackProducer = singleLongTrackProducer.clone( allTracks = "generalTracks", - matchMuons = "muons", + matchMuons = "earlyMuons", requiredDr= 0.01, minNumberOfLayers = 10, onlyValidHits = True, From 5a3c508e397873c89a1daee12db4392a25b9c4ab Mon Sep 17 00:00:00 2001 From: Patrick Gartung Date: Mon, 8 Jan 2024 18:16:38 +0100 Subject: [PATCH 220/281] Utilities/StaticAnalyzer: Honor use of CMS_SA_ALLOW for ParameterSet::existsAs checker --- Utilities/StaticAnalyzers/src/PsetExistsFCallChecker.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Utilities/StaticAnalyzers/src/PsetExistsFCallChecker.cpp b/Utilities/StaticAnalyzers/src/PsetExistsFCallChecker.cpp index 9860624d1eafd..b3b0c81edfb85 100644 --- a/Utilities/StaticAnalyzers/src/PsetExistsFCallChecker.cpp +++ b/Utilities/StaticAnalyzers/src/PsetExistsFCallChecker.cpp @@ -46,6 +46,8 @@ namespace clangcms { const NamedDecl *PD = llvm::dyn_cast_or_null(AC->getDecl()); if (!PD) return; + if (!PD->hasAttr()) + return; std::string pname = support::getQualifiedName(*PD); Report(mname, pname, CCE); @@ -59,6 +61,8 @@ namespace clangcms { const NamedDecl *PD = llvm::dyn_cast_or_null(AC->getDecl()); if (!PD) return; + if (!PD->hasAttr()) + return; std::string mname = support::getQualifiedName(*MD); std::string pname = support::getQualifiedName(*PD); Report(mname, pname, CE); @@ -82,6 +86,8 @@ namespace clangcms { const NamedDecl *PD = llvm::dyn_cast_or_null(AC->getDecl()); if (!PD) return; + if (!PD->hasAttr()) + return; std::string pname = support::getQualifiedName(*PD); Report(mname, pname, CE); From ff82085670661d0e0f899280476352e49f520230 Mon Sep 17 00:00:00 2001 From: mmusich Date: Tue, 9 Jan 2024 09:16:03 +0100 Subject: [PATCH 221/281] add table producers for Gain calibration and inst lumi Co-authored-by: pieterdavid --- .../plugins/SiStripGainCalibTableProducer.cc | 164 ++++++++++++++++++ .../plugins/TkInstLumiTableProducer.cc | 73 ++++++++ 2 files changed, 237 insertions(+) create mode 100644 CalibTracker/SiStripCommon/plugins/SiStripGainCalibTableProducer.cc create mode 100644 CalibTracker/SiStripCommon/plugins/TkInstLumiTableProducer.cc diff --git a/CalibTracker/SiStripCommon/plugins/SiStripGainCalibTableProducer.cc b/CalibTracker/SiStripCommon/plugins/SiStripGainCalibTableProducer.cc new file mode 100644 index 0000000000000..8a56dcfc9e1cd --- /dev/null +++ b/CalibTracker/SiStripCommon/plugins/SiStripGainCalibTableProducer.cc @@ -0,0 +1,164 @@ +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" + +#include "DataFormats/GeometrySurface/interface/TrapezoidalPlaneBounds.h" +#include "DataFormats/GeometrySurface/interface/RectangularPlaneBounds.h" +#include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h" +#include "Geometry/TrackerGeometryBuilder/interface/StripGeomDetUnit.h" +#include "Geometry/CommonDetUnit/interface/PixelGeomDetUnit.h" + +#include "CalibFormats/SiStripObjects/interface/SiStripGain.h" +#include "CalibTracker/Records/interface/SiStripGainRcd.h" + +#include "CalibTracker/SiStripCommon/interface/SiStripOnTrackClusterTableProducerBase.h" + +class SiStripGainCalibTableProducer : public SiStripOnTrackClusterTableProducerBase { +public: + explicit SiStripGainCalibTableProducer(const edm::ParameterSet& params) + : SiStripOnTrackClusterTableProducerBase(params), m_tkGeomToken{esConsumes<>()}, m_gainToken{esConsumes<>()} {} + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.add("name", "cluster"); + desc.add("doc", ""); + desc.add("extension", false); + desc.add("Tracks", edm::InputTag{"generalTracks"}); + descriptions.add("siStripGainCalibTable", desc); + } + + void fillTable(const std::vector& clusters, + const edm::View& tracks, + nanoaod::FlatTable* table, + const edm::EventSetup& iSetup) final; + +private: + const edm::ESGetToken m_tkGeomToken; + const edm::ESGetToken m_gainToken; + + std::map m_thicknessMap; + double thickness(DetId id, const TrackerGeometry* tGeom); +}; + +namespace { + bool isFarFromBorder(const TrajectoryStateOnSurface& trajState, uint32_t detId, const TrackerGeometry* tGeom) { + const auto gdu = tGeom->idToDetUnit(detId); + if ((!dynamic_cast(gdu)) && (!dynamic_cast(gdu))) { + edm::LogWarning("SiStripGainCalibTableProducer") + << "DetId " << detId << " does not seem to belong to the tracker"; + return false; + } + const auto plane = gdu->surface(); + const auto trapBounds = dynamic_cast(&plane.bounds()); + const auto rectBounds = dynamic_cast(&plane.bounds()); + + static constexpr double distFromBorder = 1.0; + double halfLength = 0.; + if (trapBounds) { + halfLength = trapBounds->parameters()[3]; + } else if (rectBounds) { + halfLength = .5 * gdu->surface().bounds().length(); + } else { + return false; + } + + const auto pos = trajState.localPosition(); + const auto posError = trajState.localError().positionError(); + if (std::abs(pos.y()) + posError.yy() >= (halfLength - distFromBorder)) + return false; + + return true; + } +} // namespace + +double SiStripGainCalibTableProducer::thickness(DetId id, const TrackerGeometry* tGeom) { + const auto it = m_thicknessMap.find(id); + if (m_thicknessMap.end() != it) { + return it->second; + } else { + double detThickness = 1.; + const auto gdu = tGeom->idToDetUnit(id); + const auto isPixel = (dynamic_cast(gdu) != nullptr); + const auto isStrip = (dynamic_cast(gdu) != nullptr); + if (!isPixel && !isStrip) { + edm::LogWarning("SiStripGainCalibTableProducer") + << "DetId " << id.rawId() << " doesn't seem to belong to the Tracker"; + } else { + detThickness = gdu->surface().bounds().thickness(); + } + m_thicknessMap[id] = detThickness; + return detThickness; + } +} + +void SiStripGainCalibTableProducer::fillTable(const std::vector& clusters, + const edm::View& tracks, + nanoaod::FlatTable* table, + const edm::EventSetup& iSetup) { + edm::ESHandle tGeom = iSetup.getHandle(m_tkGeomToken); + edm::ESHandle stripGains = iSetup.getHandle(m_gainToken); + + std::vector c_localdirx; + std::vector c_localdiry; + std::vector c_localdirz; + std::vector c_firststrip; + std::vector c_nstrips; + std::vector c_saturation; + std::vector c_overlapping; + std::vector c_farfromedge; + std::vector c_charge; + std::vector c_path; + // NOTE only very few types are supported by NanoAOD, but more could be added (to discuss with XPOG / core software) + // NOTE removed amplitude vector, I don't think it was used anywhere + std::vector c_gainused; // NOTE was double + std::vector c_gainusedTick; // NOTE was double + for (const auto clus : clusters) { + const auto& ampls = clus.cluster->amplitudes(); + const int firstStrip = clus.cluster->firstStrip(); + const int nStrips = ampls.size(); + double prevGain = -1; + double prevGainTick = -1; + if (stripGains.isValid()) { + prevGain = stripGains->getApvGain(firstStrip / 128, stripGains->getRange(clus.det, 1), 1); + prevGainTick = stripGains->getApvGain(firstStrip / 128, stripGains->getRange(clus.det, 0), 1); + } + const unsigned int charge = clus.cluster->charge(); + const bool saturation = std::any_of(ampls.begin(), ampls.end(), [](uint8_t amp) { return amp >= 254; }); + + const bool overlapping = (((firstStrip % 128) == 0) || ((firstStrip / 128) != ((firstStrip + nStrips) / 128)) || + (((firstStrip + nStrips) % 128) == 127)); + const auto& trajState = clus.measurement.updatedState(); + const auto trackDir = trajState.localDirection(); + const auto cosine = trackDir.z() / trackDir.mag(); + const auto path = (10. * thickness(clus.det, tGeom.product())) / std::abs(cosine); + const auto farFromEdge = isFarFromBorder(trajState, clus.det, tGeom.product()); + c_localdirx.push_back(trackDir.x()); + c_localdiry.push_back(trackDir.y()); + c_localdirz.push_back(trackDir.z()); + c_firststrip.push_back(firstStrip); + c_nstrips.push_back(nStrips); + c_saturation.push_back(saturation); + c_overlapping.push_back(overlapping); + c_farfromedge.push_back(farFromEdge); + c_charge.push_back(charge); + c_path.push_back(path); + c_gainused.push_back(prevGain); + c_gainusedTick.push_back(prevGainTick); + } + // addColumn(table, "localdirx", c_localdirx, ""); + // addColumn(table, "localdiry", c_localdiry, ""); + // addColumn(table, "localdirz", c_localdirz, ""); + // addColumn(table, "firststrip", c_firststrip, ""); + // addColumn(table, "nstrips", c_nstrips, ""); + addColumn(table, "saturation", c_saturation, ""); + addColumn(table, "overlapping", c_overlapping, ""); + addColumn(table, "farfromedge", c_farfromedge, ""); + addColumn(table, "charge", c_charge, ""); + // addColumn(table, "path", c_path, ""); + // ExtendedCalibTree: also charge/path + addColumn(table, "gainused", c_gainused, ""); + addColumn(table, "gainusedTick", c_gainusedTick, ""); +} + +#include "FWCore/PluginManager/interface/ModuleDef.h" +#include "FWCore/Framework/interface/MakerMacros.h" +DEFINE_FWK_MODULE(SiStripGainCalibTableProducer); diff --git a/CalibTracker/SiStripCommon/plugins/TkInstLumiTableProducer.cc b/CalibTracker/SiStripCommon/plugins/TkInstLumiTableProducer.cc new file mode 100644 index 0000000000000..a422e1309ece3 --- /dev/null +++ b/CalibTracker/SiStripCommon/plugins/TkInstLumiTableProducer.cc @@ -0,0 +1,73 @@ +#include "DataFormats/NanoAOD/interface/FlatTable.h" +#include "DataFormats/OnlineMetaData/interface/OnlineLuminosityRecord.h" +#include "DataFormats/Scalers/interface/LumiScalers.h" +#include "FWCore/Framework/interface/ConsumesCollector.h" +#include "FWCore/Framework/interface/stream/EDProducer.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" + +class TkInstLumiTableProducer : public edm::stream::EDProducer<> { +public: + explicit TkInstLumiTableProducer(const edm::ParameterSet& params) + : m_name(params.getParameter("name")), + m_doc(params.existsAs("doc") ? params.getParameter("doc") : ""), + m_extension(params.existsAs("extension") ? params.getParameter("extension") : false), + m_scalerToken(consumes(params.getParameter("lumiScalers"))), + m_metaDataToken(consumes(params.getParameter("metadata"))) { + produces(); + } + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.add("name", ""); + desc.add("doc", ""); + desc.add("extension", false); + desc.add("lumiScalers", edm::InputTag("scalersRawToDigi")); + desc.add("metadata", edm::InputTag("onlineMetaDataDigis")); + descriptions.add("tkInstLumiTable", desc); + } + + void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) override; + +private: + const std::string m_name; + const std::string m_doc; + bool m_extension; + + const edm::EDGetTokenT m_scalerToken; + const edm::EDGetTokenT m_metaDataToken; +}; + +void TkInstLumiTableProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { + auto out = std::make_unique(1, m_name, true, m_extension); + + out->addColumnValue("bx", iEvent.bunchCrossing(), "Bunch-crossing ID"); + + float instLumi{0.}, pu{0.}; + edm::Handle lumiScalers = iEvent.getHandle(m_scalerToken); + edm::Handle metaData = iEvent.getHandle(m_metaDataToken); + + if (lumiScalers.isValid() && !lumiScalers->empty()) { + if (lumiScalers->begin() != lumiScalers->end()) { + instLumi = lumiScalers->begin()->instantLumi(); + pu = lumiScalers->begin()->pileup(); + } + } else if (metaData.isValid()) { + instLumi = metaData->instLumi(); + pu = metaData->avgPileUp(); + } else { + edm::LogInfo("TkInstLumiTableProducer") + << "Luminosity related collections not found in the event; will write dummy values"; + } + + out->addColumnValue("instLumi", instLumi, "Instantaneous luminosity"); + out->addColumnValue("PU", pu, "Pileup"); + + iEvent.put(std::move(out)); +} + +#include "FWCore/PluginManager/interface/ModuleDef.h" +#include "FWCore/Framework/interface/MakerMacros.h" +DEFINE_FWK_MODULE(TkInstLumiTableProducer); From 0bb94470a9c0c393ae98bf0b7b7917489fe7392b Mon Sep 17 00:00:00 2001 From: mmusich Date: Tue, 9 Jan 2024 10:53:08 +0100 Subject: [PATCH 222/281] add test configurations for nano-based calibtrees Co-authored-by: pieterdavid --- .../SiStripCommon/test/testCalibTree_nano.py | 99 +++++++++++++++++++ .../test/testCalibTree_nano_G2.py | 77 +++++++++++++++ 2 files changed, 176 insertions(+) create mode 100644 CalibTracker/SiStripCommon/test/testCalibTree_nano.py create mode 100644 CalibTracker/SiStripCommon/test/testCalibTree_nano_G2.py diff --git a/CalibTracker/SiStripCommon/test/testCalibTree_nano.py b/CalibTracker/SiStripCommon/test/testCalibTree_nano.py new file mode 100644 index 0000000000000..ffdf36102538f --- /dev/null +++ b/CalibTracker/SiStripCommon/test/testCalibTree_nano.py @@ -0,0 +1,99 @@ +from __future__ import print_function + +## adapted from produceCalibrationTree_template_cfg.py + +import FWCore.ParameterSet.Config as cms +##from CalibTracker.SiStripCommon.shallowTree_test_template import * ## TODO get rid of this one + +process = cms.Process('CALIB') +process.load('Configuration/StandardSequences/MagneticField_cff') +process.load('Configuration.Geometry.GeometryRecoDB_cff') +process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') + +from Configuration.AlCa.GlobalTag import GlobalTag +process.GlobalTag = GlobalTag(process.GlobalTag, "auto:run3_data_PromptAnalysis") + +process.load('FWCore.MessageService.MessageLogger_cfi') +process.load('Configuration.StandardSequences.Services_cff') + +process.maxEvents = cms.untracked.PSet(input=cms.untracked.int32(-1)) + +process.source = cms.Source("PoolSource", + fileNames = cms.untracked.vstring("/store/express/Run2023F/StreamExpress/ALCARECO/SiStripCalMinBias-Express-v1/000/373/710/00000/e2df2f78-b95a-4f33-ae22-add59aa2903f.root")) + +process.options = cms.untracked.PSet( wantSummary = cms.untracked.bool(True) ) +process.MessageLogger.cerr.FwkReport.reportEvery = 10000 + +inTracks = cms.InputTag("ALCARECOSiStripCalMinBias") + +process.load('CalibTracker.SiStripCommon.prescaleEvent_cfi') +process.load('CalibTracker.Configuration.Filter_Refit_cff') +## use CalibrationTracks (for clusters) and CalibrationTracksRefit (for tracks) +process.CalibrationTracks.src = inTracks + +tracksForCalib = cms.InputTag("CalibrationTracksRefit") + +process.prescaleEvent.prescale = 1 + +process.TkCalSeq = cms.Sequence(process.prescaleEvent*process.MeasurementTrackerEvent*process.trackFilterRefit) + +process.load("PhysicsTools.NanoAOD.nano_cff") +process.load("PhysicsTools.NanoAOD.NanoAODEDMEventContent_cff") + +## as a test: it should be possible to add tracks fully at configuration level (+ declaring the plugin) +from PhysicsTools.NanoAOD.common_cff import * +## this is equivalent to ShallowTrackProducer as configured for the gain calibration +process.tracksTable = cms.EDProducer("SimpleTrackFlatTableProducer", + src=tracksForCalib, + cut=cms.string(""), + name=cms.string("track"), + doc=cms.string("SiStripCalMinBias ALCARECO tracks"), + singleton=cms.bool(False), + extension=cms.bool(False), + variables=cms.PSet( + #chi2=Var("chi2()", float), + #ndof=Var("ndof()", int), + chi2ndof=Var("chi2()/ndof", float), + #charge=Var("charge()", float), + momentum=Var("p()", float), + pt=Var("pt()", float), + #pterr=Var("ptError()", float), + hitsvalid=Var("numberOfValidHits()", int), ## unsigned? + #hitslost=Var("numberOfLostHits()", int), ## unsigned? + #theta=Var("theta()", float), + #thetaerr=Var("thetaError()", float), + phi=Var("phi()", float), + #phierr=Var("phiError()", float), + eta=Var("eta()", float), + #etaerr=Var("etaError()", float), + #dxy=Var("dxy()", float), + #dxyerr=Var("dxyError()", float), + #dsz=Var("dsz()", float), + #dszerr=Var("dszError()", float), + #qoverp=Var("qoverp()", float), + #qoverperr=Var("qoverpError()", float), + #vx=Var("vx()", float), + #vy=Var("vy()", float), + #vz=Var("vz()", float), + algo=Var("algo()", int) + ) + ) +process.load("CalibTracker.SiStripCommon.tkInstLumiTable_cfi") +process.tkInstLumiTable.extension = True +process.load("CalibTracker.SiStripCommon.siStripPositionCorrectionsTable_cfi") +process.load("CalibTracker.SiStripCommon.siStripGainCalibTable_cfi") +process.siStripPositionCorrectionsTable.Tracks = tracksForCalib +process.siStripGainCalibTable.Tracks = tracksForCalib + +process.nanoCTPath = cms.Path(process.TkCalSeq * + process.nanoMetadata * + process.tkInstLumiTable * + process.tracksTable * + process.siStripPositionCorrectionsTable) #* + #process.siStripGainCalibTable) + +process.out = cms.OutputModule("NanoAODOutputModule", + fileName=cms.untracked.string("CalibTreeMC_nano.root"), + outputCommands=process.NANOAODEventContent.outputCommands) + +process.end = cms.EndPath(process.out) diff --git a/CalibTracker/SiStripCommon/test/testCalibTree_nano_G2.py b/CalibTracker/SiStripCommon/test/testCalibTree_nano_G2.py new file mode 100644 index 0000000000000..b532ee28b5dff --- /dev/null +++ b/CalibTracker/SiStripCommon/test/testCalibTree_nano_G2.py @@ -0,0 +1,77 @@ +from __future__ import print_function + +## adapted from produceCalibrationTree_template_cfg.py + +import FWCore.ParameterSet.Config as cms +##from CalibTracker.SiStripCommon.shallowTree_test_template import * ## TODO get rid of this one + +process = cms.Process('CALIB') +process.load('Configuration/StandardSequences/MagneticField_cff') +process.load('Configuration.Geometry.GeometryRecoDB_cff') +process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') + +from Configuration.AlCa.GlobalTag import GlobalTag +process.GlobalTag = GlobalTag(process.GlobalTag, "auto:run3_data_PromptAnalysis") + +process.load('FWCore.MessageService.MessageLogger_cfi') +process.load('Configuration.StandardSequences.Services_cff') + +process.maxEvents = cms.untracked.PSet(input=cms.untracked.int32(-1)) + +process.source = cms.Source("PoolSource", + fileNames = cms.untracked.vstring("/store/express/Run2023F/StreamExpress/ALCARECO/SiStripCalMinBias-Express-v1/000/373/710/00000/e2df2f78-b95a-4f33-ae22-add59aa2903f.root")) + +process.options = cms.untracked.PSet( wantSummary = cms.untracked.bool(True) ) +process.MessageLogger.cerr.FwkReport.reportEvery = 10000 + +inTracks = cms.InputTag("ALCARECOSiStripCalMinBias") + +process.load('CalibTracker.SiStripCommon.prescaleEvent_cfi') +process.load('CalibTracker.Configuration.Filter_Refit_cff') +## use CalibrationTracks (for clusters) and CalibrationTracksRefit (for tracks) +process.CalibrationTracks.src = inTracks + +tracksForCalib = cms.InputTag("CalibrationTracksRefit") + +process.prescaleEvent.prescale = 1 + +process.TkCalSeq = cms.Sequence(process.prescaleEvent*process.MeasurementTrackerEvent*process.trackFilterRefit) + +process.load("PhysicsTools.NanoAOD.nano_cff") +process.load("PhysicsTools.NanoAOD.NanoAODEDMEventContent_cff") + +## as a test: it should be possible to add tracks fully at configuration level (+ declaring the plugin) +from PhysicsTools.NanoAOD.common_cff import * +## this is equivalent to ShallowTrackProducer as configured for the gain calibration +process.tracksTable = cms.EDProducer("SimpleTrackFlatTableProducer", + src=tracksForCalib, + cut=cms.string(""), + name=cms.string("track"), + doc=cms.string("SiStripCalMinBias ALCARECO tracks"), + singleton=cms.bool(False), + extension=cms.bool(False), + variables=cms.PSet( + chi2ndof=Var("chi2()/ndof", float), + pt=Var("pt()", float), + hitsvalid=Var("numberOfValidHits()", int), ## unsigned? + phi=Var("phi()", float), + eta=Var("eta()", float), + ) + ) +process.load("CalibTracker.SiStripCommon.tkInstLumiTable_cfi") +process.tkInstLumiTable.extension = True +process.load("CalibTracker.SiStripCommon.siStripGainCalibTable_cfi") +process.siStripGainCalibTable.Tracks = tracksForCalib + +process.nanoCTPath = cms.Path(process.TkCalSeq* + process.nanoMetadata*process.tkInstLumiTable + *process.tracksTable + *process.siStripGainCalibTable + ) + +process.out = cms.OutputModule("NanoAODOutputModule", + fileName=cms.untracked.string("CalibTreeMC_nano_G2.root"), + outputCommands=process.NANOAODEventContent.outputCommands + ) + +process.end = cms.EndPath(process.out) From 534bb08e2359fbf2831d435270af93b3f8a2927c Mon Sep 17 00:00:00 2001 From: swagata87 Date: Tue, 9 Jan 2024 18:05:51 +0100 Subject: [PATCH 223/281] fix crashes due to 2017 HE while using PFcuts from DB --- .../HLT_75e33/modules/particleFlowBlock_cfi.py | 1 + .../Configuration/python/Reconstruction_hiPF_cff.py | 1 + .../plugins/importers/SuperClusterImporter.cc | 12 +++++++++--- .../PFProducer/python/particleFlowBlock_cfi.py | 6 ++++++ 4 files changed, 17 insertions(+), 3 deletions(-) diff --git a/HLTrigger/Configuration/python/HLT_75e33/modules/particleFlowBlock_cfi.py b/HLTrigger/Configuration/python/HLT_75e33/modules/particleFlowBlock_cfi.py index f35ec030d875f..7beaf6b7b4c6e 100644 --- a/HLTrigger/Configuration/python/HLT_75e33/modules/particleFlowBlock_cfi.py +++ b/HLTrigger/Configuration/python/HLT_75e33/modules/particleFlowBlock_cfi.py @@ -13,6 +13,7 @@ hbheRecHitsTag = cms.InputTag("hltHbhereco"), maxSeverityHB = cms.int32(9), maxSeverityHE = cms.int32(9), + usePFThresholdsFromDB = cms.bool(True), superClustersArePF = cms.bool(True) ), cms.PSet( diff --git a/RecoHI/Configuration/python/Reconstruction_hiPF_cff.py b/RecoHI/Configuration/python/Reconstruction_hiPF_cff.py index 0747eb39b622a..8dd03b2e2ad5c 100644 --- a/RecoHI/Configuration/python/Reconstruction_hiPF_cff.py +++ b/RecoHI/Configuration/python/Reconstruction_hiPF_cff.py @@ -54,6 +54,7 @@ hbheRecHitsTag = cms.InputTag("hbhereco"), maxSeverityHB = cms.int32(9), maxSeverityHE = cms.int32(9), + usePFThresholdsFromDB = cms.bool(True), superClustersArePF = cms.bool(True) ), # all secondary track importers cms.PSet( importerName = cms.string("GeneralTracksImporter"), diff --git a/RecoParticleFlow/PFProducer/plugins/importers/SuperClusterImporter.cc b/RecoParticleFlow/PFProducer/plugins/importers/SuperClusterImporter.cc index a507cf937d873..ef91bd52881da 100644 --- a/RecoParticleFlow/PFProducer/plugins/importers/SuperClusterImporter.cc +++ b/RecoParticleFlow/PFProducer/plugins/importers/SuperClusterImporter.cc @@ -40,6 +40,7 @@ class SuperClusterImporter : public BlockElementImporterBase { const edm::EDGetTokenT hbheRecHitsTag_; const int maxSeverityHB_; const int maxSeverityHE_; + bool cutsFromDB; CaloTowerConstituentsMap const* towerMap_; CaloGeometry const* caloGeom_; HcalTopology const* hcalTopo_; @@ -71,19 +72,24 @@ SuperClusterImporter::SuperClusterImporter(const edm::ParameterSet& conf, edm::C hbheRecHitsTag_(cc.consumes(conf.getParameter("hbheRecHitsTag"))), maxSeverityHB_(conf.getParameter("maxSeverityHB")), maxSeverityHE_(conf.getParameter("maxSeverityHE")), + cutsFromDB(conf.getParameter("usePFThresholdsFromDB")), _superClustersArePF(conf.getParameter("superClustersArePF")), _ctmapToken(cc.esConsumes()), caloGeometryToken_{cc.esConsumes()}, hcalTopologyToken_{cc.esConsumes()}, hcalChannelQualityToken_{cc.esConsumes(edm::ESInputTag("", "withTopo"))}, hcalSevLvlComputerToken_{cc.esConsumes()} { - hcalCutsToken_ = - cc.esConsumes(edm::ESInputTag("", "withTopo")); + if (cutsFromDB) { + hcalCutsToken_ = cc.esConsumes( + edm::ESInputTag("", "withTopo")); + } } void SuperClusterImporter::updateEventSetup(const edm::EventSetup& es) { towerMap_ = &es.getData(_ctmapToken); - hcalCuts = &es.getData(hcalCutsToken_); + if (cutsFromDB) { + hcalCuts = &es.getData(hcalCutsToken_); + } caloGeom_ = &es.getData(caloGeometryToken_); hcalTopo_ = &es.getData(hcalTopologyToken_); hcalChannelQual_ = &es.getData(hcalChannelQualityToken_); diff --git a/RecoParticleFlow/PFProducer/python/particleFlowBlock_cfi.py b/RecoParticleFlow/PFProducer/python/particleFlowBlock_cfi.py index 0c91b1da8f977..82eca42e7f077 100644 --- a/RecoParticleFlow/PFProducer/python/particleFlowBlock_cfi.py +++ b/RecoParticleFlow/PFProducer/python/particleFlowBlock_cfi.py @@ -30,6 +30,7 @@ hbheRecHitsTag = cms.InputTag('hbhereco'), maxSeverityHB = cms.int32(9), maxSeverityHE = cms.int32(9), + usePFThresholdsFromDB = cms.bool(False), superClustersArePF = cms.bool(True) ), cms.PSet( importerName = cms.string("ConversionTrackImporter"), source = cms.InputTag("pfConversions"), @@ -248,3 +249,8 @@ def _findIndicesByModule(name): particleFlowBlock, elementImporters = _addTimingLayer ) + +#--- Use DB conditions for cuts&seeds for Run3 and phase2 +from Configuration.Eras.Modifier_hcalPfCutsFromDB_cff import hcalPfCutsFromDB +hcalPfCutsFromDB.toModify( _scImporter, + usePFThresholdsFromDB = True) From da6734d7617cd315161dc9c7713a0bfa1f3aa865 Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Wed, 8 Nov 2023 08:54:39 +0100 Subject: [PATCH 224/281] Craft an example of an EventSetup data product that has PortableCollection data member --- .../AlpakaTest/interface/AlpakaESTestData.h | 57 +++++++++++++++++- .../AlpakaTest/interface/AlpakaESTestSoA.h | 4 ++ .../interface/alpaka/AlpakaESTestData.h | 4 ++ .../AlpakaTest/plugins/alpaka/TestAlgo.dev.cc | 50 ++++++++++++++++ .../AlpakaTest/plugins/alpaka/TestAlgo.h | 5 ++ .../plugins/alpaka/TestAlpakaESProducerA.cc | 2 +- .../plugins/alpaka/TestAlpakaESProducerC.cc | 3 - .../plugins/alpaka/TestAlpakaESProducerE.cc | 58 ++++++++++++++++++ .../alpaka/TestAlpakaGlobalProducerE.cc | 59 +++++++++++++++++++ .../AlpakaTest/src/ES_AlpakaESTestData.cc | 3 + .../src/alpaka/ES_AlpakaESTestData.cc | 3 + .../AlpakaTest/test/testAlpakaModules_cfg.py | 17 +++++- 12 files changed, 257 insertions(+), 8 deletions(-) create mode 100644 HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaESProducerE.cc create mode 100644 HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaGlobalProducerE.cc diff --git a/HeterogeneousCore/AlpakaTest/interface/AlpakaESTestData.h b/HeterogeneousCore/AlpakaTest/interface/AlpakaESTestData.h index 1c34de98d4b78..9975feda1b92e 100644 --- a/HeterogeneousCore/AlpakaTest/interface/AlpakaESTestData.h +++ b/HeterogeneousCore/AlpakaTest/interface/AlpakaESTestData.h @@ -2,6 +2,7 @@ #define HeterogeneousCore_AlpakaTest_interface_AlpakaESTestData_h #include "DataFormats/Portable/interface/PortableHostCollection.h" +#include "DataFormats/Portable/interface/PortableCollection.h" #include "HeterogeneousCore/AlpakaInterface/interface/CopyToDevice.h" #include "HeterogeneousCore/AlpakaInterface/interface/config.h" #include "HeterogeneousCore/AlpakaInterface/interface/memory.h" @@ -32,12 +33,52 @@ namespace cms::alpakatest { private: Buffer buffer_; }; + + // Template-over-device model with PortableCollection members + // Demonstrates indirection from one PortableCollection to the other + template + class AlpakaESTestDataE { + public: + using ECollection = PortableCollection; + using EDataCollection = PortableCollection; + + class ConstView { + public: + constexpr ConstView(typename ECollection::ConstView e, typename EDataCollection::ConstView data) + : eView_(e), dataView_(data) {} + + constexpr auto size() const { return eView_.metadata().size(); } + constexpr int val(int i) const { return eView_.val(i); } + constexpr int val2(int i) const { return dataView_.val2(eView_.ind(i)); } + + private: + typename ECollection::ConstView eView_; + typename EDataCollection::ConstView dataView_; + }; + + AlpakaESTestDataE(size_t size, size_t dataSize) : e_(size), data_(dataSize) {} + + AlpakaESTestDataE(ECollection e, EDataCollection data) : e_(std::move(e)), data_(std::move(data)) {} + + ECollection const& e() const { return e_; } + EDataCollection const& data() const { return data_; } + + ConstView view() const { return const_view(); } + ConstView const_view() const { return ConstView(e_.const_view(), data_.const_view()); } + + private: + ECollection e_; + EDataCollection data_; + }; + using AlpakaESTestDataEHost = AlpakaESTestDataE; + } // namespace cms::alpakatest namespace cms::alpakatools { - // Explicit specialization is needed for the template-over-device model + // Explicit specializations are needed for the template-over-device model // - // PortableCollection-based model gets this for free from PortableCollection itself + // PortableCollection-based model gets these for free from PortableCollection itself + template <> struct CopyToDevice> { template @@ -57,6 +98,18 @@ namespace cms::alpakatools { return cms::alpakatest::AlpakaESTestDataB>(std::move(dstBuffer)); } }; + + template <> + struct CopyToDevice { + template + static auto copyAsync(TQueue& queue, cms::alpakatest::AlpakaESTestDataEHost const& srcData) { + using ECopy = CopyToDevice; + using EDataCopy = CopyToDevice; + using TDevice = alpaka::Dev; + return cms::alpakatest::AlpakaESTestDataE(ECopy::copyAsync(queue, srcData.e()), + EDataCopy::copyAsync(queue, srcData.data())); + } + }; } // namespace cms::alpakatools #endif diff --git a/HeterogeneousCore/AlpakaTest/interface/AlpakaESTestSoA.h b/HeterogeneousCore/AlpakaTest/interface/AlpakaESTestSoA.h index d947d2b8f2333..425a248e7f378 100644 --- a/HeterogeneousCore/AlpakaTest/interface/AlpakaESTestSoA.h +++ b/HeterogeneousCore/AlpakaTest/interface/AlpakaESTestSoA.h @@ -10,10 +10,14 @@ namespace cms::alpakatest { GENERATE_SOA_LAYOUT(AlpakaESTestSoALayoutA, SOA_COLUMN(int, z)) GENERATE_SOA_LAYOUT(AlpakaESTestSoALayoutC, SOA_COLUMN(int, x)) GENERATE_SOA_LAYOUT(AlpakaESTestSoALayoutD, SOA_COLUMN(int, y)) + GENERATE_SOA_LAYOUT(AlpakaESTestSoALayoutE, SOA_COLUMN(float, val), SOA_COLUMN(int, ind)) + GENERATE_SOA_LAYOUT(AlpakaESTestSoALayoutEData, SOA_COLUMN(float, val2)) using AlpakaESTestSoAA = AlpakaESTestSoALayoutA<>; using AlpakaESTestSoAC = AlpakaESTestSoALayoutC<>; using AlpakaESTestSoAD = AlpakaESTestSoALayoutD<>; + using AlpakaESTestSoAE = AlpakaESTestSoALayoutE<>; + using AlpakaESTestSoAEData = AlpakaESTestSoALayoutEData<>; } // namespace cms::alpakatest #endif diff --git a/HeterogeneousCore/AlpakaTest/interface/alpaka/AlpakaESTestData.h b/HeterogeneousCore/AlpakaTest/interface/alpaka/AlpakaESTestData.h index 4eca569722b4f..71c3b91d8ba2a 100644 --- a/HeterogeneousCore/AlpakaTest/interface/alpaka/AlpakaESTestData.h +++ b/HeterogeneousCore/AlpakaTest/interface/alpaka/AlpakaESTestData.h @@ -17,11 +17,15 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { using AlpakaESTestDataDHost = cms::alpakatest::AlpakaESTestDataDHost; using AlpakaESTestDataDDevice = PortableCollection; + + using AlpakaESTestDataEHost = cms::alpakatest::AlpakaESTestDataEHost; + using AlpakaESTestDataEDevice = cms::alpakatest::AlpakaESTestDataE; } // namespace ALPAKA_ACCELERATOR_NAMESPACE // check that the portable device collections for the host device are the same as the portable host collections ASSERT_DEVICE_MATCHES_HOST_COLLECTION(AlpakaESTestDataADevice, cms::alpakatest::AlpakaESTestDataAHost); ASSERT_DEVICE_MATCHES_HOST_COLLECTION(AlpakaESTestDataCDevice, cms::alpakatest::AlpakaESTestDataCHost); ASSERT_DEVICE_MATCHES_HOST_COLLECTION(AlpakaESTestDataDDevice, cms::alpakatest::AlpakaESTestDataDHost); +ASSERT_DEVICE_MATCHES_HOST_COLLECTION(AlpakaESTestDataEDevice, cms::alpakatest::AlpakaESTestDataEHost); #endif // HeterogeneousCore_AlpakaTest_interface_alpaka_AlpakaESTestData_h diff --git a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.dev.cc b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.dev.cc index 9dab03aac0823..69125e6382cbd 100644 --- a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.dev.cc +++ b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.dev.cc @@ -82,4 +82,54 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { alpaka::exec(queue, workDiv, TestAlgoStructKernel{}, object.data(), x, y, z, id); } + class TestAlgoKernelUpdate { + public: + template >> + ALPAKA_FN_ACC void operator()(TAcc const& acc, + portabletest::TestDeviceCollection::ConstView input, + AlpakaESTestDataEDevice::ConstView esData, + portabletest::TestDeviceCollection::View output) const { + // global index of the thread within the grid + const int32_t thread = alpaka::getIdx(acc)[0u]; + + // set this only once in the whole kernel grid + if (thread == 0) { + output.r() = input.r(); + } + + // make a strided loop over the kernel grid, covering up to "size" elements + for (int32_t i : elements_with_stride(acc, output.metadata().size())) { + // just to test it compiles + double x = input[i].x(); + if (i < esData.size()) { + x += esData.val(i) + esData.val2(i); + } + // zero it back so the AlpakaTestAnalyzer assert doesn't fire + x -= x * 1.0; + output[i] = {x, input[i].y(), input[i].z(), input[i].id(), input[i].flags(), input[i].m()}; + } + } + }; + + portabletest::TestDeviceCollection TestAlgo::update(Queue& queue, + portabletest::TestDeviceCollection const& input, + AlpakaESTestDataEDevice const& esData) const { + portabletest::TestDeviceCollection collection{input->metadata().size(), queue}; + + // use 64 items per group (this value is arbitrary, but it's a reasonable starting point) + uint32_t items = 64; + + // use as many groups as needed to cover the whole problem + uint32_t groups = divide_up_by(collection->metadata().size(), items); + + // map items to + // - threads with a single element per thread on a GPU backend + // - elements within a single thread on a CPU backend + auto workDiv = make_workdiv(groups, items); + + alpaka::exec(queue, workDiv, TestAlgoKernelUpdate{}, input.view(), esData.view(), collection.view()); + + return collection; + } + } // namespace ALPAKA_ACCELERATOR_NAMESPACE diff --git a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.h b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.h index e54a606275b37..e9eca3f364b54 100644 --- a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.h +++ b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.h @@ -4,6 +4,7 @@ #include "DataFormats/PortableTestObjects/interface/alpaka/TestDeviceCollection.h" #include "DataFormats/PortableTestObjects/interface/alpaka/TestDeviceObject.h" #include "HeterogeneousCore/AlpakaInterface/interface/config.h" +#include "HeterogeneousCore/AlpakaTest/interface/alpaka/AlpakaESTestData.h" namespace ALPAKA_ACCELERATOR_NAMESPACE { @@ -12,6 +13,10 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { void fill(Queue& queue, portabletest::TestDeviceCollection& collection, double xvalue = 0.) const; void fillObject( Queue& queue, portabletest::TestDeviceObject& object, double x, double y, double z, int32_t id) const; + + portabletest::TestDeviceCollection update(Queue& queue, + portabletest::TestDeviceCollection const& input, + AlpakaESTestDataEDevice const& esData) const; }; } // namespace ALPAKA_ACCELERATOR_NAMESPACE diff --git a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaESProducerA.cc b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaESProducerA.cc index e0fd86c9a48c1..2bfe90ecf196b 100644 --- a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaESProducerA.cc +++ b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaESProducerA.cc @@ -1,9 +1,9 @@ -#include "FWCore/Framework/interface/ESTransientHandle.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/Utilities/interface/ESGetToken.h" #include "HeterogeneousCore/AlpakaCore/interface/alpaka/ESProducer.h" #include "HeterogeneousCore/AlpakaCore/interface/alpaka/ModuleFactory.h" #include "HeterogeneousCore/AlpakaInterface/interface/config.h" +#include "HeterogeneousCore/AlpakaInterface/interface/host.h" #include "HeterogeneousCore/AlpakaInterface/interface/memory.h" #include "HeterogeneousCore/AlpakaTest/interface/AlpakaESTestRecords.h" #include "HeterogeneousCore/AlpakaTest/interface/ESTestData.h" diff --git a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaESProducerC.cc b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaESProducerC.cc index 3db197f36e2e4..b6784b717d91d 100644 --- a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaESProducerC.cc +++ b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaESProducerC.cc @@ -1,13 +1,10 @@ -#include "FWCore/Framework/interface/ESTransientHandle.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/Utilities/interface/ESGetToken.h" -#include "HeterogeneousCore/AlpakaCore/interface/alpaka/ESGetToken.h" #include "HeterogeneousCore/AlpakaCore/interface/alpaka/ESProducer.h" #include "HeterogeneousCore/AlpakaCore/interface/alpaka/ModuleFactory.h" #include "HeterogeneousCore/AlpakaInterface/interface/config.h" #include "HeterogeneousCore/AlpakaInterface/interface/host.h" #include "HeterogeneousCore/AlpakaInterface/interface/memory.h" -#include "HeterogeneousCore/AlpakaTest/interface/AlpakaESTestData.h" #include "HeterogeneousCore/AlpakaTest/interface/AlpakaESTestRecords.h" #include "HeterogeneousCore/AlpakaTest/interface/ESTestData.h" #include "HeterogeneousCore/AlpakaTest/interface/alpaka/AlpakaESTestData.h" diff --git a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaESProducerE.cc b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaESProducerE.cc new file mode 100644 index 0000000000000..1285ac0347706 --- /dev/null +++ b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaESProducerE.cc @@ -0,0 +1,58 @@ +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/Utilities/interface/ESGetToken.h" +#include "HeterogeneousCore/AlpakaCore/interface/alpaka/ESProducer.h" +#include "HeterogeneousCore/AlpakaCore/interface/alpaka/ModuleFactory.h" +#include "HeterogeneousCore/AlpakaInterface/interface/config.h" +#include "HeterogeneousCore/AlpakaInterface/interface/host.h" +#include "HeterogeneousCore/AlpakaInterface/interface/memory.h" +#include "HeterogeneousCore/AlpakaTest/interface/AlpakaESTestRecords.h" +#include "HeterogeneousCore/AlpakaTest/interface/ESTestData.h" +#include "HeterogeneousCore/AlpakaTest/interface/alpaka/AlpakaESTestData.h" + +#include + +namespace ALPAKA_ACCELERATOR_NAMESPACE { + /** + * This class demonstrates an ESProducer that uses the + * PortableCollection-based data model, and that consumes a standard + * host ESProduct and converts the data into PortableCollection, and + * implicitly transfers the data product to device + */ + class TestAlpakaESProducerE : public ESProducer { + public: + TestAlpakaESProducerE(edm::ParameterSet const& iConfig) : ESProducer(iConfig) { + auto cc = setWhatProduced(this); + token_ = cc.consumes(); + } + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + descriptions.addWithDefaultLabel(desc); + } + + std::optional produce(AlpakaESTestRecordC const& iRecord) { + auto const& input = iRecord.get(token_); + + int const edatasize = 2; + AlpakaESTestDataEHost::EDataCollection data(edatasize, cms::alpakatools::host()); + for (int i = 0; i < edatasize; ++i) { + data.view()[i].val2() = i * 10 + 1; + } + + int const esize = 5; + // TODO: pinned allocation? + // TODO: cached allocation? + AlpakaESTestDataEHost::ECollection e(esize, cms::alpakatools::host()); + for (int i = 0; i < esize; ++i) { + e.view()[i].val() = std::abs(input.value()) + i * 2; + e.view()[i].ind() = i % edatasize; + } + return AlpakaESTestDataEHost(std::move(e), std::move(data)); + } + + private: + edm::ESGetToken token_; + }; +} // namespace ALPAKA_ACCELERATOR_NAMESPACE + +DEFINE_FWK_EVENTSETUP_ALPAKA_MODULE(TestAlpakaESProducerE); diff --git a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaGlobalProducerE.cc b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaGlobalProducerE.cc new file mode 100644 index 0000000000000..95d1423fdf2bc --- /dev/null +++ b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlpakaGlobalProducerE.cc @@ -0,0 +1,59 @@ +#include "DataFormats/PortableTestObjects/interface/alpaka/TestDeviceCollection.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" +#include "FWCore/Utilities/interface/InputTag.h" +#include "HeterogeneousCore/AlpakaCore/interface/alpaka/global/EDProducer.h" +#include "HeterogeneousCore/AlpakaCore/interface/alpaka/EDPutToken.h" +#include "HeterogeneousCore/AlpakaCore/interface/alpaka/ESGetToken.h" +#include "HeterogeneousCore/AlpakaInterface/interface/config.h" +#include "HeterogeneousCore/AlpakaTest/interface/AlpakaESTestRecords.h" +#include "HeterogeneousCore/AlpakaTest/interface/alpaka/AlpakaESTestData.h" + +#include "TestAlgo.h" + +namespace ALPAKA_ACCELERATOR_NAMESPACE { + /** + * This class demonstrates a global EDProducer that + * - consumes a device ESProduct + * - consumes a device EDProduct + * - produces a device EDProduct (that can get transferred to host automatically) + */ + class TestAlpakaGlobalProducerE : public global::EDProducer<> { + public: + TestAlpakaGlobalProducerE(edm::ParameterSet const& config) + : esToken_(esConsumes(config.getParameter("eventSetupSource"))), + getToken_(consumes(config.getParameter("source"))), + putToken_{produces()} {} + + void produce(edm::StreamID, device::Event& iEvent, device::EventSetup const& iSetup) const override { + auto const& esData = iSetup.getData(esToken_); + auto const& input = iEvent.get(getToken_); + + // run the algorithm, potentially asynchronously + auto deviceProduct = algo_.update(iEvent.queue(), input, esData); + + iEvent.emplace(putToken_, std::move(deviceProduct)); + } + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.add("eventSetupSource", edm::ESInputTag{}); + desc.add("source", edm::InputTag{}); + + descriptions.addWithDefaultLabel(desc); + } + + private: + const device::ESGetToken esToken_; + const device::EDGetToken getToken_; + const device::EDPutToken putToken_; + + // implementation of the algorithm + TestAlgo algo_; + }; + +} // namespace ALPAKA_ACCELERATOR_NAMESPACE + +#include "HeterogeneousCore/AlpakaCore/interface/alpaka/MakerMacros.h" +DEFINE_FWK_ALPAKA_MODULE(TestAlpakaGlobalProducerE); diff --git a/HeterogeneousCore/AlpakaTest/src/ES_AlpakaESTestData.cc b/HeterogeneousCore/AlpakaTest/src/ES_AlpakaESTestData.cc index 6e5c253fcd9f7..b6b2adaa98d81 100644 --- a/HeterogeneousCore/AlpakaTest/src/ES_AlpakaESTestData.cc +++ b/HeterogeneousCore/AlpakaTest/src/ES_AlpakaESTestData.cc @@ -8,3 +8,6 @@ TYPELOOKUP_DATA_REG(cms::alpakatest::AlpakaESTestDataDHost); // Template-over-device model TYPELOOKUP_DATA_REG(cms::alpakatest::AlpakaESTestDataB); + +// Template-over-device model with PortableCollection members +TYPELOOKUP_DATA_REG(cms::alpakatest::AlpakaESTestDataEHost); diff --git a/HeterogeneousCore/AlpakaTest/src/alpaka/ES_AlpakaESTestData.cc b/HeterogeneousCore/AlpakaTest/src/alpaka/ES_AlpakaESTestData.cc index 8af0c172ef83f..f5093b6bf2e9d 100644 --- a/HeterogeneousCore/AlpakaTest/src/alpaka/ES_AlpakaESTestData.cc +++ b/HeterogeneousCore/AlpakaTest/src/alpaka/ES_AlpakaESTestData.cc @@ -9,3 +9,6 @@ TYPELOOKUP_ALPAKA_DATA_REG(AlpakaESTestDataDDevice); // Template-over-device model #include "HeterogeneousCore/AlpakaTest/interface/AlpakaESTestData.h" TYPELOOKUP_ALPAKA_TEMPLATED_DATA_REG(cms::alpakatest::AlpakaESTestDataB); + +// Template-over-device model with PortableCollection members +TYPELOOKUP_ALPAKA_TEMPLATED_DATA_REG(cms::alpakatest::AlpakaESTestDataE); diff --git a/HeterogeneousCore/AlpakaTest/test/testAlpakaModules_cfg.py b/HeterogeneousCore/AlpakaTest/test/testAlpakaModules_cfg.py index 406833b920eb0..86ea8ef673669 100644 --- a/HeterogeneousCore/AlpakaTest/test/testAlpakaModules_cfg.py +++ b/HeterogeneousCore/AlpakaTest/test/testAlpakaModules_cfg.py @@ -54,6 +54,7 @@ srcA = cms.ESInputTag("", "appendedLabel"), srcB = cms.ESInputTag("", "explicitLabel"), ) +process.alpakaESProducerE = cms.ESProducer("TestAlpakaESProducerE@alpaka") process.alpakaESProducerNull = cms.ESProducer("TestAlpakaESProducerNull@alpaka", appendToDataLabel = cms.string("null"), ) @@ -69,6 +70,9 @@ alpaka_rocm_async = 30, ) ) +process.alpakaGlobalProducerE = cms.EDProducer("TestAlpakaGlobalProducerE@alpaka", + source = cms.InputTag("alpakaGlobalProducer") +) process.alpakaStreamProducer = cms.EDProducer("TestAlpakaStreamProducer@alpaka", source = cms.InputTag("intProduct"), eventSetupSource = cms.ESInputTag("alpakaESProducerB", "explicitLabel"), @@ -99,6 +103,9 @@ expectSize = cms.int32(10), expectBackend = cms.string("SerialSync") ) +process.alpakaGlobalConsumerE = process.alpakaGlobalConsumer.clone( + source = "alpakaGlobalProducerE" +) process.alpakaStreamConsumer = cms.EDAnalyzer("TestAlpakaAnalyzer", source = cms.InputTag("alpakaStreamProducer"), expectSize = cms.int32(5), @@ -121,8 +128,10 @@ if args.processAcceleratorBackend != "": process.ProcessAcceleratorAlpaka.setBackend(args.processAcceleratorBackend) if args.moduleBackend != "": - for name in ["ESProducerA", "ESProducerB", "ESProducerC", "ESProducerD", "ESProducerNull", - "GlobalProducer", "StreamProducer", "StreamInstanceProducer", "StreamSynchronizingProducer", + for name in ["ESProducerA", "ESProducerB", "ESProducerC", "ESProducerD", "ESProducerE", + "ESProducerNull", + "GlobalProducer", "GlobalProducerE", + "StreamProducer", "StreamInstanceProducer", "StreamSynchronizingProducer", "NullESConsumer"]: mod = getattr(process, "alpaka"+name) mod.alpaka = cms.untracked.PSet(backend = cms.untracked.string(args.moduleBackend)) @@ -131,6 +140,7 @@ def setExpect(m, size): m.expectSize = size m.expectBackend = "CudaAsync" setExpect(process.alpakaGlobalConsumer, size=20) + setExpect(process.alpakaGlobalConsumerE, size=20) setExpect(process.alpakaStreamConsumer, size=25) setExpect(process.alpakaStreamInstanceConsumer, size=36) setExpect(process.alpakaStreamSynchronizingConsumer, size=20) @@ -139,6 +149,7 @@ def setExpect(m, size): m.expectSize = size m.expectBackend = "ROCmAsync" setExpect(process.alpakaGlobalConsumer, size = 30) + setExpect(process.alpakaGlobalConsumerE, size = 30) setExpect(process.alpakaStreamConsumer, size = 125) setExpect(process.alpakaStreamInstanceConsumer, size = 216) setExpect(process.alpakaStreamSynchronizingConsumer, size = 30) @@ -156,12 +167,14 @@ def setExpect(m, size): process.t = cms.Task( process.intProduct, process.alpakaGlobalProducer, + process.alpakaGlobalProducerE, process.alpakaStreamProducer, process.alpakaStreamInstanceProducer, process.alpakaStreamSynchronizingProducer ) process.p = cms.Path( process.alpakaGlobalConsumer+ + process.alpakaGlobalConsumerE+ process.alpakaStreamConsumer+ process.alpakaStreamInstanceConsumer+ process.alpakaStreamSynchronizingConsumer+ From 40ebc962ee3804f1c4642e99724eabcdc093fe30 Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Thu, 4 Jan 2024 00:07:57 +0100 Subject: [PATCH 225/281] Use once_per_grid() in TestAlgo --- .../AlpakaTest/plugins/alpaka/TestAlgo.dev.cc | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.dev.cc b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.dev.cc index 69125e6382cbd..c043bb6aaf394 100644 --- a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.dev.cc +++ b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.dev.cc @@ -23,13 +23,11 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { portabletest::TestDeviceCollection::View view, int32_t size, double xvalue) const { - // global index of the thread within the grid - const int32_t thread = alpaka::getIdx(acc)[0u]; const portabletest::Matrix matrix{{1, 2, 3, 4, 5, 6}, {2, 4, 6, 8, 10, 12}, {3, 6, 9, 12, 15, 18}}; const portabletest::Array flags = {{6, 4, 2, 0}}; // set this only once in the whole kernel grid - if (thread == 0) { + if (once_per_grid(acc)) { view.r() = 1.; } @@ -89,11 +87,8 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { portabletest::TestDeviceCollection::ConstView input, AlpakaESTestDataEDevice::ConstView esData, portabletest::TestDeviceCollection::View output) const { - // global index of the thread within the grid - const int32_t thread = alpaka::getIdx(acc)[0u]; - // set this only once in the whole kernel grid - if (thread == 0) { + if (once_per_grid(acc)) { output.r() = input.r(); } From 362668582721e6e4f6ced870f7b79431e6d38fa6 Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Mon, 8 Jan 2024 23:54:07 +0100 Subject: [PATCH 226/281] Allow TestAlpakaAnalyzer to test for non-zero SoA x values --- .../AlpakaTest/plugins/TestAlpakaAnalyzer.cc | 14 ++++++++++++-- .../AlpakaTest/plugins/alpaka/TestAlgo.dev.cc | 3 --- .../AlpakaTest/test/testAlpakaModules_cfg.py | 5 ++++- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/HeterogeneousCore/AlpakaTest/plugins/TestAlpakaAnalyzer.cc b/HeterogeneousCore/AlpakaTest/plugins/TestAlpakaAnalyzer.cc index 7698121a523b1..e1834ff95a31f 100644 --- a/HeterogeneousCore/AlpakaTest/plugins/TestAlpakaAnalyzer.cc +++ b/HeterogeneousCore/AlpakaTest/plugins/TestAlpakaAnalyzer.cc @@ -85,7 +85,8 @@ class TestAlpakaAnalyzer : public edm::global::EDAnalyzer<> { TestAlpakaAnalyzer(edm::ParameterSet const& config) : source_{config.getParameter("source")}, token_{consumes(source_)}, - expectSize_{config.getParameter("expectSize")} { + expectSize_{config.getParameter("expectSize")}, + expectXvalues_{config.getParameter>("expectXvalues")} { if (std::string const& eb = config.getParameter("expectBackend"); not eb.empty()) { expectBackend_ = cms::alpakatools::toBackend(eb); backendToken_ = consumes(edm::InputTag(source_.label(), "backend", source_.process())); @@ -146,7 +147,10 @@ class TestAlpakaAnalyzer : public edm::global::EDAnalyzer<> { assert(view.r() == 1.); for (int32_t i = 0; i < view.metadata().size(); ++i) { auto vi = view[i]; - assert(vi.x() == 0.); + if (not expectXvalues_.empty() and vi.x() != expectXvalues_[i % expectXvalues_.size()]) { + throw cms::Exception("Assert") << "Index " << i << " expected value " + << expectXvalues_[i % expectXvalues_.size()] << ", got " << vi.x(); + } assert(vi.y() == 0.); assert(vi.z() == 0.); assert(vi.id() == i); @@ -168,6 +172,11 @@ class TestAlpakaAnalyzer : public edm::global::EDAnalyzer<> { desc.add("source"); desc.add("expectSize", -1) ->setComment("Expected size of the input collection. Values < 0 mean the check is not performed. Default: -1"); + desc.add>("expectXvalues", std::vector(0.)) + ->setComment( + "Expected values of the 'x' field in the input collection. Empty value means to not perform the check. If " + "input collection has more elements than this parameter, the parameter values are looped over. Default: " + "{0.}"); desc.add("expectBackend", "") ->setComment( "Expected backend of the input collection. Empty value means to not perform the check. Default: empty " @@ -181,6 +190,7 @@ class TestAlpakaAnalyzer : public edm::global::EDAnalyzer<> { edm::EDGetTokenT backendToken_; std::optional expectBackend_; const int expectSize_; + const std::vector expectXvalues_; }; #include "FWCore/Framework/interface/MakerMacros.h" diff --git a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.dev.cc b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.dev.cc index c043bb6aaf394..e574da64ef84e 100644 --- a/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.dev.cc +++ b/HeterogeneousCore/AlpakaTest/plugins/alpaka/TestAlgo.dev.cc @@ -94,13 +94,10 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE { // make a strided loop over the kernel grid, covering up to "size" elements for (int32_t i : elements_with_stride(acc, output.metadata().size())) { - // just to test it compiles double x = input[i].x(); if (i < esData.size()) { x += esData.val(i) + esData.val2(i); } - // zero it back so the AlpakaTestAnalyzer assert doesn't fire - x -= x * 1.0; output[i] = {x, input[i].y(), input[i].z(), input[i].id(), input[i].flags(), input[i].m()}; } } diff --git a/HeterogeneousCore/AlpakaTest/test/testAlpakaModules_cfg.py b/HeterogeneousCore/AlpakaTest/test/testAlpakaModules_cfg.py index 86ea8ef673669..331fac9b84312 100644 --- a/HeterogeneousCore/AlpakaTest/test/testAlpakaModules_cfg.py +++ b/HeterogeneousCore/AlpakaTest/test/testAlpakaModules_cfg.py @@ -104,7 +104,8 @@ expectBackend = cms.string("SerialSync") ) process.alpakaGlobalConsumerE = process.alpakaGlobalConsumer.clone( - source = "alpakaGlobalProducerE" + source = "alpakaGlobalProducerE", + expectXvalues = cms.vdouble([(i%2)*10+1 + abs(27)+i*2 for i in range(0,5)] + [0]*5) ) process.alpakaStreamConsumer = cms.EDAnalyzer("TestAlpakaAnalyzer", source = cms.InputTag("alpakaStreamProducer"), @@ -141,6 +142,7 @@ def setExpect(m, size): m.expectBackend = "CudaAsync" setExpect(process.alpakaGlobalConsumer, size=20) setExpect(process.alpakaGlobalConsumerE, size=20) + process.alpakaGlobalConsumerE.expectXvalues.extend([0]*(20-10)) setExpect(process.alpakaStreamConsumer, size=25) setExpect(process.alpakaStreamInstanceConsumer, size=36) setExpect(process.alpakaStreamSynchronizingConsumer, size=20) @@ -150,6 +152,7 @@ def setExpect(m, size): m.expectBackend = "ROCmAsync" setExpect(process.alpakaGlobalConsumer, size = 30) setExpect(process.alpakaGlobalConsumerE, size = 30) + process.alpakaGlobalConsumerE.expectXvalues.extend([0]*(30-10)) setExpect(process.alpakaStreamConsumer, size = 125) setExpect(process.alpakaStreamInstanceConsumer, size = 216) setExpect(process.alpakaStreamSynchronizingConsumer, size = 30) From ac7df69fa9a8478f7624540679b6b6162759f50d Mon Sep 17 00:00:00 2001 From: Chris Jones Date: Tue, 9 Jan 2024 10:03:57 -0600 Subject: [PATCH 227/281] Added listPathStatus parameter to EventContentAnalyzer Improved handling of Parameters by only declaring default values in fillDescriptions. --- FWCore/Modules/src/EventContentAnalyzer.cc | 39 ++++++++++++---------- 1 file changed, 22 insertions(+), 17 deletions(-) diff --git a/FWCore/Modules/src/EventContentAnalyzer.cc b/FWCore/Modules/src/EventContentAnalyzer.cc index af5acd0136133..5d4d01454f471 100644 --- a/FWCore/Modules/src/EventContentAnalyzer.cc +++ b/FWCore/Modules/src/EventContentAnalyzer.cc @@ -278,21 +278,23 @@ namespace edm { std::map cumulates_; bool listContent_; bool listProvenance_; + bool listPathStatus_; }; // // constructors and destructor // EventContentAnalyzer::EventContentAnalyzer(ParameterSet const& iConfig) - : indentation_(iConfig.getUntrackedParameter("indentation", std::string("++"))), - verboseIndentation_(iConfig.getUntrackedParameter("verboseIndentation", std::string(" "))), - moduleLabels_(iConfig.getUntrackedParameter("verboseForModuleLabels", std::vector())), - verbose_(iConfig.getUntrackedParameter("verbose", false) || !moduleLabels_.empty()), - getModuleLabels_(iConfig.getUntrackedParameter("getDataForModuleLabels", std::vector())), - getData_(iConfig.getUntrackedParameter("getData", false) || !getModuleLabels_.empty()), + : indentation_(iConfig.getUntrackedParameter("indentation")), + verboseIndentation_(iConfig.getUntrackedParameter("verboseIndentation")), + moduleLabels_(iConfig.getUntrackedParameter>("verboseForModuleLabels")), + verbose_(iConfig.getUntrackedParameter("verbose") || !moduleLabels_.empty()), + getModuleLabels_(iConfig.getUntrackedParameter>("getDataForModuleLabels")), + getData_(iConfig.getUntrackedParameter("getData") || !getModuleLabels_.empty()), evno_(1), - listContent_(iConfig.getUntrackedParameter("listContent", true)), - listProvenance_(iConfig.getUntrackedParameter("listProvenance", false)) { + listContent_(iConfig.getUntrackedParameter("listContent")), + listProvenance_(iConfig.getUntrackedParameter("listProvenance")), + listPathStatus_(iConfig.getUntrackedParameter("listPathStatus")) { //now do what ever initialization is needed sort_all(moduleLabels_); sort_all(getModuleLabels_); @@ -347,7 +349,7 @@ namespace edm { std::string const& className = provenance->className(); const std::string kPathStatus("edm::PathStatus"); const std::string kEndPathStatus("edm::EndPathStatus"); - if (className == kPathStatus || className == kEndPathStatus) { + if (not listPathStatus_ and (className == kPathStatus || className == kEndPathStatus)) { continue; } std::string const& friendlyName = provenance->friendlyClassName(); @@ -448,36 +450,39 @@ namespace edm { ParameterDescriptionNode* np; std::string defaultString("++"); - np = desc.addOptionalUntracked("indentation", defaultString); + np = desc.addUntracked("indentation", defaultString); np->setComment("This string is printed at the beginning of every line printed during event processing."); - np = desc.addOptionalUntracked("verbose", false); + np = desc.addUntracked("verbose", false); np->setComment("If true, the contents of products are printed."); defaultString = " "; - np = desc.addOptionalUntracked("verboseIndentation", defaultString); + np = desc.addUntracked("verboseIndentation", defaultString); np->setComment( "This string is used to further indent lines when printing the contents of products in verbose mode."); std::vector defaultVString; - np = desc.addOptionalUntracked >("verboseForModuleLabels", defaultVString); + np = desc.addUntracked>("verboseForModuleLabels", defaultVString); np->setComment("If this vector is not empty, then only products with module labels on this list are printed."); - np = desc.addOptionalUntracked("getData", false); + np = desc.addUntracked("getData", false); np->setComment("If true the products will be retrieved using getByLabel."); - np = desc.addOptionalUntracked >("getDataForModuleLabels", defaultVString); + np = desc.addUntracked>("getDataForModuleLabels", defaultVString); np->setComment( "If this vector is not empty, then only products with module labels on this list are retrieved by getByLabel."); - np = desc.addOptionalUntracked("listContent", true); + np = desc.addUntracked("listContent", true); np->setComment("If true then print a list of all the event content."); - np = desc.addOptionalUntracked("listProvenance", false); + np = desc.addUntracked("listProvenance", false); np->setComment("If true, and if listContent or verbose is true, print provenance information for each product"); + desc.addUntracked("listPathStatus", false) + ->setComment("If true, also show PathStatus/EndPathStatus data products."); descriptions.add("printContent", desc); + descriptions.addDefault(desc); } } // namespace edm From 7f9df85b75bf6fecff9f1be1327a4bce9408435e Mon Sep 17 00:00:00 2001 From: Chris Jones Date: Tue, 9 Jan 2024 10:11:50 -0600 Subject: [PATCH 228/281] Drop EndPathStatus usage in cases where not needed If there is only one EndPath in the job, then there is no need for the EndPathStatus. This avoids adding the data product in standard merge jobs. This avoids having the branch list index get out of sync with the ProcessHistory list. --- FWCore/Framework/src/Path.cc | 12 +- .../src/PathsAndConsumesOfModules.cc | 13 +- FWCore/Framework/src/Schedule.cc | 17 +- FWCore/Framework/src/StreamSchedule.cc | 17 +- FWCore/Integration/test/BuildFile.xml | 2 + .../Integration/test/check_empty_event_cfg.py | 14 + .../test/unit_test_outputs/testGetBy1.log | 704 +- .../test/unit_test_outputs/testGetBy2.log | 336 +- .../testSubProcess.grep2.txt | 6920 ++++++++--------- .../unit_test_outputs/testMultiStreamDump.txt | 10 +- .../testRandomService1Dump.txt | 10 +- 11 files changed, 3957 insertions(+), 4098 deletions(-) create mode 100644 FWCore/Integration/test/check_empty_event_cfg.py diff --git a/FWCore/Framework/src/Path.cc b/FWCore/Framework/src/Path.cc index b9498a03ff23c..ba6462aa6f3e1 100644 --- a/FWCore/Framework/src/Path.cc +++ b/FWCore/Framework/src/Path.cc @@ -311,11 +311,13 @@ namespace edm { if (pathStatusInserter_) { // pathStatusInserter is null for EndPaths pathStatusInserter_->setPathStatus(streamID, status); } - std::exception_ptr jException = - pathStatusInserterWorker_->runModuleDirectly>( - iInfo, streamID, ParentContext(iContext), iContext); - if (jException && not iException) { - iException = jException; + if (pathStatusInserterWorker_) { + std::exception_ptr jException = + pathStatusInserterWorker_->runModuleDirectly>( + iInfo, streamID, ParentContext(iContext), iContext); + if (jException && not iException) { + iException = jException; + } } actReg_->postPathEventSignal_(*iContext, pathContext_, status); } catch (...) { diff --git a/FWCore/Framework/src/PathsAndConsumesOfModules.cc b/FWCore/Framework/src/PathsAndConsumesOfModules.cc index 343015af93415..ae52bdd4ebac9 100644 --- a/FWCore/Framework/src/PathsAndConsumesOfModules.cc +++ b/FWCore/Framework/src/PathsAndConsumesOfModules.cc @@ -425,12 +425,14 @@ namespace edm { statusOfModules[mod->id()].pathsOn_.push_back(p + offset); } } - status.nModules_ = uniqueModules.size() + 1; + status.nModules_ = uniqueModules.size(); //add the EndPathStatusInserter at the end auto found = pathStatusInserterModuleLabelToModuleID.find(iPnC.endPaths()[p]); - assert(found != pathStatusInserterModuleLabelToModuleID.end()); - status.modulesOnPath_.push_back(found->second); + if (found != pathStatusInserterModuleLabelToModuleID.end()) { + status.modulesOnPath_.push_back(found->second); + ++status.nModules_; + } } } @@ -450,6 +452,11 @@ namespace edm { } unsigned int nPathsFinished = 0; + for (auto const& status : statusOfPaths) { + if (status.nModules_ == 0) { + ++nPathsFinished; + } + } //if a circular dependency exception happens, stackTrace has the info std::vector stackTrace; diff --git a/FWCore/Framework/src/Schedule.cc b/FWCore/Framework/src/Schedule.cc index 6c32305da7be5..da81825479246 100644 --- a/FWCore/Framework/src/Schedule.cc +++ b/FWCore/Framework/src/Schedule.cc @@ -510,13 +510,16 @@ namespace edm { processConfiguration, std::string("PathStatusInserter")); - makePathStatusInserters(endPathStatusInserters_, - *endPathNames_, - prealloc, - preg, - areg, - processConfiguration, - std::string("EndPathStatusInserter")); + if (endPathNames_->size() > 1) { + //NOTE: FinalPaths are a type of EndPath + makePathStatusInserters(endPathStatusInserters_, + *endPathNames_, + prealloc, + preg, + areg, + processConfiguration, + std::string("EndPathStatusInserter")); + } assert(0 < prealloc.numberOfStreams()); streamSchedules_.reserve(prealloc.numberOfStreams()); diff --git a/FWCore/Framework/src/StreamSchedule.cc b/FWCore/Framework/src/StreamSchedule.cc index 433f60b78c5c2..d1a4d1df2a393 100644 --- a/FWCore/Framework/src/StreamSchedule.cc +++ b/FWCore/Framework/src/StreamSchedule.cc @@ -1027,13 +1027,16 @@ namespace edm { return; } } - for (int empty_end_path : empty_end_paths_) { - std::exception_ptr except = endPathStatusInserterWorkers_[empty_end_path] - ->runModuleDirectly>( - info, streamID_, ParentContext(&streamContext_), &streamContext_); - if (except) { - iTask.doneWaiting(except); - return; + if (not endPathStatusInserterWorkers_.empty()) { + for (int empty_end_path : empty_end_paths_) { + std::exception_ptr except = + endPathStatusInserterWorkers_[empty_end_path] + ->runModuleDirectly>( + info, streamID_, ParentContext(&streamContext_), &streamContext_); + if (except) { + iTask.doneWaiting(except); + return; + } } } diff --git a/FWCore/Integration/test/BuildFile.xml b/FWCore/Integration/test/BuildFile.xml index 1cdb6b8998d14..311b05c92f470 100644 --- a/FWCore/Integration/test/BuildFile.xml +++ b/FWCore/Integration/test/BuildFile.xml @@ -96,6 +96,8 @@ + + diff --git a/FWCore/Integration/test/check_empty_event_cfg.py b/FWCore/Integration/test/check_empty_event_cfg.py new file mode 100644 index 0000000000000..bb0c69925e27a --- /dev/null +++ b/FWCore/Integration/test/check_empty_event_cfg.py @@ -0,0 +1,14 @@ +import FWCore.ParameterSet.Config as cms + +process = cms.Process("EMPTY") + +process.test = cms.EDAnalyzer("EventContentAnalyzer", listPathStatus = cms.untracked.bool(True)) + +process.e = cms.EndPath(process.test) + +#process.out = cms.OutputModule("AsciiOutputModule") +#process.e2 = cms.EndPath(process.out) + +process.source = cms.Source("EmptySource") + +process.maxEvents.input = 1 diff --git a/FWCore/Integration/test/unit_test_outputs/testGetBy1.log b/FWCore/Integration/test/unit_test_outputs/testGetBy1.log index 44ddb24a353aa..1b5454140ad28 100644 --- a/FWCore/Integration/test/unit_test_outputs/testGetBy1.log +++ b/FWCore/Integration/test/unit_test_outputs/testGetBy1.log @@ -6,73 +6,69 @@ Module type=IntSource, Module label=source, Parameter Set ID=6f0b3d3a362a6270c80 ++++ finished: constructing module with label 'TriggerResults' id = 1 ++++ starting: constructing module with label 'p' id = 2 ++++ finished: constructing module with label 'p' id = 2 -++++ starting: constructing module with label 'e' id = 3 -++++ finished: constructing module with label 'e' id = 3 -++++ starting: constructing module with label 'intProducer' id = 4 -++++ finished: constructing module with label 'intProducer' id = 4 -++++ starting: constructing module with label 'a1' id = 5 +++++ starting: constructing module with label 'intProducer' id = 3 +++++ finished: constructing module with label 'intProducer' id = 3 +++++ starting: constructing module with label 'a1' id = 4 Module type=TestFindProduct, Module label=a1, Parameter Set ID=a7caa43fcf5ef35dee69e4bd85169d4c -++++ finished: constructing module with label 'a1' id = 5 +++++ finished: constructing module with label 'a1' id = 4 Module type=TestFindProduct, Module label=a1, Parameter Set ID=a7caa43fcf5ef35dee69e4bd85169d4c -++++ starting: constructing module with label 'a2' id = 6 -++++ finished: constructing module with label 'a2' id = 6 -++++ starting: constructing module with label 'a3' id = 7 -++++ finished: constructing module with label 'a3' id = 7 -++++ starting: constructing module with label 'out' id = 8 -++++ finished: constructing module with label 'out' id = 8 -++++ starting: constructing module with label 'intProducerA' id = 9 +++++ starting: constructing module with label 'a2' id = 5 +++++ finished: constructing module with label 'a2' id = 5 +++++ starting: constructing module with label 'a3' id = 6 +++++ finished: constructing module with label 'a3' id = 6 +++++ starting: constructing module with label 'out' id = 7 +++++ finished: constructing module with label 'out' id = 7 +++++ starting: constructing module with label 'intProducerA' id = 8 Module type=IntProducer, Module label=intProducerA, Parameter Set ID=56ea7c8bbb02df4e1c3b945954838318 -++++ finished: constructing module with label 'intProducerA' id = 9 +++++ finished: constructing module with label 'intProducerA' id = 8 Module type=IntProducer, Module label=intProducerA, Parameter Set ID=56ea7c8bbb02df4e1c3b945954838318 -++++ starting: constructing module with label 'intProducerB' id = 10 -++++ finished: constructing module with label 'intProducerB' id = 10 -++++ starting: constructing module with label 'intProducerBeginProcessBlock' id = 11 -++++ finished: constructing module with label 'intProducerBeginProcessBlock' id = 11 -++++ starting: constructing module with label 'intProducerEndProcessBlock' id = 12 -++++ finished: constructing module with label 'intProducerEndProcessBlock' id = 12 -++++ starting: constructing module with label 'intProducerU' id = 13 -++++ finished: constructing module with label 'intProducerU' id = 13 -++++ starting: constructing module with label 'intVectorProducer' id = 14 -++++ finished: constructing module with label 'intVectorProducer' id = 14 +++++ starting: constructing module with label 'intProducerB' id = 9 +++++ finished: constructing module with label 'intProducerB' id = 9 +++++ starting: constructing module with label 'intProducerBeginProcessBlock' id = 10 +++++ finished: constructing module with label 'intProducerBeginProcessBlock' id = 10 +++++ starting: constructing module with label 'intProducerEndProcessBlock' id = 11 +++++ finished: constructing module with label 'intProducerEndProcessBlock' id = 11 +++++ starting: constructing module with label 'intProducerU' id = 12 +++++ finished: constructing module with label 'intProducerU' id = 12 +++++ starting: constructing module with label 'intVectorProducer' id = 13 +++++ finished: constructing module with label 'intVectorProducer' id = 13 ++ preallocate: 1 concurrent runs, 1 concurrent luminosity sections, 1 streams ++ starting: begin job -++++ starting: begin job for module with label 'intProducerA' id = 9 +++++ starting: begin job for module with label 'intProducerA' id = 8 Module type=IntProducer, Module label=intProducerA, Parameter Set ID=56ea7c8bbb02df4e1c3b945954838318 -++++ finished: begin job for module with label 'intProducerA' id = 9 +++++ finished: begin job for module with label 'intProducerA' id = 8 Module type=IntProducer, Module label=intProducerA, Parameter Set ID=56ea7c8bbb02df4e1c3b945954838318 -++++ starting: begin job for module with label 'intProducerB' id = 10 -++++ finished: begin job for module with label 'intProducerB' id = 10 -++++ starting: begin job for module with label 'intProducerBeginProcessBlock' id = 11 -++++ finished: begin job for module with label 'intProducerBeginProcessBlock' id = 11 -++++ starting: begin job for module with label 'intProducerEndProcessBlock' id = 12 -++++ finished: begin job for module with label 'intProducerEndProcessBlock' id = 12 -++++ starting: begin job for module with label 'intProducerU' id = 13 -++++ finished: begin job for module with label 'intProducerU' id = 13 -++++ starting: begin job for module with label 'intVectorProducer' id = 14 -++++ finished: begin job for module with label 'intVectorProducer' id = 14 -++++ starting: begin job for module with label 'intProducer' id = 4 -++++ finished: begin job for module with label 'intProducer' id = 4 -++++ starting: begin job for module with label 'a1' id = 5 +++++ starting: begin job for module with label 'intProducerB' id = 9 +++++ finished: begin job for module with label 'intProducerB' id = 9 +++++ starting: begin job for module with label 'intProducerBeginProcessBlock' id = 10 +++++ finished: begin job for module with label 'intProducerBeginProcessBlock' id = 10 +++++ starting: begin job for module with label 'intProducerEndProcessBlock' id = 11 +++++ finished: begin job for module with label 'intProducerEndProcessBlock' id = 11 +++++ starting: begin job for module with label 'intProducerU' id = 12 +++++ finished: begin job for module with label 'intProducerU' id = 12 +++++ starting: begin job for module with label 'intVectorProducer' id = 13 +++++ finished: begin job for module with label 'intVectorProducer' id = 13 +++++ starting: begin job for module with label 'intProducer' id = 3 +++++ finished: begin job for module with label 'intProducer' id = 3 +++++ starting: begin job for module with label 'a1' id = 4 Module type=TestFindProduct, Module label=a1, Parameter Set ID=a7caa43fcf5ef35dee69e4bd85169d4c -++++ finished: begin job for module with label 'a1' id = 5 +++++ finished: begin job for module with label 'a1' id = 4 Module type=TestFindProduct, Module label=a1, Parameter Set ID=a7caa43fcf5ef35dee69e4bd85169d4c -++++ starting: begin job for module with label 'a2' id = 6 -++++ finished: begin job for module with label 'a2' id = 6 -++++ starting: begin job for module with label 'a3' id = 7 -++++ finished: begin job for module with label 'a3' id = 7 -++++ starting: begin job for module with label 'out' id = 8 -++++ finished: begin job for module with label 'out' id = 8 +++++ starting: begin job for module with label 'a2' id = 5 +++++ finished: begin job for module with label 'a2' id = 5 +++++ starting: begin job for module with label 'a3' id = 6 +++++ finished: begin job for module with label 'a3' id = 6 +++++ starting: begin job for module with label 'out' id = 7 +++++ finished: begin job for module with label 'out' id = 7 ++++ starting: begin job for module with label 'TriggerResults' id = 1 ++++ finished: begin job for module with label 'TriggerResults' id = 1 ++++ starting: begin job for module with label 'p' id = 2 ++++ finished: begin job for module with label 'p' id = 2 -++++ starting: begin job for module with label 'e' id = 3 -++++ finished: begin job for module with label 'e' id = 3 ++ starting: begin job ++ finished: begin job -++++ starting: begin stream for module: stream = 0 label = 'intProducer' id = 4 -++++ finished: begin stream for module: stream = 0 label = 'intProducer' id = 4 -++++ starting: begin stream for module: stream = 0 label = 'a1' id = 5 +++++ starting: begin stream for module: stream = 0 label = 'intProducer' id = 3 +++++ finished: begin stream for module: stream = 0 label = 'intProducer' id = 3 +++++ starting: begin stream for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = BeginStream run: 0 lumi: 0 event: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -84,7 +80,7 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++ finished: begin stream for module: stream = 0 label = 'a1' id = 5 +++++ finished: begin stream for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = BeginStream run: 0 lumi: 0 event: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -96,19 +92,17 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++ starting: begin stream for module: stream = 0 label = 'a2' id = 6 -++++ finished: begin stream for module: stream = 0 label = 'a2' id = 6 -++++ starting: begin stream for module: stream = 0 label = 'a3' id = 7 -++++ finished: begin stream for module: stream = 0 label = 'a3' id = 7 +++++ starting: begin stream for module: stream = 0 label = 'a2' id = 5 +++++ finished: begin stream for module: stream = 0 label = 'a2' id = 5 +++++ starting: begin stream for module: stream = 0 label = 'a3' id = 6 +++++ finished: begin stream for module: stream = 0 label = 'a3' id = 6 ++++ starting: begin stream for module: stream = 0 label = 'TriggerResults' id = 1 ++++ finished: begin stream for module: stream = 0 label = 'TriggerResults' id = 1 -++++ starting: begin stream for module: stream = 0 label = 'out' id = 8 -++++ finished: begin stream for module: stream = 0 label = 'out' id = 8 +++++ starting: begin stream for module: stream = 0 label = 'out' id = 7 +++++ finished: begin stream for module: stream = 0 label = 'out' id = 7 ++++ starting: begin stream for module: stream = 0 label = 'p' id = 2 ++++ finished: begin stream for module: stream = 0 label = 'p' id = 2 -++++ starting: begin stream for module: stream = 0 label = 'e' id = 3 -++++ finished: begin stream for module: stream = 0 label = 'e' id = 3 -++++ starting: begin stream for module: stream = 0 label = 'intProducerA' id = 9 +++++ starting: begin stream for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = BeginStream run: 0 lumi: 0 event: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -120,7 +114,7 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++ finished: begin stream for module: stream = 0 label = 'intProducerA' id = 9 +++++ finished: begin stream for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = BeginStream run: 0 lumi: 0 event: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -132,25 +126,25 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++ starting: begin stream for module: stream = 0 label = 'intProducerB' id = 10 -++++ finished: begin stream for module: stream = 0 label = 'intProducerB' id = 10 -++++ starting: begin stream for module: stream = 0 label = 'intProducerBeginProcessBlock' id = 11 -++++ finished: begin stream for module: stream = 0 label = 'intProducerBeginProcessBlock' id = 11 -++++ starting: begin stream for module: stream = 0 label = 'intProducerEndProcessBlock' id = 12 -++++ finished: begin stream for module: stream = 0 label = 'intProducerEndProcessBlock' id = 12 -++++ starting: begin stream for module: stream = 0 label = 'intProducerU' id = 13 -++++ finished: begin stream for module: stream = 0 label = 'intProducerU' id = 13 -++++ starting: begin stream for module: stream = 0 label = 'intVectorProducer' id = 14 -++++ finished: begin stream for module: stream = 0 label = 'intVectorProducer' id = 14 +++++ starting: begin stream for module: stream = 0 label = 'intProducerB' id = 9 +++++ finished: begin stream for module: stream = 0 label = 'intProducerB' id = 9 +++++ starting: begin stream for module: stream = 0 label = 'intProducerBeginProcessBlock' id = 10 +++++ finished: begin stream for module: stream = 0 label = 'intProducerBeginProcessBlock' id = 10 +++++ starting: begin stream for module: stream = 0 label = 'intProducerEndProcessBlock' id = 11 +++++ finished: begin stream for module: stream = 0 label = 'intProducerEndProcessBlock' id = 11 +++++ starting: begin stream for module: stream = 0 label = 'intProducerU' id = 12 +++++ finished: begin stream for module: stream = 0 label = 'intProducerU' id = 12 +++++ starting: begin stream for module: stream = 0 label = 'intVectorProducer' id = 13 +++++ finished: begin stream for module: stream = 0 label = 'intVectorProducer' id = 13 ++++ starting: begin process block GlobalContext: transition = BeginProcessBlock run: 0 luminosityBlock: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'a3' id = 7 -++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'a2' id = 6 -++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'a1' id = 5 +++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'a3' id = 6 +++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'a2' id = 5 +++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'a1' id = 4 GlobalContext: transition = BeginProcessBlock run: 0 luminosityBlock: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -162,12 +156,12 @@ ModuleCallingContext state = Prefetching runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'intProducerEndProcessBlock' id = 12 -++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'intProducerBeginProcessBlock' id = 11 -++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'intProducerBeginProcessBlock' id = 11 -++++++ starting: begin process block for module: label = 'intProducerBeginProcessBlock' id = 11 -++++++ finished: begin process block for module: label = 'intProducerBeginProcessBlock' id = 11 -++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'a1' id = 5 +++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'intProducerEndProcessBlock' id = 11 +++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'intProducerBeginProcessBlock' id = 10 +++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'intProducerBeginProcessBlock' id = 10 +++++++ starting: begin process block for module: label = 'intProducerBeginProcessBlock' id = 10 +++++++ finished: begin process block for module: label = 'intProducerBeginProcessBlock' id = 10 +++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'a1' id = 4 GlobalContext: transition = BeginProcessBlock run: 0 luminosityBlock: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -179,7 +173,7 @@ ModuleCallingContext state = Prefetching runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: begin process block for module: label = 'a1' id = 5 +++++++ starting: begin process block for module: label = 'a1' id = 4 GlobalContext: transition = BeginProcessBlock run: 0 luminosityBlock: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -191,7 +185,7 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ finished: begin process block for module: label = 'a1' id = 5 +++++++ finished: begin process block for module: label = 'a1' id = 4 GlobalContext: transition = BeginProcessBlock run: 0 luminosityBlock: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -203,15 +197,15 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'intProducerEndProcessBlock' id = 12 -++++++ starting: begin process block for module: label = 'intProducerEndProcessBlock' id = 12 -++++++ finished: begin process block for module: label = 'intProducerEndProcessBlock' id = 12 -++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'a2' id = 6 -++++++ starting: begin process block for module: label = 'a2' id = 6 -++++++ finished: begin process block for module: label = 'a2' id = 6 -++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'a3' id = 7 -++++++ starting: begin process block for module: label = 'a3' id = 7 -++++++ finished: begin process block for module: label = 'a3' id = 7 +++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'intProducerEndProcessBlock' id = 11 +++++++ starting: begin process block for module: label = 'intProducerEndProcessBlock' id = 11 +++++++ finished: begin process block for module: label = 'intProducerEndProcessBlock' id = 11 +++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'a2' id = 5 +++++++ starting: begin process block for module: label = 'a2' id = 5 +++++++ finished: begin process block for module: label = 'a2' id = 5 +++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'a3' id = 6 +++++++ starting: begin process block for module: label = 'a3' id = 6 +++++++ finished: begin process block for module: label = 'a3' id = 6 ++++ finished: begin process block GlobalContext: transition = BeginProcessBlock run: 0 luminosityBlock: 0 @@ -243,9 +237,9 @@ GlobalContext: transition = BeginRun runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing global begin Run for module: label = 'a3' id = 7 -++++++++ starting: prefetching before processing global begin Run for module: label = 'a2' id = 6 -++++++++ starting: prefetching before processing global begin Run for module: label = 'a1' id = 5 +++++++++ starting: prefetching before processing global begin Run for module: label = 'a3' id = 6 +++++++++ starting: prefetching before processing global begin Run for module: label = 'a2' id = 5 +++++++++ starting: prefetching before processing global begin Run for module: label = 'a1' id = 4 GlobalContext: transition = BeginRun run: 1 luminosityBlock: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 @@ -257,7 +251,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing global begin Run for module: label = 'a1' id = 5 +++++++++ finished: prefetching before processing global begin Run for module: label = 'a1' id = 4 GlobalContext: transition = BeginRun run: 1 luminosityBlock: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 @@ -269,7 +263,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: global begin run for module: label = 'a1' id = 5 +++++++ starting: global begin run for module: label = 'a1' id = 4 GlobalContext: transition = BeginRun run: 1 luminosityBlock: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 @@ -281,7 +275,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ finished: global begin run for module: label = 'a1' id = 5 +++++++ finished: global begin run for module: label = 'a1' id = 4 GlobalContext: transition = BeginRun run: 1 luminosityBlock: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 @@ -293,12 +287,12 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing global begin Run for module: label = 'a2' id = 6 -++++++ starting: global begin run for module: label = 'a2' id = 6 -++++++ finished: global begin run for module: label = 'a2' id = 6 -++++++++ finished: prefetching before processing global begin Run for module: label = 'a3' id = 7 -++++++ starting: global begin run for module: label = 'a3' id = 7 -++++++ finished: global begin run for module: label = 'a3' id = 7 +++++++++ finished: prefetching before processing global begin Run for module: label = 'a2' id = 5 +++++++ starting: global begin run for module: label = 'a2' id = 5 +++++++ finished: global begin run for module: label = 'a2' id = 5 +++++++++ finished: prefetching before processing global begin Run for module: label = 'a3' id = 6 +++++++ starting: global begin run for module: label = 'a3' id = 6 +++++++ finished: global begin run for module: label = 'a3' id = 6 ++++ finished: global begin run 1 : time = 1 GlobalContext: transition = BeginRun run: 1 luminosityBlock: 0 @@ -325,11 +319,11 @@ StreamContext: StreamID = 0 transition = BeginRun runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: begin run for module: stream = 0 label = 'intProducerU' id = 13 -++++++ finished: begin run for module: stream = 0 label = 'intProducerU' id = 13 -++++++ starting: begin run for module: stream = 0 label = 'intProducerB' id = 10 -++++++ finished: begin run for module: stream = 0 label = 'intProducerB' id = 10 -++++++ starting: begin run for module: stream = 0 label = 'intProducerA' id = 9 +++++++ starting: begin run for module: stream = 0 label = 'intProducerU' id = 12 +++++++ finished: begin run for module: stream = 0 label = 'intProducerU' id = 12 +++++++ starting: begin run for module: stream = 0 label = 'intProducerB' id = 9 +++++++ finished: begin run for module: stream = 0 label = 'intProducerB' id = 9 +++++++ starting: begin run for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = BeginRun run: 1 lumi: 0 event: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 @@ -341,7 +335,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ finished: begin run for module: stream = 0 label = 'intProducerA' id = 9 +++++++ finished: begin run for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = BeginRun run: 1 lumi: 0 event: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 @@ -353,8 +347,8 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: begin run for module: stream = 0 label = 'intProducer' id = 4 -++++++ finished: begin run for module: stream = 0 label = 'intProducer' id = 4 +++++++ starting: begin run for module: stream = 0 label = 'intProducer' id = 3 +++++++ finished: begin run for module: stream = 0 label = 'intProducer' id = 3 ++++ finished: begin run: stream = 0 run = 1 time = 1 StreamContext: StreamID = 0 transition = BeginRun run: 1 lumi: 0 event: 0 @@ -386,9 +380,9 @@ GlobalContext: transition = BeginLuminosityBlock runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'a3' id = 7 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'a2' id = 6 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'a1' id = 5 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'a3' id = 6 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'a2' id = 5 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'a1' id = 4 GlobalContext: transition = BeginLuminosityBlock run: 1 luminosityBlock: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 @@ -400,7 +394,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'a1' id = 5 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'a1' id = 4 GlobalContext: transition = BeginLuminosityBlock run: 1 luminosityBlock: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 @@ -412,7 +406,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: global begin lumi for module: label = 'a1' id = 5 +++++++ starting: global begin lumi for module: label = 'a1' id = 4 GlobalContext: transition = BeginLuminosityBlock run: 1 luminosityBlock: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 @@ -424,7 +418,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ finished: global begin lumi for module: label = 'a1' id = 5 +++++++ finished: global begin lumi for module: label = 'a1' id = 4 GlobalContext: transition = BeginLuminosityBlock run: 1 luminosityBlock: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 @@ -436,12 +430,12 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'a2' id = 6 -++++++ starting: global begin lumi for module: label = 'a2' id = 6 -++++++ finished: global begin lumi for module: label = 'a2' id = 6 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'a3' id = 7 -++++++ starting: global begin lumi for module: label = 'a3' id = 7 -++++++ finished: global begin lumi for module: label = 'a3' id = 7 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'a2' id = 5 +++++++ starting: global begin lumi for module: label = 'a2' id = 5 +++++++ finished: global begin lumi for module: label = 'a2' id = 5 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'a3' id = 6 +++++++ starting: global begin lumi for module: label = 'a3' id = 6 +++++++ finished: global begin lumi for module: label = 'a3' id = 6 ++++ finished: global begin lumi: run = 1 lumi = 1 time = 1 GlobalContext: transition = BeginLuminosityBlock run: 1 luminosityBlock: 1 @@ -468,11 +462,11 @@ StreamContext: StreamID = 0 transition = BeginLuminosityBlock runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: begin lumi for module: stream = 0 label = 'intProducerU' id = 13 -++++++ finished: begin lumi for module: stream = 0 label = 'intProducerU' id = 13 -++++++ starting: begin lumi for module: stream = 0 label = 'intProducerB' id = 10 -++++++ finished: begin lumi for module: stream = 0 label = 'intProducerB' id = 10 -++++++ starting: begin lumi for module: stream = 0 label = 'intProducerA' id = 9 +++++++ starting: begin lumi for module: stream = 0 label = 'intProducerU' id = 12 +++++++ finished: begin lumi for module: stream = 0 label = 'intProducerU' id = 12 +++++++ starting: begin lumi for module: stream = 0 label = 'intProducerB' id = 9 +++++++ finished: begin lumi for module: stream = 0 label = 'intProducerB' id = 9 +++++++ starting: begin lumi for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = BeginLuminosityBlock run: 1 lumi: 1 event: 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 @@ -484,7 +478,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ finished: begin lumi for module: stream = 0 label = 'intProducerA' id = 9 +++++++ finished: begin lumi for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = BeginLuminosityBlock run: 1 lumi: 1 event: 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 @@ -496,8 +490,8 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: begin lumi for module: stream = 0 label = 'intProducer' id = 4 -++++++ finished: begin lumi for module: stream = 0 label = 'intProducer' id = 4 +++++++ starting: begin lumi for module: stream = 0 label = 'intProducer' id = 3 +++++++ finished: begin lumi for module: stream = 0 label = 'intProducer' id = 3 ++++ finished: begin lumi: stream = 0 run = 1 lumi = 1 time = 1 StreamContext: StreamID = 0 transition = BeginLuminosityBlock run: 1 lumi: 1 event: 0 @@ -548,8 +542,8 @@ PathContext: pathName = p pathID = 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a3' id = 7 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerA' id = 9 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a3' id = 6 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 @@ -565,8 +559,8 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a2' id = 6 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a1' id = 5 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a2' id = 5 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 @@ -580,11 +574,11 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 4 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 4 -++++++++ starting: processing event for module: stream = 0 label = 'intProducer' id = 4 -++++++++ finished: processing event for module: stream = 0 label = 'intProducer' id = 4 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a1' id = 5 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 3 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 3 +++++++++ starting: processing event for module: stream = 0 label = 'intProducer' id = 3 +++++++++ finished: processing event for module: stream = 0 label = 'intProducer' id = 3 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 @@ -598,7 +592,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: processing event for module: stream = 0 label = 'a1' id = 5 +++++++++ starting: processing event for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 @@ -612,7 +606,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: processing event for module: stream = 0 label = 'a1' id = 5 +++++++++ finished: processing event for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 @@ -626,7 +620,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerA' id = 9 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 @@ -642,7 +636,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++++ starting: processing event for module: stream = 0 label = 'intProducerA' id = 9 +++++++++++ starting: processing event for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 @@ -658,7 +652,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++++ finished: processing event for module: stream = 0 label = 'intProducerA' id = 9 +++++++++++ finished: processing event for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 @@ -674,12 +668,12 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a3' id = 7 -++++++++ starting: processing event for module: stream = 0 label = 'a3' id = 7 -++++++++ finished: processing event for module: stream = 0 label = 'a3' id = 7 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a2' id = 6 -++++++++ starting: processing event for module: stream = 0 label = 'a2' id = 6 -++++++++ finished: processing event for module: stream = 0 label = 'a2' id = 6 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a3' id = 6 +++++++++ starting: processing event for module: stream = 0 label = 'a3' id = 6 +++++++++ finished: processing event for module: stream = 0 label = 'a3' id = 6 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a2' id = 5 +++++++++ starting: processing event for module: stream = 0 label = 'a2' id = 5 +++++++++ finished: processing event for module: stream = 0 label = 'a2' id = 5 ++++++++ starting: processing event for module: stream = 0 label = 'p' id = 2 ++++++++ finished: processing event for module: stream = 0 label = 'p' id = 2 ++++++ finished: processing path 'p' : stream = 0 @@ -695,24 +689,22 @@ PathContext: pathName = p pathID = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 1 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 1 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 8 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerB' id = 10 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 13 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 14 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 14 -++++++++++ starting: processing event for module: stream = 0 label = 'intVectorProducer' id = 14 -++++++++++ finished: processing event for module: stream = 0 label = 'intVectorProducer' id = 14 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 13 -++++++++++ starting: processing event for module: stream = 0 label = 'intProducerU' id = 13 -++++++++++ finished: processing event for module: stream = 0 label = 'intProducerU' id = 13 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerB' id = 10 -++++++++++ starting: processing event for module: stream = 0 label = 'intProducerB' id = 10 -++++++++++ finished: processing event for module: stream = 0 label = 'intProducerB' id = 10 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 8 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 8 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 8 -++++++++ starting: processing event for module: stream = 0 label = 'e' id = 3 -++++++++ finished: processing event for module: stream = 0 label = 'e' id = 3 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 7 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerB' id = 9 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 12 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 13 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 13 +++++++++++ starting: processing event for module: stream = 0 label = 'intVectorProducer' id = 13 +++++++++++ finished: processing event for module: stream = 0 label = 'intVectorProducer' id = 13 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 12 +++++++++++ starting: processing event for module: stream = 0 label = 'intProducerU' id = 12 +++++++++++ finished: processing event for module: stream = 0 label = 'intProducerU' id = 12 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerB' id = 9 +++++++++++ starting: processing event for module: stream = 0 label = 'intProducerB' id = 9 +++++++++++ finished: processing event for module: stream = 0 label = 'intProducerB' id = 9 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 7 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 7 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 7 ++++++ finished: processing path 'e' : stream = 0 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 @@ -774,8 +766,8 @@ PathContext: pathName = p pathID = 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a3' id = 7 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerA' id = 9 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a3' id = 6 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 @@ -791,8 +783,8 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a2' id = 6 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a1' id = 5 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a2' id = 5 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 @@ -806,11 +798,11 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 4 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 4 -++++++++ starting: processing event for module: stream = 0 label = 'intProducer' id = 4 -++++++++ finished: processing event for module: stream = 0 label = 'intProducer' id = 4 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a1' id = 5 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 3 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 3 +++++++++ starting: processing event for module: stream = 0 label = 'intProducer' id = 3 +++++++++ finished: processing event for module: stream = 0 label = 'intProducer' id = 3 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 @@ -824,7 +816,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: processing event for module: stream = 0 label = 'a1' id = 5 +++++++++ starting: processing event for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 @@ -838,7 +830,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: processing event for module: stream = 0 label = 'a1' id = 5 +++++++++ finished: processing event for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 @@ -852,7 +844,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerA' id = 9 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 @@ -868,7 +860,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++++ starting: processing event for module: stream = 0 label = 'intProducerA' id = 9 +++++++++++ starting: processing event for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 @@ -884,7 +876,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++++ finished: processing event for module: stream = 0 label = 'intProducerA' id = 9 +++++++++++ finished: processing event for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 @@ -900,12 +892,12 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a3' id = 7 -++++++++ starting: processing event for module: stream = 0 label = 'a3' id = 7 -++++++++ finished: processing event for module: stream = 0 label = 'a3' id = 7 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a2' id = 6 -++++++++ starting: processing event for module: stream = 0 label = 'a2' id = 6 -++++++++ finished: processing event for module: stream = 0 label = 'a2' id = 6 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a3' id = 6 +++++++++ starting: processing event for module: stream = 0 label = 'a3' id = 6 +++++++++ finished: processing event for module: stream = 0 label = 'a3' id = 6 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a2' id = 5 +++++++++ starting: processing event for module: stream = 0 label = 'a2' id = 5 +++++++++ finished: processing event for module: stream = 0 label = 'a2' id = 5 ++++++++ starting: processing event for module: stream = 0 label = 'p' id = 2 ++++++++ finished: processing event for module: stream = 0 label = 'p' id = 2 ++++++ finished: processing path 'p' : stream = 0 @@ -921,24 +913,22 @@ PathContext: pathName = p pathID = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 1 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 1 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 8 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerB' id = 10 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 13 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 14 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 14 -++++++++++ starting: processing event for module: stream = 0 label = 'intVectorProducer' id = 14 -++++++++++ finished: processing event for module: stream = 0 label = 'intVectorProducer' id = 14 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 13 -++++++++++ starting: processing event for module: stream = 0 label = 'intProducerU' id = 13 -++++++++++ finished: processing event for module: stream = 0 label = 'intProducerU' id = 13 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerB' id = 10 -++++++++++ starting: processing event for module: stream = 0 label = 'intProducerB' id = 10 -++++++++++ finished: processing event for module: stream = 0 label = 'intProducerB' id = 10 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 8 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 8 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 8 -++++++++ starting: processing event for module: stream = 0 label = 'e' id = 3 -++++++++ finished: processing event for module: stream = 0 label = 'e' id = 3 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 7 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerB' id = 9 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 12 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 13 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 13 +++++++++++ starting: processing event for module: stream = 0 label = 'intVectorProducer' id = 13 +++++++++++ finished: processing event for module: stream = 0 label = 'intVectorProducer' id = 13 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 12 +++++++++++ starting: processing event for module: stream = 0 label = 'intProducerU' id = 12 +++++++++++ finished: processing event for module: stream = 0 label = 'intProducerU' id = 12 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerB' id = 9 +++++++++++ starting: processing event for module: stream = 0 label = 'intProducerB' id = 9 +++++++++++ finished: processing event for module: stream = 0 label = 'intProducerB' id = 9 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 7 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 7 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 7 ++++++ finished: processing path 'e' : stream = 0 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 @@ -1000,8 +990,8 @@ PathContext: pathName = p pathID = 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a3' id = 7 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerA' id = 9 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a3' id = 6 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -1017,8 +1007,8 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a2' id = 6 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a1' id = 5 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a2' id = 5 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -1032,11 +1022,11 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 4 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 4 -++++++++ starting: processing event for module: stream = 0 label = 'intProducer' id = 4 -++++++++ finished: processing event for module: stream = 0 label = 'intProducer' id = 4 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a1' id = 5 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 3 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 3 +++++++++ starting: processing event for module: stream = 0 label = 'intProducer' id = 3 +++++++++ finished: processing event for module: stream = 0 label = 'intProducer' id = 3 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -1050,7 +1040,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: processing event for module: stream = 0 label = 'a1' id = 5 +++++++++ starting: processing event for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -1064,7 +1054,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: processing event for module: stream = 0 label = 'a1' id = 5 +++++++++ finished: processing event for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -1078,7 +1068,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerA' id = 9 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -1094,7 +1084,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++++ starting: processing event for module: stream = 0 label = 'intProducerA' id = 9 +++++++++++ starting: processing event for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -1110,7 +1100,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++++ finished: processing event for module: stream = 0 label = 'intProducerA' id = 9 +++++++++++ finished: processing event for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -1126,12 +1116,12 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a3' id = 7 -++++++++ starting: processing event for module: stream = 0 label = 'a3' id = 7 -++++++++ finished: processing event for module: stream = 0 label = 'a3' id = 7 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a2' id = 6 -++++++++ starting: processing event for module: stream = 0 label = 'a2' id = 6 -++++++++ finished: processing event for module: stream = 0 label = 'a2' id = 6 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a3' id = 6 +++++++++ starting: processing event for module: stream = 0 label = 'a3' id = 6 +++++++++ finished: processing event for module: stream = 0 label = 'a3' id = 6 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'a2' id = 5 +++++++++ starting: processing event for module: stream = 0 label = 'a2' id = 5 +++++++++ finished: processing event for module: stream = 0 label = 'a2' id = 5 ++++++++ starting: processing event for module: stream = 0 label = 'p' id = 2 ++++++++ finished: processing event for module: stream = 0 label = 'p' id = 2 ++++++ finished: processing path 'p' : stream = 0 @@ -1147,24 +1137,22 @@ PathContext: pathName = p pathID = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 1 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 1 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 8 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerB' id = 10 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 13 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 14 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 14 -++++++++++ starting: processing event for module: stream = 0 label = 'intVectorProducer' id = 14 -++++++++++ finished: processing event for module: stream = 0 label = 'intVectorProducer' id = 14 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 13 -++++++++++ starting: processing event for module: stream = 0 label = 'intProducerU' id = 13 -++++++++++ finished: processing event for module: stream = 0 label = 'intProducerU' id = 13 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerB' id = 10 -++++++++++ starting: processing event for module: stream = 0 label = 'intProducerB' id = 10 -++++++++++ finished: processing event for module: stream = 0 label = 'intProducerB' id = 10 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 8 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 8 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 8 -++++++++ starting: processing event for module: stream = 0 label = 'e' id = 3 -++++++++ finished: processing event for module: stream = 0 label = 'e' id = 3 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 7 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerB' id = 9 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 12 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 13 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 13 +++++++++++ starting: processing event for module: stream = 0 label = 'intVectorProducer' id = 13 +++++++++++ finished: processing event for module: stream = 0 label = 'intVectorProducer' id = 13 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 12 +++++++++++ starting: processing event for module: stream = 0 label = 'intProducerU' id = 12 +++++++++++ finished: processing event for module: stream = 0 label = 'intProducerU' id = 12 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerB' id = 9 +++++++++++ starting: processing event for module: stream = 0 label = 'intProducerB' id = 9 +++++++++++ finished: processing event for module: stream = 0 label = 'intProducerB' id = 9 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 7 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 7 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 7 ++++++ finished: processing path 'e' : stream = 0 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 @@ -1205,11 +1193,11 @@ StreamContext: StreamID = 0 transition = EndLuminosityBlock runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: end lumi for module: stream = 0 label = 'intProducerU' id = 13 -++++++ finished: end lumi for module: stream = 0 label = 'intProducerU' id = 13 -++++++ starting: end lumi for module: stream = 0 label = 'intProducerB' id = 10 -++++++ finished: end lumi for module: stream = 0 label = 'intProducerB' id = 10 -++++++ starting: end lumi for module: stream = 0 label = 'intProducerA' id = 9 +++++++ starting: end lumi for module: stream = 0 label = 'intProducerU' id = 12 +++++++ finished: end lumi for module: stream = 0 label = 'intProducerU' id = 12 +++++++ starting: end lumi for module: stream = 0 label = 'intProducerB' id = 9 +++++++ finished: end lumi for module: stream = 0 label = 'intProducerB' id = 9 +++++++ starting: end lumi for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = EndLuminosityBlock run: 1 lumi: 1 event: 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -1221,7 +1209,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ finished: end lumi for module: stream = 0 label = 'intProducerA' id = 9 +++++++ finished: end lumi for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = EndLuminosityBlock run: 1 lumi: 1 event: 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -1233,8 +1221,8 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: end lumi for module: stream = 0 label = 'intProducer' id = 4 -++++++ finished: end lumi for module: stream = 0 label = 'intProducer' id = 4 +++++++ starting: end lumi for module: stream = 0 label = 'intProducer' id = 3 +++++++ finished: end lumi for module: stream = 0 label = 'intProducer' id = 3 ++++ finished: end lumi: stream = 0 run = 1 lumi = 1 time = 15000001 StreamContext: StreamID = 0 transition = EndLuminosityBlock run: 1 lumi: 1 event: 0 @@ -1261,9 +1249,9 @@ GlobalContext: transition = EndLuminosityBlock runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'a3' id = 7 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'a2' id = 6 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'a1' id = 5 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'a3' id = 6 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'a2' id = 5 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'a1' id = 4 GlobalContext: transition = EndLuminosityBlock run: 1 luminosityBlock: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 @@ -1275,7 +1263,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'a1' id = 5 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'a1' id = 4 GlobalContext: transition = EndLuminosityBlock run: 1 luminosityBlock: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 @@ -1287,7 +1275,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: global end lumi for module: label = 'a1' id = 5 +++++++ starting: global end lumi for module: label = 'a1' id = 4 GlobalContext: transition = EndLuminosityBlock run: 1 luminosityBlock: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 @@ -1299,7 +1287,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ finished: global end lumi for module: label = 'a1' id = 5 +++++++ finished: global end lumi for module: label = 'a1' id = 4 GlobalContext: transition = EndLuminosityBlock run: 1 luminosityBlock: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 @@ -1311,12 +1299,12 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'a2' id = 6 -++++++ starting: global end lumi for module: label = 'a2' id = 6 -++++++ finished: global end lumi for module: label = 'a2' id = 6 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'a3' id = 7 -++++++ starting: global end lumi for module: label = 'a3' id = 7 -++++++ finished: global end lumi for module: label = 'a3' id = 7 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'a2' id = 5 +++++++ starting: global end lumi for module: label = 'a2' id = 5 +++++++ finished: global end lumi for module: label = 'a2' id = 5 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'a3' id = 6 +++++++ starting: global end lumi for module: label = 'a3' id = 6 +++++++ finished: global end lumi for module: label = 'a3' id = 6 ++++ finished: global end lumi: run = 1 lumi = 1 time = 1 GlobalContext: transition = EndLuminosityBlock run: 1 luminosityBlock: 1 @@ -1343,8 +1331,8 @@ GlobalContext: transition = WriteLuminosityBlock runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: write lumi for module: label = 'out' id = 8 -++++++ finished: write lumi for module: label = 'out' id = 8 +++++++ starting: write lumi for module: label = 'out' id = 7 +++++++ finished: write lumi for module: label = 'out' id = 7 ++++ finished: global write lumi: run = 1 lumi = 1 time = 1 GlobalContext: transition = WriteLuminosityBlock run: 1 luminosityBlock: 1 @@ -1371,11 +1359,11 @@ StreamContext: StreamID = 0 transition = EndRun runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: end run for module: stream = 0 label = 'intProducerU' id = 13 -++++++ finished: end run for module: stream = 0 label = 'intProducerU' id = 13 -++++++ starting: end run for module: stream = 0 label = 'intProducerB' id = 10 -++++++ finished: end run for module: stream = 0 label = 'intProducerB' id = 10 -++++++ starting: end run for module: stream = 0 label = 'intProducerA' id = 9 +++++++ starting: end run for module: stream = 0 label = 'intProducerU' id = 12 +++++++ finished: end run for module: stream = 0 label = 'intProducerU' id = 12 +++++++ starting: end run for module: stream = 0 label = 'intProducerB' id = 9 +++++++ finished: end run for module: stream = 0 label = 'intProducerB' id = 9 +++++++ starting: end run for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = EndRun run: 1 lumi: 0 event: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 @@ -1387,7 +1375,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ finished: end run for module: stream = 0 label = 'intProducerA' id = 9 +++++++ finished: end run for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = EndRun run: 1 lumi: 0 event: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 @@ -1399,8 +1387,8 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: end run for module: stream = 0 label = 'intProducer' id = 4 -++++++ finished: end run for module: stream = 0 label = 'intProducer' id = 4 +++++++ starting: end run for module: stream = 0 label = 'intProducer' id = 3 +++++++ finished: end run for module: stream = 0 label = 'intProducer' id = 3 ++++ finished: end run: stream = 0 run = 1 time = 15000001 StreamContext: StreamID = 0 transition = EndRun run: 1 lumi: 0 event: 0 @@ -1427,9 +1415,9 @@ GlobalContext: transition = EndRun runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing global end Run for module: label = 'a3' id = 7 -++++++++ starting: prefetching before processing global end Run for module: label = 'a2' id = 6 -++++++++ starting: prefetching before processing global end Run for module: label = 'a1' id = 5 +++++++++ starting: prefetching before processing global end Run for module: label = 'a3' id = 6 +++++++++ starting: prefetching before processing global end Run for module: label = 'a2' id = 5 +++++++++ starting: prefetching before processing global end Run for module: label = 'a1' id = 4 GlobalContext: transition = EndRun run: 1 luminosityBlock: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 @@ -1441,7 +1429,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing global end Run for module: label = 'a1' id = 5 +++++++++ finished: prefetching before processing global end Run for module: label = 'a1' id = 4 GlobalContext: transition = EndRun run: 1 luminosityBlock: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 @@ -1453,7 +1441,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: global end run for module: label = 'a1' id = 5 +++++++ starting: global end run for module: label = 'a1' id = 4 GlobalContext: transition = EndRun run: 1 luminosityBlock: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 @@ -1465,7 +1453,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ finished: global end run for module: label = 'a1' id = 5 +++++++ finished: global end run for module: label = 'a1' id = 4 GlobalContext: transition = EndRun run: 1 luminosityBlock: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 @@ -1477,12 +1465,12 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing global end Run for module: label = 'a2' id = 6 -++++++ starting: global end run for module: label = 'a2' id = 6 -++++++ finished: global end run for module: label = 'a2' id = 6 -++++++++ finished: prefetching before processing global end Run for module: label = 'a3' id = 7 -++++++ starting: global end run for module: label = 'a3' id = 7 -++++++ finished: global end run for module: label = 'a3' id = 7 +++++++++ finished: prefetching before processing global end Run for module: label = 'a2' id = 5 +++++++ starting: global end run for module: label = 'a2' id = 5 +++++++ finished: global end run for module: label = 'a2' id = 5 +++++++++ finished: prefetching before processing global end Run for module: label = 'a3' id = 6 +++++++ starting: global end run for module: label = 'a3' id = 6 +++++++ finished: global end run for module: label = 'a3' id = 6 ++++ finished: global end run 1 : time = 15000001 GlobalContext: transition = EndRun run: 1 luminosityBlock: 0 @@ -1509,8 +1497,8 @@ GlobalContext: transition = WriteRun runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: write run for module: label = 'out' id = 8 -++++++ finished: write run for module: label = 'out' id = 8 +++++++ starting: write run for module: label = 'out' id = 7 +++++++ finished: write run for module: label = 'out' id = 7 ++++ finished: global write run 1 : time = 15000001 GlobalContext: transition = WriteRun run: 1 luminosityBlock: 0 @@ -1537,9 +1525,9 @@ GlobalContext: transition = EndProcessBlock runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'a3' id = 7 -++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'a2' id = 6 -++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'a1' id = 5 +++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'a3' id = 6 +++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'a2' id = 5 +++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'a1' id = 4 GlobalContext: transition = EndProcessBlock run: 0 luminosityBlock: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -1551,15 +1539,15 @@ ModuleCallingContext state = Prefetching runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'intProducerEndProcessBlock' id = 12 -++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'intProducerBeginProcessBlock' id = 11 -++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'intProducerBeginProcessBlock' id = 11 -++++++ starting: end process block for module: label = 'intProducerBeginProcessBlock' id = 11 -++++++ finished: end process block for module: label = 'intProducerBeginProcessBlock' id = 11 -++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'intProducerEndProcessBlock' id = 12 -++++++ starting: end process block for module: label = 'intProducerEndProcessBlock' id = 12 -++++++ finished: end process block for module: label = 'intProducerEndProcessBlock' id = 12 -++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'a1' id = 5 +++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'intProducerEndProcessBlock' id = 11 +++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'intProducerBeginProcessBlock' id = 10 +++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'intProducerBeginProcessBlock' id = 10 +++++++ starting: end process block for module: label = 'intProducerBeginProcessBlock' id = 10 +++++++ finished: end process block for module: label = 'intProducerBeginProcessBlock' id = 10 +++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'intProducerEndProcessBlock' id = 11 +++++++ starting: end process block for module: label = 'intProducerEndProcessBlock' id = 11 +++++++ finished: end process block for module: label = 'intProducerEndProcessBlock' id = 11 +++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'a1' id = 4 GlobalContext: transition = EndProcessBlock run: 0 luminosityBlock: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -1571,7 +1559,7 @@ ModuleCallingContext state = Prefetching runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: end process block for module: label = 'a1' id = 5 +++++++ starting: end process block for module: label = 'a1' id = 4 GlobalContext: transition = EndProcessBlock run: 0 luminosityBlock: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -1583,7 +1571,7 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ finished: end process block for module: label = 'a1' id = 5 +++++++ finished: end process block for module: label = 'a1' id = 4 GlobalContext: transition = EndProcessBlock run: 0 luminosityBlock: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -1595,12 +1583,12 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'a2' id = 6 -++++++ starting: end process block for module: label = 'a2' id = 6 -++++++ finished: end process block for module: label = 'a2' id = 6 -++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'a3' id = 7 -++++++ starting: end process block for module: label = 'a3' id = 7 -++++++ finished: end process block for module: label = 'a3' id = 7 +++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'a2' id = 5 +++++++ starting: end process block for module: label = 'a2' id = 5 +++++++ finished: end process block for module: label = 'a2' id = 5 +++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'a3' id = 6 +++++++ starting: end process block for module: label = 'a3' id = 6 +++++++ finished: end process block for module: label = 'a3' id = 6 ++++ finished: end process block GlobalContext: transition = EndProcessBlock run: 0 luminosityBlock: 0 @@ -1655,8 +1643,8 @@ GlobalContext: transition = WriteProcessBlock runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++++ starting: write process block for module: label = 'out' id = 8 -++++++ finished: write process block for module: label = 'out' id = 8 +++++++ starting: write process block for module: label = 'out' id = 7 +++++++ finished: write process block for module: label = 'out' id = 7 ++++ finished: write process block GlobalContext: transition = WriteProcessBlock run: 0 luminosityBlock: 0 @@ -1677,9 +1665,9 @@ GlobalContext: transition = WriteProcessBlock ProcessContext: COPY 6f4335e86de793448be83fe14f12dcb7 parent ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++ starting: end stream for module: stream = 0 label = 'intProducer' id = 4 -++++ finished: end stream for module: stream = 0 label = 'intProducer' id = 4 -++++ starting: end stream for module: stream = 0 label = 'a1' id = 5 +++++ starting: end stream for module: stream = 0 label = 'intProducer' id = 3 +++++ finished: end stream for module: stream = 0 label = 'intProducer' id = 3 +++++ starting: end stream for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = EndStream run: 0 lumi: 0 event: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -1691,7 +1679,7 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++ finished: end stream for module: stream = 0 label = 'a1' id = 5 +++++ finished: end stream for module: stream = 0 label = 'a1' id = 4 StreamContext: StreamID = 0 transition = EndStream run: 0 lumi: 0 event: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -1703,19 +1691,17 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++ starting: end stream for module: stream = 0 label = 'a2' id = 6 -++++ finished: end stream for module: stream = 0 label = 'a2' id = 6 -++++ starting: end stream for module: stream = 0 label = 'a3' id = 7 -++++ finished: end stream for module: stream = 0 label = 'a3' id = 7 +++++ starting: end stream for module: stream = 0 label = 'a2' id = 5 +++++ finished: end stream for module: stream = 0 label = 'a2' id = 5 +++++ starting: end stream for module: stream = 0 label = 'a3' id = 6 +++++ finished: end stream for module: stream = 0 label = 'a3' id = 6 ++++ starting: end stream for module: stream = 0 label = 'TriggerResults' id = 1 ++++ finished: end stream for module: stream = 0 label = 'TriggerResults' id = 1 -++++ starting: end stream for module: stream = 0 label = 'out' id = 8 -++++ finished: end stream for module: stream = 0 label = 'out' id = 8 +++++ starting: end stream for module: stream = 0 label = 'out' id = 7 +++++ finished: end stream for module: stream = 0 label = 'out' id = 7 ++++ starting: end stream for module: stream = 0 label = 'p' id = 2 ++++ finished: end stream for module: stream = 0 label = 'p' id = 2 -++++ starting: end stream for module: stream = 0 label = 'e' id = 3 -++++ finished: end stream for module: stream = 0 label = 'e' id = 3 -++++ starting: end stream for module: stream = 0 label = 'intProducerA' id = 9 +++++ starting: end stream for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = EndStream run: 0 lumi: 0 event: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -1727,7 +1713,7 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++ finished: end stream for module: stream = 0 label = 'intProducerA' id = 9 +++++ finished: end stream for module: stream = 0 label = 'intProducerA' id = 8 StreamContext: StreamID = 0 transition = EndStream run: 0 lumi: 0 event: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -1739,49 +1725,47 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD1 cf8fb4a5e3c9a108eac33826b2a17969 -++++ starting: end stream for module: stream = 0 label = 'intProducerB' id = 10 -++++ finished: end stream for module: stream = 0 label = 'intProducerB' id = 10 -++++ starting: end stream for module: stream = 0 label = 'intProducerBeginProcessBlock' id = 11 -++++ finished: end stream for module: stream = 0 label = 'intProducerBeginProcessBlock' id = 11 -++++ starting: end stream for module: stream = 0 label = 'intProducerEndProcessBlock' id = 12 -++++ finished: end stream for module: stream = 0 label = 'intProducerEndProcessBlock' id = 12 -++++ starting: end stream for module: stream = 0 label = 'intProducerU' id = 13 -++++ finished: end stream for module: stream = 0 label = 'intProducerU' id = 13 -++++ starting: end stream for module: stream = 0 label = 'intVectorProducer' id = 14 -++++ finished: end stream for module: stream = 0 label = 'intVectorProducer' id = 14 -++++ starting: end job for module with label 'intProducerA' id = 9 +++++ starting: end stream for module: stream = 0 label = 'intProducerB' id = 9 +++++ finished: end stream for module: stream = 0 label = 'intProducerB' id = 9 +++++ starting: end stream for module: stream = 0 label = 'intProducerBeginProcessBlock' id = 10 +++++ finished: end stream for module: stream = 0 label = 'intProducerBeginProcessBlock' id = 10 +++++ starting: end stream for module: stream = 0 label = 'intProducerEndProcessBlock' id = 11 +++++ finished: end stream for module: stream = 0 label = 'intProducerEndProcessBlock' id = 11 +++++ starting: end stream for module: stream = 0 label = 'intProducerU' id = 12 +++++ finished: end stream for module: stream = 0 label = 'intProducerU' id = 12 +++++ starting: end stream for module: stream = 0 label = 'intVectorProducer' id = 13 +++++ finished: end stream for module: stream = 0 label = 'intVectorProducer' id = 13 +++++ starting: end job for module with label 'intProducerA' id = 8 Module type=IntProducer, Module label=intProducerA, Parameter Set ID=56ea7c8bbb02df4e1c3b945954838318 -++++ finished: end job for module with label 'intProducerA' id = 9 +++++ finished: end job for module with label 'intProducerA' id = 8 Module type=IntProducer, Module label=intProducerA, Parameter Set ID=56ea7c8bbb02df4e1c3b945954838318 -++++ starting: end job for module with label 'intProducerB' id = 10 -++++ finished: end job for module with label 'intProducerB' id = 10 -++++ starting: end job for module with label 'intProducerBeginProcessBlock' id = 11 -++++ finished: end job for module with label 'intProducerBeginProcessBlock' id = 11 -++++ starting: end job for module with label 'intProducerEndProcessBlock' id = 12 -++++ finished: end job for module with label 'intProducerEndProcessBlock' id = 12 -++++ starting: end job for module with label 'intProducerU' id = 13 -++++ finished: end job for module with label 'intProducerU' id = 13 -++++ starting: end job for module with label 'intVectorProducer' id = 14 -++++ finished: end job for module with label 'intVectorProducer' id = 14 -++++ starting: end job for module with label 'intProducer' id = 4 -++++ finished: end job for module with label 'intProducer' id = 4 -++++ starting: end job for module with label 'a1' id = 5 +++++ starting: end job for module with label 'intProducerB' id = 9 +++++ finished: end job for module with label 'intProducerB' id = 9 +++++ starting: end job for module with label 'intProducerBeginProcessBlock' id = 10 +++++ finished: end job for module with label 'intProducerBeginProcessBlock' id = 10 +++++ starting: end job for module with label 'intProducerEndProcessBlock' id = 11 +++++ finished: end job for module with label 'intProducerEndProcessBlock' id = 11 +++++ starting: end job for module with label 'intProducerU' id = 12 +++++ finished: end job for module with label 'intProducerU' id = 12 +++++ starting: end job for module with label 'intVectorProducer' id = 13 +++++ finished: end job for module with label 'intVectorProducer' id = 13 +++++ starting: end job for module with label 'intProducer' id = 3 +++++ finished: end job for module with label 'intProducer' id = 3 +++++ starting: end job for module with label 'a1' id = 4 Module type=TestFindProduct, Module label=a1, Parameter Set ID=a7caa43fcf5ef35dee69e4bd85169d4c TestFindProduct sum = 530021 -++++ finished: end job for module with label 'a1' id = 5 +++++ finished: end job for module with label 'a1' id = 4 Module type=TestFindProduct, Module label=a1, Parameter Set ID=a7caa43fcf5ef35dee69e4bd85169d4c -++++ starting: end job for module with label 'a2' id = 6 +++++ starting: end job for module with label 'a2' id = 5 TestFindProduct sum = 300 -++++ finished: end job for module with label 'a2' id = 6 -++++ starting: end job for module with label 'a3' id = 7 +++++ finished: end job for module with label 'a2' id = 5 +++++ starting: end job for module with label 'a3' id = 6 TestFindProduct sum = 300 -++++ finished: end job for module with label 'a3' id = 7 -++++ starting: end job for module with label 'out' id = 8 -++++ finished: end job for module with label 'out' id = 8 +++++ finished: end job for module with label 'a3' id = 6 +++++ starting: end job for module with label 'out' id = 7 +++++ finished: end job for module with label 'out' id = 7 ++++ starting: end job for module with label 'TriggerResults' id = 1 ++++ finished: end job for module with label 'TriggerResults' id = 1 ++++ starting: end job for module with label 'p' id = 2 ++++ finished: end job for module with label 'p' id = 2 -++++ starting: end job for module with label 'e' id = 3 -++++ finished: end job for module with label 'e' id = 3 ++ finished: end job diff --git a/FWCore/Integration/test/unit_test_outputs/testGetBy2.log b/FWCore/Integration/test/unit_test_outputs/testGetBy2.log index 896d6cddd3831..1f5691790acf9 100644 --- a/FWCore/Integration/test/unit_test_outputs/testGetBy2.log +++ b/FWCore/Integration/test/unit_test_outputs/testGetBy2.log @@ -8,38 +8,34 @@ Module type=PoolSource, Module label=source, Parameter Set ID=e26370152bd22c8709 ++++ finished: constructing module with label 'TriggerResults' id = 1 ++++ starting: constructing module with label 'p' id = 2 ++++ finished: constructing module with label 'p' id = 2 -++++ starting: constructing module with label 'e' id = 3 -++++ finished: constructing module with label 'e' id = 3 -++++ starting: constructing module with label 'intProducer' id = 4 +++++ starting: constructing module with label 'intProducer' id = 3 Module type=IntProducer, Module label=intProducer, Parameter Set ID=b4b90439a3015d748c803aa5c60a25d3 -++++ finished: constructing module with label 'intProducer' id = 4 +++++ finished: constructing module with label 'intProducer' id = 3 Module type=IntProducer, Module label=intProducer, Parameter Set ID=b4b90439a3015d748c803aa5c60a25d3 -++++ starting: constructing module with label 'out' id = 5 -++++ finished: constructing module with label 'out' id = 5 -++++ starting: constructing module with label 'intProducerU' id = 6 -++++ finished: constructing module with label 'intProducerU' id = 6 -++++ starting: constructing module with label 'intVectorProducer' id = 7 -++++ finished: constructing module with label 'intVectorProducer' id = 7 +++++ starting: constructing module with label 'out' id = 4 +++++ finished: constructing module with label 'out' id = 4 +++++ starting: constructing module with label 'intProducerU' id = 5 +++++ finished: constructing module with label 'intProducerU' id = 5 +++++ starting: constructing module with label 'intVectorProducer' id = 6 +++++ finished: constructing module with label 'intVectorProducer' id = 6 ++ preallocate: 1 concurrent runs, 1 concurrent luminosity sections, 1 streams ++ starting: begin job -++++ starting: begin job for module with label 'intProducerU' id = 6 -++++ finished: begin job for module with label 'intProducerU' id = 6 -++++ starting: begin job for module with label 'intVectorProducer' id = 7 -++++ finished: begin job for module with label 'intVectorProducer' id = 7 -++++ starting: begin job for module with label 'intProducer' id = 4 +++++ starting: begin job for module with label 'intProducerU' id = 5 +++++ finished: begin job for module with label 'intProducerU' id = 5 +++++ starting: begin job for module with label 'intVectorProducer' id = 6 +++++ finished: begin job for module with label 'intVectorProducer' id = 6 +++++ starting: begin job for module with label 'intProducer' id = 3 Module type=IntProducer, Module label=intProducer, Parameter Set ID=b4b90439a3015d748c803aa5c60a25d3 -++++ finished: begin job for module with label 'intProducer' id = 4 +++++ finished: begin job for module with label 'intProducer' id = 3 Module type=IntProducer, Module label=intProducer, Parameter Set ID=b4b90439a3015d748c803aa5c60a25d3 -++++ starting: begin job for module with label 'out' id = 5 -++++ finished: begin job for module with label 'out' id = 5 +++++ starting: begin job for module with label 'out' id = 4 +++++ finished: begin job for module with label 'out' id = 4 ++++ starting: begin job for module with label 'TriggerResults' id = 1 ++++ finished: begin job for module with label 'TriggerResults' id = 1 ++++ starting: begin job for module with label 'p' id = 2 ++++ finished: begin job for module with label 'p' id = 2 -++++ starting: begin job for module with label 'e' id = 3 -++++ finished: begin job for module with label 'e' id = 3 ++ finished: begin job -++++ starting: begin stream for module: stream = 0 label = 'intProducer' id = 4 +++++ starting: begin stream for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = BeginStream run: 0 lumi: 0 event: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -51,7 +47,7 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++ finished: begin stream for module: stream = 0 label = 'intProducer' id = 4 +++++ finished: begin stream for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = BeginStream run: 0 lumi: 0 event: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -65,16 +61,14 @@ ModuleCallingContext state = Running ++++ starting: begin stream for module: stream = 0 label = 'TriggerResults' id = 1 ++++ finished: begin stream for module: stream = 0 label = 'TriggerResults' id = 1 -++++ starting: begin stream for module: stream = 0 label = 'out' id = 5 -++++ finished: begin stream for module: stream = 0 label = 'out' id = 5 +++++ starting: begin stream for module: stream = 0 label = 'out' id = 4 +++++ finished: begin stream for module: stream = 0 label = 'out' id = 4 ++++ starting: begin stream for module: stream = 0 label = 'p' id = 2 ++++ finished: begin stream for module: stream = 0 label = 'p' id = 2 -++++ starting: begin stream for module: stream = 0 label = 'e' id = 3 -++++ finished: begin stream for module: stream = 0 label = 'e' id = 3 -++++ starting: begin stream for module: stream = 0 label = 'intProducerU' id = 6 -++++ finished: begin stream for module: stream = 0 label = 'intProducerU' id = 6 -++++ starting: begin stream for module: stream = 0 label = 'intVectorProducer' id = 7 -++++ finished: begin stream for module: stream = 0 label = 'intVectorProducer' id = 7 +++++ starting: begin stream for module: stream = 0 label = 'intProducerU' id = 5 +++++ finished: begin stream for module: stream = 0 label = 'intProducerU' id = 5 +++++ starting: begin stream for module: stream = 0 label = 'intVectorProducer' id = 6 +++++ finished: begin stream for module: stream = 0 label = 'intVectorProducer' id = 6 ++++ starting: begin process block GlobalContext: transition = BeginProcessBlock run: 0 luminosityBlock: 0 @@ -107,8 +101,8 @@ GlobalContext: transition = WriteProcessBlock runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++ starting: write process block for module: label = 'out' id = 5 -++++++ finished: write process block for module: label = 'out' id = 5 +++++++ starting: write process block for module: label = 'out' id = 4 +++++++ finished: write process block for module: label = 'out' id = 4 ++++ finished: write process block GlobalContext: transition = WriteProcessBlock run: 0 luminosityBlock: 0 @@ -138,9 +132,9 @@ StreamContext: StreamID = 0 transition = BeginRun runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++ starting: begin run for module: stream = 0 label = 'intProducerU' id = 6 -++++++ finished: begin run for module: stream = 0 label = 'intProducerU' id = 6 -++++++ starting: begin run for module: stream = 0 label = 'intProducer' id = 4 +++++++ starting: begin run for module: stream = 0 label = 'intProducerU' id = 5 +++++++ finished: begin run for module: stream = 0 label = 'intProducerU' id = 5 +++++++ starting: begin run for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = BeginRun run: 1 lumi: 0 event: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 @@ -152,7 +146,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++ finished: begin run for module: stream = 0 label = 'intProducer' id = 4 +++++++ finished: begin run for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = BeginRun run: 1 lumi: 0 event: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 1 @@ -193,9 +187,9 @@ StreamContext: StreamID = 0 transition = BeginLuminosityBlock runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++ starting: begin lumi for module: stream = 0 label = 'intProducerU' id = 6 -++++++ finished: begin lumi for module: stream = 0 label = 'intProducerU' id = 6 -++++++ starting: begin lumi for module: stream = 0 label = 'intProducer' id = 4 +++++++ starting: begin lumi for module: stream = 0 label = 'intProducerU' id = 5 +++++++ finished: begin lumi for module: stream = 0 label = 'intProducerU' id = 5 +++++++ starting: begin lumi for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = BeginLuminosityBlock run: 1 lumi: 1 event: 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 @@ -207,7 +201,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++ finished: begin lumi for module: stream = 0 label = 'intProducer' id = 4 +++++++ finished: begin lumi for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = BeginLuminosityBlock run: 1 lumi: 1 event: 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 @@ -255,7 +249,7 @@ PathContext: pathName = p pathID = 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 4 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 @@ -269,7 +263,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 4 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 @@ -283,7 +277,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++++ starting: processing event for module: stream = 0 label = 'intProducer' id = 4 +++++++++ starting: processing event for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 @@ -297,7 +291,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++++ finished: processing event for module: stream = 0 label = 'intProducer' id = 4 +++++++++ finished: processing event for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 5000001 @@ -326,36 +320,34 @@ PathContext: pathName = p pathID = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 1 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 1 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 5 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 6 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 7 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 7 -++++++++++ starting: processing event for module: stream = 0 label = 'intVectorProducer' id = 7 -++++++++++ finished: processing event for module: stream = 0 label = 'intVectorProducer' id = 7 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 6 -++++++++++ starting: processing event for module: stream = 0 label = 'intProducerU' id = 6 -++++++++++ finished: processing event for module: stream = 0 label = 'intProducerU' id = 6 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 5 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 5 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 5 -++++++++ starting: processing event for module: stream = 0 label = 'e' id = 3 -++++++++ finished: processing event for module: stream = 0 label = 'e' id = 3 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 4 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 5 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 6 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 6 +++++++++++ starting: processing event for module: stream = 0 label = 'intVectorProducer' id = 6 +++++++++++ finished: processing event for module: stream = 0 label = 'intVectorProducer' id = 6 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 5 +++++++++++ starting: processing event for module: stream = 0 label = 'intProducerU' id = 5 +++++++++++ finished: processing event for module: stream = 0 label = 'intProducerU' id = 5 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 4 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 4 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 4 ++++++ finished: processing path 'e' : stream = 0 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 1 @@ -403,7 +395,7 @@ PathContext: pathName = p pathID = 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 4 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 @@ -417,7 +409,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 4 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 @@ -431,7 +423,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++++ starting: processing event for module: stream = 0 label = 'intProducer' id = 4 +++++++++ starting: processing event for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 @@ -445,7 +437,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++++ finished: processing event for module: stream = 0 label = 'intProducer' id = 4 +++++++++ finished: processing event for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 10000001 @@ -474,36 +466,34 @@ PathContext: pathName = p pathID = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 1 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 1 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 5 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 6 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 7 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 7 -++++++++++ starting: processing event for module: stream = 0 label = 'intVectorProducer' id = 7 -++++++++++ finished: processing event for module: stream = 0 label = 'intVectorProducer' id = 7 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 6 -++++++++++ starting: processing event for module: stream = 0 label = 'intProducerU' id = 6 -++++++++++ finished: processing event for module: stream = 0 label = 'intProducerU' id = 6 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 5 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 5 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 5 -++++++++ starting: processing event for module: stream = 0 label = 'e' id = 3 -++++++++ finished: processing event for module: stream = 0 label = 'e' id = 3 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 4 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 5 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 6 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 6 +++++++++++ starting: processing event for module: stream = 0 label = 'intVectorProducer' id = 6 +++++++++++ finished: processing event for module: stream = 0 label = 'intVectorProducer' id = 6 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 5 +++++++++++ starting: processing event for module: stream = 0 label = 'intProducerU' id = 5 +++++++++++ finished: processing event for module: stream = 0 label = 'intProducerU' id = 5 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 4 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 4 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 4 ++++++ finished: processing path 'e' : stream = 0 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 2 @@ -551,7 +541,7 @@ PathContext: pathName = p pathID = 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 4 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -565,7 +555,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 4 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -579,7 +569,7 @@ ModuleCallingContext state = Prefetching runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++++ starting: processing event for module: stream = 0 label = 'intProducer' id = 4 +++++++++ starting: processing event for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -593,7 +583,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++++ finished: processing event for module: stream = 0 label = 'intProducer' id = 4 +++++++++ finished: processing event for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -622,36 +612,34 @@ PathContext: pathName = p pathID = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 1 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 1 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 5 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 6 -++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 7 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 7 -++++++++++ starting: processing event for module: stream = 0 label = 'intVectorProducer' id = 7 -++++++++++ finished: processing event for module: stream = 0 label = 'intVectorProducer' id = 7 -++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 6 -++++++++++ starting: processing event for module: stream = 0 label = 'intProducerU' id = 6 -++++++++++ finished: processing event for module: stream = 0 label = 'intProducerU' id = 6 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 5 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 5 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 5 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 5 -++++++++ starting: processing event for module: stream = 0 label = 'e' id = 3 -++++++++ finished: processing event for module: stream = 0 label = 'e' id = 3 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 4 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 5 +++++++++++ starting: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 6 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intVectorProducer' id = 6 +++++++++++ starting: processing event for module: stream = 0 label = 'intVectorProducer' id = 6 +++++++++++ finished: processing event for module: stream = 0 label = 'intVectorProducer' id = 6 +++++++++++ finished: prefetching before processing event for module: stream = 0 label = 'intProducerU' id = 5 +++++++++++ starting: processing event for module: stream = 0 label = 'intProducerU' id = 5 +++++++++++ finished: processing event for module: stream = 0 label = 'intProducerU' id = 5 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ starting: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++++ finished: event delayed read from source: stream = 0 label = 'out' id = 4 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 4 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 4 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 4 ++++++ finished: processing path 'e' : stream = 0 StreamContext: StreamID = 0 transition = Event run: 1 lumi: 1 event: 3 @@ -678,9 +666,9 @@ StreamContext: StreamID = 0 transition = EndLuminosityBlock runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++ starting: end lumi for module: stream = 0 label = 'intProducerU' id = 6 -++++++ finished: end lumi for module: stream = 0 label = 'intProducerU' id = 6 -++++++ starting: end lumi for module: stream = 0 label = 'intProducer' id = 4 +++++++ starting: end lumi for module: stream = 0 label = 'intProducerU' id = 5 +++++++ finished: end lumi for module: stream = 0 label = 'intProducerU' id = 5 +++++++ starting: end lumi for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = EndLuminosityBlock run: 1 lumi: 1 event: 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -692,7 +680,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++ finished: end lumi for module: stream = 0 label = 'intProducer' id = 4 +++++++ finished: end lumi for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = EndLuminosityBlock run: 1 lumi: 1 event: 0 runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 15000001 @@ -728,8 +716,8 @@ GlobalContext: transition = WriteLuminosityBlock runIndex = 0 luminosityBlockIndex = 0 unixTime = 0 microsecondOffset = 1 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++ starting: write lumi for module: label = 'out' id = 5 -++++++ finished: write lumi for module: label = 'out' id = 5 +++++++ starting: write lumi for module: label = 'out' id = 4 +++++++ finished: write lumi for module: label = 'out' id = 4 ++++ finished: global write lumi: run = 1 lumi = 1 time = 1 GlobalContext: transition = WriteLuminosityBlock run: 1 luminosityBlock: 1 @@ -742,9 +730,9 @@ StreamContext: StreamID = 0 transition = EndRun runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++ starting: end run for module: stream = 0 label = 'intProducerU' id = 6 -++++++ finished: end run for module: stream = 0 label = 'intProducerU' id = 6 -++++++ starting: end run for module: stream = 0 label = 'intProducer' id = 4 +++++++ starting: end run for module: stream = 0 label = 'intProducerU' id = 5 +++++++ finished: end run for module: stream = 0 label = 'intProducerU' id = 5 +++++++ starting: end run for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = EndRun run: 1 lumi: 0 event: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 @@ -756,7 +744,7 @@ ModuleCallingContext state = Running runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++ finished: end run for module: stream = 0 label = 'intProducer' id = 4 +++++++ finished: end run for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = EndRun run: 1 lumi: 0 event: 0 runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 @@ -792,8 +780,8 @@ GlobalContext: transition = WriteRun runIndex = 0 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 15000001 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++ starting: write run for module: label = 'out' id = 5 -++++++ finished: write run for module: label = 'out' id = 5 +++++++ starting: write run for module: label = 'out' id = 4 +++++++ finished: write run for module: label = 'out' id = 4 ++++ finished: global write run 1 : time = 15000001 GlobalContext: transition = WriteRun run: 1 luminosityBlock: 0 @@ -820,15 +808,15 @@ GlobalContext: transition = WriteProcessBlock runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++++ starting: write process block for module: label = 'out' id = 5 -++++++ finished: write process block for module: label = 'out' id = 5 +++++++ starting: write process block for module: label = 'out' id = 4 +++++++ finished: write process block for module: label = 'out' id = 4 ++++ finished: write process block GlobalContext: transition = WriteProcessBlock run: 0 luminosityBlock: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++ starting: end stream for module: stream = 0 label = 'intProducer' id = 4 +++++ starting: end stream for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = EndStream run: 0 lumi: 0 event: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -840,7 +828,7 @@ ModuleCallingContext state = Running runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 ProcessContext: PROD2 9a42d7e4995aeb2a3c9d04a3ef0f3879 -++++ finished: end stream for module: stream = 0 label = 'intProducer' id = 4 +++++ finished: end stream for module: stream = 0 label = 'intProducer' id = 3 StreamContext: StreamID = 0 transition = EndStream run: 0 lumi: 0 event: 0 runIndex = 4294967295 luminosityBlockIndex = 4294967295 unixTime = 0 microsecondOffset = 0 @@ -854,30 +842,26 @@ ModuleCallingContext state = Running ++++ starting: end stream for module: stream = 0 label = 'TriggerResults' id = 1 ++++ finished: end stream for module: stream = 0 label = 'TriggerResults' id = 1 -++++ starting: end stream for module: stream = 0 label = 'out' id = 5 -++++ finished: end stream for module: stream = 0 label = 'out' id = 5 +++++ starting: end stream for module: stream = 0 label = 'out' id = 4 +++++ finished: end stream for module: stream = 0 label = 'out' id = 4 ++++ starting: end stream for module: stream = 0 label = 'p' id = 2 ++++ finished: end stream for module: stream = 0 label = 'p' id = 2 -++++ starting: end stream for module: stream = 0 label = 'e' id = 3 -++++ finished: end stream for module: stream = 0 label = 'e' id = 3 -++++ starting: end stream for module: stream = 0 label = 'intProducerU' id = 6 -++++ finished: end stream for module: stream = 0 label = 'intProducerU' id = 6 -++++ starting: end stream for module: stream = 0 label = 'intVectorProducer' id = 7 -++++ finished: end stream for module: stream = 0 label = 'intVectorProducer' id = 7 -++++ starting: end job for module with label 'intProducerU' id = 6 -++++ finished: end job for module with label 'intProducerU' id = 6 -++++ starting: end job for module with label 'intVectorProducer' id = 7 -++++ finished: end job for module with label 'intVectorProducer' id = 7 -++++ starting: end job for module with label 'intProducer' id = 4 +++++ starting: end stream for module: stream = 0 label = 'intProducerU' id = 5 +++++ finished: end stream for module: stream = 0 label = 'intProducerU' id = 5 +++++ starting: end stream for module: stream = 0 label = 'intVectorProducer' id = 6 +++++ finished: end stream for module: stream = 0 label = 'intVectorProducer' id = 6 +++++ starting: end job for module with label 'intProducerU' id = 5 +++++ finished: end job for module with label 'intProducerU' id = 5 +++++ starting: end job for module with label 'intVectorProducer' id = 6 +++++ finished: end job for module with label 'intVectorProducer' id = 6 +++++ starting: end job for module with label 'intProducer' id = 3 Module type=IntProducer, Module label=intProducer, Parameter Set ID=b4b90439a3015d748c803aa5c60a25d3 -++++ finished: end job for module with label 'intProducer' id = 4 +++++ finished: end job for module with label 'intProducer' id = 3 Module type=IntProducer, Module label=intProducer, Parameter Set ID=b4b90439a3015d748c803aa5c60a25d3 -++++ starting: end job for module with label 'out' id = 5 -++++ finished: end job for module with label 'out' id = 5 +++++ starting: end job for module with label 'out' id = 4 +++++ finished: end job for module with label 'out' id = 4 ++++ starting: end job for module with label 'TriggerResults' id = 1 ++++ finished: end job for module with label 'TriggerResults' id = 1 ++++ starting: end job for module with label 'p' id = 2 ++++ finished: end job for module with label 'p' id = 2 -++++ starting: end job for module with label 'e' id = 3 -++++ finished: end job for module with label 'e' id = 3 ++ finished: end job diff --git a/FWCore/Integration/test/unit_test_outputs/testSubProcess.grep2.txt b/FWCore/Integration/test/unit_test_outputs/testSubProcess.grep2.txt index 7b125205d19da..58c0e1f80ca95 100644 --- a/FWCore/Integration/test/unit_test_outputs/testSubProcess.grep2.txt +++ b/FWCore/Integration/test/unit_test_outputs/testSubProcess.grep2.txt @@ -32,48 +32,44 @@ ++++ finished: constructing module with label 'path3' id = 15 ++++ starting: constructing module with label 'path4' id = 16 ++++ finished: constructing module with label 'path4' id = 16 -++++ starting: constructing module with label 'endPath1' id = 17 -++++ finished: constructing module with label 'endPath1' id = 17 -++++ starting: constructing module with label 'thingWithMergeProducer' id = 18 -++++ finished: constructing module with label 'thingWithMergeProducer' id = 18 -++++ starting: constructing module with label 'test' id = 19 -++++ finished: constructing module with label 'test' id = 19 -++++ starting: constructing module with label 'testmerge' id = 20 -++++ finished: constructing module with label 'testmerge' id = 20 -++++ starting: constructing module with label 'get' id = 21 -++++ finished: constructing module with label 'get' id = 21 -++++ starting: constructing module with label 'getInt' id = 22 -++++ finished: constructing module with label 'getInt' id = 22 -++++ starting: constructing module with label 'dependsOnNoPut' id = 23 -++++ finished: constructing module with label 'dependsOnNoPut' id = 23 -++++ starting: constructing module with label 'out' id = 24 -++++ finished: constructing module with label 'out' id = 24 -++++ starting: constructing module with label 'TriggerResults' id = 25 -++++ finished: constructing module with label 'TriggerResults' id = 25 -++++ starting: constructing module with label 'path1' id = 26 -++++ finished: constructing module with label 'path1' id = 26 -++++ starting: constructing module with label 'path2' id = 27 -++++ finished: constructing module with label 'path2' id = 27 -++++ starting: constructing module with label 'path3' id = 28 -++++ finished: constructing module with label 'path3' id = 28 -++++ starting: constructing module with label 'path4' id = 29 -++++ finished: constructing module with label 'path4' id = 29 -++++ starting: constructing module with label 'endPath1' id = 30 -++++ finished: constructing module with label 'endPath1' id = 30 -++++ starting: constructing module with label 'thingWithMergeProducer' id = 31 -++++ finished: constructing module with label 'thingWithMergeProducer' id = 31 -++++ starting: constructing module with label 'test' id = 32 -++++ finished: constructing module with label 'test' id = 32 -++++ starting: constructing module with label 'testmerge' id = 33 -++++ finished: constructing module with label 'testmerge' id = 33 -++++ starting: constructing module with label 'get' id = 34 -++++ finished: constructing module with label 'get' id = 34 -++++ starting: constructing module with label 'getInt' id = 35 -++++ finished: constructing module with label 'getInt' id = 35 -++++ starting: constructing module with label 'dependsOnNoPut' id = 36 -++++ finished: constructing module with label 'dependsOnNoPut' id = 36 -++++ starting: constructing module with label 'out' id = 37 -++++ finished: constructing module with label 'out' id = 37 +++++ starting: constructing module with label 'thingWithMergeProducer' id = 17 +++++ finished: constructing module with label 'thingWithMergeProducer' id = 17 +++++ starting: constructing module with label 'test' id = 18 +++++ finished: constructing module with label 'test' id = 18 +++++ starting: constructing module with label 'testmerge' id = 19 +++++ finished: constructing module with label 'testmerge' id = 19 +++++ starting: constructing module with label 'get' id = 20 +++++ finished: constructing module with label 'get' id = 20 +++++ starting: constructing module with label 'getInt' id = 21 +++++ finished: constructing module with label 'getInt' id = 21 +++++ starting: constructing module with label 'dependsOnNoPut' id = 22 +++++ finished: constructing module with label 'dependsOnNoPut' id = 22 +++++ starting: constructing module with label 'out' id = 23 +++++ finished: constructing module with label 'out' id = 23 +++++ starting: constructing module with label 'TriggerResults' id = 24 +++++ finished: constructing module with label 'TriggerResults' id = 24 +++++ starting: constructing module with label 'path1' id = 25 +++++ finished: constructing module with label 'path1' id = 25 +++++ starting: constructing module with label 'path2' id = 26 +++++ finished: constructing module with label 'path2' id = 26 +++++ starting: constructing module with label 'path3' id = 27 +++++ finished: constructing module with label 'path3' id = 27 +++++ starting: constructing module with label 'path4' id = 28 +++++ finished: constructing module with label 'path4' id = 28 +++++ starting: constructing module with label 'thingWithMergeProducer' id = 29 +++++ finished: constructing module with label 'thingWithMergeProducer' id = 29 +++++ starting: constructing module with label 'test' id = 30 +++++ finished: constructing module with label 'test' id = 30 +++++ starting: constructing module with label 'testmerge' id = 31 +++++ finished: constructing module with label 'testmerge' id = 31 +++++ starting: constructing module with label 'get' id = 32 +++++ finished: constructing module with label 'get' id = 32 +++++ starting: constructing module with label 'getInt' id = 33 +++++ finished: constructing module with label 'getInt' id = 33 +++++ starting: constructing module with label 'dependsOnNoPut' id = 34 +++++ finished: constructing module with label 'dependsOnNoPut' id = 34 +++++ starting: constructing module with label 'out' id = 35 +++++ finished: constructing module with label 'out' id = 35 ++ preallocate: 1 concurrent runs, 1 concurrent luminosity sections, 1 streams ++ starting: begin job ++ starting: begin job @@ -102,20 +98,20 @@ ++++ finished: begin job for module with label 'path2' id = 4 ++ starting: begin job ++ starting: begin job -++++ starting: begin job for module with label 'thingWithMergeProducer' id = 18 -++++ finished: begin job for module with label 'thingWithMergeProducer' id = 18 -++++ starting: begin job for module with label 'test' id = 19 -++++ finished: begin job for module with label 'test' id = 19 -++++ starting: begin job for module with label 'testmerge' id = 20 -++++ finished: begin job for module with label 'testmerge' id = 20 -++++ starting: begin job for module with label 'get' id = 21 -++++ finished: begin job for module with label 'get' id = 21 -++++ starting: begin job for module with label 'getInt' id = 22 -++++ finished: begin job for module with label 'getInt' id = 22 -++++ starting: begin job for module with label 'dependsOnNoPut' id = 23 -++++ finished: begin job for module with label 'dependsOnNoPut' id = 23 -++++ starting: begin job for module with label 'out' id = 24 -++++ finished: begin job for module with label 'out' id = 24 +++++ starting: begin job for module with label 'thingWithMergeProducer' id = 17 +++++ finished: begin job for module with label 'thingWithMergeProducer' id = 17 +++++ starting: begin job for module with label 'test' id = 18 +++++ finished: begin job for module with label 'test' id = 18 +++++ starting: begin job for module with label 'testmerge' id = 19 +++++ finished: begin job for module with label 'testmerge' id = 19 +++++ starting: begin job for module with label 'get' id = 20 +++++ finished: begin job for module with label 'get' id = 20 +++++ starting: begin job for module with label 'getInt' id = 21 +++++ finished: begin job for module with label 'getInt' id = 21 +++++ starting: begin job for module with label 'dependsOnNoPut' id = 22 +++++ finished: begin job for module with label 'dependsOnNoPut' id = 22 +++++ starting: begin job for module with label 'out' id = 23 +++++ finished: begin job for module with label 'out' id = 23 ++++ starting: begin job for module with label 'TriggerResults' id = 12 ++++ finished: begin job for module with label 'TriggerResults' id = 12 ++++ starting: begin job for module with label 'path1' id = 13 @@ -126,35 +122,31 @@ ++++ finished: begin job for module with label 'path3' id = 15 ++++ starting: begin job for module with label 'path4' id = 16 ++++ finished: begin job for module with label 'path4' id = 16 -++++ starting: begin job for module with label 'endPath1' id = 17 -++++ finished: begin job for module with label 'endPath1' id = 17 ++ starting: begin job -++++ starting: begin job for module with label 'thingWithMergeProducer' id = 31 -++++ finished: begin job for module with label 'thingWithMergeProducer' id = 31 -++++ starting: begin job for module with label 'test' id = 32 -++++ finished: begin job for module with label 'test' id = 32 -++++ starting: begin job for module with label 'testmerge' id = 33 -++++ finished: begin job for module with label 'testmerge' id = 33 -++++ starting: begin job for module with label 'get' id = 34 -++++ finished: begin job for module with label 'get' id = 34 -++++ starting: begin job for module with label 'getInt' id = 35 -++++ finished: begin job for module with label 'getInt' id = 35 -++++ starting: begin job for module with label 'dependsOnNoPut' id = 36 -++++ finished: begin job for module with label 'dependsOnNoPut' id = 36 -++++ starting: begin job for module with label 'out' id = 37 -++++ finished: begin job for module with label 'out' id = 37 -++++ starting: begin job for module with label 'TriggerResults' id = 25 -++++ finished: begin job for module with label 'TriggerResults' id = 25 -++++ starting: begin job for module with label 'path1' id = 26 -++++ finished: begin job for module with label 'path1' id = 26 -++++ starting: begin job for module with label 'path2' id = 27 -++++ finished: begin job for module with label 'path2' id = 27 -++++ starting: begin job for module with label 'path3' id = 28 -++++ finished: begin job for module with label 'path3' id = 28 -++++ starting: begin job for module with label 'path4' id = 29 -++++ finished: begin job for module with label 'path4' id = 29 -++++ starting: begin job for module with label 'endPath1' id = 30 -++++ finished: begin job for module with label 'endPath1' id = 30 +++++ starting: begin job for module with label 'thingWithMergeProducer' id = 29 +++++ finished: begin job for module with label 'thingWithMergeProducer' id = 29 +++++ starting: begin job for module with label 'test' id = 30 +++++ finished: begin job for module with label 'test' id = 30 +++++ starting: begin job for module with label 'testmerge' id = 31 +++++ finished: begin job for module with label 'testmerge' id = 31 +++++ starting: begin job for module with label 'get' id = 32 +++++ finished: begin job for module with label 'get' id = 32 +++++ starting: begin job for module with label 'getInt' id = 33 +++++ finished: begin job for module with label 'getInt' id = 33 +++++ starting: begin job for module with label 'dependsOnNoPut' id = 34 +++++ finished: begin job for module with label 'dependsOnNoPut' id = 34 +++++ starting: begin job for module with label 'out' id = 35 +++++ finished: begin job for module with label 'out' id = 35 +++++ starting: begin job for module with label 'TriggerResults' id = 24 +++++ finished: begin job for module with label 'TriggerResults' id = 24 +++++ starting: begin job for module with label 'path1' id = 25 +++++ finished: begin job for module with label 'path1' id = 25 +++++ starting: begin job for module with label 'path2' id = 26 +++++ finished: begin job for module with label 'path2' id = 26 +++++ starting: begin job for module with label 'path3' id = 27 +++++ finished: begin job for module with label 'path3' id = 27 +++++ starting: begin job for module with label 'path4' id = 28 +++++ finished: begin job for module with label 'path4' id = 28 ++ finished: begin job ++++ starting: begin stream for module: stream = 0 label = 'thingWithMergeProducer' id = 5 ++++ finished: begin stream for module: stream = 0 label = 'thingWithMergeProducer' id = 5 @@ -178,22 +170,22 @@ ++++ finished: begin stream for module: stream = 0 label = 'path1' id = 3 ++++ starting: begin stream for module: stream = 0 label = 'path2' id = 4 ++++ finished: begin stream for module: stream = 0 label = 'path2' id = 4 -++++ starting: begin stream for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++ finished: begin stream for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++ starting: begin stream for module: stream = 0 label = 'test' id = 19 -++++ finished: begin stream for module: stream = 0 label = 'test' id = 19 -++++ starting: begin stream for module: stream = 0 label = 'testmerge' id = 20 -++++ finished: begin stream for module: stream = 0 label = 'testmerge' id = 20 -++++ starting: begin stream for module: stream = 0 label = 'get' id = 21 -++++ finished: begin stream for module: stream = 0 label = 'get' id = 21 -++++ starting: begin stream for module: stream = 0 label = 'getInt' id = 22 -++++ finished: begin stream for module: stream = 0 label = 'getInt' id = 22 -++++ starting: begin stream for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++ finished: begin stream for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++ starting: begin stream for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++ finished: begin stream for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++ starting: begin stream for module: stream = 0 label = 'test' id = 18 +++++ finished: begin stream for module: stream = 0 label = 'test' id = 18 +++++ starting: begin stream for module: stream = 0 label = 'testmerge' id = 19 +++++ finished: begin stream for module: stream = 0 label = 'testmerge' id = 19 +++++ starting: begin stream for module: stream = 0 label = 'get' id = 20 +++++ finished: begin stream for module: stream = 0 label = 'get' id = 20 +++++ starting: begin stream for module: stream = 0 label = 'getInt' id = 21 +++++ finished: begin stream for module: stream = 0 label = 'getInt' id = 21 +++++ starting: begin stream for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++ finished: begin stream for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++ starting: begin stream for module: stream = 0 label = 'TriggerResults' id = 12 ++++ finished: begin stream for module: stream = 0 label = 'TriggerResults' id = 12 -++++ starting: begin stream for module: stream = 0 label = 'out' id = 24 -++++ finished: begin stream for module: stream = 0 label = 'out' id = 24 +++++ starting: begin stream for module: stream = 0 label = 'out' id = 23 +++++ finished: begin stream for module: stream = 0 label = 'out' id = 23 ++++ starting: begin stream for module: stream = 0 label = 'path1' id = 13 ++++ finished: begin stream for module: stream = 0 label = 'path1' id = 13 ++++ starting: begin stream for module: stream = 0 label = 'path2' id = 14 @@ -202,34 +194,30 @@ ++++ finished: begin stream for module: stream = 0 label = 'path3' id = 15 ++++ starting: begin stream for module: stream = 0 label = 'path4' id = 16 ++++ finished: begin stream for module: stream = 0 label = 'path4' id = 16 -++++ starting: begin stream for module: stream = 0 label = 'endPath1' id = 17 -++++ finished: begin stream for module: stream = 0 label = 'endPath1' id = 17 -++++ starting: begin stream for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++ finished: begin stream for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++ starting: begin stream for module: stream = 0 label = 'test' id = 32 -++++ finished: begin stream for module: stream = 0 label = 'test' id = 32 -++++ starting: begin stream for module: stream = 0 label = 'testmerge' id = 33 -++++ finished: begin stream for module: stream = 0 label = 'testmerge' id = 33 -++++ starting: begin stream for module: stream = 0 label = 'get' id = 34 -++++ finished: begin stream for module: stream = 0 label = 'get' id = 34 -++++ starting: begin stream for module: stream = 0 label = 'getInt' id = 35 -++++ finished: begin stream for module: stream = 0 label = 'getInt' id = 35 -++++ starting: begin stream for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++ finished: begin stream for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++ starting: begin stream for module: stream = 0 label = 'TriggerResults' id = 25 -++++ finished: begin stream for module: stream = 0 label = 'TriggerResults' id = 25 -++++ starting: begin stream for module: stream = 0 label = 'out' id = 37 -++++ finished: begin stream for module: stream = 0 label = 'out' id = 37 -++++ starting: begin stream for module: stream = 0 label = 'path1' id = 26 -++++ finished: begin stream for module: stream = 0 label = 'path1' id = 26 -++++ starting: begin stream for module: stream = 0 label = 'path2' id = 27 -++++ finished: begin stream for module: stream = 0 label = 'path2' id = 27 -++++ starting: begin stream for module: stream = 0 label = 'path3' id = 28 -++++ finished: begin stream for module: stream = 0 label = 'path3' id = 28 -++++ starting: begin stream for module: stream = 0 label = 'path4' id = 29 -++++ finished: begin stream for module: stream = 0 label = 'path4' id = 29 -++++ starting: begin stream for module: stream = 0 label = 'endPath1' id = 30 -++++ finished: begin stream for module: stream = 0 label = 'endPath1' id = 30 +++++ starting: begin stream for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++ finished: begin stream for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++ starting: begin stream for module: stream = 0 label = 'test' id = 30 +++++ finished: begin stream for module: stream = 0 label = 'test' id = 30 +++++ starting: begin stream for module: stream = 0 label = 'testmerge' id = 31 +++++ finished: begin stream for module: stream = 0 label = 'testmerge' id = 31 +++++ starting: begin stream for module: stream = 0 label = 'get' id = 32 +++++ finished: begin stream for module: stream = 0 label = 'get' id = 32 +++++ starting: begin stream for module: stream = 0 label = 'getInt' id = 33 +++++ finished: begin stream for module: stream = 0 label = 'getInt' id = 33 +++++ starting: begin stream for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++ finished: begin stream for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++ starting: begin stream for module: stream = 0 label = 'TriggerResults' id = 24 +++++ finished: begin stream for module: stream = 0 label = 'TriggerResults' id = 24 +++++ starting: begin stream for module: stream = 0 label = 'out' id = 35 +++++ finished: begin stream for module: stream = 0 label = 'out' id = 35 +++++ starting: begin stream for module: stream = 0 label = 'path1' id = 25 +++++ finished: begin stream for module: stream = 0 label = 'path1' id = 25 +++++ starting: begin stream for module: stream = 0 label = 'path2' id = 26 +++++ finished: begin stream for module: stream = 0 label = 'path2' id = 26 +++++ starting: begin stream for module: stream = 0 label = 'path3' id = 27 +++++ finished: begin stream for module: stream = 0 label = 'path3' id = 27 +++++ starting: begin stream for module: stream = 0 label = 'path4' id = 28 +++++ finished: begin stream for module: stream = 0 label = 'path4' id = 28 ++++ starting: begin process block ++++ finished: begin process block ++++ starting: begin process block @@ -243,16 +231,16 @@ ++++ starting: begin process block ++++ finished: begin process block ++++ starting: begin process block -++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'getInt' id = 22 +++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'getInt' id = 21 ++++ starting: begin process block -++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'getInt' id = 35 -++++++ starting: begin process block for module: label = 'getInt' id = 35 -++++++ finished: begin process block for module: label = 'getInt' id = 35 +++++++++ starting: prefetching before processing begin ProcessBlock for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'getInt' id = 33 +++++++ starting: begin process block for module: label = 'getInt' id = 33 +++++++ finished: begin process block for module: label = 'getInt' id = 33 ++++ finished: begin process block -++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'getInt' id = 22 -++++++ starting: begin process block for module: label = 'getInt' id = 22 -++++++ finished: begin process block for module: label = 'getInt' id = 22 +++++++++ finished: prefetching before processing begin ProcessBlock for module: label = 'getInt' id = 21 +++++++ starting: begin process block for module: label = 'getInt' id = 21 +++++++ finished: begin process block for module: label = 'getInt' id = 21 ++++ finished: begin process block ++++ queuing: EventSetup synchronization run: 1 lumi: 0 event: 0 ++++ pre: EventSetup synchronizing run: 1 lumi: 0 event: 0 @@ -288,60 +276,60 @@ ++++ starting: global begin run 1 : time = 1 ++++ finished: global begin run 1 : time = 1 ++++ starting: global begin run 1 : time = 1 -++++++++ starting: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global begin Run for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global begin Run for module: label = 'get' id = 21 +++++++++ starting: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global begin Run for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global begin Run for module: label = 'get' id = 20 ++++++++ starting: prefetching for esmodule: label = '' type = DoodadESSource in record = GadgetRcd -++++++++ starting: prefetching before processing global begin Run for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global begin Run for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global begin Run for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global begin Run for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global begin run 1 : time = 1 -++++++++ starting: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global begin Run for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global begin Run for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global begin Run for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global begin Run for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global begin run for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global begin run for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin Run for module: label = 'test' id = 32 -++++++ starting: global begin run for module: label = 'test' id = 32 -++++++ finished: global begin run for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global begin Run for module: label = 'testmerge' id = 33 -++++++ starting: global begin run for module: label = 'testmerge' id = 33 -++++++ finished: global begin run for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global begin Run for module: label = 'getInt' id = 35 -++++++ starting: global begin run for module: label = 'getInt' id = 35 -++++++ finished: global begin run for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 36 -++++++++ finished: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global begin run for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global begin run for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global begin Run for module: label = 'test' id = 19 -++++++ starting: global begin run for module: label = 'test' id = 19 -++++++ finished: global begin run for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global begin Run for module: label = 'testmerge' id = 20 -++++++ starting: global begin run for module: label = 'testmerge' id = 20 -++++++ finished: global begin run for module: label = 'testmerge' id = 20 +++++++++ starting: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global begin Run for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global begin Run for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global begin Run for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global begin Run for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global begin run for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global begin run for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin Run for module: label = 'test' id = 30 +++++++ starting: global begin run for module: label = 'test' id = 30 +++++++ finished: global begin run for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global begin Run for module: label = 'testmerge' id = 31 +++++++ starting: global begin run for module: label = 'testmerge' id = 31 +++++++ finished: global begin run for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global begin Run for module: label = 'getInt' id = 33 +++++++ starting: global begin run for module: label = 'getInt' id = 33 +++++++ finished: global begin run for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 34 +++++++++ finished: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global begin run for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global begin run for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global begin Run for module: label = 'test' id = 18 +++++++ starting: global begin run for module: label = 'test' id = 18 +++++++ finished: global begin run for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global begin Run for module: label = 'testmerge' id = 19 +++++++ starting: global begin run for module: label = 'testmerge' id = 19 +++++++ finished: global begin run for module: label = 'testmerge' id = 19 ++++++++ finished: prefetching for esmodule: label = '' type = DoodadESSource in record = GadgetRcd ++++++++ starting: processing esmodule: label = '' type = DoodadESSource in record = GadgetRcd ++++++++ finished: processing esmodule: label = '' type = DoodadESSource in record = GadgetRcd -++++++++ finished: prefetching before processing global begin Run for module: label = 'get' id = 21 -++++++ starting: global begin run for module: label = 'get' id = 21 -++++++ finished: global begin run for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global begin Run for module: label = 'get' id = 34 -++++++ starting: global begin run for module: label = 'get' id = 34 -++++++ finished: global begin run for module: label = 'get' id = 34 +++++++++ finished: prefetching before processing global begin Run for module: label = 'get' id = 20 +++++++ starting: global begin run for module: label = 'get' id = 20 +++++++ finished: global begin run for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global begin Run for module: label = 'get' id = 32 +++++++ starting: global begin run for module: label = 'get' id = 32 +++++++ finished: global begin run for module: label = 'get' id = 32 ++++ finished: global begin run 1 : time = 1 -++++++++ finished: prefetching before processing global begin Run for module: label = 'getInt' id = 22 -++++++ starting: global begin run for module: label = 'getInt' id = 22 -++++++ finished: global begin run for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global begin Run for module: label = 'getInt' id = 21 +++++++ starting: global begin run for module: label = 'getInt' id = 21 +++++++ finished: global begin run for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global begin run 1 : time = 1 ++++ starting: begin run: stream = 0 run = 1 time = 1 ++++ finished: begin run: stream = 0 run = 1 time = 1 @@ -391,56 +379,56 @@ ++++ starting: global begin lumi: run = 1 lumi = 1 time = 1 ++++ finished: global begin lumi: run = 1 lumi = 1 time = 1 ++++ starting: global begin lumi: run = 1 lumi = 1 time = 1 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global begin lumi: run = 1 lumi = 1 time = 1 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global begin lumi for module: label = 'test' id = 32 -++++++ finished: global begin lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 33 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global begin lumi for module: label = 'get' id = 34 -++++++ finished: global begin lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global begin lumi for module: label = 'getInt' id = 35 -++++++ finished: global begin lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global begin lumi for module: label = 'test' id = 30 +++++++ finished: global begin lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 31 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global begin lumi for module: label = 'get' id = 32 +++++++ finished: global begin lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global begin lumi for module: label = 'getInt' id = 33 +++++++ finished: global begin lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global begin lumi: run = 1 lumi = 1 time = 1 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global begin lumi for module: label = 'test' id = 19 -++++++ finished: global begin lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 20 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global begin lumi for module: label = 'get' id = 21 -++++++ finished: global begin lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global begin lumi for module: label = 'getInt' id = 22 -++++++ finished: global begin lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global begin lumi for module: label = 'test' id = 18 +++++++ finished: global begin lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 19 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global begin lumi for module: label = 'get' id = 20 +++++++ finished: global begin lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global begin lumi for module: label = 'getInt' id = 21 +++++++ finished: global begin lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global begin lumi: run = 1 lumi = 1 time = 1 ++++ starting: begin lumi: stream = 0 run = 1 lumi = 1 time = 1 ++++ finished: begin lumi: stream = 0 run = 1 lumi = 1 time = 1 @@ -515,105 +503,101 @@ ++++ starting: processing event : stream = 0 run = 1 lumi = 1 event = 1 time = 5000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 1 lumi = 1 event = 1 time = 5000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 1 event = 1 time = 5000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 1 event = 1 time = 5000001 ++++ starting: source event @@ -671,105 +655,101 @@ ++++ starting: processing event : stream = 0 run = 1 lumi = 1 event = 2 time = 10000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 1 lumi = 1 event = 2 time = 10000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 1 event = 2 time = 10000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 1 event = 2 time = 10000001 ++++ starting: source event @@ -827,105 +807,101 @@ ++++ starting: processing event : stream = 0 run = 1 lumi = 1 event = 3 time = 15000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 1 lumi = 1 event = 3 time = 15000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 1 event = 3 time = 15000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 1 event = 3 time = 15000001 ++++ starting: source event @@ -983,105 +959,101 @@ ++++ starting: processing event : stream = 0 run = 1 lumi = 1 event = 4 time = 20000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 1 lumi = 1 event = 4 time = 20000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 1 event = 4 time = 20000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 1 event = 4 time = 20000001 ++++ queuing: EventSetup synchronization run: 1 lumi: 2 event: 0 @@ -1130,56 +1102,56 @@ ++++ starting: global end lumi: run = 1 lumi = 1 time = 1 ++++ finished: global end lumi: run = 1 lumi = 1 time = 1 ++++ starting: global end lumi: run = 1 lumi = 1 time = 1 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global end lumi: run = 1 lumi = 1 time = 1 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global end lumi for module: label = 'testmerge' id = 33 -++++++ finished: global end lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global end lumi for module: label = 'test' id = 32 -++++++ finished: global end lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global end lumi for module: label = 'get' id = 34 -++++++ finished: global end lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global end lumi for module: label = 'getInt' id = 35 -++++++ finished: global end lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global end lumi for module: label = 'testmerge' id = 31 +++++++ finished: global end lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global end lumi for module: label = 'test' id = 30 +++++++ finished: global end lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global end lumi for module: label = 'get' id = 32 +++++++ finished: global end lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global end lumi for module: label = 'getInt' id = 33 +++++++ finished: global end lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global end lumi: run = 1 lumi = 1 time = 1 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global end lumi for module: label = 'testmerge' id = 20 -++++++ finished: global end lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global end lumi for module: label = 'test' id = 19 -++++++ finished: global end lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global end lumi for module: label = 'get' id = 21 -++++++ finished: global end lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global end lumi for module: label = 'getInt' id = 22 -++++++ finished: global end lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global end lumi for module: label = 'testmerge' id = 19 +++++++ finished: global end lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global end lumi for module: label = 'test' id = 18 +++++++ finished: global end lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global end lumi for module: label = 'get' id = 20 +++++++ finished: global end lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global end lumi for module: label = 'getInt' id = 21 +++++++ finished: global end lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global end lumi: run = 1 lumi = 1 time = 1 ++++ starting: global write lumi: run = 1 lumi = 1 time = 1 ++++ finished: global write lumi: run = 1 lumi = 1 time = 1 @@ -1191,11 +1163,11 @@ ++++ finished: global write lumi: run = 1 lumi = 1 time = 1 ++++ starting: global write lumi: run = 1 lumi = 1 time = 1 ++++ starting: global write lumi: run = 1 lumi = 1 time = 1 -++++++ starting: write lumi for module: label = 'out' id = 37 -++++++ finished: write lumi for module: label = 'out' id = 37 +++++++ starting: write lumi for module: label = 'out' id = 35 +++++++ finished: write lumi for module: label = 'out' id = 35 ++++ finished: global write lumi: run = 1 lumi = 1 time = 1 -++++++ starting: write lumi for module: label = 'out' id = 24 -++++++ finished: write lumi for module: label = 'out' id = 24 +++++++ starting: write lumi for module: label = 'out' id = 23 +++++++ finished: write lumi for module: label = 'out' id = 23 ++++ finished: global write lumi: run = 1 lumi = 1 time = 1 ++++ starting: source lumi ++++ finished: source lumi @@ -1224,56 +1196,56 @@ ++++ starting: global begin lumi: run = 1 lumi = 2 time = 25000001 ++++ finished: global begin lumi: run = 1 lumi = 2 time = 25000001 ++++ starting: global begin lumi: run = 1 lumi = 2 time = 25000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global begin lumi: run = 1 lumi = 2 time = 25000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global begin lumi for module: label = 'test' id = 32 -++++++ finished: global begin lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 33 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global begin lumi for module: label = 'get' id = 34 -++++++ finished: global begin lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global begin lumi for module: label = 'getInt' id = 35 -++++++ finished: global begin lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global begin lumi for module: label = 'test' id = 30 +++++++ finished: global begin lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 31 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global begin lumi for module: label = 'get' id = 32 +++++++ finished: global begin lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global begin lumi for module: label = 'getInt' id = 33 +++++++ finished: global begin lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global begin lumi: run = 1 lumi = 2 time = 25000001 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global begin lumi for module: label = 'test' id = 19 -++++++ finished: global begin lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 20 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global begin lumi for module: label = 'get' id = 21 -++++++ finished: global begin lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global begin lumi for module: label = 'getInt' id = 22 -++++++ finished: global begin lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global begin lumi for module: label = 'test' id = 18 +++++++ finished: global begin lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 19 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global begin lumi for module: label = 'get' id = 20 +++++++ finished: global begin lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global begin lumi for module: label = 'getInt' id = 21 +++++++ finished: global begin lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global begin lumi: run = 1 lumi = 2 time = 25000001 ++++ starting: begin lumi: stream = 0 run = 1 lumi = 2 time = 25000001 ++++ finished: begin lumi: stream = 0 run = 1 lumi = 2 time = 25000001 @@ -1348,105 +1320,101 @@ ++++ starting: processing event : stream = 0 run = 1 lumi = 2 event = 5 time = 25000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 1 lumi = 2 event = 5 time = 25000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 2 event = 5 time = 25000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 2 event = 5 time = 25000001 ++++ starting: source event @@ -1504,105 +1472,101 @@ ++++ starting: processing event : stream = 0 run = 1 lumi = 2 event = 6 time = 30000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 1 lumi = 2 event = 6 time = 30000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 2 event = 6 time = 30000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 2 event = 6 time = 30000001 ++++ starting: source event @@ -1660,105 +1624,101 @@ ++++ starting: processing event : stream = 0 run = 1 lumi = 2 event = 7 time = 35000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 1 lumi = 2 event = 7 time = 35000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 2 event = 7 time = 35000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 2 event = 7 time = 35000001 ++++ starting: source event @@ -1816,105 +1776,101 @@ ++++ starting: processing event : stream = 0 run = 1 lumi = 2 event = 8 time = 40000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 1 lumi = 2 event = 8 time = 40000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 2 event = 8 time = 40000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 2 event = 8 time = 40000001 ++++ queuing: EventSetup synchronization run: 1 lumi: 3 event: 0 @@ -1963,56 +1919,56 @@ ++++ starting: global end lumi: run = 1 lumi = 2 time = 25000001 ++++ finished: global end lumi: run = 1 lumi = 2 time = 25000001 ++++ starting: global end lumi: run = 1 lumi = 2 time = 25000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global end lumi: run = 1 lumi = 2 time = 25000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global end lumi for module: label = 'testmerge' id = 33 -++++++ finished: global end lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global end lumi for module: label = 'test' id = 32 -++++++ finished: global end lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global end lumi for module: label = 'get' id = 34 -++++++ finished: global end lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global end lumi for module: label = 'getInt' id = 35 -++++++ finished: global end lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global end lumi for module: label = 'testmerge' id = 31 +++++++ finished: global end lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global end lumi for module: label = 'test' id = 30 +++++++ finished: global end lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global end lumi for module: label = 'get' id = 32 +++++++ finished: global end lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global end lumi for module: label = 'getInt' id = 33 +++++++ finished: global end lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global end lumi: run = 1 lumi = 2 time = 25000001 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global end lumi for module: label = 'testmerge' id = 20 -++++++ finished: global end lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global end lumi for module: label = 'test' id = 19 -++++++ finished: global end lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global end lumi for module: label = 'get' id = 21 -++++++ finished: global end lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global end lumi for module: label = 'getInt' id = 22 -++++++ finished: global end lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global end lumi for module: label = 'testmerge' id = 19 +++++++ finished: global end lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global end lumi for module: label = 'test' id = 18 +++++++ finished: global end lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global end lumi for module: label = 'get' id = 20 +++++++ finished: global end lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global end lumi for module: label = 'getInt' id = 21 +++++++ finished: global end lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global end lumi: run = 1 lumi = 2 time = 25000001 ++++ starting: global write lumi: run = 1 lumi = 2 time = 25000001 ++++ finished: global write lumi: run = 1 lumi = 2 time = 25000001 @@ -2024,11 +1980,11 @@ ++++ finished: global write lumi: run = 1 lumi = 2 time = 25000001 ++++ starting: global write lumi: run = 1 lumi = 2 time = 25000001 ++++ starting: global write lumi: run = 1 lumi = 2 time = 25000001 -++++++ starting: write lumi for module: label = 'out' id = 37 -++++++ finished: write lumi for module: label = 'out' id = 37 +++++++ starting: write lumi for module: label = 'out' id = 35 +++++++ finished: write lumi for module: label = 'out' id = 35 ++++ finished: global write lumi: run = 1 lumi = 2 time = 25000001 -++++++ starting: write lumi for module: label = 'out' id = 24 -++++++ finished: write lumi for module: label = 'out' id = 24 +++++++ starting: write lumi for module: label = 'out' id = 23 +++++++ finished: write lumi for module: label = 'out' id = 23 ++++ finished: global write lumi: run = 1 lumi = 2 time = 25000001 ++++ starting: source lumi ++++ finished: source lumi @@ -2057,56 +2013,56 @@ ++++ starting: global begin lumi: run = 1 lumi = 3 time = 45000001 ++++ finished: global begin lumi: run = 1 lumi = 3 time = 45000001 ++++ starting: global begin lumi: run = 1 lumi = 3 time = 45000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global begin lumi: run = 1 lumi = 3 time = 45000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global begin lumi for module: label = 'test' id = 32 -++++++ finished: global begin lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 33 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global begin lumi for module: label = 'get' id = 34 -++++++ finished: global begin lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global begin lumi for module: label = 'getInt' id = 35 -++++++ finished: global begin lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global begin lumi for module: label = 'test' id = 30 +++++++ finished: global begin lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 31 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global begin lumi for module: label = 'get' id = 32 +++++++ finished: global begin lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global begin lumi for module: label = 'getInt' id = 33 +++++++ finished: global begin lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global begin lumi: run = 1 lumi = 3 time = 45000001 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global begin lumi for module: label = 'test' id = 19 -++++++ finished: global begin lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 20 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global begin lumi for module: label = 'get' id = 21 -++++++ finished: global begin lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global begin lumi for module: label = 'getInt' id = 22 -++++++ finished: global begin lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global begin lumi for module: label = 'test' id = 18 +++++++ finished: global begin lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 19 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global begin lumi for module: label = 'get' id = 20 +++++++ finished: global begin lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global begin lumi for module: label = 'getInt' id = 21 +++++++ finished: global begin lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global begin lumi: run = 1 lumi = 3 time = 45000001 ++++ starting: begin lumi: stream = 0 run = 1 lumi = 3 time = 45000001 ++++ finished: begin lumi: stream = 0 run = 1 lumi = 3 time = 45000001 @@ -2181,105 +2137,101 @@ ++++ starting: processing event : stream = 0 run = 1 lumi = 3 event = 9 time = 45000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 1 lumi = 3 event = 9 time = 45000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 3 event = 9 time = 45000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 3 event = 9 time = 45000001 ++++ starting: source event @@ -2337,105 +2289,101 @@ ++++ starting: processing event : stream = 0 run = 1 lumi = 3 event = 10 time = 50000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 1 lumi = 3 event = 10 time = 50000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 3 event = 10 time = 50000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 1 lumi = 3 event = 10 time = 50000001 ++++ queuing: EventSetup synchronization run: 1 lumi: 4294967295 event: 18446744073709551615 @@ -2484,56 +2432,56 @@ ++++ starting: global end lumi: run = 1 lumi = 3 time = 45000001 ++++ finished: global end lumi: run = 1 lumi = 3 time = 45000001 ++++ starting: global end lumi: run = 1 lumi = 3 time = 45000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global end lumi: run = 1 lumi = 3 time = 45000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global end lumi for module: label = 'testmerge' id = 33 -++++++ finished: global end lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global end lumi for module: label = 'test' id = 32 -++++++ finished: global end lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global end lumi for module: label = 'get' id = 34 -++++++ finished: global end lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global end lumi for module: label = 'getInt' id = 35 -++++++ finished: global end lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global end lumi for module: label = 'testmerge' id = 31 +++++++ finished: global end lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global end lumi for module: label = 'test' id = 30 +++++++ finished: global end lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global end lumi for module: label = 'get' id = 32 +++++++ finished: global end lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global end lumi for module: label = 'getInt' id = 33 +++++++ finished: global end lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global end lumi: run = 1 lumi = 3 time = 45000001 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global end lumi for module: label = 'testmerge' id = 20 -++++++ finished: global end lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global end lumi for module: label = 'test' id = 19 -++++++ finished: global end lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global end lumi for module: label = 'get' id = 21 -++++++ finished: global end lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global end lumi for module: label = 'getInt' id = 22 -++++++ finished: global end lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global end lumi for module: label = 'testmerge' id = 19 +++++++ finished: global end lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global end lumi for module: label = 'test' id = 18 +++++++ finished: global end lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global end lumi for module: label = 'get' id = 20 +++++++ finished: global end lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global end lumi for module: label = 'getInt' id = 21 +++++++ finished: global end lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global end lumi: run = 1 lumi = 3 time = 45000001 ++++ starting: global write lumi: run = 1 lumi = 3 time = 45000001 ++++ finished: global write lumi: run = 1 lumi = 3 time = 45000001 @@ -2545,11 +2493,11 @@ ++++ finished: global write lumi: run = 1 lumi = 3 time = 45000001 ++++ starting: global write lumi: run = 1 lumi = 3 time = 45000001 ++++ starting: global write lumi: run = 1 lumi = 3 time = 45000001 -++++++ starting: write lumi for module: label = 'out' id = 37 -++++++ finished: write lumi for module: label = 'out' id = 37 +++++++ starting: write lumi for module: label = 'out' id = 35 +++++++ finished: write lumi for module: label = 'out' id = 35 ++++ finished: global write lumi: run = 1 lumi = 3 time = 45000001 -++++++ starting: write lumi for module: label = 'out' id = 24 -++++++ finished: write lumi for module: label = 'out' id = 24 +++++++ starting: write lumi for module: label = 'out' id = 23 +++++++ finished: write lumi for module: label = 'out' id = 23 ++++ finished: global write lumi: run = 1 lumi = 3 time = 45000001 ++++ queuing: EventSetup synchronization run: 2 lumi: 0 event: 0 ++++ pre: EventSetup synchronizing run: 2 lumi: 0 event: 0 @@ -2597,56 +2545,56 @@ ++++ starting: global end run 1 : time = 0 ++++ finished: global end run 1 : time = 0 ++++ starting: global end run 1 : time = 0 -++++++++ starting: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global end Run for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global end Run for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global end Run for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global end Run for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global end Run for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global end Run for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global end Run for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global end Run for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global end run 1 : time = 0 -++++++++ starting: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global end Run for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global end Run for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global end Run for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global end Run for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global end run for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global end run for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end Run for module: label = 'testmerge' id = 33 -++++++ starting: global end run for module: label = 'testmerge' id = 33 -++++++ finished: global end run for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global end Run for module: label = 'test' id = 32 -++++++ starting: global end run for module: label = 'test' id = 32 -++++++ finished: global end run for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global end Run for module: label = 'get' id = 34 -++++++ starting: global end run for module: label = 'get' id = 34 -++++++ finished: global end run for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global end Run for module: label = 'getInt' id = 35 -++++++ starting: global end run for module: label = 'getInt' id = 35 -++++++ finished: global end run for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global end run for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global end run for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global end Run for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global end Run for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global end Run for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global end Run for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global end run for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global end run for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end Run for module: label = 'testmerge' id = 31 +++++++ starting: global end run for module: label = 'testmerge' id = 31 +++++++ finished: global end run for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global end Run for module: label = 'test' id = 30 +++++++ starting: global end run for module: label = 'test' id = 30 +++++++ finished: global end run for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global end Run for module: label = 'get' id = 32 +++++++ starting: global end run for module: label = 'get' id = 32 +++++++ finished: global end run for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global end Run for module: label = 'getInt' id = 33 +++++++ starting: global end run for module: label = 'getInt' id = 33 +++++++ finished: global end run for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global end run for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global end run for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global end run 1 : time = 0 -++++++++ finished: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global end run for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global end run for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global end Run for module: label = 'testmerge' id = 20 -++++++ starting: global end run for module: label = 'testmerge' id = 20 -++++++ finished: global end run for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global end Run for module: label = 'test' id = 19 -++++++ starting: global end run for module: label = 'test' id = 19 -++++++ finished: global end run for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global end Run for module: label = 'get' id = 21 -++++++ starting: global end run for module: label = 'get' id = 21 -++++++ finished: global end run for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global end Run for module: label = 'getInt' id = 22 -++++++ starting: global end run for module: label = 'getInt' id = 22 -++++++ finished: global end run for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global end run for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global end run for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global end run for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global end run for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global end Run for module: label = 'testmerge' id = 19 +++++++ starting: global end run for module: label = 'testmerge' id = 19 +++++++ finished: global end run for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global end Run for module: label = 'test' id = 18 +++++++ starting: global end run for module: label = 'test' id = 18 +++++++ finished: global end run for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global end Run for module: label = 'get' id = 20 +++++++ starting: global end run for module: label = 'get' id = 20 +++++++ finished: global end run for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global end Run for module: label = 'getInt' id = 21 +++++++ starting: global end run for module: label = 'getInt' id = 21 +++++++ finished: global end run for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global end run for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global end run for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global end run 1 : time = 0 ++++ starting: global write run 1 : time = 50000001 ++++ finished: global write run 1 : time = 50000001 @@ -2658,11 +2606,11 @@ ++++ finished: global write run 1 : time = 0 ++++ starting: global write run 1 : time = 0 ++++ starting: global write run 1 : time = 0 -++++++ starting: write run for module: label = 'out' id = 37 -++++++ finished: write run for module: label = 'out' id = 37 +++++++ starting: write run for module: label = 'out' id = 35 +++++++ finished: write run for module: label = 'out' id = 35 ++++ finished: global write run 1 : time = 0 -++++++ starting: write run for module: label = 'out' id = 24 -++++++ finished: write run for module: label = 'out' id = 24 +++++++ starting: write run for module: label = 'out' id = 23 +++++++ finished: write run for module: label = 'out' id = 23 ++++ finished: global write run 1 : time = 0 ++++ starting: source run ++++ finished: source run @@ -2691,56 +2639,56 @@ ++++ starting: global begin run 2 : time = 55000001 ++++ finished: global begin run 2 : time = 55000001 ++++ starting: global begin run 2 : time = 55000001 -++++++++ starting: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global begin Run for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global begin Run for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global begin Run for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global begin Run for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global begin Run for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global begin Run for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global begin Run for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global begin Run for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global begin run 2 : time = 55000001 -++++++++ starting: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global begin Run for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global begin Run for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global begin Run for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global begin Run for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global begin run for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global begin run for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin Run for module: label = 'test' id = 32 -++++++ starting: global begin run for module: label = 'test' id = 32 -++++++ finished: global begin run for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global begin Run for module: label = 'testmerge' id = 33 -++++++ starting: global begin run for module: label = 'testmerge' id = 33 -++++++ finished: global begin run for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global begin Run for module: label = 'get' id = 34 -++++++ starting: global begin run for module: label = 'get' id = 34 -++++++ finished: global begin run for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global begin Run for module: label = 'getInt' id = 35 -++++++ starting: global begin run for module: label = 'getInt' id = 35 -++++++ finished: global begin run for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global begin Run for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global begin Run for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global begin Run for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global begin Run for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global begin run for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global begin run for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin Run for module: label = 'test' id = 30 +++++++ starting: global begin run for module: label = 'test' id = 30 +++++++ finished: global begin run for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global begin Run for module: label = 'testmerge' id = 31 +++++++ starting: global begin run for module: label = 'testmerge' id = 31 +++++++ finished: global begin run for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global begin Run for module: label = 'get' id = 32 +++++++ starting: global begin run for module: label = 'get' id = 32 +++++++ finished: global begin run for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global begin Run for module: label = 'getInt' id = 33 +++++++ starting: global begin run for module: label = 'getInt' id = 33 +++++++ finished: global begin run for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global begin run 2 : time = 55000001 -++++++++ finished: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global begin run for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global begin run for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global begin Run for module: label = 'test' id = 19 -++++++ starting: global begin run for module: label = 'test' id = 19 -++++++ finished: global begin run for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global begin Run for module: label = 'testmerge' id = 20 -++++++ starting: global begin run for module: label = 'testmerge' id = 20 -++++++ finished: global begin run for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global begin Run for module: label = 'get' id = 21 -++++++ starting: global begin run for module: label = 'get' id = 21 -++++++ finished: global begin run for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global begin Run for module: label = 'getInt' id = 22 -++++++ starting: global begin run for module: label = 'getInt' id = 22 -++++++ finished: global begin run for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global begin run for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global begin run for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global begin Run for module: label = 'test' id = 18 +++++++ starting: global begin run for module: label = 'test' id = 18 +++++++ finished: global begin run for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global begin Run for module: label = 'testmerge' id = 19 +++++++ starting: global begin run for module: label = 'testmerge' id = 19 +++++++ finished: global begin run for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global begin Run for module: label = 'get' id = 20 +++++++ starting: global begin run for module: label = 'get' id = 20 +++++++ finished: global begin run for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global begin Run for module: label = 'getInt' id = 21 +++++++ starting: global begin run for module: label = 'getInt' id = 21 +++++++ finished: global begin run for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global begin run 2 : time = 55000001 ++++ starting: begin run: stream = 0 run = 2 time = 55000001 ++++ finished: begin run: stream = 0 run = 2 time = 55000001 @@ -2790,56 +2738,56 @@ ++++ starting: global begin lumi: run = 2 lumi = 1 time = 55000001 ++++ finished: global begin lumi: run = 2 lumi = 1 time = 55000001 ++++ starting: global begin lumi: run = 2 lumi = 1 time = 55000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global begin lumi: run = 2 lumi = 1 time = 55000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global begin lumi for module: label = 'test' id = 32 -++++++ finished: global begin lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 33 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global begin lumi for module: label = 'get' id = 34 -++++++ finished: global begin lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global begin lumi for module: label = 'getInt' id = 35 -++++++ finished: global begin lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global begin lumi for module: label = 'test' id = 30 +++++++ finished: global begin lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 31 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global begin lumi for module: label = 'get' id = 32 +++++++ finished: global begin lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global begin lumi for module: label = 'getInt' id = 33 +++++++ finished: global begin lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global begin lumi: run = 2 lumi = 1 time = 55000001 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global begin lumi for module: label = 'test' id = 19 -++++++ finished: global begin lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 20 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global begin lumi for module: label = 'get' id = 21 -++++++ finished: global begin lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global begin lumi for module: label = 'getInt' id = 22 -++++++ finished: global begin lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global begin lumi for module: label = 'test' id = 18 +++++++ finished: global begin lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 19 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global begin lumi for module: label = 'get' id = 20 +++++++ finished: global begin lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global begin lumi for module: label = 'getInt' id = 21 +++++++ finished: global begin lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global begin lumi: run = 2 lumi = 1 time = 55000001 ++++ starting: begin lumi: stream = 0 run = 2 lumi = 1 time = 55000001 ++++ finished: begin lumi: stream = 0 run = 2 lumi = 1 time = 55000001 @@ -2914,105 +2862,101 @@ ++++ starting: processing event : stream = 0 run = 2 lumi = 1 event = 1 time = 55000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 2 lumi = 1 event = 1 time = 55000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 1 event = 1 time = 55000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 1 event = 1 time = 55000001 ++++ starting: source event @@ -3070,105 +3014,101 @@ ++++ starting: processing event : stream = 0 run = 2 lumi = 1 event = 2 time = 60000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 2 lumi = 1 event = 2 time = 60000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 1 event = 2 time = 60000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 1 event = 2 time = 60000001 ++++ starting: source event @@ -3226,105 +3166,101 @@ ++++ starting: processing event : stream = 0 run = 2 lumi = 1 event = 3 time = 65000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 2 lumi = 1 event = 3 time = 65000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 1 event = 3 time = 65000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 1 event = 3 time = 65000001 ++++ starting: source event @@ -3382,105 +3318,101 @@ ++++ starting: processing event : stream = 0 run = 2 lumi = 1 event = 4 time = 70000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 2 lumi = 1 event = 4 time = 70000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 1 event = 4 time = 70000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 1 event = 4 time = 70000001 ++++ queuing: EventSetup synchronization run: 2 lumi: 2 event: 0 @@ -3529,56 +3461,56 @@ ++++ starting: global end lumi: run = 2 lumi = 1 time = 55000001 ++++ finished: global end lumi: run = 2 lumi = 1 time = 55000001 ++++ starting: global end lumi: run = 2 lumi = 1 time = 55000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global end lumi: run = 2 lumi = 1 time = 55000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global end lumi for module: label = 'testmerge' id = 33 -++++++ finished: global end lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global end lumi for module: label = 'test' id = 32 -++++++ finished: global end lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global end lumi for module: label = 'get' id = 34 -++++++ finished: global end lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global end lumi for module: label = 'getInt' id = 35 -++++++ finished: global end lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global end lumi for module: label = 'testmerge' id = 31 +++++++ finished: global end lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global end lumi for module: label = 'test' id = 30 +++++++ finished: global end lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global end lumi for module: label = 'get' id = 32 +++++++ finished: global end lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global end lumi for module: label = 'getInt' id = 33 +++++++ finished: global end lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global end lumi: run = 2 lumi = 1 time = 55000001 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global end lumi for module: label = 'testmerge' id = 20 -++++++ finished: global end lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global end lumi for module: label = 'test' id = 19 -++++++ finished: global end lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global end lumi for module: label = 'get' id = 21 -++++++ finished: global end lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global end lumi for module: label = 'getInt' id = 22 -++++++ finished: global end lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global end lumi for module: label = 'testmerge' id = 19 +++++++ finished: global end lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global end lumi for module: label = 'test' id = 18 +++++++ finished: global end lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global end lumi for module: label = 'get' id = 20 +++++++ finished: global end lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global end lumi for module: label = 'getInt' id = 21 +++++++ finished: global end lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global end lumi: run = 2 lumi = 1 time = 55000001 ++++ starting: global write lumi: run = 2 lumi = 1 time = 55000001 ++++ finished: global write lumi: run = 2 lumi = 1 time = 55000001 @@ -3590,11 +3522,11 @@ ++++ finished: global write lumi: run = 2 lumi = 1 time = 55000001 ++++ starting: global write lumi: run = 2 lumi = 1 time = 55000001 ++++ starting: global write lumi: run = 2 lumi = 1 time = 55000001 -++++++ starting: write lumi for module: label = 'out' id = 37 -++++++ finished: write lumi for module: label = 'out' id = 37 +++++++ starting: write lumi for module: label = 'out' id = 35 +++++++ finished: write lumi for module: label = 'out' id = 35 ++++ finished: global write lumi: run = 2 lumi = 1 time = 55000001 -++++++ starting: write lumi for module: label = 'out' id = 24 -++++++ finished: write lumi for module: label = 'out' id = 24 +++++++ starting: write lumi for module: label = 'out' id = 23 +++++++ finished: write lumi for module: label = 'out' id = 23 ++++ finished: global write lumi: run = 2 lumi = 1 time = 55000001 ++++ starting: source lumi ++++ finished: source lumi @@ -3623,56 +3555,56 @@ ++++ starting: global begin lumi: run = 2 lumi = 2 time = 75000001 ++++ finished: global begin lumi: run = 2 lumi = 2 time = 75000001 ++++ starting: global begin lumi: run = 2 lumi = 2 time = 75000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global begin lumi: run = 2 lumi = 2 time = 75000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global begin lumi for module: label = 'test' id = 32 -++++++ finished: global begin lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 33 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global begin lumi for module: label = 'get' id = 34 -++++++ finished: global begin lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global begin lumi for module: label = 'getInt' id = 35 -++++++ finished: global begin lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global begin lumi for module: label = 'test' id = 30 +++++++ finished: global begin lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 31 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global begin lumi for module: label = 'get' id = 32 +++++++ finished: global begin lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global begin lumi for module: label = 'getInt' id = 33 +++++++ finished: global begin lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global begin lumi: run = 2 lumi = 2 time = 75000001 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global begin lumi for module: label = 'test' id = 19 -++++++ finished: global begin lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 20 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global begin lumi for module: label = 'get' id = 21 -++++++ finished: global begin lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global begin lumi for module: label = 'getInt' id = 22 -++++++ finished: global begin lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global begin lumi for module: label = 'test' id = 18 +++++++ finished: global begin lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 19 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global begin lumi for module: label = 'get' id = 20 +++++++ finished: global begin lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global begin lumi for module: label = 'getInt' id = 21 +++++++ finished: global begin lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global begin lumi: run = 2 lumi = 2 time = 75000001 ++++ starting: begin lumi: stream = 0 run = 2 lumi = 2 time = 75000001 ++++ finished: begin lumi: stream = 0 run = 2 lumi = 2 time = 75000001 @@ -3747,105 +3679,101 @@ ++++ starting: processing event : stream = 0 run = 2 lumi = 2 event = 5 time = 75000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 2 lumi = 2 event = 5 time = 75000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 2 event = 5 time = 75000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 2 event = 5 time = 75000001 ++++ starting: source event @@ -3903,105 +3831,101 @@ ++++ starting: processing event : stream = 0 run = 2 lumi = 2 event = 6 time = 80000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 2 lumi = 2 event = 6 time = 80000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 2 event = 6 time = 80000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 2 event = 6 time = 80000001 ++++ starting: source event @@ -4059,105 +3983,101 @@ ++++ starting: processing event : stream = 0 run = 2 lumi = 2 event = 7 time = 85000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 2 lumi = 2 event = 7 time = 85000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 2 event = 7 time = 85000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 2 event = 7 time = 85000001 ++++ starting: source event @@ -4215,105 +4135,101 @@ ++++ starting: processing event : stream = 0 run = 2 lumi = 2 event = 8 time = 90000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 2 lumi = 2 event = 8 time = 90000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 2 event = 8 time = 90000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 2 event = 8 time = 90000001 ++++ queuing: EventSetup synchronization run: 2 lumi: 3 event: 0 @@ -4362,56 +4278,56 @@ ++++ starting: global end lumi: run = 2 lumi = 2 time = 75000001 ++++ finished: global end lumi: run = 2 lumi = 2 time = 75000001 ++++ starting: global end lumi: run = 2 lumi = 2 time = 75000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global end lumi: run = 2 lumi = 2 time = 75000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global end lumi for module: label = 'testmerge' id = 33 -++++++ finished: global end lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global end lumi for module: label = 'test' id = 32 -++++++ finished: global end lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global end lumi for module: label = 'get' id = 34 -++++++ finished: global end lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global end lumi for module: label = 'getInt' id = 35 -++++++ finished: global end lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global end lumi for module: label = 'testmerge' id = 31 +++++++ finished: global end lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global end lumi for module: label = 'test' id = 30 +++++++ finished: global end lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global end lumi for module: label = 'get' id = 32 +++++++ finished: global end lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global end lumi for module: label = 'getInt' id = 33 +++++++ finished: global end lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global end lumi: run = 2 lumi = 2 time = 75000001 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global end lumi for module: label = 'testmerge' id = 20 -++++++ finished: global end lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global end lumi for module: label = 'test' id = 19 -++++++ finished: global end lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global end lumi for module: label = 'get' id = 21 -++++++ finished: global end lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global end lumi for module: label = 'getInt' id = 22 -++++++ finished: global end lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global end lumi for module: label = 'testmerge' id = 19 +++++++ finished: global end lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global end lumi for module: label = 'test' id = 18 +++++++ finished: global end lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global end lumi for module: label = 'get' id = 20 +++++++ finished: global end lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global end lumi for module: label = 'getInt' id = 21 +++++++ finished: global end lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global end lumi: run = 2 lumi = 2 time = 75000001 ++++ starting: global write lumi: run = 2 lumi = 2 time = 75000001 ++++ finished: global write lumi: run = 2 lumi = 2 time = 75000001 @@ -4423,11 +4339,11 @@ ++++ finished: global write lumi: run = 2 lumi = 2 time = 75000001 ++++ starting: global write lumi: run = 2 lumi = 2 time = 75000001 ++++ starting: global write lumi: run = 2 lumi = 2 time = 75000001 -++++++ starting: write lumi for module: label = 'out' id = 37 -++++++ finished: write lumi for module: label = 'out' id = 37 +++++++ starting: write lumi for module: label = 'out' id = 35 +++++++ finished: write lumi for module: label = 'out' id = 35 ++++ finished: global write lumi: run = 2 lumi = 2 time = 75000001 -++++++ starting: write lumi for module: label = 'out' id = 24 -++++++ finished: write lumi for module: label = 'out' id = 24 +++++++ starting: write lumi for module: label = 'out' id = 23 +++++++ finished: write lumi for module: label = 'out' id = 23 ++++ finished: global write lumi: run = 2 lumi = 2 time = 75000001 ++++ starting: source lumi ++++ finished: source lumi @@ -4456,56 +4372,56 @@ ++++ starting: global begin lumi: run = 2 lumi = 3 time = 95000001 ++++ finished: global begin lumi: run = 2 lumi = 3 time = 95000001 ++++ starting: global begin lumi: run = 2 lumi = 3 time = 95000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global begin lumi: run = 2 lumi = 3 time = 95000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global begin lumi for module: label = 'test' id = 32 -++++++ finished: global begin lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 33 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global begin lumi for module: label = 'get' id = 34 -++++++ finished: global begin lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global begin lumi for module: label = 'getInt' id = 35 -++++++ finished: global begin lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global begin lumi for module: label = 'test' id = 30 +++++++ finished: global begin lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 31 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global begin lumi for module: label = 'get' id = 32 +++++++ finished: global begin lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global begin lumi for module: label = 'getInt' id = 33 +++++++ finished: global begin lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global begin lumi: run = 2 lumi = 3 time = 95000001 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global begin lumi for module: label = 'test' id = 19 -++++++ finished: global begin lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 20 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global begin lumi for module: label = 'get' id = 21 -++++++ finished: global begin lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global begin lumi for module: label = 'getInt' id = 22 -++++++ finished: global begin lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global begin lumi for module: label = 'test' id = 18 +++++++ finished: global begin lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 19 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global begin lumi for module: label = 'get' id = 20 +++++++ finished: global begin lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global begin lumi for module: label = 'getInt' id = 21 +++++++ finished: global begin lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global begin lumi: run = 2 lumi = 3 time = 95000001 ++++ starting: begin lumi: stream = 0 run = 2 lumi = 3 time = 95000001 ++++ finished: begin lumi: stream = 0 run = 2 lumi = 3 time = 95000001 @@ -4580,105 +4496,101 @@ ++++ starting: processing event : stream = 0 run = 2 lumi = 3 event = 9 time = 95000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 2 lumi = 3 event = 9 time = 95000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 3 event = 9 time = 95000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 3 event = 9 time = 95000001 ++++ starting: source event @@ -4736,105 +4648,101 @@ ++++ starting: processing event : stream = 0 run = 2 lumi = 3 event = 10 time = 100000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 2 lumi = 3 event = 10 time = 100000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 3 event = 10 time = 100000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 2 lumi = 3 event = 10 time = 100000001 ++++ queuing: EventSetup synchronization run: 2 lumi: 4294967295 event: 18446744073709551615 @@ -4883,56 +4791,56 @@ ++++ starting: global end lumi: run = 2 lumi = 3 time = 95000001 ++++ finished: global end lumi: run = 2 lumi = 3 time = 95000001 ++++ starting: global end lumi: run = 2 lumi = 3 time = 95000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global end lumi: run = 2 lumi = 3 time = 95000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global end lumi for module: label = 'testmerge' id = 33 -++++++ finished: global end lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global end lumi for module: label = 'test' id = 32 -++++++ finished: global end lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global end lumi for module: label = 'get' id = 34 -++++++ finished: global end lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global end lumi for module: label = 'getInt' id = 35 -++++++ finished: global end lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global end lumi for module: label = 'testmerge' id = 31 +++++++ finished: global end lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global end lumi for module: label = 'test' id = 30 +++++++ finished: global end lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global end lumi for module: label = 'get' id = 32 +++++++ finished: global end lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global end lumi for module: label = 'getInt' id = 33 +++++++ finished: global end lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global end lumi: run = 2 lumi = 3 time = 95000001 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global end lumi for module: label = 'testmerge' id = 20 -++++++ finished: global end lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global end lumi for module: label = 'test' id = 19 -++++++ finished: global end lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global end lumi for module: label = 'get' id = 21 -++++++ finished: global end lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global end lumi for module: label = 'getInt' id = 22 -++++++ finished: global end lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global end lumi for module: label = 'testmerge' id = 19 +++++++ finished: global end lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global end lumi for module: label = 'test' id = 18 +++++++ finished: global end lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global end lumi for module: label = 'get' id = 20 +++++++ finished: global end lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global end lumi for module: label = 'getInt' id = 21 +++++++ finished: global end lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global end lumi: run = 2 lumi = 3 time = 95000001 ++++ starting: global write lumi: run = 2 lumi = 3 time = 95000001 ++++ finished: global write lumi: run = 2 lumi = 3 time = 95000001 @@ -4944,11 +4852,11 @@ ++++ finished: global write lumi: run = 2 lumi = 3 time = 95000001 ++++ starting: global write lumi: run = 2 lumi = 3 time = 95000001 ++++ starting: global write lumi: run = 2 lumi = 3 time = 95000001 -++++++ starting: write lumi for module: label = 'out' id = 37 -++++++ finished: write lumi for module: label = 'out' id = 37 +++++++ starting: write lumi for module: label = 'out' id = 35 +++++++ finished: write lumi for module: label = 'out' id = 35 ++++ finished: global write lumi: run = 2 lumi = 3 time = 95000001 -++++++ starting: write lumi for module: label = 'out' id = 24 -++++++ finished: write lumi for module: label = 'out' id = 24 +++++++ starting: write lumi for module: label = 'out' id = 23 +++++++ finished: write lumi for module: label = 'out' id = 23 ++++ finished: global write lumi: run = 2 lumi = 3 time = 95000001 ++++ queuing: EventSetup synchronization run: 3 lumi: 0 event: 0 ++++ pre: EventSetup synchronizing run: 3 lumi: 0 event: 0 @@ -4996,56 +4904,56 @@ ++++ starting: global end run 2 : time = 0 ++++ finished: global end run 2 : time = 0 ++++ starting: global end run 2 : time = 0 -++++++++ starting: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global end Run for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global end Run for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global end Run for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global end Run for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global end Run for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global end Run for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global end Run for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global end Run for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global end run 2 : time = 0 -++++++++ starting: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global end Run for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global end Run for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global end Run for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global end Run for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global end run for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global end run for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end Run for module: label = 'testmerge' id = 33 -++++++ starting: global end run for module: label = 'testmerge' id = 33 -++++++ finished: global end run for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global end Run for module: label = 'test' id = 32 -++++++ starting: global end run for module: label = 'test' id = 32 -++++++ finished: global end run for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global end Run for module: label = 'get' id = 34 -++++++ starting: global end run for module: label = 'get' id = 34 -++++++ finished: global end run for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global end Run for module: label = 'getInt' id = 35 -++++++ starting: global end run for module: label = 'getInt' id = 35 -++++++ finished: global end run for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global end run for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global end run for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global end Run for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global end Run for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global end Run for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global end Run for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global end run for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global end run for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end Run for module: label = 'testmerge' id = 31 +++++++ starting: global end run for module: label = 'testmerge' id = 31 +++++++ finished: global end run for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global end Run for module: label = 'test' id = 30 +++++++ starting: global end run for module: label = 'test' id = 30 +++++++ finished: global end run for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global end Run for module: label = 'get' id = 32 +++++++ starting: global end run for module: label = 'get' id = 32 +++++++ finished: global end run for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global end Run for module: label = 'getInt' id = 33 +++++++ starting: global end run for module: label = 'getInt' id = 33 +++++++ finished: global end run for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global end run for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global end run for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global end run 2 : time = 0 -++++++++ finished: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global end run for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global end run for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global end Run for module: label = 'testmerge' id = 20 -++++++ starting: global end run for module: label = 'testmerge' id = 20 -++++++ finished: global end run for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global end Run for module: label = 'test' id = 19 -++++++ starting: global end run for module: label = 'test' id = 19 -++++++ finished: global end run for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global end Run for module: label = 'get' id = 21 -++++++ starting: global end run for module: label = 'get' id = 21 -++++++ finished: global end run for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global end Run for module: label = 'getInt' id = 22 -++++++ starting: global end run for module: label = 'getInt' id = 22 -++++++ finished: global end run for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global end run for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global end run for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global end run for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global end run for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global end Run for module: label = 'testmerge' id = 19 +++++++ starting: global end run for module: label = 'testmerge' id = 19 +++++++ finished: global end run for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global end Run for module: label = 'test' id = 18 +++++++ starting: global end run for module: label = 'test' id = 18 +++++++ finished: global end run for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global end Run for module: label = 'get' id = 20 +++++++ starting: global end run for module: label = 'get' id = 20 +++++++ finished: global end run for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global end Run for module: label = 'getInt' id = 21 +++++++ starting: global end run for module: label = 'getInt' id = 21 +++++++ finished: global end run for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global end run for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global end run for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global end run 2 : time = 0 ++++ starting: global write run 2 : time = 100000001 ++++ finished: global write run 2 : time = 100000001 @@ -5057,11 +4965,11 @@ ++++ finished: global write run 2 : time = 0 ++++ starting: global write run 2 : time = 0 ++++ starting: global write run 2 : time = 0 -++++++ starting: write run for module: label = 'out' id = 37 -++++++ finished: write run for module: label = 'out' id = 37 +++++++ starting: write run for module: label = 'out' id = 35 +++++++ finished: write run for module: label = 'out' id = 35 ++++ finished: global write run 2 : time = 0 -++++++ starting: write run for module: label = 'out' id = 24 -++++++ finished: write run for module: label = 'out' id = 24 +++++++ starting: write run for module: label = 'out' id = 23 +++++++ finished: write run for module: label = 'out' id = 23 ++++ finished: global write run 2 : time = 0 ++++ starting: source run ++++ finished: source run @@ -5090,56 +4998,56 @@ ++++ starting: global begin run 3 : time = 105000001 ++++ finished: global begin run 3 : time = 105000001 ++++ starting: global begin run 3 : time = 105000001 -++++++++ starting: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global begin Run for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global begin Run for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global begin Run for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global begin Run for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global begin Run for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global begin Run for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global begin Run for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global begin Run for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global begin run 3 : time = 105000001 -++++++++ starting: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global begin Run for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global begin Run for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global begin Run for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global begin Run for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global begin run for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global begin run for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin Run for module: label = 'test' id = 32 -++++++ starting: global begin run for module: label = 'test' id = 32 -++++++ finished: global begin run for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global begin Run for module: label = 'testmerge' id = 33 -++++++ starting: global begin run for module: label = 'testmerge' id = 33 -++++++ finished: global begin run for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global begin Run for module: label = 'get' id = 34 -++++++ starting: global begin run for module: label = 'get' id = 34 -++++++ finished: global begin run for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global begin Run for module: label = 'getInt' id = 35 -++++++ starting: global begin run for module: label = 'getInt' id = 35 -++++++ finished: global begin run for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global begin Run for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global begin Run for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global begin Run for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global begin Run for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global begin run for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global begin run for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin Run for module: label = 'test' id = 30 +++++++ starting: global begin run for module: label = 'test' id = 30 +++++++ finished: global begin run for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global begin Run for module: label = 'testmerge' id = 31 +++++++ starting: global begin run for module: label = 'testmerge' id = 31 +++++++ finished: global begin run for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global begin Run for module: label = 'get' id = 32 +++++++ starting: global begin run for module: label = 'get' id = 32 +++++++ finished: global begin run for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global begin Run for module: label = 'getInt' id = 33 +++++++ starting: global begin run for module: label = 'getInt' id = 33 +++++++ finished: global begin run for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global begin run 3 : time = 105000001 -++++++++ finished: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global begin run for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global begin run for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global begin Run for module: label = 'test' id = 19 -++++++ starting: global begin run for module: label = 'test' id = 19 -++++++ finished: global begin run for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global begin Run for module: label = 'testmerge' id = 20 -++++++ starting: global begin run for module: label = 'testmerge' id = 20 -++++++ finished: global begin run for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global begin Run for module: label = 'get' id = 21 -++++++ starting: global begin run for module: label = 'get' id = 21 -++++++ finished: global begin run for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global begin Run for module: label = 'getInt' id = 22 -++++++ starting: global begin run for module: label = 'getInt' id = 22 -++++++ finished: global begin run for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global begin Run for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global begin run for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global begin run for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global begin Run for module: label = 'test' id = 18 +++++++ starting: global begin run for module: label = 'test' id = 18 +++++++ finished: global begin run for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global begin Run for module: label = 'testmerge' id = 19 +++++++ starting: global begin run for module: label = 'testmerge' id = 19 +++++++ finished: global begin run for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global begin Run for module: label = 'get' id = 20 +++++++ starting: global begin run for module: label = 'get' id = 20 +++++++ finished: global begin run for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global begin Run for module: label = 'getInt' id = 21 +++++++ starting: global begin run for module: label = 'getInt' id = 21 +++++++ finished: global begin run for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global begin Run for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global begin run for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global begin run for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global begin run 3 : time = 105000001 ++++ starting: begin run: stream = 0 run = 3 time = 105000001 ++++ finished: begin run: stream = 0 run = 3 time = 105000001 @@ -5189,56 +5097,56 @@ ++++ starting: global begin lumi: run = 3 lumi = 1 time = 105000001 ++++ finished: global begin lumi: run = 3 lumi = 1 time = 105000001 ++++ starting: global begin lumi: run = 3 lumi = 1 time = 105000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global begin lumi: run = 3 lumi = 1 time = 105000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global begin lumi for module: label = 'test' id = 32 -++++++ finished: global begin lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 33 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global begin lumi for module: label = 'get' id = 34 -++++++ finished: global begin lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global begin lumi for module: label = 'getInt' id = 35 -++++++ finished: global begin lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global begin lumi for module: label = 'test' id = 30 +++++++ finished: global begin lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 31 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global begin lumi for module: label = 'get' id = 32 +++++++ finished: global begin lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global begin lumi for module: label = 'getInt' id = 33 +++++++ finished: global begin lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global begin lumi: run = 3 lumi = 1 time = 105000001 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global begin lumi for module: label = 'test' id = 19 -++++++ finished: global begin lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 20 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global begin lumi for module: label = 'get' id = 21 -++++++ finished: global begin lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global begin lumi for module: label = 'getInt' id = 22 -++++++ finished: global begin lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global begin lumi for module: label = 'test' id = 18 +++++++ finished: global begin lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 19 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global begin lumi for module: label = 'get' id = 20 +++++++ finished: global begin lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global begin lumi for module: label = 'getInt' id = 21 +++++++ finished: global begin lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global begin lumi: run = 3 lumi = 1 time = 105000001 ++++ starting: begin lumi: stream = 0 run = 3 lumi = 1 time = 105000001 ++++ finished: begin lumi: stream = 0 run = 3 lumi = 1 time = 105000001 @@ -5313,105 +5221,101 @@ ++++ starting: processing event : stream = 0 run = 3 lumi = 1 event = 1 time = 105000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 3 lumi = 1 event = 1 time = 105000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 1 event = 1 time = 105000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 1 event = 1 time = 105000001 ++++ starting: source event @@ -5469,105 +5373,101 @@ ++++ starting: processing event : stream = 0 run = 3 lumi = 1 event = 2 time = 110000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 3 lumi = 1 event = 2 time = 110000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 1 event = 2 time = 110000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 1 event = 2 time = 110000001 ++++ starting: source event @@ -5625,105 +5525,101 @@ ++++ starting: processing event : stream = 0 run = 3 lumi = 1 event = 3 time = 115000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 3 lumi = 1 event = 3 time = 115000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 1 event = 3 time = 115000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 1 event = 3 time = 115000001 ++++ starting: source event @@ -5781,105 +5677,101 @@ ++++ starting: processing event : stream = 0 run = 3 lumi = 1 event = 4 time = 120000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 3 lumi = 1 event = 4 time = 120000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 1 event = 4 time = 120000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 1 event = 4 time = 120000001 ++++ queuing: EventSetup synchronization run: 3 lumi: 2 event: 0 @@ -5928,56 +5820,56 @@ ++++ starting: global end lumi: run = 3 lumi = 1 time = 105000001 ++++ finished: global end lumi: run = 3 lumi = 1 time = 105000001 ++++ starting: global end lumi: run = 3 lumi = 1 time = 105000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global end lumi: run = 3 lumi = 1 time = 105000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global end lumi for module: label = 'testmerge' id = 33 -++++++ finished: global end lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global end lumi for module: label = 'test' id = 32 -++++++ finished: global end lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global end lumi for module: label = 'get' id = 34 -++++++ finished: global end lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global end lumi for module: label = 'getInt' id = 35 -++++++ finished: global end lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global end lumi for module: label = 'testmerge' id = 31 +++++++ finished: global end lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global end lumi for module: label = 'test' id = 30 +++++++ finished: global end lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global end lumi for module: label = 'get' id = 32 +++++++ finished: global end lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global end lumi for module: label = 'getInt' id = 33 +++++++ finished: global end lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global end lumi: run = 3 lumi = 1 time = 105000001 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global end lumi for module: label = 'testmerge' id = 20 -++++++ finished: global end lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global end lumi for module: label = 'test' id = 19 -++++++ finished: global end lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global end lumi for module: label = 'get' id = 21 -++++++ finished: global end lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global end lumi for module: label = 'getInt' id = 22 -++++++ finished: global end lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global end lumi for module: label = 'testmerge' id = 19 +++++++ finished: global end lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global end lumi for module: label = 'test' id = 18 +++++++ finished: global end lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global end lumi for module: label = 'get' id = 20 +++++++ finished: global end lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global end lumi for module: label = 'getInt' id = 21 +++++++ finished: global end lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global end lumi: run = 3 lumi = 1 time = 105000001 ++++ starting: global write lumi: run = 3 lumi = 1 time = 105000001 ++++ finished: global write lumi: run = 3 lumi = 1 time = 105000001 @@ -5989,11 +5881,11 @@ ++++ finished: global write lumi: run = 3 lumi = 1 time = 105000001 ++++ starting: global write lumi: run = 3 lumi = 1 time = 105000001 ++++ starting: global write lumi: run = 3 lumi = 1 time = 105000001 -++++++ starting: write lumi for module: label = 'out' id = 37 -++++++ finished: write lumi for module: label = 'out' id = 37 +++++++ starting: write lumi for module: label = 'out' id = 35 +++++++ finished: write lumi for module: label = 'out' id = 35 ++++ finished: global write lumi: run = 3 lumi = 1 time = 105000001 -++++++ starting: write lumi for module: label = 'out' id = 24 -++++++ finished: write lumi for module: label = 'out' id = 24 +++++++ starting: write lumi for module: label = 'out' id = 23 +++++++ finished: write lumi for module: label = 'out' id = 23 ++++ finished: global write lumi: run = 3 lumi = 1 time = 105000001 ++++ starting: source lumi ++++ finished: source lumi @@ -6022,56 +5914,56 @@ ++++ starting: global begin lumi: run = 3 lumi = 2 time = 125000001 ++++ finished: global begin lumi: run = 3 lumi = 2 time = 125000001 ++++ starting: global begin lumi: run = 3 lumi = 2 time = 125000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global begin lumi: run = 3 lumi = 2 time = 125000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global begin lumi for module: label = 'test' id = 32 -++++++ finished: global begin lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 33 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global begin lumi for module: label = 'get' id = 34 -++++++ finished: global begin lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global begin lumi for module: label = 'getInt' id = 35 -++++++ finished: global begin lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global begin lumi for module: label = 'test' id = 30 +++++++ finished: global begin lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 31 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global begin lumi for module: label = 'get' id = 32 +++++++ finished: global begin lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global begin lumi for module: label = 'getInt' id = 33 +++++++ finished: global begin lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global begin lumi: run = 3 lumi = 2 time = 125000001 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global begin lumi for module: label = 'test' id = 19 -++++++ finished: global begin lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 20 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global begin lumi for module: label = 'get' id = 21 -++++++ finished: global begin lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global begin lumi for module: label = 'getInt' id = 22 -++++++ finished: global begin lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global begin lumi for module: label = 'test' id = 18 +++++++ finished: global begin lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 19 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global begin lumi for module: label = 'get' id = 20 +++++++ finished: global begin lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global begin lumi for module: label = 'getInt' id = 21 +++++++ finished: global begin lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global begin lumi: run = 3 lumi = 2 time = 125000001 ++++ starting: begin lumi: stream = 0 run = 3 lumi = 2 time = 125000001 ++++ finished: begin lumi: stream = 0 run = 3 lumi = 2 time = 125000001 @@ -6146,105 +6038,101 @@ ++++ starting: processing event : stream = 0 run = 3 lumi = 2 event = 5 time = 125000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 3 lumi = 2 event = 5 time = 125000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 2 event = 5 time = 125000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 2 event = 5 time = 125000001 ++++ starting: source event @@ -6302,105 +6190,101 @@ ++++ starting: processing event : stream = 0 run = 3 lumi = 2 event = 6 time = 130000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 3 lumi = 2 event = 6 time = 130000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 2 event = 6 time = 130000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 2 event = 6 time = 130000001 ++++ starting: source event @@ -6458,105 +6342,101 @@ ++++ starting: processing event : stream = 0 run = 3 lumi = 2 event = 7 time = 135000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 3 lumi = 2 event = 7 time = 135000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 2 event = 7 time = 135000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 2 event = 7 time = 135000001 ++++ starting: source event @@ -6614,105 +6494,101 @@ ++++ starting: processing event : stream = 0 run = 3 lumi = 2 event = 8 time = 140000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 3 lumi = 2 event = 8 time = 140000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 2 event = 8 time = 140000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 2 event = 8 time = 140000001 ++++ queuing: EventSetup synchronization run: 3 lumi: 3 event: 0 @@ -6761,56 +6637,56 @@ ++++ starting: global end lumi: run = 3 lumi = 2 time = 125000001 ++++ finished: global end lumi: run = 3 lumi = 2 time = 125000001 ++++ starting: global end lumi: run = 3 lumi = 2 time = 125000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global end lumi: run = 3 lumi = 2 time = 125000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global end lumi for module: label = 'testmerge' id = 33 -++++++ finished: global end lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global end lumi for module: label = 'test' id = 32 -++++++ finished: global end lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global end lumi for module: label = 'get' id = 34 -++++++ finished: global end lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global end lumi for module: label = 'getInt' id = 35 -++++++ finished: global end lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global end lumi for module: label = 'testmerge' id = 31 +++++++ finished: global end lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global end lumi for module: label = 'test' id = 30 +++++++ finished: global end lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global end lumi for module: label = 'get' id = 32 +++++++ finished: global end lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global end lumi for module: label = 'getInt' id = 33 +++++++ finished: global end lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global end lumi: run = 3 lumi = 2 time = 125000001 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global end lumi for module: label = 'testmerge' id = 20 -++++++ finished: global end lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global end lumi for module: label = 'test' id = 19 -++++++ finished: global end lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global end lumi for module: label = 'get' id = 21 -++++++ finished: global end lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global end lumi for module: label = 'getInt' id = 22 -++++++ finished: global end lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global end lumi for module: label = 'testmerge' id = 19 +++++++ finished: global end lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global end lumi for module: label = 'test' id = 18 +++++++ finished: global end lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global end lumi for module: label = 'get' id = 20 +++++++ finished: global end lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global end lumi for module: label = 'getInt' id = 21 +++++++ finished: global end lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global end lumi: run = 3 lumi = 2 time = 125000001 ++++ starting: global write lumi: run = 3 lumi = 2 time = 125000001 ++++ finished: global write lumi: run = 3 lumi = 2 time = 125000001 @@ -6822,11 +6698,11 @@ ++++ finished: global write lumi: run = 3 lumi = 2 time = 125000001 ++++ starting: global write lumi: run = 3 lumi = 2 time = 125000001 ++++ starting: global write lumi: run = 3 lumi = 2 time = 125000001 -++++++ starting: write lumi for module: label = 'out' id = 37 -++++++ finished: write lumi for module: label = 'out' id = 37 +++++++ starting: write lumi for module: label = 'out' id = 35 +++++++ finished: write lumi for module: label = 'out' id = 35 ++++ finished: global write lumi: run = 3 lumi = 2 time = 125000001 -++++++ starting: write lumi for module: label = 'out' id = 24 -++++++ finished: write lumi for module: label = 'out' id = 24 +++++++ starting: write lumi for module: label = 'out' id = 23 +++++++ finished: write lumi for module: label = 'out' id = 23 ++++ finished: global write lumi: run = 3 lumi = 2 time = 125000001 ++++ starting: source lumi ++++ finished: source lumi @@ -6855,56 +6731,56 @@ ++++ starting: global begin lumi: run = 3 lumi = 3 time = 145000001 ++++ finished: global begin lumi: run = 3 lumi = 3 time = 145000001 ++++ starting: global begin lumi: run = 3 lumi = 3 time = 145000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global begin lumi: run = 3 lumi = 3 time = 145000001 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global begin lumi for module: label = 'test' id = 32 -++++++ finished: global begin lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 33 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global begin lumi for module: label = 'get' id = 34 -++++++ finished: global begin lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global begin lumi for module: label = 'getInt' id = 35 -++++++ finished: global begin lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global begin lumi for module: label = 'test' id = 30 +++++++ finished: global begin lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 31 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global begin lumi for module: label = 'get' id = 32 +++++++ finished: global begin lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global begin lumi for module: label = 'getInt' id = 33 +++++++ finished: global begin lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global begin lumi: run = 3 lumi = 3 time = 145000001 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global begin lumi for module: label = 'test' id = 19 -++++++ finished: global begin lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global begin lumi for module: label = 'testmerge' id = 20 -++++++ finished: global begin lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global begin lumi for module: label = 'get' id = 21 -++++++ finished: global begin lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global begin lumi for module: label = 'getInt' id = 22 -++++++ finished: global begin lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global begin lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global begin lumi for module: label = 'test' id = 18 +++++++ finished: global begin lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global begin lumi for module: label = 'testmerge' id = 19 +++++++ finished: global begin lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global begin lumi for module: label = 'get' id = 20 +++++++ finished: global begin lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global begin lumi for module: label = 'getInt' id = 21 +++++++ finished: global begin lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global begin LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global begin lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global begin lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global begin lumi: run = 3 lumi = 3 time = 145000001 ++++ starting: begin lumi: stream = 0 run = 3 lumi = 3 time = 145000001 ++++ finished: begin lumi: stream = 0 run = 3 lumi = 3 time = 145000001 @@ -6979,105 +6855,101 @@ ++++ starting: processing event : stream = 0 run = 3 lumi = 3 event = 9 time = 145000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 3 lumi = 3 event = 9 time = 145000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 3 event = 9 time = 145000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 3 event = 9 time = 145000001 ++++ starting: source event @@ -7135,105 +7007,101 @@ ++++ starting: processing event : stream = 0 run = 3 lumi = 3 event = 10 time = 150000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 34 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 32 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 32 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 30 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 ++++ starting: processing event : stream = 0 run = 3 lumi = 3 event = 10 time = 150000001 ++++++ starting: processing path 'endPath1' : stream = 0 ++++++ starting: processing path 'path4' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++ starting: processing path 'path3' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'get' id = 20 ++++++ starting: processing path 'path2' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'test' id = 18 ++++++ starting: processing path 'path1' : stream = 0 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 17 ++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 13 ++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 13 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 19 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 19 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 20 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 18 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 18 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 19 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 19 ++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 14 ++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 14 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 21 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 21 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 22 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 22 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 20 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 20 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 21 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 21 ++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 15 ++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 15 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 16 ++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 16 ++++++ finished: processing path 'path4' : stream = 0 ++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 12 ++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 12 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 24 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 17 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 17 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 23 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 23 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 23 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 3 event = 10 time = 150000001 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 26 -++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 26 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ finished: processing event for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++++++ starting: processing event for module: stream = 0 label = 'path1' id = 25 +++++++++ finished: processing event for module: stream = 0 label = 'path1' id = 25 ++++++ finished: processing path 'path1' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 32 -++++++++ starting: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: processing event for module: stream = 0 label = 'test' id = 32 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 33 -++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 27 -++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 27 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'test' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: processing event for module: stream = 0 label = 'test' id = 30 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ finished: processing event for module: stream = 0 label = 'testmerge' id = 31 +++++++++ starting: processing event for module: stream = 0 label = 'path2' id = 26 +++++++++ finished: processing event for module: stream = 0 label = 'path2' id = 26 ++++++ finished: processing path 'path2' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 34 -++++++++ starting: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: processing event for module: stream = 0 label = 'get' id = 34 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 35 -++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 28 -++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 28 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'get' id = 32 +++++++++ starting: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: processing event for module: stream = 0 label = 'get' id = 32 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ finished: processing event for module: stream = 0 label = 'getInt' id = 33 +++++++++ starting: processing event for module: stream = 0 label = 'path3' id = 27 +++++++++ finished: processing event for module: stream = 0 label = 'path3' id = 27 ++++++ finished: processing path 'path3' : stream = 0 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 29 -++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 29 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ finished: processing event for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++++++ starting: processing event for module: stream = 0 label = 'path4' id = 28 +++++++++ finished: processing event for module: stream = 0 label = 'path4' id = 28 ++++++ finished: processing path 'path4' : stream = 0 -++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 25 -++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ finished: processing event for module: stream = 0 label = 'out' id = 37 -++++++++ starting: processing event for module: stream = 0 label = 'endPath1' id = 30 -++++++++ finished: processing event for module: stream = 0 label = 'endPath1' id = 30 +++++++++ starting: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ finished: processing event for module: stream = 0 label = 'TriggerResults' id = 24 +++++++++ starting: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: prefetching before processing event for module: stream = 0 label = 'out' id = 35 +++++++++ starting: processing event for module: stream = 0 label = 'out' id = 35 +++++++++ finished: processing event for module: stream = 0 label = 'out' id = 35 ++++++ finished: processing path 'endPath1' : stream = 0 ++++ finished: processing event : stream = 0 run = 3 lumi = 3 event = 10 time = 150000001 ++++ queuing: EventSetup synchronization run: 3 lumi: 4294967295 event: 18446744073709551615 @@ -7282,56 +7150,56 @@ ++++ starting: global end lumi: run = 3 lumi = 3 time = 145000001 ++++ finished: global end lumi: run = 3 lumi = 3 time = 145000001 ++++ starting: global end lumi: run = 3 lumi = 3 time = 145000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global end lumi: run = 3 lumi = 3 time = 145000001 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 33 -++++++ starting: global end lumi for module: label = 'testmerge' id = 33 -++++++ finished: global end lumi for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 32 -++++++ starting: global end lumi for module: label = 'test' id = 32 -++++++ finished: global end lumi for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 34 -++++++ starting: global end lumi for module: label = 'get' id = 34 -++++++ finished: global end lumi for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 35 -++++++ starting: global end lumi for module: label = 'getInt' id = 35 -++++++ finished: global end lumi for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 31 +++++++ starting: global end lumi for module: label = 'testmerge' id = 31 +++++++ finished: global end lumi for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 30 +++++++ starting: global end lumi for module: label = 'test' id = 30 +++++++ finished: global end lumi for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 32 +++++++ starting: global end lumi for module: label = 'get' id = 32 +++++++ finished: global end lumi for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 33 +++++++ starting: global end lumi for module: label = 'getInt' id = 33 +++++++ finished: global end lumi for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global end lumi: run = 3 lumi = 3 time = 145000001 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 20 -++++++ starting: global end lumi for module: label = 'testmerge' id = 20 -++++++ finished: global end lumi for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 19 -++++++ starting: global end lumi for module: label = 'test' id = 19 -++++++ finished: global end lumi for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 21 -++++++ starting: global end lumi for module: label = 'get' id = 21 -++++++ finished: global end lumi for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 22 -++++++ starting: global end lumi for module: label = 'getInt' id = 22 -++++++ finished: global end lumi for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global end lumi for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'testmerge' id = 19 +++++++ starting: global end lumi for module: label = 'testmerge' id = 19 +++++++ finished: global end lumi for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'test' id = 18 +++++++ starting: global end lumi for module: label = 'test' id = 18 +++++++ finished: global end lumi for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'get' id = 20 +++++++ starting: global end lumi for module: label = 'get' id = 20 +++++++ finished: global end lumi for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'getInt' id = 21 +++++++ starting: global end lumi for module: label = 'getInt' id = 21 +++++++ finished: global end lumi for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global end LuminosityBlock for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global end lumi for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global end lumi for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global end lumi: run = 3 lumi = 3 time = 145000001 ++++ starting: global write lumi: run = 3 lumi = 3 time = 145000001 ++++ finished: global write lumi: run = 3 lumi = 3 time = 145000001 @@ -7343,11 +7211,11 @@ ++++ finished: global write lumi: run = 3 lumi = 3 time = 145000001 ++++ starting: global write lumi: run = 3 lumi = 3 time = 145000001 ++++ starting: global write lumi: run = 3 lumi = 3 time = 145000001 -++++++ starting: write lumi for module: label = 'out' id = 37 -++++++ finished: write lumi for module: label = 'out' id = 37 +++++++ starting: write lumi for module: label = 'out' id = 35 +++++++ finished: write lumi for module: label = 'out' id = 35 ++++ finished: global write lumi: run = 3 lumi = 3 time = 145000001 -++++++ starting: write lumi for module: label = 'out' id = 24 -++++++ finished: write lumi for module: label = 'out' id = 24 +++++++ starting: write lumi for module: label = 'out' id = 23 +++++++ finished: write lumi for module: label = 'out' id = 23 ++++ finished: global write lumi: run = 3 lumi = 3 time = 145000001 ++++ starting: end run: stream = 0 run = 3 time = 150000001 ++++ finished: end run: stream = 0 run = 3 time = 150000001 @@ -7392,56 +7260,56 @@ ++++ starting: global end run 3 : time = 0 ++++ finished: global end run 3 : time = 0 ++++ starting: global end run 3 : time = 0 -++++++++ starting: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 23 -++++++++ starting: prefetching before processing global end Run for module: label = 'getInt' id = 22 -++++++++ starting: prefetching before processing global end Run for module: label = 'get' id = 21 -++++++++ starting: prefetching before processing global end Run for module: label = 'testmerge' id = 20 -++++++++ starting: prefetching before processing global end Run for module: label = 'test' id = 19 -++++++++ starting: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 18 +++++++++ starting: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 22 +++++++++ starting: prefetching before processing global end Run for module: label = 'getInt' id = 21 +++++++++ starting: prefetching before processing global end Run for module: label = 'get' id = 20 +++++++++ starting: prefetching before processing global end Run for module: label = 'testmerge' id = 19 +++++++++ starting: prefetching before processing global end Run for module: label = 'test' id = 18 +++++++++ starting: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 17 ++++ starting: global end run 3 : time = 0 -++++++++ starting: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 36 -++++++++ starting: prefetching before processing global end Run for module: label = 'getInt' id = 35 -++++++++ starting: prefetching before processing global end Run for module: label = 'get' id = 34 -++++++++ starting: prefetching before processing global end Run for module: label = 'testmerge' id = 33 -++++++++ starting: prefetching before processing global end Run for module: label = 'test' id = 32 -++++++++ starting: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 31 -++++++ starting: global end run for module: label = 'thingWithMergeProducer' id = 31 -++++++ finished: global end run for module: label = 'thingWithMergeProducer' id = 31 -++++++++ finished: prefetching before processing global end Run for module: label = 'testmerge' id = 33 -++++++ starting: global end run for module: label = 'testmerge' id = 33 -++++++ finished: global end run for module: label = 'testmerge' id = 33 -++++++++ finished: prefetching before processing global end Run for module: label = 'test' id = 32 -++++++ starting: global end run for module: label = 'test' id = 32 -++++++ finished: global end run for module: label = 'test' id = 32 -++++++++ finished: prefetching before processing global end Run for module: label = 'get' id = 34 -++++++ starting: global end run for module: label = 'get' id = 34 -++++++ finished: global end run for module: label = 'get' id = 34 -++++++++ finished: prefetching before processing global end Run for module: label = 'getInt' id = 35 -++++++ starting: global end run for module: label = 'getInt' id = 35 -++++++ finished: global end run for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 36 -++++++ starting: global end run for module: label = 'dependsOnNoPut' id = 36 -++++++ finished: global end run for module: label = 'dependsOnNoPut' id = 36 +++++++++ starting: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 34 +++++++++ starting: prefetching before processing global end Run for module: label = 'getInt' id = 33 +++++++++ starting: prefetching before processing global end Run for module: label = 'get' id = 32 +++++++++ starting: prefetching before processing global end Run for module: label = 'testmerge' id = 31 +++++++++ starting: prefetching before processing global end Run for module: label = 'test' id = 30 +++++++++ starting: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 29 +++++++ starting: global end run for module: label = 'thingWithMergeProducer' id = 29 +++++++ finished: global end run for module: label = 'thingWithMergeProducer' id = 29 +++++++++ finished: prefetching before processing global end Run for module: label = 'testmerge' id = 31 +++++++ starting: global end run for module: label = 'testmerge' id = 31 +++++++ finished: global end run for module: label = 'testmerge' id = 31 +++++++++ finished: prefetching before processing global end Run for module: label = 'test' id = 30 +++++++ starting: global end run for module: label = 'test' id = 30 +++++++ finished: global end run for module: label = 'test' id = 30 +++++++++ finished: prefetching before processing global end Run for module: label = 'get' id = 32 +++++++ starting: global end run for module: label = 'get' id = 32 +++++++ finished: global end run for module: label = 'get' id = 32 +++++++++ finished: prefetching before processing global end Run for module: label = 'getInt' id = 33 +++++++ starting: global end run for module: label = 'getInt' id = 33 +++++++ finished: global end run for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 34 +++++++ starting: global end run for module: label = 'dependsOnNoPut' id = 34 +++++++ finished: global end run for module: label = 'dependsOnNoPut' id = 34 ++++ finished: global end run 3 : time = 0 -++++++++ finished: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 18 -++++++ starting: global end run for module: label = 'thingWithMergeProducer' id = 18 -++++++ finished: global end run for module: label = 'thingWithMergeProducer' id = 18 -++++++++ finished: prefetching before processing global end Run for module: label = 'testmerge' id = 20 -++++++ starting: global end run for module: label = 'testmerge' id = 20 -++++++ finished: global end run for module: label = 'testmerge' id = 20 -++++++++ finished: prefetching before processing global end Run for module: label = 'test' id = 19 -++++++ starting: global end run for module: label = 'test' id = 19 -++++++ finished: global end run for module: label = 'test' id = 19 -++++++++ finished: prefetching before processing global end Run for module: label = 'get' id = 21 -++++++ starting: global end run for module: label = 'get' id = 21 -++++++ finished: global end run for module: label = 'get' id = 21 -++++++++ finished: prefetching before processing global end Run for module: label = 'getInt' id = 22 -++++++ starting: global end run for module: label = 'getInt' id = 22 -++++++ finished: global end run for module: label = 'getInt' id = 22 -++++++++ finished: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 23 -++++++ starting: global end run for module: label = 'dependsOnNoPut' id = 23 -++++++ finished: global end run for module: label = 'dependsOnNoPut' id = 23 +++++++++ finished: prefetching before processing global end Run for module: label = 'thingWithMergeProducer' id = 17 +++++++ starting: global end run for module: label = 'thingWithMergeProducer' id = 17 +++++++ finished: global end run for module: label = 'thingWithMergeProducer' id = 17 +++++++++ finished: prefetching before processing global end Run for module: label = 'testmerge' id = 19 +++++++ starting: global end run for module: label = 'testmerge' id = 19 +++++++ finished: global end run for module: label = 'testmerge' id = 19 +++++++++ finished: prefetching before processing global end Run for module: label = 'test' id = 18 +++++++ starting: global end run for module: label = 'test' id = 18 +++++++ finished: global end run for module: label = 'test' id = 18 +++++++++ finished: prefetching before processing global end Run for module: label = 'get' id = 20 +++++++ starting: global end run for module: label = 'get' id = 20 +++++++ finished: global end run for module: label = 'get' id = 20 +++++++++ finished: prefetching before processing global end Run for module: label = 'getInt' id = 21 +++++++ starting: global end run for module: label = 'getInt' id = 21 +++++++ finished: global end run for module: label = 'getInt' id = 21 +++++++++ finished: prefetching before processing global end Run for module: label = 'dependsOnNoPut' id = 22 +++++++ starting: global end run for module: label = 'dependsOnNoPut' id = 22 +++++++ finished: global end run for module: label = 'dependsOnNoPut' id = 22 ++++ finished: global end run 3 : time = 0 ++++ starting: global write run 3 : time = 150000001 ++++ finished: global write run 3 : time = 150000001 @@ -7453,11 +7321,11 @@ ++++ finished: global write run 3 : time = 0 ++++ starting: global write run 3 : time = 0 ++++ starting: global write run 3 : time = 0 -++++++ starting: write run for module: label = 'out' id = 37 -++++++ finished: write run for module: label = 'out' id = 37 +++++++ starting: write run for module: label = 'out' id = 35 +++++++ finished: write run for module: label = 'out' id = 35 ++++ finished: global write run 3 : time = 0 -++++++ starting: write run for module: label = 'out' id = 24 -++++++ finished: write run for module: label = 'out' id = 24 +++++++ starting: write run for module: label = 'out' id = 23 +++++++ finished: write run for module: label = 'out' id = 23 ++++ finished: global write run 3 : time = 0 ++++ starting: end process block ++++ finished: end process block @@ -7472,16 +7340,16 @@ ++++ starting: end process block ++++ finished: end process block ++++ starting: end process block -++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'getInt' id = 22 +++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'getInt' id = 21 ++++ starting: end process block -++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'getInt' id = 35 -++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'getInt' id = 35 -++++++ starting: end process block for module: label = 'getInt' id = 35 -++++++ finished: end process block for module: label = 'getInt' id = 35 +++++++++ starting: prefetching before processing end ProcessBlock for module: label = 'getInt' id = 33 +++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'getInt' id = 33 +++++++ starting: end process block for module: label = 'getInt' id = 33 +++++++ finished: end process block for module: label = 'getInt' id = 33 ++++ finished: end process block -++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'getInt' id = 22 -++++++ starting: end process block for module: label = 'getInt' id = 22 -++++++ finished: end process block for module: label = 'getInt' id = 22 +++++++++ finished: prefetching before processing end ProcessBlock for module: label = 'getInt' id = 21 +++++++ starting: end process block for module: label = 'getInt' id = 21 +++++++ finished: end process block for module: label = 'getInt' id = 21 ++++ finished: end process block ++++ starting: write process block ++++ finished: write process block @@ -7493,11 +7361,11 @@ ++++ finished: write process block ++++ starting: write process block ++++ starting: write process block -++++++ starting: write process block for module: label = 'out' id = 37 -++++++ finished: write process block for module: label = 'out' id = 37 +++++++ starting: write process block for module: label = 'out' id = 35 +++++++ finished: write process block for module: label = 'out' id = 35 ++++ finished: write process block -++++++ starting: write process block for module: label = 'out' id = 24 -++++++ finished: write process block for module: label = 'out' id = 24 +++++++ starting: write process block for module: label = 'out' id = 23 +++++++ finished: write process block for module: label = 'out' id = 23 ++++ finished: write process block ++++ starting: end stream for module: stream = 0 label = 'thingWithMergeProducer' id = 5 ++++ finished: end stream for module: stream = 0 label = 'thingWithMergeProducer' id = 5 @@ -7521,22 +7389,22 @@ ++++ finished: end stream for module: stream = 0 label = 'path1' id = 3 ++++ starting: end stream for module: stream = 0 label = 'path2' id = 4 ++++ finished: end stream for module: stream = 0 label = 'path2' id = 4 -++++ starting: end stream for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++ finished: end stream for module: stream = 0 label = 'thingWithMergeProducer' id = 18 -++++ starting: end stream for module: stream = 0 label = 'test' id = 19 -++++ finished: end stream for module: stream = 0 label = 'test' id = 19 -++++ starting: end stream for module: stream = 0 label = 'testmerge' id = 20 -++++ finished: end stream for module: stream = 0 label = 'testmerge' id = 20 -++++ starting: end stream for module: stream = 0 label = 'get' id = 21 -++++ finished: end stream for module: stream = 0 label = 'get' id = 21 -++++ starting: end stream for module: stream = 0 label = 'getInt' id = 22 -++++ finished: end stream for module: stream = 0 label = 'getInt' id = 22 -++++ starting: end stream for module: stream = 0 label = 'dependsOnNoPut' id = 23 -++++ finished: end stream for module: stream = 0 label = 'dependsOnNoPut' id = 23 +++++ starting: end stream for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++ finished: end stream for module: stream = 0 label = 'thingWithMergeProducer' id = 17 +++++ starting: end stream for module: stream = 0 label = 'test' id = 18 +++++ finished: end stream for module: stream = 0 label = 'test' id = 18 +++++ starting: end stream for module: stream = 0 label = 'testmerge' id = 19 +++++ finished: end stream for module: stream = 0 label = 'testmerge' id = 19 +++++ starting: end stream for module: stream = 0 label = 'get' id = 20 +++++ finished: end stream for module: stream = 0 label = 'get' id = 20 +++++ starting: end stream for module: stream = 0 label = 'getInt' id = 21 +++++ finished: end stream for module: stream = 0 label = 'getInt' id = 21 +++++ starting: end stream for module: stream = 0 label = 'dependsOnNoPut' id = 22 +++++ finished: end stream for module: stream = 0 label = 'dependsOnNoPut' id = 22 ++++ starting: end stream for module: stream = 0 label = 'TriggerResults' id = 12 ++++ finished: end stream for module: stream = 0 label = 'TriggerResults' id = 12 -++++ starting: end stream for module: stream = 0 label = 'out' id = 24 -++++ finished: end stream for module: stream = 0 label = 'out' id = 24 +++++ starting: end stream for module: stream = 0 label = 'out' id = 23 +++++ finished: end stream for module: stream = 0 label = 'out' id = 23 ++++ starting: end stream for module: stream = 0 label = 'path1' id = 13 ++++ finished: end stream for module: stream = 0 label = 'path1' id = 13 ++++ starting: end stream for module: stream = 0 label = 'path2' id = 14 @@ -7545,34 +7413,30 @@ ++++ finished: end stream for module: stream = 0 label = 'path3' id = 15 ++++ starting: end stream for module: stream = 0 label = 'path4' id = 16 ++++ finished: end stream for module: stream = 0 label = 'path4' id = 16 -++++ starting: end stream for module: stream = 0 label = 'endPath1' id = 17 -++++ finished: end stream for module: stream = 0 label = 'endPath1' id = 17 -++++ starting: end stream for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++ finished: end stream for module: stream = 0 label = 'thingWithMergeProducer' id = 31 -++++ starting: end stream for module: stream = 0 label = 'test' id = 32 -++++ finished: end stream for module: stream = 0 label = 'test' id = 32 -++++ starting: end stream for module: stream = 0 label = 'testmerge' id = 33 -++++ finished: end stream for module: stream = 0 label = 'testmerge' id = 33 -++++ starting: end stream for module: stream = 0 label = 'get' id = 34 -++++ finished: end stream for module: stream = 0 label = 'get' id = 34 -++++ starting: end stream for module: stream = 0 label = 'getInt' id = 35 -++++ finished: end stream for module: stream = 0 label = 'getInt' id = 35 -++++ starting: end stream for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++ finished: end stream for module: stream = 0 label = 'dependsOnNoPut' id = 36 -++++ starting: end stream for module: stream = 0 label = 'TriggerResults' id = 25 -++++ finished: end stream for module: stream = 0 label = 'TriggerResults' id = 25 -++++ starting: end stream for module: stream = 0 label = 'out' id = 37 -++++ finished: end stream for module: stream = 0 label = 'out' id = 37 -++++ starting: end stream for module: stream = 0 label = 'path1' id = 26 -++++ finished: end stream for module: stream = 0 label = 'path1' id = 26 -++++ starting: end stream for module: stream = 0 label = 'path2' id = 27 -++++ finished: end stream for module: stream = 0 label = 'path2' id = 27 -++++ starting: end stream for module: stream = 0 label = 'path3' id = 28 -++++ finished: end stream for module: stream = 0 label = 'path3' id = 28 -++++ starting: end stream for module: stream = 0 label = 'path4' id = 29 -++++ finished: end stream for module: stream = 0 label = 'path4' id = 29 -++++ starting: end stream for module: stream = 0 label = 'endPath1' id = 30 -++++ finished: end stream for module: stream = 0 label = 'endPath1' id = 30 +++++ starting: end stream for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++ finished: end stream for module: stream = 0 label = 'thingWithMergeProducer' id = 29 +++++ starting: end stream for module: stream = 0 label = 'test' id = 30 +++++ finished: end stream for module: stream = 0 label = 'test' id = 30 +++++ starting: end stream for module: stream = 0 label = 'testmerge' id = 31 +++++ finished: end stream for module: stream = 0 label = 'testmerge' id = 31 +++++ starting: end stream for module: stream = 0 label = 'get' id = 32 +++++ finished: end stream for module: stream = 0 label = 'get' id = 32 +++++ starting: end stream for module: stream = 0 label = 'getInt' id = 33 +++++ finished: end stream for module: stream = 0 label = 'getInt' id = 33 +++++ starting: end stream for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++ finished: end stream for module: stream = 0 label = 'dependsOnNoPut' id = 34 +++++ starting: end stream for module: stream = 0 label = 'TriggerResults' id = 24 +++++ finished: end stream for module: stream = 0 label = 'TriggerResults' id = 24 +++++ starting: end stream for module: stream = 0 label = 'out' id = 35 +++++ finished: end stream for module: stream = 0 label = 'out' id = 35 +++++ starting: end stream for module: stream = 0 label = 'path1' id = 25 +++++ finished: end stream for module: stream = 0 label = 'path1' id = 25 +++++ starting: end stream for module: stream = 0 label = 'path2' id = 26 +++++ finished: end stream for module: stream = 0 label = 'path2' id = 26 +++++ starting: end stream for module: stream = 0 label = 'path3' id = 27 +++++ finished: end stream for module: stream = 0 label = 'path3' id = 27 +++++ starting: end stream for module: stream = 0 label = 'path4' id = 28 +++++ finished: end stream for module: stream = 0 label = 'path4' id = 28 ++++ starting: end job for module with label 'thingWithMergeProducer' id = 5 ++++ finished: end job for module with label 'thingWithMergeProducer' id = 5 ++++ starting: end job for module with label 'get' id = 6 @@ -7595,20 +7459,20 @@ ++++ finished: end job for module with label 'path1' id = 3 ++++ starting: end job for module with label 'path2' id = 4 ++++ finished: end job for module with label 'path2' id = 4 -++++ starting: end job for module with label 'thingWithMergeProducer' id = 18 -++++ finished: end job for module with label 'thingWithMergeProducer' id = 18 -++++ starting: end job for module with label 'test' id = 19 -++++ finished: end job for module with label 'test' id = 19 -++++ starting: end job for module with label 'testmerge' id = 20 -++++ finished: end job for module with label 'testmerge' id = 20 -++++ starting: end job for module with label 'get' id = 21 -++++ finished: end job for module with label 'get' id = 21 -++++ starting: end job for module with label 'getInt' id = 22 -++++ finished: end job for module with label 'getInt' id = 22 -++++ starting: end job for module with label 'dependsOnNoPut' id = 23 -++++ finished: end job for module with label 'dependsOnNoPut' id = 23 -++++ starting: end job for module with label 'out' id = 24 -++++ finished: end job for module with label 'out' id = 24 +++++ starting: end job for module with label 'thingWithMergeProducer' id = 17 +++++ finished: end job for module with label 'thingWithMergeProducer' id = 17 +++++ starting: end job for module with label 'test' id = 18 +++++ finished: end job for module with label 'test' id = 18 +++++ starting: end job for module with label 'testmerge' id = 19 +++++ finished: end job for module with label 'testmerge' id = 19 +++++ starting: end job for module with label 'get' id = 20 +++++ finished: end job for module with label 'get' id = 20 +++++ starting: end job for module with label 'getInt' id = 21 +++++ finished: end job for module with label 'getInt' id = 21 +++++ starting: end job for module with label 'dependsOnNoPut' id = 22 +++++ finished: end job for module with label 'dependsOnNoPut' id = 22 +++++ starting: end job for module with label 'out' id = 23 +++++ finished: end job for module with label 'out' id = 23 ++++ starting: end job for module with label 'TriggerResults' id = 12 ++++ finished: end job for module with label 'TriggerResults' id = 12 ++++ starting: end job for module with label 'path1' id = 13 @@ -7619,32 +7483,28 @@ ++++ finished: end job for module with label 'path3' id = 15 ++++ starting: end job for module with label 'path4' id = 16 ++++ finished: end job for module with label 'path4' id = 16 -++++ starting: end job for module with label 'endPath1' id = 17 -++++ finished: end job for module with label 'endPath1' id = 17 -++++ starting: end job for module with label 'thingWithMergeProducer' id = 31 -++++ finished: end job for module with label 'thingWithMergeProducer' id = 31 -++++ starting: end job for module with label 'test' id = 32 -++++ finished: end job for module with label 'test' id = 32 -++++ starting: end job for module with label 'testmerge' id = 33 -++++ finished: end job for module with label 'testmerge' id = 33 -++++ starting: end job for module with label 'get' id = 34 -++++ finished: end job for module with label 'get' id = 34 -++++ starting: end job for module with label 'getInt' id = 35 -++++ finished: end job for module with label 'getInt' id = 35 -++++ starting: end job for module with label 'dependsOnNoPut' id = 36 -++++ finished: end job for module with label 'dependsOnNoPut' id = 36 -++++ starting: end job for module with label 'out' id = 37 -++++ finished: end job for module with label 'out' id = 37 -++++ starting: end job for module with label 'TriggerResults' id = 25 -++++ finished: end job for module with label 'TriggerResults' id = 25 -++++ starting: end job for module with label 'path1' id = 26 -++++ finished: end job for module with label 'path1' id = 26 -++++ starting: end job for module with label 'path2' id = 27 -++++ finished: end job for module with label 'path2' id = 27 -++++ starting: end job for module with label 'path3' id = 28 -++++ finished: end job for module with label 'path3' id = 28 -++++ starting: end job for module with label 'path4' id = 29 -++++ finished: end job for module with label 'path4' id = 29 -++++ starting: end job for module with label 'endPath1' id = 30 -++++ finished: end job for module with label 'endPath1' id = 30 +++++ starting: end job for module with label 'thingWithMergeProducer' id = 29 +++++ finished: end job for module with label 'thingWithMergeProducer' id = 29 +++++ starting: end job for module with label 'test' id = 30 +++++ finished: end job for module with label 'test' id = 30 +++++ starting: end job for module with label 'testmerge' id = 31 +++++ finished: end job for module with label 'testmerge' id = 31 +++++ starting: end job for module with label 'get' id = 32 +++++ finished: end job for module with label 'get' id = 32 +++++ starting: end job for module with label 'getInt' id = 33 +++++ finished: end job for module with label 'getInt' id = 33 +++++ starting: end job for module with label 'dependsOnNoPut' id = 34 +++++ finished: end job for module with label 'dependsOnNoPut' id = 34 +++++ starting: end job for module with label 'out' id = 35 +++++ finished: end job for module with label 'out' id = 35 +++++ starting: end job for module with label 'TriggerResults' id = 24 +++++ finished: end job for module with label 'TriggerResults' id = 24 +++++ starting: end job for module with label 'path1' id = 25 +++++ finished: end job for module with label 'path1' id = 25 +++++ starting: end job for module with label 'path2' id = 26 +++++ finished: end job for module with label 'path2' id = 26 +++++ starting: end job for module with label 'path3' id = 27 +++++ finished: end job for module with label 'path3' id = 27 +++++ starting: end job for module with label 'path4' id = 28 +++++ finished: end job for module with label 'path4' id = 28 ++ finished: end job diff --git a/IOMC/RandomEngine/test/unit_test_outputs/testMultiStreamDump.txt b/IOMC/RandomEngine/test/unit_test_outputs/testMultiStreamDump.txt index af396cbdeab39..5fb08c30c8f5e 100644 --- a/IOMC/RandomEngine/test/unit_test_outputs/testMultiStreamDump.txt +++ b/IOMC/RandomEngine/test/unit_test_outputs/testMultiStreamDump.txt @@ -3,11 +3,11 @@ RandomNumberGeneratorService dump Contents of seedsAndNameMap (label moduleID engineType seeds) - t1 4 HepJamesRandom 81 - t2 5 RanecuEngine 1 2 - t3 6 TRandom3 83 - t4 7 HepJamesRandom 84 - t6 8 MixMaxRng 85 + t1 3 HepJamesRandom 81 + t2 4 RanecuEngine 1 2 + t3 5 TRandom3 83 + t4 6 HepJamesRandom 84 + t6 7 MixMaxRng 85 nStreams_ = 3 saveFileName_ = StashStateStream.data saveFileNameRecorded_ = 0 diff --git a/IOMC/RandomEngine/test/unit_test_outputs/testRandomService1Dump.txt b/IOMC/RandomEngine/test/unit_test_outputs/testRandomService1Dump.txt index 5637951fbf9e6..cd5818d5fea34 100644 --- a/IOMC/RandomEngine/test/unit_test_outputs/testRandomService1Dump.txt +++ b/IOMC/RandomEngine/test/unit_test_outputs/testRandomService1Dump.txt @@ -3,11 +3,11 @@ RandomNumberGeneratorService dump Contents of seedsAndNameMap (label moduleID engineType seeds) - t1 4 HepJamesRandom 81 - t2 5 RanecuEngine 1 2 - t3 6 TRandom3 83 - t4 7 HepJamesRandom 84 - t6 8 MixMaxRng 85 + t1 3 HepJamesRandom 81 + t2 4 RanecuEngine 1 2 + t3 5 TRandom3 83 + t4 6 HepJamesRandom 84 + t6 7 MixMaxRng 85 nStreams_ = 1 saveFileName_ = StashState1.data saveFileNameRecorded_ = 0 From e2485937338fd70c76dd7b59b5194fc355de538b Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Tue, 9 Jan 2024 13:19:42 -0600 Subject: [PATCH 229/281] Fixed copy constructor name in bqueue_itr --- TrackingTools/PatternTools/interface/bqueue.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TrackingTools/PatternTools/interface/bqueue.h b/TrackingTools/PatternTools/interface/bqueue.h index 373cb1a5bcc93..15211d533427f 100644 --- a/TrackingTools/PatternTools/interface/bqueue.h +++ b/TrackingTools/PatternTools/interface/bqueue.h @@ -110,7 +110,7 @@ namespace cmsutils { it = t2.it; return *this; } - _bqueue_itr(const _bqueue_itr &t2) = default; + _bqueue_itr(const _bqueue_itr &t2) = default; friend class bqueue; private: From df0a6dc252b5ed35d4d2b774bd9094e4b577a7ae Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Tue, 9 Jan 2024 13:39:14 -0600 Subject: [PATCH 230/281] Explicit default methods for SDSRawDataCollection This fixes a compiler warning in DEVEL about implicit move operator= being deprecated. --- .../L1ScoutingRawData/interface/SDSRawDataCollection.h | 8 +++++--- DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc | 4 +--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h b/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h index fe301ac437644..8fef964a7fc3c 100644 --- a/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h +++ b/DataFormats/L1ScoutingRawData/interface/SDSRawDataCollection.h @@ -14,6 +14,10 @@ class SDSRawDataCollection : public edm::DoNotRecordParents { public: SDSRawDataCollection(); + SDSRawDataCollection(const SDSRawDataCollection&) = default; + SDSRawDataCollection(SDSRawDataCollection&&) noexcept = default; + SDSRawDataCollection& operator=(const SDSRawDataCollection&) = default; + SDSRawDataCollection& operator=(SDSRawDataCollection&&) noexcept = default; // retrive data for the scouting source at sourceId const FEDRawData& FEDData(int sourceId) const; @@ -21,8 +25,6 @@ class SDSRawDataCollection : public edm::DoNotRecordParents { // retrive data for the scouting source at sourceId FEDRawData& FEDData(int sourceId); - SDSRawDataCollection(const SDSRawDataCollection&); - void swap(SDSRawDataCollection& other) { data_.swap(other.data_); } private: @@ -31,4 +33,4 @@ class SDSRawDataCollection : public edm::DoNotRecordParents { inline void swap(SDSRawDataCollection& a, SDSRawDataCollection& b) { a.swap(b); } -#endif // L1ScoutingRawData_SDSRawDataCollection_h \ No newline at end of file +#endif // L1ScoutingRawData_SDSRawDataCollection_h diff --git a/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc b/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc index e663d30c86626..c59798bee3522 100644 --- a/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc +++ b/DataFormats/L1ScoutingRawData/src/SDSRawDataCollection.cc @@ -3,8 +3,6 @@ SDSRawDataCollection::SDSRawDataCollection() : data_(SDSNumbering::lastSDSId() + 1) {} -SDSRawDataCollection::SDSRawDataCollection(const SDSRawDataCollection& in) : data_(in.data_) {} - const FEDRawData& SDSRawDataCollection::FEDData(int sourceId) const { return data_[sourceId]; } -FEDRawData& SDSRawDataCollection::FEDData(int sourceId) { return data_[sourceId]; } \ No newline at end of file +FEDRawData& SDSRawDataCollection::FEDData(int sourceId) { return data_[sourceId]; } From 23d87192979e5a3a39c0ea941dd33fb65770bfc2 Mon Sep 17 00:00:00 2001 From: Andrew Loeliger Date: Tue, 9 Jan 2024 15:26:59 -0600 Subject: [PATCH 231/281] Remove hackConditions as was done in L1T Offline fork --- L1Trigger/Configuration/python/SimL1CaloEmulator_cff.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/L1Trigger/Configuration/python/SimL1CaloEmulator_cff.py b/L1Trigger/Configuration/python/SimL1CaloEmulator_cff.py index 995584b92bc09..bd7d4e337dddc 100644 --- a/L1Trigger/Configuration/python/SimL1CaloEmulator_cff.py +++ b/L1Trigger/Configuration/python/SimL1CaloEmulator_cff.py @@ -4,7 +4,3 @@ # define a core which can be extended in customizations: SimL1CaloEmulator = cms.Sequence( SimL1TCalorimeter ) - -# Emulators are configured from DB (GlobalTags) -# but in the integration branch conffigure from static hackConditions -from L1Trigger.L1TCalorimeter.hackConditions_cff import * From 1446459f7733db1906afc58b7cecad2662c6a65e Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Wed, 10 Jan 2024 09:49:07 -0600 Subject: [PATCH 232/281] Avoid making voxels in TGeoManager Making voxels was the most time-consuming call and we do not use TGeoManager for particle propagation. --- .../DDCMS/plugins/dd4hep/DDDefinitions2Objects.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DetectorDescription/DDCMS/plugins/dd4hep/DDDefinitions2Objects.cc b/DetectorDescription/DDCMS/plugins/dd4hep/DDDefinitions2Objects.cc index 8343cc8651eca..11db847c664d8 100644 --- a/DetectorDescription/DDCMS/plugins/dd4hep/DDDefinitions2Objects.cc +++ b/DetectorDescription/DDCMS/plugins/dd4hep/DDDefinitions2Objects.cc @@ -2314,7 +2314,7 @@ static long load_dddefinition(Detector& det, xml_h element) { wv.placeVolume(mfv1, 1); // Can not deal with reflections without closed geometry - det.manager().CloseGeometry(); + det.manager().CloseGeometry("nv"); det.endDocument(); } From ba1718f7066be154ec6761eb23d097781b7f0cd4 Mon Sep 17 00:00:00 2001 From: Chris Jones Date: Wed, 10 Jan 2024 13:39:50 -0600 Subject: [PATCH 233/281] Use std types for SFINAE usage in cms::Exception --- FWCore/Utilities/interface/Exception.h | 113 +++---------------------- 1 file changed, 11 insertions(+), 102 deletions(-) diff --git a/FWCore/Utilities/interface/Exception.h b/FWCore/Utilities/interface/Exception.h index 6cc888a4a348c..4a3d0b68aee90 100644 --- a/FWCore/Utilities/interface/Exception.h +++ b/FWCore/Utilities/interface/Exception.h @@ -45,26 +45,14 @@ namespace cms { + class Exception; namespace detail { - // The struct template Desired exists in order to allow us to use - // SFINAE to control the instantiation of the stream insertion + // Used for SFINAE to control the instantiation of the stream insertion // member template needed to support streaming output to an object // of type cms::Exception, or a subclass of cms::Exception. - - template - struct Desired; - template - struct Desired { - typedef T type; - }; - - // The following struct template is a metafunction which combines - // two of the boost type_traits metafunctions. - - template - struct is_derived_or_same { - static bool const value = std::is_base_of::value || std::is_same::value; - }; + template + using exception_type = + std::enable_if_t>, std::remove_reference_t>; } // namespace detail @@ -129,48 +117,14 @@ namespace cms { // classes. // - // We have provided versions of these templates which accept, and - // return, reference-to-const objects of type E. These are needed - // so that the expression: - // - // throw Exception("category") << "some message"; - // - // shall compile. The technical reason is that the un-named - // temporary created by the explicit call to the constructor - // allows only const access, except by member functions. It seems - // extremely unlikely that any Exception object will be created in - // read-only memory; thus it seems unlikely that allowing the - // stream operators to write into a nominally 'const' Exception - // object is a real danger. - template - friend typename detail::Desired>::value>::type& - operator<<(E&& e, T const& stuff); + friend typename detail::exception_type& operator<<(E&& e, T const& stuff); template - friend typename detail::Desired>::value>::type& - operator<<(E&& e, std::ostream& (*f)(std::ostream&)); + friend typename detail::exception_type& operator<<(E&& e, std::ostream& (*f)(std::ostream&)); template - friend typename detail::Desired>::value>::type& - operator<<(E&& e, std::ios_base& (*f)(std::ios_base&)); - - // The following two function templates should be included, to help - // reduce the number of function templates instantiated. However, - // GCC 3.2.3 crashes with an internal compiler error when - // instantiating these functions. - - // template - // friend - // typename detail::Desired::value || - // std::is_same::value)>::type & - // operator<<(E& e, const char*); - - // template - // friend - // typename detail::Desired::value || - // std::is_same::value)>::type & - // operator<<(E& e, char*); + friend typename detail::exception_type& operator<<(E&& e, std::ios_base& (*f)(std::ios_base&)); // This function is deprecated and we are in the process of removing // all code that uses it from CMSSW. It will then be deleted. @@ -199,68 +153,23 @@ namespace cms { // -------- implementation --------- template - inline typename detail::Desired>::value>::type& - operator<<(E&& e, T const& stuff) { + inline typename detail::exception_type& operator<<(E&& e, T const& stuff) { e.ost_ << stuff; return e; } template - inline typename detail::Desired>::value>::type& - operator<<(E&& e, std::ostream& (*f)(std::ostream&)) { + inline typename detail::exception_type& operator<<(E&& e, std::ostream& (*f)(std::ostream&)) { f(e.ost_); return e; } template - inline typename detail::Desired>::value>::type& - operator<<(E&& e, std::ios_base& (*f)(std::ios_base&)) { + inline typename detail::exception_type& operator<<(E&& e, std::ios_base& (*f)(std::ios_base&)) { f(e.ost_); return e; } - // The following four function templates should be included, to help - // reduce the number of function templates instantiated. However, - // GCC 3.2.3 crashes with an internal compiler error when - // instantiating these functions. - - // template - // inline - // typename detail::Desired::value>::type & - // operator<<(E& e, char const* c) - // { - // e.ost_ << c; - // return e; - // } - - // template - // inline - // typename detail::Desired::value>::type const& - // operator<<(E const& e, char const* c) - // { - // E& ref = const_cast(e); - // ref.ost_ << c; - // return e; - // } - - // template - // inline - // typename detail::Desired::value>::type & - // operator<<(E& e, char* c) - // { - // e.ost_ << c; - // return e; - // } - - // template - // inline - // typename detail::Desired::value>::type const& - // operator<<(E const& e, char* c) - // { - // E& ref = const_cast(e); - // ref.ost_ << c; - // return e; - // } } // namespace cms #endif From 2b18be29dc9df3f6c5865188fc54eb89adc2ce50 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Thu, 11 Jan 2024 05:39:06 +0100 Subject: [PATCH 234/281] Attempt to make a flat silicon file for HGNose descriptiopn - first step to make the next version of HFNose --- Geometry/ForwardCommonData/data/hfnose01.txt | 824 ++++++++++++++++++ .../test/dumpHFNoseGeometry_cfg.py | 2 +- .../HGCalCommonData/plugins/DDHGCalEEAlgo.cc | 16 +- 3 files changed, 840 insertions(+), 2 deletions(-) create mode 100644 Geometry/ForwardCommonData/data/hfnose01.txt diff --git a/Geometry/ForwardCommonData/data/hfnose01.txt b/Geometry/ForwardCommonData/data/hfnose01.txt new file mode 100644 index 0000000000000..d87a7c46bde57 --- /dev/null +++ b/Geometry/ForwardCommonData/data/hfnose01.txt @@ -0,0 +1,824 @@ +1 0 0.00 0.00 0.00 0.00 0.00 0.00 +2 4 0.00 0.00 0.00 0.00 0.00 0.00 +3 0 0.00 0.00 0.00 0.00 0.00 0.00 +4 4 0.00 0.00 0.00 0.00 0.00 0.00 +5 0 0.00 0.00 0.00 0.00 0.00 0.00 +6 4 0.00 0.00 0.00 0.00 0.00 0.00 +7 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +8 4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 + 1 0 h120 586.043 -725.040 0 -6 -5 3 + 1 0 h120 669.763 -580.032 0 -6 -4 3 + 1 0 h120 753.484 -435.024 0 -6 -3 3 + 1 0 h120 837.204 -290.016 0 -6 -2 3 + 1 0 h120 920.924 -145.008 0 -6 -1 3 + 1 0 h120 334.882 -870.048 0 -5 -6 4 + 1 0 h120 418.602 -725.040 0 -5 -5 4 + 1 0 h120 502.322 -580.032 0 -5 -4 3 + 1 0 h120 586.043 -435.024 0 -5 -3 3 + 1 0 h120 669.763 -290.016 0 -5 -2 3 + 1 0 h120 753.484 -145.008 0 -5 -1 3 + 1 0 h120 837.204 0.000 0 -5 0 3 + 1 0 h120 920.924 145.008 0 -5 1 2 + 1 0 h120 167.441 -870.048 0 -4 -6 4 + 1 0 h120 251.161 -725.040 0 -4 -5 4 + 1 0 h120 334.882 -580.032 0 -4 -4 4 + 1 0 h120 418.602 -435.024 0 -4 -3 3 + 1 0 h120 502.322 -290.016 0 -4 -2 3 + 1 0 h120 586.043 -145.008 0 -4 -1 3 + 1 0 h120 669.763 0.000 0 -4 0 3 + 1 0 h120 753.484 145.008 0 -4 1 2 + 1 0 h120 837.204 290.016 0 -4 2 2 + 1 0 h120 0.000 -870.048 0 -3 -6 4 + 1 0 h120 83.720 -725.040 0 -3 -5 4 + 1 0 h120 167.441 -580.032 0 -3 -4 4 + 1 0 h120 251.161 -435.024 0 -3 -3 4 + 1 0 h120 334.882 -290.016 0 -3 -2 3 + 1 0 h120 418.602 -145.008 0 -3 -1 3 + 1 0 h120 502.322 0.000 0 -3 0 3 + 1 0 h120 586.043 145.008 0 -3 1 2 + 1 0 h120 669.763 290.016 0 -3 2 2 + 1 0 h120 753.484 435.024 0 -3 3 2 + 1 0 h120 -167.441 -870.048 0 -2 -6 4 + 1 0 h120 -83.720 -725.040 0 -2 -5 4 + 1 0 h120 0.000 -580.032 0 -2 -4 4 + 1 0 h120 83.720 -435.024 0 -2 -3 4 + 1 0 h120 418.602 145.008 0 -2 1 2 + 1 0 h120 502.322 290.016 0 -2 2 2 + 1 0 h120 586.043 435.024 0 -2 3 2 + 1 0 h120 669.763 580.032 0 -2 4 2 + 1 0 h120 -334.882 -870.048 0 -1 -6 4 + 1 0 h120 -251.161 -725.040 0 -1 -5 4 + 1 0 h120 -167.441 -580.032 0 -1 -4 4 + 1 0 h120 -83.720 -435.024 0 -1 -3 4 + 1 0 h120 334.882 290.016 0 -1 2 2 + 1 0 h120 418.602 435.024 0 -1 3 2 + 1 0 h120 502.322 580.032 0 -1 4 2 + 1 0 h120 586.043 725.040 0 -1 5 2 + 1 0 h120 -418.602 -725.040 0 0 -5 5 + 1 0 h120 -334.882 -580.032 0 0 -4 5 + 1 0 h120 -251.161 -435.024 0 0 -3 5 + 1 0 h120 251.161 435.024 0 0 3 1 + 1 0 h120 334.882 580.032 0 0 4 1 + 1 0 h120 418.602 725.040 0 0 5 1 + 1 0 h120 -586.043 -725.040 0 1 -5 5 + 1 0 h120 -502.322 -580.032 0 1 -4 5 + 1 0 h120 -418.602 -435.024 0 1 -3 5 + 1 0 h120 -334.882 -290.016 0 1 -2 5 + 1 0 h120 83.720 435.024 0 1 3 1 + 1 0 h120 167.441 580.032 0 1 4 1 + 1 0 h120 251.161 725.040 0 1 5 1 + 1 0 h120 334.882 870.048 0 1 6 1 + 1 0 h120 -669.763 -580.032 0 2 -4 5 + 1 0 h120 -586.043 -435.024 0 2 -3 5 + 1 0 h120 -502.322 -290.016 0 2 -2 5 + 1 0 h120 -418.602 -145.008 0 2 -1 5 + 1 0 h120 -83.720 435.024 0 2 3 1 + 1 0 h120 0.000 580.032 0 2 4 1 + 1 0 h120 83.720 725.040 0 2 5 1 + 1 0 h120 167.441 870.048 0 2 6 1 + 1 0 h120 -753.484 -435.024 0 3 -3 5 + 1 0 h120 -669.763 -290.016 0 3 -2 5 + 1 0 h120 -586.043 -145.008 0 3 -1 5 + 1 0 h120 -502.322 0.000 0 3 0 0 + 1 0 h120 -418.602 145.008 0 3 1 0 + 1 0 h120 -334.882 290.016 0 3 2 0 + 1 0 h120 -251.161 435.024 0 3 3 1 + 1 0 h120 -167.441 580.032 0 3 4 1 + 1 0 h120 -83.720 725.040 0 3 5 1 + 1 0 h120 0.000 870.048 0 3 6 1 + 1 0 h120 -837.204 -290.016 0 4 -2 5 + 1 0 h120 -753.484 -145.008 0 4 -1 5 + 1 0 h120 -669.763 0.000 0 4 0 0 + 1 0 h120 -586.043 145.008 0 4 1 0 + 1 0 h120 -502.322 290.016 0 4 2 0 + 1 0 h120 -418.602 435.024 0 4 3 0 + 1 0 h120 -334.882 580.032 0 4 4 1 + 1 0 h120 -251.161 725.040 0 4 5 1 + 1 0 h120 -167.441 870.048 0 4 6 1 + 1 0 h120 -920.924 -145.008 0 5 -1 5 + 1 0 h120 -837.204 0.000 0 5 0 0 + 1 0 h120 -753.484 145.008 0 5 1 0 + 1 0 h120 -669.763 290.016 0 5 2 0 + 1 0 h120 -586.043 435.024 0 5 3 0 + 1 0 h120 -502.322 580.032 0 5 4 0 + 1 0 h120 -418.602 725.040 0 5 5 1 + 1 0 h120 -334.882 870.048 0 5 6 1 + 1 0 h120 -920.924 145.008 0 6 1 0 + 1 0 h120 -837.204 290.016 0 6 2 0 + 1 0 h120 -753.484 435.024 0 6 3 0 + 1 0 h120 -669.763 580.032 0 6 4 0 + 1 0 h120 -586.043 725.040 0 6 5 0 + 2 0 h120 586.043 -725.040 0 -6 -5 3 + 2 0 h120 669.763 -580.032 0 -6 -4 3 + 2 0 h120 753.484 -435.024 0 -6 -3 3 + 2 0 h120 837.204 -290.016 0 -6 -2 3 + 2 0 h120 920.924 -145.008 0 -6 -1 3 + 2 0 h120 334.882 -870.048 0 -5 -6 4 + 2 0 h120 418.602 -725.040 0 -5 -5 4 + 2 0 h120 502.322 -580.032 0 -5 -4 3 + 2 0 h120 586.043 -435.024 0 -5 -3 3 + 2 0 h120 669.763 -290.016 0 -5 -2 3 + 2 0 h120 753.484 -145.008 0 -5 -1 3 + 2 0 h120 837.204 0.000 0 -5 0 3 + 2 0 h120 920.924 145.008 0 -5 1 2 + 2 0 h120 167.441 -870.048 0 -4 -6 4 + 2 0 h120 251.161 -725.040 0 -4 -5 4 + 2 0 h120 334.882 -580.032 0 -4 -4 4 + 2 0 h120 418.602 -435.024 0 -4 -3 3 + 2 0 h120 502.322 -290.016 0 -4 -2 3 + 2 0 h120 586.043 -145.008 0 -4 -1 3 + 2 0 h120 669.763 0.000 0 -4 0 3 + 2 0 h120 753.484 145.008 0 -4 1 2 + 2 0 h120 837.204 290.016 0 -4 2 2 + 2 0 h120 0.000 -870.048 0 -3 -6 4 + 2 0 h120 83.720 -725.040 0 -3 -5 4 + 2 0 h120 167.441 -580.032 0 -3 -4 4 + 2 0 h120 251.161 -435.024 0 -3 -3 4 + 2 0 h120 334.882 -290.016 0 -3 -2 3 + 2 0 h120 418.602 -145.008 0 -3 -1 3 + 2 0 h120 502.322 0.000 0 -3 0 3 + 2 0 h120 586.043 145.008 0 -3 1 2 + 2 0 h120 669.763 290.016 0 -3 2 2 + 2 0 h120 753.484 435.024 0 -3 3 2 + 2 0 h120 -167.441 -870.048 0 -2 -6 4 + 2 0 h120 -83.720 -725.040 0 -2 -5 4 + 2 0 h120 0.000 -580.032 0 -2 -4 4 + 2 0 h120 83.720 -435.024 0 -2 -3 4 + 2 0 h120 418.602 145.008 0 -2 1 2 + 2 0 h120 502.322 290.016 0 -2 2 2 + 2 0 h120 586.043 435.024 0 -2 3 2 + 2 0 h120 669.763 580.032 0 -2 4 2 + 2 0 h120 -334.882 -870.048 0 -1 -6 4 + 2 0 h120 -251.161 -725.040 0 -1 -5 4 + 2 0 h120 -167.441 -580.032 0 -1 -4 4 + 2 0 h120 -83.720 -435.024 0 -1 -3 4 + 2 0 h120 334.882 290.016 0 -1 2 2 + 2 0 h120 418.602 435.024 0 -1 3 2 + 2 0 h120 502.322 580.032 0 -1 4 2 + 2 0 h120 586.043 725.040 0 -1 5 2 + 2 0 h120 -418.602 -725.040 0 0 -5 5 + 2 0 h120 -334.882 -580.032 0 0 -4 5 + 2 0 h120 -251.161 -435.024 0 0 -3 5 + 2 0 h120 251.161 435.024 0 0 3 1 + 2 0 h120 334.882 580.032 0 0 4 1 + 2 0 h120 418.602 725.040 0 0 5 1 + 2 0 h120 -586.043 -725.040 0 1 -5 5 + 2 0 h120 -502.322 -580.032 0 1 -4 5 + 2 0 h120 -418.602 -435.024 0 1 -3 5 + 2 0 h120 -334.882 -290.016 0 1 -2 5 + 2 0 h120 83.720 435.024 0 1 3 1 + 2 0 h120 167.441 580.032 0 1 4 1 + 2 0 h120 251.161 725.040 0 1 5 1 + 2 0 h120 334.882 870.048 0 1 6 1 + 2 0 h120 -669.763 -580.032 0 2 -4 5 + 2 0 h120 -586.043 -435.024 0 2 -3 5 + 2 0 h120 -502.322 -290.016 0 2 -2 5 + 2 0 h120 -418.602 -145.008 0 2 -1 5 + 2 0 h120 -83.720 435.024 0 2 3 1 + 2 0 h120 0.000 580.032 0 2 4 1 + 2 0 h120 83.720 725.040 0 2 5 1 + 2 0 h120 167.441 870.048 0 2 6 1 + 2 0 h120 -753.484 -435.024 0 3 -3 5 + 2 0 h120 -669.763 -290.016 0 3 -2 5 + 2 0 h120 -586.043 -145.008 0 3 -1 5 + 2 0 h120 -502.322 0.000 0 3 0 0 + 2 0 h120 -418.602 145.008 0 3 1 0 + 2 0 h120 -334.882 290.016 0 3 2 0 + 2 0 h120 -251.161 435.024 0 3 3 1 + 2 0 h120 -167.441 580.032 0 3 4 1 + 2 0 h120 -83.720 725.040 0 3 5 1 + 2 0 h120 0.000 870.048 0 3 6 1 + 2 0 h120 -837.204 -290.016 0 4 -2 5 + 2 0 h120 -753.484 -145.008 0 4 -1 5 + 2 0 h120 -669.763 0.000 0 4 0 0 + 2 0 h120 -586.043 145.008 0 4 1 0 + 2 0 h120 -502.322 290.016 0 4 2 0 + 2 0 h120 -418.602 435.024 0 4 3 0 + 2 0 h120 -334.882 580.032 0 4 4 1 + 2 0 h120 -251.161 725.040 0 4 5 1 + 2 0 h120 -167.441 870.048 0 4 6 1 + 2 0 h120 -920.924 -145.008 0 5 -1 5 + 2 0 h120 -837.204 0.000 0 5 0 0 + 2 0 h120 -753.484 145.008 0 5 1 0 + 2 0 h120 -669.763 290.016 0 5 2 0 + 2 0 h120 -586.043 435.024 0 5 3 0 + 2 0 h120 -502.322 580.032 0 5 4 0 + 2 0 h120 -418.602 725.040 0 5 5 1 + 2 0 h120 -334.882 870.048 0 5 6 1 + 2 0 h120 -920.924 145.008 0 6 1 0 + 2 0 h120 -837.204 290.016 0 6 2 0 + 2 0 h120 -753.484 435.024 0 6 3 0 + 2 0 h120 -669.763 580.032 0 6 4 0 + 2 0 h120 -586.043 725.040 0 6 5 0 + 3 0 h120 586.043 -725.040 0 -6 -5 3 + 3 0 h120 669.763 -580.032 0 -6 -4 3 + 3 0 h120 753.484 -435.024 0 -6 -3 3 + 3 0 h120 837.204 -290.016 0 -6 -2 3 + 3 0 h120 920.924 -145.008 0 -6 -1 3 + 3 0 h120 334.882 -870.048 0 -5 -6 4 + 3 0 h120 418.602 -725.040 0 -5 -5 4 + 3 0 h120 502.322 -580.032 0 -5 -4 3 + 3 0 h120 586.043 -435.024 0 -5 -3 3 + 3 0 h120 669.763 -290.016 0 -5 -2 3 + 3 0 h120 753.484 -145.008 0 -5 -1 3 + 3 0 h120 837.204 0.000 0 -5 0 3 + 3 0 h120 920.924 145.008 0 -5 1 2 + 3 0 h120 167.441 -870.048 0 -4 -6 4 + 3 0 h120 251.161 -725.040 0 -4 -5 4 + 3 0 h120 334.882 -580.032 0 -4 -4 4 + 3 0 h120 418.602 -435.024 0 -4 -3 3 + 3 0 h120 502.322 -290.016 0 -4 -2 3 + 3 0 h120 586.043 -145.008 0 -4 -1 3 + 3 0 h120 669.763 0.000 0 -4 0 3 + 3 0 h120 753.484 145.008 0 -4 1 2 + 3 0 h120 837.204 290.016 0 -4 2 2 + 3 0 h120 0.000 -870.048 0 -3 -6 4 + 3 0 h120 83.720 -725.040 0 -3 -5 4 + 3 0 h120 167.441 -580.032 0 -3 -4 4 + 3 0 h120 251.161 -435.024 0 -3 -3 4 + 3 0 h120 334.882 -290.016 0 -3 -2 3 + 3 0 h120 418.602 -145.008 0 -3 -1 3 + 3 0 h120 502.322 0.000 0 -3 0 3 + 3 0 h120 586.043 145.008 0 -3 1 2 + 3 0 h120 669.763 290.016 0 -3 2 2 + 3 0 h120 753.484 435.024 0 -3 3 2 + 3 0 h120 -167.441 -870.048 0 -2 -6 4 + 3 0 h120 -83.720 -725.040 0 -2 -5 4 + 3 0 h120 0.000 -580.032 0 -2 -4 4 + 3 0 h120 83.720 -435.024 0 -2 -3 4 + 3 0 h120 418.602 145.008 0 -2 1 2 + 3 0 h120 502.322 290.016 0 -2 2 2 + 3 0 h120 586.043 435.024 0 -2 3 2 + 3 0 h120 669.763 580.032 0 -2 4 2 + 3 0 h120 -334.882 -870.048 0 -1 -6 4 + 3 0 h120 -251.161 -725.040 0 -1 -5 4 + 3 0 h120 -167.441 -580.032 0 -1 -4 4 + 3 0 h120 -83.720 -435.024 0 -1 -3 4 + 3 0 h120 334.882 290.016 0 -1 2 2 + 3 0 h120 418.602 435.024 0 -1 3 2 + 3 0 h120 502.322 580.032 0 -1 4 2 + 3 0 h120 586.043 725.040 0 -1 5 2 + 3 0 h120 -418.602 -725.040 0 0 -5 5 + 3 0 h120 -334.882 -580.032 0 0 -4 5 + 3 0 h120 -251.161 -435.024 0 0 -3 5 + 3 0 h120 251.161 435.024 0 0 3 1 + 3 0 h120 334.882 580.032 0 0 4 1 + 3 0 h120 418.602 725.040 0 0 5 1 + 3 0 h120 -586.043 -725.040 0 1 -5 5 + 3 0 h120 -502.322 -580.032 0 1 -4 5 + 3 0 h120 -418.602 -435.024 0 1 -3 5 + 3 0 h120 -334.882 -290.016 0 1 -2 5 + 3 0 h120 83.720 435.024 0 1 3 1 + 3 0 h120 167.441 580.032 0 1 4 1 + 3 0 h120 251.161 725.040 0 1 5 1 + 3 0 h120 334.882 870.048 0 1 6 1 + 3 0 h120 -669.763 -580.032 0 2 -4 5 + 3 0 h120 -586.043 -435.024 0 2 -3 5 + 3 0 h120 -502.322 -290.016 0 2 -2 5 + 3 0 h120 -418.602 -145.008 0 2 -1 5 + 3 0 h120 -83.720 435.024 0 2 3 1 + 3 0 h120 0.000 580.032 0 2 4 1 + 3 0 h120 83.720 725.040 0 2 5 1 + 3 0 h120 167.441 870.048 0 2 6 1 + 3 0 h120 -753.484 -435.024 0 3 -3 5 + 3 0 h120 -669.763 -290.016 0 3 -2 5 + 3 0 h120 -586.043 -145.008 0 3 -1 5 + 3 0 h120 -502.322 0.000 0 3 0 0 + 3 0 h120 -418.602 145.008 0 3 1 0 + 3 0 h120 -334.882 290.016 0 3 2 0 + 3 0 h120 -251.161 435.024 0 3 3 1 + 3 0 h120 -167.441 580.032 0 3 4 1 + 3 0 h120 -83.720 725.040 0 3 5 1 + 3 0 h120 0.000 870.048 0 3 6 1 + 3 0 h120 -837.204 -290.016 0 4 -2 5 + 3 0 h120 -753.484 -145.008 0 4 -1 5 + 3 0 h120 -669.763 0.000 0 4 0 0 + 3 0 h120 -586.043 145.008 0 4 1 0 + 3 0 h120 -502.322 290.016 0 4 2 0 + 3 0 h120 -418.602 435.024 0 4 3 0 + 3 0 h120 -334.882 580.032 0 4 4 1 + 3 0 h120 -251.161 725.040 0 4 5 1 + 3 0 h120 -167.441 870.048 0 4 6 1 + 3 0 h120 -920.924 -145.008 0 5 -1 5 + 3 0 h120 -837.204 0.000 0 5 0 0 + 3 0 h120 -753.484 145.008 0 5 1 0 + 3 0 h120 -669.763 290.016 0 5 2 0 + 3 0 h120 -586.043 435.024 0 5 3 0 + 3 0 h120 -502.322 580.032 0 5 4 0 + 3 0 h120 -418.602 725.040 0 5 5 1 + 3 0 h120 -334.882 870.048 0 5 6 1 + 3 0 h120 -920.924 145.008 0 6 1 0 + 3 0 h120 -837.204 290.016 0 6 2 0 + 3 0 h120 -753.484 435.024 0 6 3 0 + 3 0 h120 -669.763 580.032 0 6 4 0 + 3 0 h120 -586.043 725.040 0 6 5 0 + 4 0 h120 586.043 -725.040 0 -6 -5 3 + 4 0 h120 669.763 -580.032 0 -6 -4 3 + 4 0 h120 753.484 -435.024 0 -6 -3 3 + 4 0 h120 837.204 -290.016 0 -6 -2 3 + 4 0 h120 920.924 -145.008 0 -6 -1 3 + 4 0 h120 334.882 -870.048 0 -5 -6 4 + 4 0 h120 418.602 -725.040 0 -5 -5 4 + 4 0 h120 502.322 -580.032 0 -5 -4 3 + 4 0 h120 586.043 -435.024 0 -5 -3 3 + 4 0 h120 669.763 -290.016 0 -5 -2 3 + 4 0 h120 753.484 -145.008 0 -5 -1 3 + 4 0 h120 837.204 0.000 0 -5 0 3 + 4 0 h120 920.924 145.008 0 -5 1 2 + 4 0 h120 167.441 -870.048 0 -4 -6 4 + 4 0 h120 251.161 -725.040 0 -4 -5 4 + 4 0 h120 334.882 -580.032 0 -4 -4 4 + 4 0 h120 418.602 -435.024 0 -4 -3 3 + 4 0 h120 502.322 -290.016 0 -4 -2 3 + 4 0 h120 586.043 -145.008 0 -4 -1 3 + 4 0 h120 669.763 0.000 0 -4 0 3 + 4 0 h120 753.484 145.008 0 -4 1 2 + 4 0 h120 837.204 290.016 0 -4 2 2 + 4 0 h120 0.000 -870.048 0 -3 -6 4 + 4 0 h120 83.720 -725.040 0 -3 -5 4 + 4 0 h120 167.441 -580.032 0 -3 -4 4 + 4 0 h120 251.161 -435.024 0 -3 -3 4 + 4 0 h120 334.882 -290.016 0 -3 -2 3 + 4 0 h120 418.602 -145.008 0 -3 -1 3 + 4 0 h120 502.322 0.000 0 -3 0 3 + 4 0 h120 586.043 145.008 0 -3 1 2 + 4 0 h120 669.763 290.016 0 -3 2 2 + 4 0 h120 753.484 435.024 0 -3 3 2 + 4 0 h120 -167.441 -870.048 0 -2 -6 4 + 4 0 h120 -83.720 -725.040 0 -2 -5 4 + 4 0 h120 0.000 -580.032 0 -2 -4 4 + 4 0 h120 83.720 -435.024 0 -2 -3 4 + 4 0 h120 418.602 145.008 0 -2 1 2 + 4 0 h120 502.322 290.016 0 -2 2 2 + 4 0 h120 586.043 435.024 0 -2 3 2 + 4 0 h120 669.763 580.032 0 -2 4 2 + 4 0 h120 -334.882 -870.048 0 -1 -6 4 + 4 0 h120 -251.161 -725.040 0 -1 -5 4 + 4 0 h120 -167.441 -580.032 0 -1 -4 4 + 4 0 h120 -83.720 -435.024 0 -1 -3 4 + 4 0 h120 334.882 290.016 0 -1 2 2 + 4 0 h120 418.602 435.024 0 -1 3 2 + 4 0 h120 502.322 580.032 0 -1 4 2 + 4 0 h120 586.043 725.040 0 -1 5 2 + 4 0 h120 -418.602 -725.040 0 0 -5 5 + 4 0 h120 -334.882 -580.032 0 0 -4 5 + 4 0 h120 -251.161 -435.024 0 0 -3 5 + 4 0 h120 251.161 435.024 0 0 3 1 + 4 0 h120 334.882 580.032 0 0 4 1 + 4 0 h120 418.602 725.040 0 0 5 1 + 4 0 h120 -586.043 -725.040 0 1 -5 5 + 4 0 h120 -502.322 -580.032 0 1 -4 5 + 4 0 h120 -418.602 -435.024 0 1 -3 5 + 4 0 h120 -334.882 -290.016 0 1 -2 5 + 4 0 h120 83.720 435.024 0 1 3 1 + 4 0 h120 167.441 580.032 0 1 4 1 + 4 0 h120 251.161 725.040 0 1 5 1 + 4 0 h120 334.882 870.048 0 1 6 1 + 4 0 h120 -669.763 -580.032 0 2 -4 5 + 4 0 h120 -586.043 -435.024 0 2 -3 5 + 4 0 h120 -502.322 -290.016 0 2 -2 5 + 4 0 h120 -418.602 -145.008 0 2 -1 5 + 4 0 h120 -83.720 435.024 0 2 3 1 + 4 0 h120 0.000 580.032 0 2 4 1 + 4 0 h120 83.720 725.040 0 2 5 1 + 4 0 h120 167.441 870.048 0 2 6 1 + 4 0 h120 -753.484 -435.024 0 3 -3 5 + 4 0 h120 -669.763 -290.016 0 3 -2 5 + 4 0 h120 -586.043 -145.008 0 3 -1 5 + 4 0 h120 -502.322 0.000 0 3 0 0 + 4 0 h120 -418.602 145.008 0 3 1 0 + 4 0 h120 -334.882 290.016 0 3 2 0 + 4 0 h120 -251.161 435.024 0 3 3 1 + 4 0 h120 -167.441 580.032 0 3 4 1 + 4 0 h120 -83.720 725.040 0 3 5 1 + 4 0 h120 0.000 870.048 0 3 6 1 + 4 0 h120 -837.204 -290.016 0 4 -2 5 + 4 0 h120 -753.484 -145.008 0 4 -1 5 + 4 0 h120 -669.763 0.000 0 4 0 0 + 4 0 h120 -586.043 145.008 0 4 1 0 + 4 0 h120 -502.322 290.016 0 4 2 0 + 4 0 h120 -418.602 435.024 0 4 3 0 + 4 0 h120 -334.882 580.032 0 4 4 1 + 4 0 h120 -251.161 725.040 0 4 5 1 + 4 0 h120 -167.441 870.048 0 4 6 1 + 4 0 h120 -920.924 -145.008 0 5 -1 5 + 4 0 h120 -837.204 0.000 0 5 0 0 + 4 0 h120 -753.484 145.008 0 5 1 0 + 4 0 h120 -669.763 290.016 0 5 2 0 + 4 0 h120 -586.043 435.024 0 5 3 0 + 4 0 h120 -502.322 580.032 0 5 4 0 + 4 0 h120 -418.602 725.040 0 5 5 1 + 4 0 h120 -334.882 870.048 0 5 6 1 + 4 0 h120 -920.924 145.008 0 6 1 0 + 4 0 h120 -837.204 290.016 0 6 2 0 + 4 0 h120 -753.484 435.024 0 6 3 0 + 4 0 h120 -669.763 580.032 0 6 4 0 + 4 0 h120 -586.043 725.040 0 6 5 0 + 5 0 h120 586.043 -725.040 0 -6 -5 3 + 5 0 h120 669.763 -580.032 0 -6 -4 3 + 5 0 h120 753.484 -435.024 0 -6 -3 3 + 5 0 h120 837.204 -290.016 0 -6 -2 3 + 5 0 h120 920.924 -145.008 0 -6 -1 3 + 5 0 h120 334.882 -870.048 0 -5 -6 4 + 5 0 h120 418.602 -725.040 0 -5 -5 4 + 5 0 h120 502.322 -580.032 0 -5 -4 3 + 5 0 h120 586.043 -435.024 0 -5 -3 3 + 5 0 h120 669.763 -290.016 0 -5 -2 3 + 5 0 h120 753.484 -145.008 0 -5 -1 3 + 5 0 h120 837.204 0.000 0 -5 0 3 + 5 0 h120 920.924 145.008 0 -5 1 2 + 5 0 h120 167.441 -870.048 0 -4 -6 4 + 5 0 h120 251.161 -725.040 0 -4 -5 4 + 5 0 h120 334.882 -580.032 0 -4 -4 4 + 5 0 h120 418.602 -435.024 0 -4 -3 3 + 5 0 h120 502.322 -290.016 0 -4 -2 3 + 5 0 h120 586.043 -145.008 0 -4 -1 3 + 5 0 h120 669.763 0.000 0 -4 0 3 + 5 0 h120 753.484 145.008 0 -4 1 2 + 5 0 h120 837.204 290.016 0 -4 2 2 + 5 0 h120 0.000 -870.048 0 -3 -6 4 + 5 0 h120 83.720 -725.040 0 -3 -5 4 + 5 0 h120 167.441 -580.032 0 -3 -4 4 + 5 0 h120 251.161 -435.024 0 -3 -3 4 + 5 0 h120 334.882 -290.016 0 -3 -2 3 + 5 0 h120 418.602 -145.008 0 -3 -1 3 + 5 0 h120 502.322 0.000 0 -3 0 3 + 5 0 h120 586.043 145.008 0 -3 1 2 + 5 0 h120 669.763 290.016 0 -3 2 2 + 5 0 h120 753.484 435.024 0 -3 3 2 + 5 0 h120 -167.441 -870.048 0 -2 -6 4 + 5 0 h120 -83.720 -725.040 0 -2 -5 4 + 5 0 h120 0.000 -580.032 0 -2 -4 4 + 5 0 h120 83.720 -435.024 0 -2 -3 4 + 5 0 h120 418.602 145.008 0 -2 1 2 + 5 0 h120 502.322 290.016 0 -2 2 2 + 5 0 h120 586.043 435.024 0 -2 3 2 + 5 0 h120 669.763 580.032 0 -2 4 2 + 5 0 h120 -334.882 -870.048 0 -1 -6 4 + 5 0 h120 -251.161 -725.040 0 -1 -5 4 + 5 0 h120 -167.441 -580.032 0 -1 -4 4 + 5 0 h120 -83.720 -435.024 0 -1 -3 4 + 5 0 h120 334.882 290.016 0 -1 2 2 + 5 0 h120 418.602 435.024 0 -1 3 2 + 5 0 h120 502.322 580.032 0 -1 4 2 + 5 0 h120 586.043 725.040 0 -1 5 2 + 5 0 h120 -418.602 -725.040 0 0 -5 5 + 5 0 h120 -334.882 -580.032 0 0 -4 5 + 5 0 h120 -251.161 -435.024 0 0 -3 5 + 5 0 h120 251.161 435.024 0 0 3 1 + 5 0 h120 334.882 580.032 0 0 4 1 + 5 0 h120 418.602 725.040 0 0 5 1 + 5 0 h120 -586.043 -725.040 0 1 -5 5 + 5 0 h120 -502.322 -580.032 0 1 -4 5 + 5 0 h120 -418.602 -435.024 0 1 -3 5 + 5 0 h120 -334.882 -290.016 0 1 -2 5 + 5 0 h120 83.720 435.024 0 1 3 1 + 5 0 h120 167.441 580.032 0 1 4 1 + 5 0 h120 251.161 725.040 0 1 5 1 + 5 0 h120 334.882 870.048 0 1 6 1 + 5 0 h120 -669.763 -580.032 0 2 -4 5 + 5 0 h120 -586.043 -435.024 0 2 -3 5 + 5 0 h120 -502.322 -290.016 0 2 -2 5 + 5 0 h120 -418.602 -145.008 0 2 -1 5 + 5 0 h120 -83.720 435.024 0 2 3 1 + 5 0 h120 0.000 580.032 0 2 4 1 + 5 0 h120 83.720 725.040 0 2 5 1 + 5 0 h120 167.441 870.048 0 2 6 1 + 5 0 h120 -753.484 -435.024 0 3 -3 5 + 5 0 h120 -669.763 -290.016 0 3 -2 5 + 5 0 h120 -586.043 -145.008 0 3 -1 5 + 5 0 h120 -502.322 0.000 0 3 0 0 + 5 0 h120 -418.602 145.008 0 3 1 0 + 5 0 h120 -334.882 290.016 0 3 2 0 + 5 0 h120 -251.161 435.024 0 3 3 1 + 5 0 h120 -167.441 580.032 0 3 4 1 + 5 0 h120 -83.720 725.040 0 3 5 1 + 5 0 h120 0.000 870.048 0 3 6 1 + 5 0 h120 -837.204 -290.016 0 4 -2 5 + 5 0 h120 -753.484 -145.008 0 4 -1 5 + 5 0 h120 -669.763 0.000 0 4 0 0 + 5 0 h120 -586.043 145.008 0 4 1 0 + 5 0 h120 -502.322 290.016 0 4 2 0 + 5 0 h120 -418.602 435.024 0 4 3 0 + 5 0 h120 -334.882 580.032 0 4 4 1 + 5 0 h120 -251.161 725.040 0 4 5 1 + 5 0 h120 -167.441 870.048 0 4 6 1 + 5 0 h120 -920.924 -145.008 0 5 -1 5 + 5 0 h120 -837.204 0.000 0 5 0 0 + 5 0 h120 -753.484 145.008 0 5 1 0 + 5 0 h120 -669.763 290.016 0 5 2 0 + 5 0 h120 -586.043 435.024 0 5 3 0 + 5 0 h120 -502.322 580.032 0 5 4 0 + 5 0 h120 -418.602 725.040 0 5 5 1 + 5 0 h120 -334.882 870.048 0 5 6 1 + 5 0 h120 -920.924 145.008 0 6 1 0 + 5 0 h120 -837.204 290.016 0 6 2 0 + 5 0 h120 -753.484 435.024 0 6 3 0 + 5 0 h120 -669.763 580.032 0 6 4 0 + 5 0 h120 -586.043 725.040 0 6 5 0 + 6 0 h120 586.043 -725.040 0 -6 -5 3 + 6 0 h120 669.763 -580.032 0 -6 -4 3 + 6 0 h120 753.484 -435.024 0 -6 -3 3 + 6 0 h120 837.204 -290.016 0 -6 -2 3 + 6 0 h120 920.924 -145.008 0 -6 -1 3 + 6 0 h120 334.882 -870.048 0 -5 -6 4 + 6 0 h120 418.602 -725.040 0 -5 -5 4 + 6 0 h120 502.322 -580.032 0 -5 -4 3 + 6 0 h120 586.043 -435.024 0 -5 -3 3 + 6 0 h120 669.763 -290.016 0 -5 -2 3 + 6 0 h120 753.484 -145.008 0 -5 -1 3 + 6 0 h120 837.204 0.000 0 -5 0 3 + 6 0 h120 920.924 145.008 0 -5 1 2 + 6 0 h120 167.441 -870.048 0 -4 -6 4 + 6 0 h120 251.161 -725.040 0 -4 -5 4 + 6 0 h120 334.882 -580.032 0 -4 -4 4 + 6 0 h120 418.602 -435.024 0 -4 -3 3 + 6 0 h120 502.322 -290.016 0 -4 -2 3 + 6 0 h120 586.043 -145.008 0 -4 -1 3 + 6 0 h120 669.763 0.000 0 -4 0 3 + 6 0 h120 753.484 145.008 0 -4 1 2 + 6 0 h120 837.204 290.016 0 -4 2 2 + 6 0 h120 0.000 -870.048 0 -3 -6 4 + 6 0 h120 83.720 -725.040 0 -3 -5 4 + 6 0 h120 167.441 -580.032 0 -3 -4 4 + 6 0 h120 251.161 -435.024 0 -3 -3 4 + 6 0 h120 334.882 -290.016 0 -3 -2 3 + 6 0 h120 418.602 -145.008 0 -3 -1 3 + 6 0 h120 502.322 0.000 0 -3 0 3 + 6 0 h120 586.043 145.008 0 -3 1 2 + 6 0 h120 669.763 290.016 0 -3 2 2 + 6 0 h120 753.484 435.024 0 -3 3 2 + 6 0 h120 -167.441 -870.048 0 -2 -6 4 + 6 0 h120 -83.720 -725.040 0 -2 -5 4 + 6 0 h120 0.000 -580.032 0 -2 -4 4 + 6 0 h120 83.720 -435.024 0 -2 -3 4 + 6 0 h120 418.602 145.008 0 -2 1 2 + 6 0 h120 502.322 290.016 0 -2 2 2 + 6 0 h120 586.043 435.024 0 -2 3 2 + 6 0 h120 669.763 580.032 0 -2 4 2 + 6 0 h120 -334.882 -870.048 0 -1 -6 4 + 6 0 h120 -251.161 -725.040 0 -1 -5 4 + 6 0 h120 -167.441 -580.032 0 -1 -4 4 + 6 0 h120 -83.720 -435.024 0 -1 -3 4 + 6 0 h120 334.882 290.016 0 -1 2 2 + 6 0 h120 418.602 435.024 0 -1 3 2 + 6 0 h120 502.322 580.032 0 -1 4 2 + 6 0 h120 586.043 725.040 0 -1 5 2 + 6 0 h120 -418.602 -725.040 0 0 -5 5 + 6 0 h120 -334.882 -580.032 0 0 -4 5 + 6 0 h120 -251.161 -435.024 0 0 -3 5 + 6 0 h120 251.161 435.024 0 0 3 1 + 6 0 h120 334.882 580.032 0 0 4 1 + 6 0 h120 418.602 725.040 0 0 5 1 + 6 0 h120 -586.043 -725.040 0 1 -5 5 + 6 0 h120 -502.322 -580.032 0 1 -4 5 + 6 0 h120 -418.602 -435.024 0 1 -3 5 + 6 0 h120 -334.882 -290.016 0 1 -2 5 + 6 0 h120 83.720 435.024 0 1 3 1 + 6 0 h120 167.441 580.032 0 1 4 1 + 6 0 h120 251.161 725.040 0 1 5 1 + 6 0 h120 334.882 870.048 0 1 6 1 + 6 0 h120 -669.763 -580.032 0 2 -4 5 + 6 0 h120 -586.043 -435.024 0 2 -3 5 + 6 0 h120 -502.322 -290.016 0 2 -2 5 + 6 0 h120 -418.602 -145.008 0 2 -1 5 + 6 0 h120 -83.720 435.024 0 2 3 1 + 6 0 h120 0.000 580.032 0 2 4 1 + 6 0 h120 83.720 725.040 0 2 5 1 + 6 0 h120 167.441 870.048 0 2 6 1 + 6 0 h120 -753.484 -435.024 0 3 -3 5 + 6 0 h120 -669.763 -290.016 0 3 -2 5 + 6 0 h120 -586.043 -145.008 0 3 -1 5 + 6 0 h120 -502.322 0.000 0 3 0 0 + 6 0 h120 -418.602 145.008 0 3 1 0 + 6 0 h120 -334.882 290.016 0 3 2 0 + 6 0 h120 -251.161 435.024 0 3 3 1 + 6 0 h120 -167.441 580.032 0 3 4 1 + 6 0 h120 -83.720 725.040 0 3 5 1 + 6 0 h120 0.000 870.048 0 3 6 1 + 6 0 h120 -837.204 -290.016 0 4 -2 5 + 6 0 h120 -753.484 -145.008 0 4 -1 5 + 6 0 h120 -669.763 0.000 0 4 0 0 + 6 0 h120 -586.043 145.008 0 4 1 0 + 6 0 h120 -502.322 290.016 0 4 2 0 + 6 0 h120 -418.602 435.024 0 4 3 0 + 6 0 h120 -334.882 580.032 0 4 4 1 + 6 0 h120 -251.161 725.040 0 4 5 1 + 6 0 h120 -167.441 870.048 0 4 6 1 + 6 0 h120 -920.924 -145.008 0 5 -1 5 + 6 0 h120 -837.204 0.000 0 5 0 0 + 6 0 h120 -753.484 145.008 0 5 1 0 + 6 0 h120 -669.763 290.016 0 5 2 0 + 6 0 h120 -586.043 435.024 0 5 3 0 + 6 0 h120 -502.322 580.032 0 5 4 0 + 6 0 h120 -418.602 725.040 0 5 5 1 + 6 0 h120 -334.882 870.048 0 5 6 1 + 6 0 h120 -920.924 145.008 0 6 1 0 + 6 0 h120 -837.204 290.016 0 6 2 0 + 6 0 h120 -753.484 435.024 0 6 3 0 + 6 0 h120 -669.763 580.032 0 6 4 0 + 6 0 h120 -586.043 725.040 0 6 5 0 + 7 0 h120 586.043 -725.040 0 -6 -5 7 + 7 0 h120 669.763 -580.032 0 -6 -4 7 + 7 0 h120 753.484 -435.024 0 -6 -3 7 + 7 0 h120 837.204 -290.016 0 -6 -2 6 + 7 0 h120 920.924 -145.008 0 -6 -1 6 + 7 0 h120 334.882 -870.048 0 -5 -6 8 + 7 0 h120 418.602 -725.040 0 -5 -5 8 + 7 0 h120 502.322 -580.032 0 -5 -4 7 + 7 0 h120 586.043 -435.024 0 -5 -3 7 + 7 0 h120 669.763 -290.016 0 -5 -2 6 + 7 0 h120 753.484 -145.008 0 -5 -1 6 + 7 0 h120 837.204 0.000 0 -5 0 6 + 7 0 h120 920.924 145.008 0 -5 1 5 + 7 0 h120 167.441 -870.048 0 -4 -6 8 + 7 0 h120 251.161 -725.040 0 -4 -5 8 + 7 0 h120 334.882 -580.032 0 -4 -4 8 + 7 0 h120 418.602 -435.024 0 -4 -3 7 + 7 0 h120 502.322 -290.016 0 -4 -2 7 + 7 0 h120 586.043 -145.008 0 -4 -1 6 + 7 0 h120 669.763 0.000 0 -4 0 6 + 7 0 h120 753.484 145.008 0 -4 1 5 + 7 0 h120 837.204 290.016 0 -4 2 5 + 7 0 h120 0.000 -870.048 0 -3 -6 9 + 7 0 h120 83.720 -725.040 0 -3 -5 8 + 7 0 h120 167.441 -580.032 0 -3 -4 8 + 7 0 h120 251.161 -435.024 0 -3 -3 8 + 7 0 h120 334.882 -290.016 0 -3 -2 7 + 7 0 h120 418.602 -145.008 0 -3 -1 6 + 7 0 h120 502.322 0.000 0 -3 0 6 + 7 0 h120 586.043 145.008 0 -3 1 5 + 7 0 h120 669.763 290.016 0 -3 2 5 + 7 0 h120 753.484 435.024 0 -3 3 5 + 7 0 h120 -167.441 -870.048 0 -2 -6 9 + 7 0 h120 -83.720 -725.040 0 -2 -5 9 + 7 0 h120 0.000 -580.032 0 -2 -4 9 + 7 0 h120 83.720 -435.024 0 -2 -3 8 + 7 0 h120 418.602 145.008 0 -2 1 5 + 7 0 h120 502.322 290.016 0 -2 2 5 + 7 0 h120 586.043 435.024 0 -2 3 4 + 7 0 h120 669.763 580.032 0 -2 4 4 + 7 0 h120 -334.882 -870.048 0 -1 -6 9 + 7 0 h120 -251.161 -725.040 0 -1 -5 9 + 7 0 h120 -167.441 -580.032 0 -1 -4 9 + 7 0 h120 -83.720 -435.024 0 -1 -3 9 + 7 0 h120 334.882 290.016 0 -1 2 4 + 7 0 h120 418.602 435.024 0 -1 3 4 + 7 0 h120 502.322 580.032 0 -1 4 4 + 7 0 h120 586.043 725.040 0 -1 5 4 + 7 0 h120 -418.602 -725.040 0 0 -510 + 7 0 h120 -334.882 -580.032 0 0 -410 + 7 0 h120 -251.161 -435.024 0 0 -310 + 7 0 h120 251.161 435.024 0 0 3 3 + 7 0 h120 334.882 580.032 0 0 4 3 + 7 0 h120 418.602 725.040 0 0 5 3 + 7 0 h120 -586.043 -725.040 0 1 -510 + 7 0 h120 -502.322 -580.032 0 1 -410 + 7 0 h120 -418.602 -435.024 0 1 -310 + 7 0 h120 -334.882 -290.016 0 1 -210 + 7 0 h120 83.720 435.024 0 1 3 3 + 7 0 h120 167.441 580.032 0 1 4 3 + 7 0 h120 251.161 725.040 0 1 5 3 + 7 0 h120 334.882 870.048 0 1 6 3 + 7 0 h120 -669.763 -580.032 0 2 -410 + 7 0 h120 -586.043 -435.024 0 2 -310 + 7 0 h120 -502.322 -290.016 0 2 -211 + 7 0 h120 -418.602 -145.008 0 2 -111 + 7 0 h120 -83.720 435.024 0 2 3 2 + 7 0 h120 0.000 580.032 0 2 4 3 + 7 0 h120 83.720 725.040 0 2 5 3 + 7 0 h120 167.441 870.048 0 2 6 3 + 7 0 h120 -753.484 -435.024 0 3 -311 + 7 0 h120 -669.763 -290.016 0 3 -211 + 7 0 h120 -586.043 -145.008 0 3 -111 + 7 0 h120 -502.322 0.000 0 3 0 0 + 7 0 h120 -418.602 145.008 0 3 1 0 + 7 0 h120 -334.882 290.016 0 3 2 1 + 7 0 h120 -251.161 435.024 0 3 3 2 + 7 0 h120 -167.441 580.032 0 3 4 2 + 7 0 h120 -83.720 725.040 0 3 5 2 + 7 0 h120 0.000 870.048 0 3 6 3 + 7 0 h120 -837.204 -290.016 0 4 -211 + 7 0 h120 -753.484 -145.008 0 4 -111 + 7 0 h120 -669.763 0.000 0 4 0 0 + 7 0 h120 -586.043 145.008 0 4 1 0 + 7 0 h120 -502.322 290.016 0 4 2 1 + 7 0 h120 -418.602 435.024 0 4 3 1 + 7 0 h120 -334.882 580.032 0 4 4 2 + 7 0 h120 -251.161 725.040 0 4 5 2 + 7 0 h120 -167.441 870.048 0 4 6 2 + 7 0 h120 -920.924 -145.008 0 5 -111 + 7 0 h120 -837.204 0.000 0 5 0 0 + 7 0 h120 -753.484 145.008 0 5 1 0 + 7 0 h120 -669.763 290.016 0 5 2 0 + 7 0 h120 -586.043 435.024 0 5 3 1 + 7 0 h120 -502.322 580.032 0 5 4 1 + 7 0 h120 -418.602 725.040 0 5 5 2 + 7 0 h120 -334.882 870.048 0 5 6 2 + 7 0 h120 -920.924 145.008 0 6 1 0 + 7 0 h120 -837.204 290.016 0 6 2 0 + 7 0 h120 -753.484 435.024 0 6 3 1 + 7 0 h120 -669.763 580.032 0 6 4 1 + 7 0 h120 -586.043 725.040 0 6 5 1 + 8 0 h120 586.043 -725.040 0 -6 -5 7 + 8 0 h120 669.763 -580.032 0 -6 -4 7 + 8 0 h120 753.484 -435.024 0 -6 -3 7 + 8 0 h120 837.204 -290.016 0 -6 -2 6 + 8 0 h120 920.924 -145.008 0 -6 -1 6 + 8 0 h120 334.882 -870.048 0 -5 -6 8 + 8 0 h120 418.602 -725.040 0 -5 -5 8 + 8 0 h120 502.322 -580.032 0 -5 -4 7 + 8 0 h120 586.043 -435.024 0 -5 -3 7 + 8 0 h120 669.763 -290.016 0 -5 -2 6 + 8 0 h120 753.484 -145.008 0 -5 -1 6 + 8 0 h120 837.204 0.000 0 -5 0 6 + 8 0 h120 920.924 145.008 0 -5 1 5 + 8 0 h120 167.441 -870.048 0 -4 -6 8 + 8 0 h120 251.161 -725.040 0 -4 -5 8 + 8 0 h120 334.882 -580.032 0 -4 -4 8 + 8 0 h120 418.602 -435.024 0 -4 -3 7 + 8 0 h120 502.322 -290.016 0 -4 -2 7 + 8 0 h120 586.043 -145.008 0 -4 -1 6 + 8 0 h120 669.763 0.000 0 -4 0 6 + 8 0 h120 753.484 145.008 0 -4 1 5 + 8 0 h120 837.204 290.016 0 -4 2 5 + 8 0 h120 0.000 -870.048 0 -3 -6 9 + 8 0 h120 83.720 -725.040 0 -3 -5 8 + 8 0 h120 167.441 -580.032 0 -3 -4 8 + 8 0 h120 251.161 -435.024 0 -3 -3 8 + 8 0 h120 334.882 -290.016 0 -3 -2 7 + 8 0 h120 418.602 -145.008 0 -3 -1 6 + 8 0 h120 502.322 0.000 0 -3 0 6 + 8 0 h120 586.043 145.008 0 -3 1 5 + 8 0 h120 669.763 290.016 0 -3 2 5 + 8 0 h120 753.484 435.024 0 -3 3 5 + 8 0 h120 -167.441 -870.048 0 -2 -6 9 + 8 0 h120 -83.720 -725.040 0 -2 -5 9 + 8 0 h120 0.000 -580.032 0 -2 -4 9 + 8 0 h120 83.720 -435.024 0 -2 -3 8 + 8 0 h120 418.602 145.008 0 -2 1 5 + 8 0 h120 502.322 290.016 0 -2 2 5 + 8 0 h120 586.043 435.024 0 -2 3 4 + 8 0 h120 669.763 580.032 0 -2 4 4 + 8 0 h120 -334.882 -870.048 0 -1 -6 9 + 8 0 h120 -251.161 -725.040 0 -1 -5 9 + 8 0 h120 -167.441 -580.032 0 -1 -4 9 + 8 0 h120 -83.720 -435.024 0 -1 -3 9 + 8 0 h120 334.882 290.016 0 -1 2 4 + 8 0 h120 418.602 435.024 0 -1 3 4 + 8 0 h120 502.322 580.032 0 -1 4 4 + 8 0 h120 586.043 725.040 0 -1 5 4 + 8 0 h120 -418.602 -725.040 0 0 -510 + 8 0 h120 -334.882 -580.032 0 0 -410 + 8 0 h120 -251.161 -435.024 0 0 -310 + 8 0 h120 251.161 435.024 0 0 3 3 + 8 0 h120 334.882 580.032 0 0 4 3 + 8 0 h120 418.602 725.040 0 0 5 3 + 8 0 h120 -586.043 -725.040 0 1 -510 + 8 0 h120 -502.322 -580.032 0 1 -410 + 8 0 h120 -418.602 -435.024 0 1 -310 + 8 0 h120 -334.882 -290.016 0 1 -210 + 8 0 h120 83.720 435.024 0 1 3 3 + 8 0 h120 167.441 580.032 0 1 4 3 + 8 0 h120 251.161 725.040 0 1 5 3 + 8 0 h120 334.882 870.048 0 1 6 3 + 8 0 h120 -669.763 -580.032 0 2 -410 + 8 0 h120 -586.043 -435.024 0 2 -310 + 8 0 h120 -502.322 -290.016 0 2 -211 + 8 0 h120 -418.602 -145.008 0 2 -111 + 8 0 h120 -83.720 435.024 0 2 3 2 + 8 0 h120 0.000 580.032 0 2 4 3 + 8 0 h120 83.720 725.040 0 2 5 3 + 8 0 h120 167.441 870.048 0 2 6 3 + 8 0 h120 -753.484 -435.024 0 3 -311 + 8 0 h120 -669.763 -290.016 0 3 -211 + 8 0 h120 -586.043 -145.008 0 3 -111 + 8 0 h120 -502.322 0.000 0 3 0 0 + 8 0 h120 -418.602 145.008 0 3 1 0 + 8 0 h120 -334.882 290.016 0 3 2 1 + 8 0 h120 -251.161 435.024 0 3 3 2 + 8 0 h120 -167.441 580.032 0 3 4 2 + 8 0 h120 -83.720 725.040 0 3 5 2 + 8 0 h120 0.000 870.048 0 3 6 3 + 8 0 h120 -837.204 -290.016 0 4 -211 + 8 0 h120 -753.484 -145.008 0 4 -111 + 8 0 h120 -669.763 0.000 0 4 0 0 + 8 0 h120 -586.043 145.008 0 4 1 0 + 8 0 h120 -502.322 290.016 0 4 2 1 + 8 0 h120 -418.602 435.024 0 4 3 1 + 8 0 h120 -334.882 580.032 0 4 4 2 + 8 0 h120 -251.161 725.040 0 4 5 2 + 8 0 h120 -167.441 870.048 0 4 6 2 + 8 0 h120 -920.924 -145.008 0 5 -111 + 8 0 h120 -837.204 0.000 0 5 0 0 + 8 0 h120 -753.484 145.008 0 5 1 0 + 8 0 h120 -669.763 290.016 0 5 2 0 + 8 0 h120 -586.043 435.024 0 5 3 1 + 8 0 h120 -502.322 580.032 0 5 4 1 + 8 0 h120 -418.602 725.040 0 5 5 2 + 8 0 h120 -334.882 870.048 0 5 6 2 + 8 0 h120 -920.924 145.008 0 6 1 0 + 8 0 h120 -837.204 290.016 0 6 2 0 + 8 0 h120 -753.484 435.024 0 6 3 1 + 8 0 h120 -669.763 580.032 0 6 4 1 + 8 0 h120 -586.043 725.040 0 6 5 1 diff --git a/Geometry/ForwardCommonData/test/dumpHFNoseGeometry_cfg.py b/Geometry/ForwardCommonData/test/dumpHFNoseGeometry_cfg.py index 5269ea7b7b59a..3266781367a4c 100644 --- a/Geometry/ForwardCommonData/test/dumpHFNoseGeometry_cfg.py +++ b/Geometry/ForwardCommonData/test/dumpHFNoseGeometry_cfg.py @@ -7,7 +7,7 @@ if 'MessageLogger' in process.__dict__: process.MessageLogger.G4cerr=dict() process.MessageLogger.G4cout=dict() - process.MessageLogger.HGCalGeom=dict() + process.MessageLogger.HGCalGeomX=dict() process.source = cms.Source("EmptySource") diff --git a/Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc b/Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc index 418b9ba12029b..3b8a1c78ece8b 100644 --- a/Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc +++ b/Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc @@ -26,7 +26,7 @@ #include #include -//#define EDM_ML_DEBUG +#define EDM_ML_DEBUG using namespace angle_units::operators; class DDHGCalEEAlgo : public DDAlgorithm { @@ -351,6 +351,11 @@ void DDHGCalEEAlgo::positionSensitive(const DDLogicalPart& glog, int layercenter, DDCompactView& cpv) { static const double sqrt3 = std::sqrt(3.0); +#ifdef EDM_ML_DEBUG + std::vector zl = {10000., 10494., 10536., 10578., 10619., 10661., 10702., 10791., 10879.}; + auto il = std::lower_bound(zl.begin(), zl.end(), zpos); + int layer = static_cast(il - zl.begin()); +#endif double r = 0.5 * (waferSize_ + waferSepar_); double R = 2.0 * r / sqrt3; double dy = 0.75 * R; @@ -408,6 +413,15 @@ void DDHGCalEEAlgo::positionSensitive(const DDLogicalPart& glog, DDName name = DDName(DDSplit(wafers_[type]).first, DDSplit(wafers_[type]).second); cpv.position(name, glog.ddname(), copy, tran, rotation); #ifdef EDM_ML_DEBUG + static const std::vector thickstr = {"h120", "l200", "l300", "h200"}; + char posit[20]; + sprintf (posit, "%8.3f %8.3f", xpos, ypos); + double phi = convertRadToDeg(std::atan2(ypos, -xpos)); + if (phi < 0) + phi += 360.0; + int cass = (layer < 7) ? static_cast(phi / 60.0) : static_cast(phi / 30.0); + edm::LogVerbatim("HGCalGeomX") << std::setw(2) << layer << " " << std::setw(2) << HGCalTypes::WaferFull << " " << thickstr[type] << " " << posit << " " << std::setw(2) << HGCalTypes::WaferOrient0 << " " << std::setw(2) << u << " " << std::setw(2) << v << std::setw(2) << cass; + edm::LogVerbatim("HGCalGeom") << " DDEHGCalEEAlgo " << name << " Number " << copy << " u|v " << u << ":" << v << " Poaition " << xpos << ":" << ypos << ":" << zpos << " Angle " << convertRadToDeg(std::atan2(ypos, -xpos)); ++ntype[type]; edm::LogVerbatim("HGCalGeom") << " DDHGCalEEAlgo: " << name << " number " << copy << " positioned in " << glog.ddname() << " at " << tran << " with no rotation"; From 77dd01555cfea8952640a1a0b2bf045d81ab2497 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Thu, 11 Jan 2024 05:57:05 +0100 Subject: [PATCH 235/281] Code chec --- .../HGCalCommonData/plugins/DDHGCalEEAlgo.cc | 23 +++++++++++-------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc b/Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc index 3b8a1c78ece8b..8d0c3688fa4c0 100644 --- a/Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc +++ b/Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc @@ -413,15 +413,20 @@ void DDHGCalEEAlgo::positionSensitive(const DDLogicalPart& glog, DDName name = DDName(DDSplit(wafers_[type]).first, DDSplit(wafers_[type]).second); cpv.position(name, glog.ddname(), copy, tran, rotation); #ifdef EDM_ML_DEBUG - static const std::vector thickstr = {"h120", "l200", "l300", "h200"}; - char posit[20]; - sprintf (posit, "%8.3f %8.3f", xpos, ypos); - double phi = convertRadToDeg(std::atan2(ypos, -xpos)); - if (phi < 0) - phi += 360.0; - int cass = (layer < 7) ? static_cast(phi / 60.0) : static_cast(phi / 30.0); - edm::LogVerbatim("HGCalGeomX") << std::setw(2) << layer << " " << std::setw(2) << HGCalTypes::WaferFull << " " << thickstr[type] << " " << posit << " " << std::setw(2) << HGCalTypes::WaferOrient0 << " " << std::setw(2) << u << " " << std::setw(2) << v << std::setw(2) << cass; - edm::LogVerbatim("HGCalGeom") << " DDEHGCalEEAlgo " << name << " Number " << copy << " u|v " << u << ":" << v << " Poaition " << xpos << ":" << ypos << ":" << zpos << " Angle " << convertRadToDeg(std::atan2(ypos, -xpos)); + static const std::vector thickstr = {"h120", "l200", "l300", "h200"}; + char posit[20]; + sprintf(posit, "%8.3f %8.3f", xpos, ypos); + double phi = convertRadToDeg(std::atan2(ypos, -xpos)); + if (phi < 0) + phi += 360.0; + int cass = (layer < 7) ? static_cast(phi / 60.0) : static_cast(phi / 30.0); + edm::LogVerbatim("HGCalGeomX") << std::setw(2) << layer << " " << std::setw(2) << HGCalTypes::WaferFull << " " + << thickstr[type] << " " << posit << " " << std::setw(2) + << HGCalTypes::WaferOrient0 << " " << std::setw(2) << u << " " << std::setw(2) + << v << std::setw(2) << cass; + edm::LogVerbatim("HGCalGeom") << " DDEHGCalEEAlgo " << name << " Number " << copy << " u|v " << u << ":" << v + << " Poaition " << xpos << ":" << ypos << ":" << zpos << " Angle " + << convertRadToDeg(std::atan2(ypos, -xpos)); ++ntype[type]; edm::LogVerbatim("HGCalGeom") << " DDHGCalEEAlgo: " << name << " number " << copy << " positioned in " << glog.ddname() << " at " << tran << " with no rotation"; From ddf777eedd9640fa8f9798fa817aa2431bcca5f4 Mon Sep 17 00:00:00 2001 From: Emilia Becheva Date: Fri, 6 Jan 2023 16:46:30 +0100 Subject: [PATCH 236/281] Modify nam: hgcalTrigPrimValidation to L1THGCalTrigPrimValidation --- Validation/HGCalValidation/python/hgcalValidationTPG_cfi.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Validation/HGCalValidation/python/hgcalValidationTPG_cfi.py b/Validation/HGCalValidation/python/hgcalValidationTPG_cfi.py index 379eaa5849e33..330e144688307 100644 --- a/Validation/HGCalValidation/python/hgcalValidationTPG_cfi.py +++ b/Validation/HGCalValidation/python/hgcalValidationTPG_cfi.py @@ -2,7 +2,7 @@ from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer from L1Trigger.L1THGCal.egammaIdentification import egamma_identification_histomax -hgcalTrigPrimValidation = DQMEDAnalyzer( +L1THGCalTrigPrimValidation = DQMEDAnalyzer( "HGCalTriggerValidator", TriggerCells = cms.InputTag('l1tHGCalConcentratorProducer:HGCalConcentratorProcessorSelection'), Clusters = cms.InputTag('l1tHGCalBackEndLayer1Producer:HGCalBackendLayer1Processor2DClustering'), From 2bed8f9f66a5c792ae39f54636e8d68665f1cbef Mon Sep 17 00:00:00 2001 From: Chris Jones Date: Thu, 11 Jan 2024 13:13:21 -0600 Subject: [PATCH 237/281] Better dependency checking on Paths Now checks for direct and indirect dependent modules being later on a Path. --- .../src/PathsAndConsumesOfModules.cc | 61 +++++++++++++------ FWCore/Framework/test/BuildFile.xml | 1 + ...test_bad_schedule_exception_message_cfg.py | 12 +++- .../unit_test_outputs/test_bad_schedule_8.log | 6 ++ 4 files changed, 59 insertions(+), 21 deletions(-) create mode 100644 FWCore/Framework/test/unit_test_outputs/test_bad_schedule_8.log diff --git a/FWCore/Framework/src/PathsAndConsumesOfModules.cc b/FWCore/Framework/src/PathsAndConsumesOfModules.cc index 343015af93415..adcb450167a4d 100644 --- a/FWCore/Framework/src/PathsAndConsumesOfModules.cc +++ b/FWCore/Framework/src/PathsAndConsumesOfModules.cc @@ -328,6 +328,28 @@ namespace edm { return allDependenciesRan; } + + void findAllDependenciesForModule(unsigned int iModID, + std::vector const& iStatus, + std::vector>& oDependencies) { + auto const& dependsOn = iStatus[iModID].dependsOn_; + if (dependsOn.empty() or !oDependencies[iModID].empty()) { + return; + } + oDependencies[iModID].insert(dependsOn.begin(), dependsOn.end()); + for (auto dep : dependsOn) { + findAllDependenciesForModule(dep, iStatus, oDependencies); + oDependencies[iModID].merge(oDependencies[dep]); + } + } + std::vector> findAllDependenciesForModules( + std::vector const& iStatus) { + std::vector> ret(iStatus.size()); + for (unsigned int id = 0; id < iStatus.size(); ++id) { + findAllDependenciesForModule(id, iStatus, ret); + } + return ret; + } } // namespace void checkForModuleDependencyCorrectness(edm::PathsAndConsumesOfModulesBase const& iPnC, bool iPrintDependencies) { constexpr auto kInvalidIndex = std::numeric_limits::max(); @@ -636,26 +658,6 @@ namespace edm { //NOTE: although the following conditions are not needed for safe running, they are // policy choices the collaboration has made. - //Check to see if for each path if the order of the modules is correct based on dependencies - for (auto& p : statusOfPaths) { - for (unsigned long int i = 0; p.nModules_ > 0 and i < p.nModules_ - 1; ++i) { - auto moduleID = p.modulesOnPath_[i]; - if (not statusOfModules[moduleID].dependsOn_.empty()) { - for (unsigned long int j = i + 1; j < p.nModules_; ++j) { - auto testModuleID = p.modulesOnPath_[j]; - for (auto depModuleID : statusOfModules[moduleID].dependsOn_) { - if (depModuleID == testModuleID) { - throw edm::Exception(edm::errors::ScheduleExecutionFailure, "Unrunnable schedule\n") - << "Dependent module later on Path\n" - << " module '" << moduleIndexToNames[moduleID] << "' depends on '" - << moduleIndexToNames[depModuleID] << "' which is later on path " << pathName(p); - } - } - } - } - } - } - //HLT wants all paths to be equivalent. If a path has a module A that needs data from module B and module B appears on one path // as module A then B must appear on ALL paths that have A. unsigned int modIndex = 0; @@ -704,5 +706,24 @@ namespace edm { } ++modIndex; } + + //Check to see if for each path if the order of the modules is correct based on dependencies + auto allDependencies = findAllDependenciesForModules(statusOfModules); + for (auto& p : statusOfPaths) { + for (unsigned long int i = 0; p.nModules_ > 0 and i < p.nModules_ - 1; ++i) { + auto moduleID = p.modulesOnPath_[i]; + if (not allDependencies[moduleID].empty()) { + for (unsigned long int j = i + 1; j < p.nModules_; ++j) { + auto testModuleID = p.modulesOnPath_[j]; + if (allDependencies[moduleID].find(testModuleID) != allDependencies[moduleID].end()) { + throw edm::Exception(edm::errors::ScheduleExecutionFailure, "Unrunnable schedule\n") + << "Dependent module later on Path\n" + << " module '" << moduleIndexToNames[moduleID] << "' depends on '" + << moduleIndexToNames[testModuleID] << "' which is later on path " << pathName(p); + } + } + } + } + } } } // namespace edm diff --git a/FWCore/Framework/test/BuildFile.xml b/FWCore/Framework/test/BuildFile.xml index 03296780a276b..e4f8b00603f68 100644 --- a/FWCore/Framework/test/BuildFile.xml +++ b/FWCore/Framework/test/BuildFile.xml @@ -367,6 +367,7 @@ + diff --git a/FWCore/Framework/test/test_bad_schedule_exception_message_cfg.py b/FWCore/Framework/test/test_bad_schedule_exception_message_cfg.py index bd5d0995b32b1..cdc135313670d 100644 --- a/FWCore/Framework/test/test_bad_schedule_exception_message_cfg.py +++ b/FWCore/Framework/test/test_bad_schedule_exception_message_cfg.py @@ -98,4 +98,14 @@ process.p1 = cms.Path(process.a, cms.Task(process.b, process.c)) - +elif mod == 8: + #cycle with filter on other path + process.a = cms.EDProducer("IntProducer", ivalue = cms.int32(10)) + process.b = cms.EDProducer("AddIntsProducer", labels = cms.VInputTag("c")) + process.c = process.b.clone(labels=["a"]) + process.dependingFilter = cms.EDFilter("IntProductFilter", label=cms.InputTag("b"), threshold=cms.int32(1000)) + process.rejectingFilter = cms.EDFilter("TestFilterModule", acceptValue = cms.untracked.int32(-1)) + + process.p1 = cms.Path(process.c) + process.p2 = cms.Path(process.b + process.dependingFilter + process.a) + process.p3 = cms.Path(process.rejectingFilter + process.a) diff --git a/FWCore/Framework/test/unit_test_outputs/test_bad_schedule_8.log b/FWCore/Framework/test/unit_test_outputs/test_bad_schedule_8.log new file mode 100644 index 0000000000000..a01ba08a1f058 --- /dev/null +++ b/FWCore/Framework/test/unit_test_outputs/test_bad_schedule_8.log @@ -0,0 +1,6 @@ +An exception of category 'ScheduleExecutionFailure' occurred while + [0] Calling beginJob +Exception Message: +Unrunnable schedule +Dependent module later on Path + module 'dependingFilter' depends on 'a' which is later on path p2 From 2942441ac9231156289aa1951fd68b0eea165a1e Mon Sep 17 00:00:00 2001 From: Sunanda Date: Fri, 12 Jan 2024 02:18:45 +0100 Subject: [PATCH 238/281] Take care of debug --- Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc b/Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc index 8d0c3688fa4c0..23bb7b997149d 100644 --- a/Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc +++ b/Geometry/HGCalCommonData/plugins/DDHGCalEEAlgo.cc @@ -26,7 +26,7 @@ #include #include -#define EDM_ML_DEBUG +//#define EDM_ML_DEBUG using namespace angle_units::operators; class DDHGCalEEAlgo : public DDAlgorithm { From 02bef0d7531b8c7b75c4e5c903ff93b90279f076 Mon Sep 17 00:00:00 2001 From: Bruno Alves Date: Thu, 5 Jan 2023 09:17:12 +0100 Subject: [PATCH 239/281] add orientation and partials' type for each wafer Co-authored-by: bfontana <20703947+b-fontana@users.noreply.github.com> --- .../test/HGCalTriggerGeomTesterV9Imp3.cc | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/L1Trigger/L1THGCal/test/HGCalTriggerGeomTesterV9Imp3.cc b/L1Trigger/L1THGCal/test/HGCalTriggerGeomTesterV9Imp3.cc index 93309557c6133..2760dcdfa7fe0 100644 --- a/L1Trigger/L1THGCal/test/HGCalTriggerGeomTesterV9Imp3.cc +++ b/L1Trigger/L1THGCal/test/HGCalTriggerGeomTesterV9Imp3.cc @@ -122,6 +122,8 @@ class HGCalTriggerGeomTesterV9Imp3 : public edm::stream::EDAnalyzer<> { int triggerCellLayer_ = 0; int triggerCellWaferU_ = 0; int triggerCellWaferV_ = 0; + int triggerCellWaferPart_ = -1; + int triggerCellWaferOrient_ = -1; int triggerCellU_ = 0; int triggerCellV_ = 0; int triggerCellIEta_ = 0; @@ -300,6 +302,8 @@ HGCalTriggerGeomTesterV9Imp3::HGCalTriggerGeomTesterV9Imp3(const edm::ParameterS treeTriggerCells_->Branch("layer", &triggerCellLayer_, "layer/I"); treeTriggerCells_->Branch("waferu", &triggerCellWaferU_, "waferu/I"); treeTriggerCells_->Branch("waferv", &triggerCellWaferV_, "waferv/I"); + treeTriggerCells_->Branch("waferpart", &triggerCellWaferPart_, "waferpart/I"); + treeTriggerCells_->Branch("waferorient", &triggerCellWaferOrient_, "waferorient/I"); treeTriggerCells_->Branch("triggercellu", &triggerCellU_, "triggercellu/I"); treeTriggerCells_->Branch("triggercellv", &triggerCellV_, "triggercellv/I"); treeTriggerCells_->Branch("triggercellieta", &triggerCellIEta_, "triggercellieta/I"); @@ -977,7 +981,12 @@ void HGCalTriggerGeomTesterV9Imp3::fillTriggerGeometry() // Loop over trigger cells edm::LogPrint("TreeFilling") << "Filling trigger cells tree"; for (const auto& triggercell_cells : trigger_cells) { + if (!triggercell_cells.second.size()) { + throw cms::Exception("BadGeometry") << "HGCalTriggerGeometry: No cells in trigger cell!"; + } + DetId id(triggercell_cells.first); + std::tuple wafertype; GlobalPoint position = triggerGeometry_->getTriggerCellPosition(triggercell_cells.first); triggerCellId_ = id.rawId(); if (id.det() == DetId::HGCalHSc) { @@ -989,6 +998,8 @@ void HGCalTriggerGeomTesterV9Imp3::fillTriggerGeometry() triggerCellIPhi_ = id_sc.iphi(); triggerCellWaferU_ = 0; triggerCellWaferV_ = 0; + triggerCellWaferPart_ = -1; + triggerCellWaferOrient_ = -1; triggerCellU_ = 0; triggerCellV_ = 0; } else if (HFNoseTriggerDetId(triggercell_cells.first).det() == DetId::HGCalTrigger && @@ -1001,6 +1012,8 @@ void HGCalTriggerGeomTesterV9Imp3::fillTriggerGeometry() triggerCellIPhi_ = 0; triggerCellWaferU_ = id_nose_trig.waferU(); triggerCellWaferV_ = id_nose_trig.waferV(); + triggerCellWaferPart_ = -1; + triggerCellWaferOrient_ = -1; triggerCellU_ = id_nose_trig.triggerCellU(); triggerCellV_ = id_nose_trig.triggerCellV(); } else { @@ -1014,6 +1027,18 @@ void HGCalTriggerGeomTesterV9Imp3::fillTriggerGeometry() triggerCellWaferV_ = id_si_trig.waferV(); triggerCellU_ = id_si_trig.triggerCellU(); triggerCellV_ = id_si_trig.triggerCellV(); + + const HGCSiliconDetId& firstCellId(*triggercell_cells.second.begin()); + if (firstCellId.det() == DetId::HGCalEE) { + wafertype = triggerGeometry_->eeTopology().dddConstants().waferType(firstCellId); + } else if (firstCellId.det() == DetId::HGCalHSi) { + wafertype = triggerGeometry_->hsiTopology().dddConstants().waferType(firstCellId); + } else { + throw cms::Exception("BadGeometry") + << "HGCalTriggerGeometry: Found inconsistency in cell <-> trigger cell type mapping"; + } + triggerCellWaferPart_ = std::get<1>(wafertype); + triggerCellWaferOrient_ = std::get<2>(wafertype); } triggerCellX_ = position.x(); triggerCellY_ = position.y(); From 4ef2e83cfaea76ebfe50311997c8a4197003a6ed Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Sauvan Date: Fri, 22 Dec 2023 14:52:25 +0100 Subject: [PATCH 240/281] Propagate change in HGCalDDDConstants::waferType() interface --- L1Trigger/L1THGCal/test/HGCalTriggerGeomTesterV9Imp3.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/L1Trigger/L1THGCal/test/HGCalTriggerGeomTesterV9Imp3.cc b/L1Trigger/L1THGCal/test/HGCalTriggerGeomTesterV9Imp3.cc index 2760dcdfa7fe0..1265197703e1a 100644 --- a/L1Trigger/L1THGCal/test/HGCalTriggerGeomTesterV9Imp3.cc +++ b/L1Trigger/L1THGCal/test/HGCalTriggerGeomTesterV9Imp3.cc @@ -1030,9 +1030,9 @@ void HGCalTriggerGeomTesterV9Imp3::fillTriggerGeometry() const HGCSiliconDetId& firstCellId(*triggercell_cells.second.begin()); if (firstCellId.det() == DetId::HGCalEE) { - wafertype = triggerGeometry_->eeTopology().dddConstants().waferType(firstCellId); + wafertype = triggerGeometry_->eeTopology().dddConstants().waferType(firstCellId, false); } else if (firstCellId.det() == DetId::HGCalHSi) { - wafertype = triggerGeometry_->hsiTopology().dddConstants().waferType(firstCellId); + wafertype = triggerGeometry_->hsiTopology().dddConstants().waferType(firstCellId, false); } else { throw cms::Exception("BadGeometry") << "HGCalTriggerGeometry: Found inconsistency in cell <-> trigger cell type mapping"; From 2ff1716bb224275aed4dcf02c96d3b72074d1a86 Mon Sep 17 00:00:00 2001 From: Giovanni Date: Tue, 5 Sep 2023 15:39:43 +0200 Subject: [PATCH 241/281] Barrel TM18 configuration for Serenity --- .../L1TParticleFlow/interface/datatypes.h | 25 +- ...buffered_folded_multififo_regionizer_ref.h | 75 +-- .../middle_buffer_multififo_regionizer_ref.h | 112 ++++ .../multififo_regionizer_elements_ref.h | 110 ++++ .../multififo_regionizer_elements_ref.icc | 10 +- .../regionizer/multififo_regionizer_ref.h | 1 + .../plugins/L1TCorrelatorLayer1Producer.cc | 8 +- ...ffered_folded_multififo_regionizer_ref.cpp | 7 +- ...middle_buffer_multififo_regionizer_ref.cpp | 497 ++++++++++++++++++ .../regionizer/multififo_regionizer_ref.cpp | 15 +- .../src/regionizer/tdr_regionizer_ref.cpp | 8 +- .../test/make_l1ct_binaryFiles_cfg.py | 13 +- 12 files changed, 776 insertions(+), 105 deletions(-) create mode 100644 L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h create mode 100644 L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp diff --git a/DataFormats/L1TParticleFlow/interface/datatypes.h b/DataFormats/L1TParticleFlow/interface/datatypes.h index c9101348b2ef5..39d938d6d025d 100644 --- a/DataFormats/L1TParticleFlow/interface/datatypes.h +++ b/DataFormats/L1TParticleFlow/interface/datatypes.h @@ -1,15 +1,6 @@ #ifndef DataFormats_L1TParticleFlow_datatypes_h #define DataFormats_L1TParticleFlow_datatypes_h -#if (!defined(__CLANG__)) && defined(__GNUC__) && defined(CMSSW_GIT_HASH) -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wuninitialized" -#endif -#include -#if (!defined(__CLANG__)) && defined(__GNUC__) && defined(CMSSW_GIT_HASH) -#pragma GCC diagnostic pop -#endif - #include #include #include @@ -162,8 +153,14 @@ namespace l1ct { inline float floatPt(pt_t pt) { return pt.to_float(); } inline float floatPt(dpt_t pt) { return pt.to_float(); } inline float floatPt(pt2_t pt2) { return pt2.to_float(); } - inline int intPt(pt_t pt) { return (ap_ufixed<16, 14>(pt) << 2).to_int(); } - inline int intPt(dpt_t pt) { return (ap_fixed<18, 16>(pt) << 2).to_int(); } + inline int intPt(pt_t pt) { + ap_uint rawPt = pt.range(); + return rawPt.to_int(); + } + inline int intPt(dpt_t pt) { + ap_int rawPt = pt.range(); + return rawPt.to_int(); + } inline float floatEta(eta_t eta) { return eta.to_float() * ETAPHI_LSB; } inline float floatPhi(phi_t phi) { return phi.to_float() * ETAPHI_LSB; } inline float floatEta(tkdeta_t eta) { return eta.to_float() * ETAPHI_LSB; } @@ -181,9 +178,9 @@ namespace l1ct { inline pt_t makePt(int pt) { return ap_ufixed<16, 14>(pt) >> 2; } inline dpt_t makeDPt(int dpt) { return ap_fixed<18, 16>(dpt) >> 2; } - inline pt_t makePtFromFloat(float pt) { return pt_t(0.25 * round(pt * 4)); } + inline pt_t makePtFromFloat(float pt) { return pt_t(0.25 * std::round(pt * 4)); } inline dpt_t makeDPtFromFloat(float dpt) { return dpt_t(dpt); } - inline z0_t makeZ0(float z0) { return z0_t(round(z0 / Z0_LSB)); } + inline z0_t makeZ0(float z0) { return z0_t(std::round(z0 / Z0_LSB)); } inline ap_uint ptToInt(pt_t pt) { // note: this can be synthethized, e.g. when pT is used as intex in a LUT @@ -216,7 +213,7 @@ namespace l1ct { inline float maxAbsPhi() { return ((1 << (phi_t::width - 1)) - 1) * ETAPHI_LSB; } inline float maxAbsGlbEta() { return ((1 << (glbeta_t::width - 1)) - 1) * ETAPHI_LSB; } inline float maxAbsGlbPhi() { return ((1 << (glbphi_t::width - 1)) - 1) * ETAPHI_LSB; } - }; // namespace Scales + } // namespace Scales inline int dr2_int(eta_t eta1, phi_t phi1, eta_t eta2, phi_t phi2) { ap_int deta = (eta1 - eta2); diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/buffered_folded_multififo_regionizer_ref.h b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/buffered_folded_multififo_regionizer_ref.h index 9e171a75cfd6a..8e446691aa2fe 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/buffered_folded_multififo_regionizer_ref.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/buffered_folded_multififo_regionizer_ref.h @@ -6,38 +6,6 @@ #include #include -namespace l1ct { - namespace multififo_regionizer { - template - inline bool local_eta_window(const T& t, const l1ct::glbeta_t& etaMin, const l1ct::glbeta_t& etaMax); - template <> - inline bool local_eta_window(const l1ct::TkObjEmu& t, - const l1ct::glbeta_t& etaMin, - const l1ct::glbeta_t& etaMax); - - template - class EtaBuffer { - public: - EtaBuffer() {} - EtaBuffer(unsigned int maxitems, const l1ct::glbeta_t& etaMin = 0, const l1ct::glbeta_t& etaMax = 0) - : size_(maxitems), iwrite_(0), iread_(0), etaMin_(etaMin), etaMax_(etaMax) {} - void maybe_push(const T& t); - void writeNewEvent() { - iwrite_ = 1 - iwrite_; - items_[iwrite_].clear(); - } - void readNewEvent() { iread_ = 1 - iread_; } - T pop(); - unsigned int writeSize() const { return items_[iwrite_].size(); } - unsigned int readSize() const { return items_[iread_].size(); } - - private: - unsigned int size_, iwrite_, iread_; - l1ct::glbeta_t etaMin_, etaMax_; - std::deque items_[2]; - }; - } // namespace multififo_regionizer -} // namespace l1ct namespace l1ct { class BufferedFoldedMultififoRegionizerEmulator : public FoldedMultififoRegionizerEmulator { public: @@ -88,9 +56,9 @@ namespace l1ct { } protected: - std::vector> tkBuffers_; - std::vector> caloBuffers_; - std::vector> muBuffers_; + std::vector> tkBuffers_; + std::vector> caloBuffers_; + std::vector> muBuffers_; void findEtaBounds_(const l1ct::PFRegionEmu& sec, const std::vector& reg, @@ -106,41 +74,4 @@ namespace l1ct { }; } // namespace l1ct -template -inline bool l1ct::multififo_regionizer::local_eta_window(const T& t, - const l1ct::glbeta_t& etaMin, - const l1ct::glbeta_t& etaMax) { - return (etaMin == etaMax) || (etaMin <= t.hwEta && t.hwEta <= etaMax); -} -template <> -inline bool l1ct::multififo_regionizer::local_eta_window(const l1ct::TkObjEmu& t, - const l1ct::glbeta_t& etaMin, - const l1ct::glbeta_t& etaMax) { - return (etaMin == etaMax) || (etaMin <= t.hwEta && t.hwEta <= etaMax) || - (etaMin <= t.hwVtxEta() && t.hwVtxEta() <= etaMax); -} -template -void l1ct::multififo_regionizer::EtaBuffer::maybe_push(const T& t) { - if ((t.hwPt != 0) && local_eta_window(t, etaMin_, etaMax_)) { - if (items_[iwrite_].size() < size_) { - items_[iwrite_].push_back(t); - } else { - // uncommenting the message below may be useful for debugging - //dbgCout() << "WARNING: sector buffer is full for " << typeid(T).name() << ", pt = " << t.intPt() - // << ", eta = " << t.intEta() << ", phi = " << t.intPhi() << "\n"; - } - } -} - -template -T l1ct::multififo_regionizer::EtaBuffer::pop() { - T ret; - ret.clear(); - if (!items_[iread_].empty()) { - ret = items_[iread_].front(); - items_[iread_].pop_front(); - } - return ret; -} - #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h new file mode 100644 index 0000000000000..7f9685c119143 --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h @@ -0,0 +1,112 @@ +#ifndef middle_buffer_multififo_regionizer_ref_h +#define middle_buffer_multififo_regionizer_ref_h + +#include "L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_ref.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/dbgPrintf.h" +#include +#include + +namespace l1ct { + class MiddleBufferMultififoRegionizerEmulator : public RegionizerEmulator { + public: + MiddleBufferMultififoRegionizerEmulator(unsigned int nclocks, + unsigned int etabufferDepth, + unsigned int ntklinks, + unsigned int nHCalLinks, + unsigned int nECalLinks, + unsigned int ntk, + unsigned int ncalo, + unsigned int nem, + unsigned int nmu, + bool streaming, + unsigned int outii, + unsigned int pauseii, + bool useAlsoVtxCoords); + // note: this one will work only in CMSSW + MiddleBufferMultififoRegionizerEmulator(const edm::ParameterSet& iConfig); + + ~MiddleBufferMultififoRegionizerEmulator() override; + + static edm::ParameterSetDescription getParameterSetDescription(); + + void initSectorsAndRegions(const RegionizerDecodedInputs& in, const std::vector& out) override; + + void run(const RegionizerDecodedInputs& in, std::vector& out) override; + + // link emulation from decoded inputs (for simulation) + void fillLinks(unsigned int iclock, + const RegionizerDecodedInputs& in, + std::vector& links, + std::vector& valid); + void fillLinks(unsigned int iclock, + const RegionizerDecodedInputs& in, + std::vector& links, + std::vector& valid); + void fillLinks(unsigned int iclock, + const RegionizerDecodedInputs& in, + std::vector& links, + std::vector& valid); + void fillLinks(unsigned int iclock, + const RegionizerDecodedInputs& in, + std::vector& links, + std::vector& valid); + template + void fillLinks(unsigned int iclock, const RegionizerDecodedInputs& in, std::vector& links) { + std::vector unused; + fillLinks(iclock, in, links, unused); + } + void destream(int iclock, + const std::vector& tk_out, + const std::vector& em_out, + const std::vector& calo_out, + const std::vector& mu_out, + PFInputRegion& out); + + // clock-cycle emulation + bool step(bool newEvent, + const std::vector& links_tk, + const std::vector& links_hadCalo, + const std::vector& links_emCalo, + const std::vector& links_mu, + std::vector& out_tk, + std::vector& out_hadCalo, + std::vector& out_emCalo, + std::vector& out_mu, + bool /*unused*/); + + template + void toFirmware(const std::vector& emu, TFw fw[]) { + for (unsigned int i = 0, n = emu.size(); i < n; ++i) { + fw[i] = emu[i]; + } + } + + void reset(); + + protected: + const unsigned int NTK_SECTORS, NCALO_SECTORS; + const unsigned int NTK_LINKS, HCAL_LINKS, ECAL_LINKS, NMU_LINKS; + unsigned int nclocks_, etabuffer_depth_, ntk_, ncalo_, nem_, nmu_, outii_, pauseii_, nregions_pre_, nregions_post_; + bool streaming_; + bool init_; + unsigned int iclock_; + + multififo_regionizer::Regionizer tkRegionizerPre_, tkRegionizerPost_; + multififo_regionizer::Regionizer hadCaloRegionizerPre_, hadCaloRegionizerPost_; + multififo_regionizer::Regionizer emCaloRegionizerPre_, emCaloRegionizerPost_; + multififo_regionizer::Regionizer muRegionizerPre_, muRegionizerPost_; + std::vector tkRoutes_, caloRoutes_, emCaloRoutes_, muRoutes_; + std::vector> tkBuffers_; + std::vector> hadCaloBuffers_; + std::vector> emCaloBuffers_; + std::vector> muBuffers_; + + template + void fillCaloLinks_(unsigned int iclock, + const std::vector>& in, + std::vector& links, + std::vector& valid); + }; +} // namespace l1ct + +#endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.h b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.h index 91d36a366a1ae..670e7bb91802c 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.h @@ -5,6 +5,7 @@ #include #include +#include #include namespace l1ct { @@ -76,6 +77,62 @@ namespace l1ct { T pop_queue_(std::vector& queue); }; + template + inline bool local_eta_phi_window(const T& t, + const l1ct::glbeta_t& etaMin, + const l1ct::glbeta_t& etaMax, + const l1ct::glbphi_t& phiMin, + const l1ct::glbphi_t& phiMax); + template <> + inline bool local_eta_phi_window(const l1ct::TkObjEmu& t, + const l1ct::glbeta_t& etaMin, + const l1ct::glbeta_t& etaMax, + const l1ct::glbphi_t& phiMin, + const l1ct::glbphi_t& phiMax); + + template + class EtaPhiBuffer { + public: + EtaPhiBuffer() {} + EtaPhiBuffer(unsigned int maxitems, + const l1ct::glbeta_t& etaMin = 0, + const l1ct::glbeta_t& etaMax = 0, + const l1ct::glbeta_t& etaShift = 0, + const l1ct::glbphi_t& phiMin = 0, + const l1ct::glbphi_t& phiMax = 0, + const l1ct::glbphi_t& phiShift = 0) + : size_(maxitems), + iwrite_(0), + iread_(0), + etaMin_(etaMin), + etaMax_(etaMax), + etaShift_(etaShift), + phiMin_(phiMin), + phiMax_(phiMax), + phiShift_(phiShift) {} + void maybe_push(const T& t); + void writeNewEvent() { + iwrite_ = 1 - iwrite_; + items_[iwrite_].clear(); + } + void readNewEvent() { + iread_ = 1 - iread_; + } + T pop(); + unsigned int writeSize() const { return items_[iwrite_].size(); } + unsigned int readSize() const { return items_[iread_].size(); } + unsigned int maxSize() const { return size_; } + void reset(); + + private: + unsigned int size_, iwrite_, iread_; + l1ct::glbeta_t etaMin_, etaMax_; + l1ct::glbeta_t etaShift_; + l1ct::glbphi_t phiMin_, phiMax_; + l1ct::glbphi_t phiShift_; + std::deque items_[2]; + }; + // forward decl for later template class RegionMux; @@ -183,4 +240,57 @@ namespace l1ct { } // namespace multififo_regionizer } // namespace l1ct +template +inline bool l1ct::multififo_regionizer::local_eta_phi_window(const T& t, + const l1ct::glbeta_t& etaMin, + const l1ct::glbeta_t& etaMax, + const l1ct::glbphi_t& phiMin, + const l1ct::glbphi_t& phiMax) { + return (etaMin == etaMax) || + (etaMin <= t.hwEta && t.hwEta <= etaMax && ((phiMin == phiMax) || (phiMin <= t.hwPhi && t.hwPhi <= phiMax))); +} +template <> +inline bool l1ct::multififo_regionizer::local_eta_phi_window(const l1ct::TkObjEmu& t, + const l1ct::glbeta_t& etaMin, + const l1ct::glbeta_t& etaMax, + const l1ct::glbphi_t& phiMin, + const l1ct::glbphi_t& phiMax) { + return (etaMin == etaMax) || + (etaMin <= t.hwEta && t.hwEta <= etaMax && ((phiMin == phiMax) || (phiMin <= t.hwPhi && t.hwPhi <= phiMax))) || + (etaMin <= t.hwVtxEta() && t.hwVtxEta() <= etaMax && + ((phiMin == phiMax) || (phiMin <= t.hwVtxPhi() && t.hwVtxPhi() <= phiMax))); +} +template +void l1ct::multififo_regionizer::EtaPhiBuffer::maybe_push(const T& t) { + if ((t.hwPt != 0) && local_eta_phi_window(t, etaMin_, etaMax_, phiMin_, phiMax_)) { + if (items_[iwrite_].size() < size_) { + items_[iwrite_].push_back(t); + items_[iwrite_].back().hwEta += etaShift_; + items_[iwrite_].back().hwPhi += phiShift_; + } else { + // uncommenting the message below may be useful for debugging + //dbgCout() << "WARNING: sector buffer is full for " << typeid(T).name() << ", pt = " << t.intPt() + // << ", eta = " << t.intEta() << ", phi = " << t.intPhi() << "\n"; + } + } +} + +template +T l1ct::multififo_regionizer::EtaPhiBuffer::pop() { + T ret; + ret.clear(); + if (!items_[iread_].empty()) { + ret = items_[iread_].front(); + items_[iread_].pop_front(); + } + return ret; +} +template +void l1ct::multififo_regionizer::EtaPhiBuffer::reset() { + iread_ = 0; + iwrite_ = 0; + items_[0].clear(); + items_[1].clear(); +} + #endif diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.icc b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.icc index 66b0538ac38fe..a884ed2f91780 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.icc +++ b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.icc @@ -41,6 +41,11 @@ void l1ct::multififo_regionizer::maybe_push(const l1ct::TkObjEmu template void l1ct::multififo_regionizer::RegionBuffer::initFifos(unsigned int nfifos) { assert(nfifos_ == 0); + bool isGood = + (nfifos == 1 || nfifos == 2 || nfifos == 3 || nfifos == 4 || nfifos == 6 || nfifos == 8 || nfifos == 12); + if (!isGood) { + dbgCerr() << "Error, created regionizer for nfifos == " << nfifos << ", not supported." << std::endl; + } nfifos_ = nfifos; fifos_.resize(nfifos); unsigned int nmerged = nfifos; @@ -53,11 +58,6 @@ void l1ct::multififo_regionizer::RegionBuffer::initFifos(unsigned int nfifos) for (auto& t : queues_.back().second) t.clear(); } - bool isGood = - (nfifos == 1 || nfifos == 2 || nfifos == 3 || nfifos == 4 || nfifos == 6 || nfifos == 8 || nfifos == 12); - if (!isGood) { - dbgCerr() << "Error, created regionizer for nfifos == " << nfifos << ", not supported." << std::endl; - } assert(isGood); } diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_ref.h b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_ref.h index d2b6bbce52b72..965f87dbadcdf 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_ref.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_ref.h @@ -34,6 +34,7 @@ namespace l1ct { enum class BarrelSetup { Full54, Full27, Central18, Central9, Phi18, Phi9 }; MultififoRegionizerEmulator(BarrelSetup barrelSetup, + unsigned int ntklinks, unsigned int nHCalLinks, unsigned int nECalLinks, unsigned int nclocks, diff --git a/L1Trigger/Phase2L1ParticleFlow/plugins/L1TCorrelatorLayer1Producer.cc b/L1Trigger/Phase2L1ParticleFlow/plugins/L1TCorrelatorLayer1Producer.cc index 155437be33466..38e8222dab630 100644 --- a/L1Trigger/Phase2L1ParticleFlow/plugins/L1TCorrelatorLayer1Producer.cc +++ b/L1Trigger/Phase2L1ParticleFlow/plugins/L1TCorrelatorLayer1Producer.cc @@ -28,6 +28,7 @@ #include "L1Trigger/Phase2L1ParticleFlow/interface/regionizer/regionizer_base_ref.h" #include "L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_ref.h" #include "L1Trigger/Phase2L1ParticleFlow/interface/regionizer/buffered_folded_multififo_regionizer_ref.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h" #include "L1Trigger/Phase2L1ParticleFlow/interface/regionizer/tdr_regionizer_ref.h" #include "L1Trigger/Phase2L1ParticleFlow/interface/pf/pfalgo2hgc_ref.h" #include "L1Trigger/Phase2L1ParticleFlow/interface/pf/pfalgo3_ref.h" @@ -265,6 +266,9 @@ L1TCorrelatorLayer1Producer::L1TCorrelatorLayer1Producer(const edm::ParameterSet const auto &pset = iConfig.getParameter("regionizerAlgoParameters"); regionizer_ = std::make_unique(pset.getParameter("barrelSetup"), pset); + } else if (regalgo == "MiddleBufferMultififo") { + regionizer_ = std::make_unique( + iConfig.getParameter("regionizerAlgoParameters")); } else if (regalgo == "TDR") { regionizer_ = std::make_unique( iConfig.getParameter("regionizerAlgoParameters")); @@ -367,9 +371,11 @@ void L1TCorrelatorLayer1Producer::fillDescriptions(edm::ConfigurationDescription auto bfMultififoRegPD = getParDesc("regionizerAlgo"); auto multififoBarrelRegPD = edm::ParameterDescription( "regionizerAlgoParameters", l1ct::MultififoRegionizerEmulator::getParameterSetDescriptionBarrel(), true); + auto mbMultififoRegPD = getParDesc("regionizerAlgo"); desc.ifValue(edm::ParameterDescription("regionizerAlgo", "Ideal", true), "Ideal" >> idealRegPD or "TDR" >> tdrRegPD or "Multififo" >> multififoRegPD or - "BufferedFoldedMultififo" >> bfMultififoRegPD or "MultififoBarrel" >> multififoBarrelRegPD); + "BufferedFoldedMultififo" >> bfMultififoRegPD or "MultififoBarrel" >> multififoBarrelRegPD or + "MiddleBufferMultififo" >> mbMultififoRegPD); // PF desc.ifValue(edm::ParameterDescription("pfAlgo", "PFAlgo3", true), "PFAlgo3" >> getParDesc("pfAlgo") or diff --git a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/buffered_folded_multififo_regionizer_ref.cpp b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/buffered_folded_multififo_regionizer_ref.cpp index 9717416c15b0d..9f1e9ca3f8bcf 100644 --- a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/buffered_folded_multififo_regionizer_ref.cpp +++ b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/buffered_folded_multififo_regionizer_ref.cpp @@ -88,16 +88,17 @@ void l1ct::BufferedFoldedMultififoRegionizerEmulator::initSectorsAndRegions(cons l1ct::glbeta_t etaMin, etaMax; findEtaBounds_(fold_[ie].sectors.track[0].region, fold_[ie].regions, etaMin, etaMax); for (unsigned int isec = 0; ntk_ > 0 && isec < NTK_SECTORS; ++isec) { - tkBuffers_[2 * isec + ie] = l1ct::multififo_regionizer::EtaBuffer(nclocks_ / 2, etaMin, etaMax); + tkBuffers_[2 * isec + ie] = + l1ct::multififo_regionizer::EtaPhiBuffer(nclocks_ / 2, etaMin, etaMax); } findEtaBounds_(fold_[ie].sectors.hadcalo[0].region, fold_[ie].regions, etaMin, etaMax); for (unsigned int isec = 0; ncalo_ > 0 && isec < NCALO_SECTORS; ++isec) { caloBuffers_[2 * isec + ie] = - l1ct::multififo_regionizer::EtaBuffer(nclocks_ / 2, etaMin, etaMax); + l1ct::multififo_regionizer::EtaPhiBuffer(nclocks_ / 2, etaMin, etaMax); } findEtaBounds_(fold_[ie].sectors.muon.region, fold_[ie].regions, etaMin, etaMax); if (nmu_ > 0) { - muBuffers_[ie] = l1ct::multififo_regionizer::EtaBuffer(nclocks_ / 2, etaMin, etaMax); + muBuffers_[ie] = l1ct::multififo_regionizer::EtaPhiBuffer(nclocks_ / 2, etaMin, etaMax); } } } diff --git a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp new file mode 100644 index 0000000000000..59f9aef1d6c1b --- /dev/null +++ b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp @@ -0,0 +1,497 @@ +#include "L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/dbgPrintf.h" +#include "L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.icc" + +#include +#include +#include + +#ifdef CMSSW_GIT_HASH +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" +#include "FWCore/ParameterSet/interface/allowedValues.h" + +l1ct::MiddleBufferMultififoRegionizerEmulator::MiddleBufferMultififoRegionizerEmulator(const edm::ParameterSet& iConfig) + : MiddleBufferMultififoRegionizerEmulator(iConfig.getParameter("nClocks"), + iConfig.getParameter("etaBufferDepth"), + iConfig.getParameter("nTkLinks"), + iConfig.getParameter("nHCalLinks"), + iConfig.getParameter("nECalLinks"), + iConfig.getParameter("nTrack"), + iConfig.getParameter("nCalo"), + iConfig.getParameter("nEmCalo"), + iConfig.getParameter("nMu"), + /*streaming=*/true, + /*outii=*/2, + /*pauseii=*/1, + iConfig.getParameter("useAlsoVtxCoords")) { + debug_ = iConfig.getUntrackedParameter("debug", false); +} + +edm::ParameterSetDescription l1ct::MiddleBufferMultififoRegionizerEmulator::getParameterSetDescription() { + edm::ParameterSetDescription description; + description.add("nClocks", 162); + description.add("etaBufferDepth", 54); + description.add("nTkLinks", 1); + description.add("nHCalLinks", 1); + description.add("nECalLinks", 1); + description.add("nTrack", 22); + description.add("nCalo", 15); + description.add("nEmCalo", 12); + description.add("nMu", 2); + description.add("useAlsoVtxCoords", true); + description.addUntracked("debug", false); + return description; +} + +#endif + +l1ct::MiddleBufferMultififoRegionizerEmulator::MiddleBufferMultififoRegionizerEmulator(unsigned int nclocks, + unsigned int etabufferDepth, + unsigned int ntklinks, + unsigned int nHCalLinks, + unsigned int nECalLinks, + unsigned int ntk, + unsigned int ncalo, + unsigned int nem, + unsigned int nmu, + bool streaming, + unsigned int outii, + unsigned int pauseii, + bool useAlsoVtxCoords) + : RegionizerEmulator(useAlsoVtxCoords), + NTK_SECTORS(9), + NCALO_SECTORS(3), + NTK_LINKS(ntklinks), + HCAL_LINKS(nHCalLinks), + ECAL_LINKS(nECalLinks), + NMU_LINKS(1), + nclocks_(nclocks), + etabuffer_depth_(etabufferDepth), + ntk_(ntk), + ncalo_(ncalo), + nem_(nem), + nmu_(nmu), + outii_(outii), + pauseii_(pauseii), + nregions_pre_(27), + nregions_post_(54), + streaming_(streaming), + init_(false), + iclock_(0), + tkRegionizerPre_(ntk, ntk, false, outii, pauseii, useAlsoVtxCoords), + tkRegionizerPost_(ntk, (ntk + outii - 1) / outii, true, outii, pauseii, useAlsoVtxCoords), + hadCaloRegionizerPre_(ncalo, ncalo, false, outii, pauseii), + hadCaloRegionizerPost_(ncalo, (ncalo + outii - 1) / outii, true, outii, pauseii), + emCaloRegionizerPre_(nem, nem, false, outii, pauseii), + emCaloRegionizerPost_(nem, (nem + outii - 1) / outii, true, outii, pauseii), + muRegionizerPre_(nmu, nmu, false, outii, pauseii), + muRegionizerPost_(nmu, std::max(1u, (nmu + outii - 1) / outii), true, outii, pauseii), + tkBuffers_(ntk ? nregions_post_ : 0), + hadCaloBuffers_(ncalo ? nregions_post_ : 0), + emCaloBuffers_(nem ? nregions_post_ : 0), + muBuffers_(nmu ? nregions_post_ : 0) { + unsigned int phisectors = 9, etaslices = 3; + for (unsigned int ietaslice = 0; ietaslice < etaslices && ntk > 0; ++ietaslice) { + for (unsigned int ie = 0; ie < 2; ++ie) { // 0 = negative, 1 = positive + unsigned int nTFEtaSlices = ietaslice == 1 ? 2 : 1; + if ((ietaslice == 0 && ie == 1) || (ietaslice == 2 && ie == 0)) + continue; + unsigned int ireg0 = phisectors * ietaslice, il0 = 3 * NTK_LINKS * (nTFEtaSlices - 1) * ie; + for (unsigned int is = 0; is < NTK_SECTORS; ++is) { // 9 tf sectors + for (unsigned int il = 0; il < NTK_LINKS; ++il) { // max tracks per sector per clock + unsigned int isp = (is + 1) % NTK_SECTORS, ism = (is + NTK_SECTORS - 1) % NTK_SECTORS; + tkRoutes_.emplace_back(is + NTK_SECTORS * ie, il, is + ireg0, il0 + il); + tkRoutes_.emplace_back(is + NTK_SECTORS * ie, il, isp + ireg0, il0 + il + NTK_LINKS); + tkRoutes_.emplace_back(is + NTK_SECTORS * ie, il, ism + ireg0, il0 + il + 2 * NTK_LINKS); + } + } + } + } + // calo + for (unsigned int ie = 0; ie < etaslices; ++ie) { + for (unsigned int is = 0; is < NCALO_SECTORS; ++is) { // NCALO_SECTORS sectors + for (unsigned int j = 0; j < 3; ++j) { // 3 regions x sector + for (unsigned int il = 0; il < HCAL_LINKS; ++il) { + caloRoutes_.emplace_back(is, il, 3 * is + j + phisectors * ie, il); + if (j) { + caloRoutes_.emplace_back((is + 1) % 3, il, 3 * is + j + phisectors * ie, il + HCAL_LINKS); + } + } + for (unsigned int il = 0; il < ECAL_LINKS; ++il) { + emCaloRoutes_.emplace_back(is, il, 3 * is + j + phisectors * ie, il); + if (j) { + emCaloRoutes_.emplace_back((is + 1) % 3, il, 3 * is + j + phisectors * ie, il + ECAL_LINKS); + } + } + } + } + } + // mu + for (unsigned int il = 0; il < NMU_LINKS && nmu > 0; ++il) { + for (unsigned int j = 0; j < nregions_pre_; ++j) { + muRoutes_.emplace_back(0, il, j, il); + } + } +} + +l1ct::MiddleBufferMultififoRegionizerEmulator::~MiddleBufferMultififoRegionizerEmulator() {} + +void l1ct::MiddleBufferMultififoRegionizerEmulator::initSectorsAndRegions(const RegionizerDecodedInputs& in, + const std::vector& out) { + assert(!init_); + init_ = true; + assert(out.size() == nregions_post_); + + std::vector mergedRegions; + unsigned int neta = 3, nphi = 9; + for (unsigned int ieta = 0; ieta < neta; ++ieta) { + for (unsigned int iphi = 0; iphi < nphi; ++iphi) { + const PFRegionEmu& reg0 = out[(2 * ieta + 0) * nphi + iphi].region; + const PFRegionEmu& reg1 = out[(2 * ieta + 1) * nphi + iphi].region; + assert(reg0.hwPhiCenter == reg1.hwPhiCenter); + mergedRegions.emplace_back(reg0.floatEtaMin(), + reg1.floatEtaMax(), + reg0.floatPhiCenter(), + reg0.floatPhiHalfWidth() * 2, + reg0.floatEtaExtra(), + reg0.floatPhiExtra()); + if (debug_) { + dbgCout() << "Created region with etaCenter " << mergedRegions.back().region.hwEtaCenter.to_int() + << ", halfWidth " << mergedRegions.back().region.hwEtaHalfWidth.to_int() << "\n"; + } + for (int i = 0; i < 2; ++i) { + unsigned int iout = (2 * ieta + i) * nphi + iphi; + const l1ct::PFRegionEmu& from = mergedRegions.back().region; + const l1ct::PFRegionEmu& to = out[iout].region; + l1ct::glbeta_t etaMin = to.hwEtaCenter - to.hwEtaHalfWidth - to.hwEtaExtra - from.hwEtaCenter; + l1ct::glbeta_t etaMax = to.hwEtaCenter + to.hwEtaHalfWidth + to.hwEtaExtra - from.hwEtaCenter; + l1ct::glbeta_t etaShift = from.hwEtaCenter - to.hwEtaCenter; + l1ct::glbphi_t phiMin = -to.hwPhiHalfWidth - to.hwPhiExtra; + l1ct::glbphi_t phiMax = +to.hwPhiHalfWidth + to.hwPhiExtra; + l1ct::glbphi_t phiShift = 0; + if (ntk_ > 0) + tkBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer( + etabuffer_depth_, etaMin, etaMax, etaShift, phiMin, phiMax, phiShift); + if (ncalo_ > 0) + hadCaloBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer( + etabuffer_depth_, etaMin, etaMax, etaShift, phiMin, phiMax, phiShift); + if (nem_ > 0) + emCaloBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer( + etabuffer_depth_, etaMin, etaMax, etaShift, phiMin, phiMax, phiShift); + if (nmu_ > 0) + muBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer( + etabuffer_depth_, etaMin, etaMax, etaShift, phiMin, phiMax, phiShift); + } + } + } + if (ntk_) { + assert(in.track.size() == 2 * NTK_SECTORS); + tkRegionizerPre_.initSectors(in.track); + tkRegionizerPre_.initRegions(mergedRegions); + tkRegionizerPre_.initRouting(tkRoutes_); + tkRegionizerPost_.initRegions(out); + } + if (ncalo_) { + assert(in.hadcalo.size() == NCALO_SECTORS); + hadCaloRegionizerPre_.initSectors(in.hadcalo); + hadCaloRegionizerPre_.initRegions(mergedRegions); + hadCaloRegionizerPre_.initRouting(caloRoutes_); + hadCaloRegionizerPost_.initRegions(out); + } + if (nem_) { + assert(in.emcalo.size() == NCALO_SECTORS); + emCaloRegionizerPre_.initSectors(in.emcalo); + emCaloRegionizerPre_.initRegions(mergedRegions); + emCaloRegionizerPre_.initRouting(emCaloRoutes_); + emCaloRegionizerPost_.initRegions(out); + } + if (nmu_) { + muRegionizerPre_.initSectors(in.muon); + muRegionizerPre_.initRegions(mergedRegions); + muRegionizerPre_.initRouting(muRoutes_); + muRegionizerPost_.initRegions(out); + } +} + +bool l1ct::MiddleBufferMultififoRegionizerEmulator::step(bool newEvent, + const std::vector& links_tk, + const std::vector& links_hadCalo, + const std::vector& links_emCalo, + const std::vector& links_mu, + std::vector& out_tk, + std::vector& out_hadCalo, + std::vector& out_emCalo, + std::vector& out_mu, + bool /*unused*/) { + iclock_ = (newEvent ? 0 : iclock_ + 1); + bool newRead = iclock_ == 2 * etabuffer_depth_; + + std::vector pre_out_tk; + std::vector pre_out_hadCalo; + std::vector pre_out_emCalo; + std::vector pre_out_mu; + bool ret = false; + if (ntk_) + ret = tkRegionizerPre_.step(newEvent, links_tk, pre_out_tk, false); + if (nmu_) + ret = muRegionizerPre_.step(newEvent, links_mu, pre_out_mu, false); + if (ncalo_) + ret = hadCaloRegionizerPre_.step(newEvent, links_hadCalo, pre_out_hadCalo, false); + if (nem_) + ret = emCaloRegionizerPre_.step(newEvent, links_emCalo, pre_out_emCalo, false); + + // in the no-streaming case, we just output the pre-regionizer + if (!streaming_) { + out_tk.swap(pre_out_tk); + out_mu.swap(pre_out_mu); + out_hadCalo.swap(pre_out_hadCalo); + out_emCalo.swap(pre_out_emCalo); + return ret; + } + + // otherwise, we push into the eta buffers + if (newEvent) { + for (auto& b : tkBuffers_) + b.writeNewEvent(); + for (auto& b : hadCaloBuffers_) + b.writeNewEvent(); + for (auto& b : emCaloBuffers_) + b.writeNewEvent(); + for (auto& b : muBuffers_) + b.writeNewEvent(); + } + unsigned int neta = 3, nphi = 9; + for (unsigned int ieta = 0; ieta < neta; ++ieta) { + for (unsigned int iphi = 0; iphi < nphi; ++iphi) { + unsigned int iin = ieta * nphi + iphi; + for (int i = 0; i < 2; ++i) { + unsigned int iout = (2 * ieta + i) * nphi + iphi; + if (ntk_) + tkBuffers_[iout].maybe_push(pre_out_tk[iin]); + if (ncalo_) + hadCaloBuffers_[iout].maybe_push(pre_out_hadCalo[iin]); + if (nem_) + emCaloBuffers_[iout].maybe_push(pre_out_emCalo[iin]); + if (nmu_) + muBuffers_[iout].maybe_push(pre_out_mu[iin]); + } + } + } + + // and we read from eta buffers into muxes + if (newRead) { + for (auto& b : tkBuffers_) + b.readNewEvent(); + for (auto& b : hadCaloBuffers_) + b.readNewEvent(); + for (auto& b : emCaloBuffers_) + b.readNewEvent(); + for (auto& b : muBuffers_) + b.readNewEvent(); + } + std::vector bufferOut_tk(ntk_ ? nregions_post_ : 0); + std::vector bufferOut_hadCalo(ncalo_ ? nregions_post_ : 0); + std::vector bufferOut_emCalo(nem_ ? nregions_post_ : 0); + std::vector bufferOut_mu(nmu_ ? nregions_post_ : 0); + for (unsigned int i = 0; i < nregions_post_; ++i) { + if (ntk_) + bufferOut_tk[i] = tkBuffers_[i].pop(); + if (ncalo_) + bufferOut_hadCalo[i] = hadCaloBuffers_[i].pop(); + if (nem_) + bufferOut_emCalo[i] = emCaloBuffers_[i].pop(); + if (nmu_) + bufferOut_mu[i] = muBuffers_[i].pop(); + } + if (ntk_) + tkRegionizerPost_.muxonly_step(newEvent, /*flush=*/true, bufferOut_tk, out_tk); + if (ncalo_) + hadCaloRegionizerPost_.muxonly_step(newEvent, /*flush=*/true, bufferOut_hadCalo, out_hadCalo); + if (nem_) + emCaloRegionizerPost_.muxonly_step(newEvent, /*flush=*/true, bufferOut_emCalo, out_emCalo); + if (nmu_) + muRegionizerPost_.muxonly_step(newEvent, /*flush=*/true, bufferOut_mu, out_mu); + + return newRead; +} + +void l1ct::MiddleBufferMultififoRegionizerEmulator::fillLinks(unsigned int iclock, + const l1ct::RegionizerDecodedInputs& in, + std::vector& links, + std::vector& valid) { + if (ntk_ == 0) + return; + assert(NTK_LINKS == 1); + links.resize(NTK_SECTORS * NTK_LINKS * 2); + valid.resize(links.size()); + // emulate reduced rate from 96b tracks on 64b links + unsigned int itkclock = 2 * (iclock / 3) + (iclock % 3) - 1; // will underflow for iclock == 0 but it doesn't matter + for (unsigned int is = 0, idx = 0; is < 2 * NTK_SECTORS; ++is, ++idx) { // tf sectors + const l1ct::DetectorSector& sec = in.track[is]; + unsigned int ntracks = sec.size(); + unsigned int nw64 = (ntracks * 3 + 1) / 2; + if (iclock % 3 == 0) { + links[idx].clear(); + valid[idx] = (iclock == 0) || (iclock < nw64); + } else if (itkclock < ntracks && itkclock < nclocks_ - 1) { + links[idx] = sec[itkclock]; + valid[idx] = true; + } else { + links[idx].clear(); + valid[idx] = false; + } + } +} + +template +void l1ct::MiddleBufferMultififoRegionizerEmulator::fillCaloLinks_(unsigned int iclock, + const std::vector>& in, + std::vector& links, + std::vector& valid) { + unsigned int NLINKS = (typeid(T) == typeid(l1ct::HadCaloObjEmu) ? HCAL_LINKS : ECAL_LINKS); + links.resize(NCALO_SECTORS * NLINKS); + valid.resize(links.size()); + for (unsigned int is = 0, idx = 0; is < NCALO_SECTORS; ++is) { + for (unsigned int il = 0; il < NLINKS; ++il, ++idx) { + unsigned int ioffs = iclock * NLINKS + il; + if (ioffs < in[is].size() && iclock < nclocks_ - 1) { + links[idx] = in[is][ioffs]; + valid[idx] = true; + } else { + links[idx].clear(); + valid[idx] = false; + } + } + } +} + +void l1ct::MiddleBufferMultififoRegionizerEmulator::fillLinks(unsigned int iclock, + const l1ct::RegionizerDecodedInputs& in, + std::vector& links, + std::vector& valid) { + if (ncalo_ == 0) + return; + fillCaloLinks_(iclock, in.hadcalo, links, valid); +} + +void l1ct::MiddleBufferMultififoRegionizerEmulator::fillLinks(unsigned int iclock, + const l1ct::RegionizerDecodedInputs& in, + std::vector& links, + std::vector& valid) { + if (nem_ == 0) + return; + fillCaloLinks_(iclock, in.emcalo, links, valid); +} + +void l1ct::MiddleBufferMultififoRegionizerEmulator::fillLinks(unsigned int iclock, + const l1ct::RegionizerDecodedInputs& in, + std::vector& links, + std::vector& valid) { + if (nmu_ == 0) + return; + assert(NMU_LINKS == 1); + links.resize(NMU_LINKS); + valid.resize(links.size()); + if (iclock < in.muon.size() && iclock < nclocks_ - 1) { + links[0] = in.muon[iclock]; + valid[0] = true; + } else { + links[0].clear(); + valid[0] = false; + } +} + +void l1ct::MiddleBufferMultififoRegionizerEmulator::destream(int iclock, + const std::vector& tk_out, + const std::vector& em_out, + const std::vector& calo_out, + const std::vector& mu_out, + PFInputRegion& out) { + if (ntk_) + tkRegionizerPost_.destream(iclock, tk_out, out.track); + if (ncalo_) + hadCaloRegionizerPost_.destream(iclock, calo_out, out.hadcalo); + if (nem_) + emCaloRegionizerPost_.destream(iclock, em_out, out.emcalo); + if (nmu_) + muRegionizerPost_.destream(iclock, mu_out, out.muon); +} + +void l1ct::MiddleBufferMultififoRegionizerEmulator::reset() { + tkRegionizerPre_.reset(); + emCaloRegionizerPre_.reset(); + hadCaloRegionizerPre_.reset(); + muRegionizerPre_.reset(); + tkRegionizerPost_.reset(); + emCaloRegionizerPost_.reset(); + hadCaloRegionizerPost_.reset(); + muRegionizerPost_.reset(); + for (auto& b : tkBuffers_) + b.reset(); + for (auto& b : hadCaloBuffers_) + b.reset(); + for (auto& b : emCaloBuffers_) + b.reset(); + for (auto& b : muBuffers_) + b.reset(); +} + +void l1ct::MiddleBufferMultififoRegionizerEmulator::run(const RegionizerDecodedInputs& in, + std::vector& out) { + assert(streaming_); // doesn't make sense otherwise + if (!init_) + initSectorsAndRegions(in, out); + reset(); + std::vector tk_links_in, tk_out; + std::vector em_links_in, em_out; + std::vector calo_links_in, calo_out; + std::vector mu_links_in, mu_out; + + // read and sort the inputs + for (unsigned int iclock = 0; iclock < nclocks_; ++iclock) { + fillLinks(iclock, in, tk_links_in); + fillLinks(iclock, in, em_links_in); + fillLinks(iclock, in, calo_links_in); + fillLinks(iclock, in, mu_links_in); + + bool newevt = (iclock == 0); + step(newevt, tk_links_in, calo_links_in, em_links_in, mu_links_in, tk_out, calo_out, em_out, mu_out, true); + } + + // set up an empty event + for (auto& l : tk_links_in) + l.clear(); + for (auto& l : em_links_in) + l.clear(); + for (auto& l : calo_links_in) + l.clear(); + for (auto& l : mu_links_in) + l.clear(); + + // read and put the inputs in the regions + assert(out.size() == nregions_post_); + for (unsigned int iclock = 0; iclock < nclocks_; ++iclock) { + bool newevt = (iclock == 0); + step(newevt, tk_links_in, calo_links_in, em_links_in, mu_links_in, tk_out, calo_out, em_out, mu_out, true); + + unsigned int ireg = (iclock / (outii_ + pauseii_)); + if ((iclock % (outii_ + pauseii_)) >= outii_) + continue; + if (ireg >= nregions_post_) + break; + + if (streaming_) { + destream(iclock, tk_out, em_out, calo_out, mu_out, out[ireg]); + } else { + if (iclock % outii_ == 0) { + out[ireg].track = tk_out; + out[ireg].emcalo = em_out; + out[ireg].hadcalo = calo_out; + out[ireg].muon = mu_out; + } + } + } + + reset(); +} diff --git a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/multififo_regionizer_ref.cpp b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/multififo_regionizer_ref.cpp index a9e9d3977dde4..ef509bb4ccaf1 100644 --- a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/multififo_regionizer_ref.cpp +++ b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/multififo_regionizer_ref.cpp @@ -34,6 +34,7 @@ l1ct::MultififoRegionizerEmulator::MultififoRegionizerEmulator(const edm::Parame l1ct::MultififoRegionizerEmulator::MultififoRegionizerEmulator(const std::string& barrelSetup, const edm::ParameterSet& iConfig) : MultififoRegionizerEmulator(parseBarrelSetup(barrelSetup), + iConfig.getParameter("nTkLinks"), iConfig.getParameter("nHCalLinks"), iConfig.getParameter("nECalLinks"), iConfig.getParameter("nClocks"), @@ -71,6 +72,7 @@ edm::ParameterSetDescription l1ct::MultififoRegionizerEmulator::getParameterSetD description.ifValue(edm::ParameterDescription("barrelSetup", "Full54", true), edm::allowedValues("Full54", "Full27")); description.add("nClocks", 54); + description.add("nTkLinks", 2); description.add("nHCalLinks", 2); description.add("nECalLinks", 1); description.add("nTrack", 22); @@ -154,6 +156,7 @@ l1ct::MultififoRegionizerEmulator::MultififoRegionizerEmulator(unsigned int nend } l1ct::MultififoRegionizerEmulator::MultififoRegionizerEmulator(BarrelSetup barrelSetup, + unsigned int ntklinks, unsigned int nHCalLinks, unsigned int nECalLinks, unsigned int nclocks, @@ -168,7 +171,7 @@ l1ct::MultififoRegionizerEmulator::MultififoRegionizerEmulator(BarrelSetup barre : RegionizerEmulator(useAlsoVtxCoords), NTK_SECTORS((barrelSetup == BarrelSetup::Phi18 || barrelSetup == BarrelSetup::Phi9) ? 5 : 9), NCALO_SECTORS((barrelSetup == BarrelSetup::Phi18 || barrelSetup == BarrelSetup::Phi9) ? 2 : 3), - NTK_LINKS(2), + NTK_LINKS(ntklinks), NCALO_LINKS(2), HCAL_LINKS(nHCalLinks), ECAL_LINKS(nECalLinks), @@ -237,13 +240,13 @@ l1ct::MultififoRegionizerEmulator::MultififoRegionizerEmulator(BarrelSetup barre } else if (barrelSetup == BarrelSetup::Central18 || barrelSetup == BarrelSetup::Central9) { nTFEtaSlices = 2; } - unsigned int ireg0 = phisectors * ietaslice, il0 = 6 * (nTFEtaSlices - 1) * ie; + unsigned int ireg0 = phisectors * ietaslice, il0 = 3 * NTK_LINKS * (nTFEtaSlices - 1) * ie; if (barrelSetup == BarrelSetup::Phi18 || barrelSetup == BarrelSetup::Phi9) { for (unsigned int iregphi = 0; iregphi < (nregions_ / etaslices); ++iregphi) { for (unsigned int il = 0; il < NTK_LINKS; ++il) { tkRoutes_.emplace_back((iregphi + 1) + NTK_SECTORS * ie, il, iregphi + ireg0, il0 + il); - tkRoutes_.emplace_back((iregphi + 0) + NTK_SECTORS * ie, il, iregphi + ireg0, il0 + il + 2); - tkRoutes_.emplace_back((iregphi + 2) + NTK_SECTORS * ie, il, iregphi + ireg0, il0 + il + 4); + tkRoutes_.emplace_back((iregphi + 0) + NTK_SECTORS * ie, il, iregphi + ireg0, il0 + il + NTK_LINKS); + tkRoutes_.emplace_back((iregphi + 2) + NTK_SECTORS * ie, il, iregphi + ireg0, il0 + il + 2 * NTK_LINKS); } } } else { @@ -251,8 +254,8 @@ l1ct::MultififoRegionizerEmulator::MultififoRegionizerEmulator(BarrelSetup barre for (unsigned int il = 0; il < NTK_LINKS; ++il) { // max tracks per sector per clock unsigned int isp = (is + 1) % NTK_SECTORS, ism = (is + NTK_SECTORS - 1) % NTK_SECTORS; tkRoutes_.emplace_back(is + NTK_SECTORS * ie, il, is + ireg0, il0 + il); - tkRoutes_.emplace_back(is + NTK_SECTORS * ie, il, isp + ireg0, il0 + il + 2); - tkRoutes_.emplace_back(is + NTK_SECTORS * ie, il, ism + ireg0, il0 + il + 4); + tkRoutes_.emplace_back(is + NTK_SECTORS * ie, il, isp + ireg0, il0 + il + NTK_LINKS); + tkRoutes_.emplace_back(is + NTK_SECTORS * ie, il, ism + ireg0, il0 + il + 2 * NTK_LINKS); } } } diff --git a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/tdr_regionizer_ref.cpp b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/tdr_regionizer_ref.cpp index 79616c2753888..5d9d635dc8b02 100644 --- a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/tdr_regionizer_ref.cpp +++ b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/tdr_regionizer_ref.cpp @@ -75,9 +75,11 @@ void l1ct::TDRRegionizerEmulator::initSectorsAndRegions(const RegionizerDecodedI netaInBR_, nphiInBR_, nmu_, bigRegionEdges_[i], bigRegionEdges_[i + 1], nclocks_, 1, false); } - dbgCout() << "in.track.size() = " << in.track.size() << std::endl; - dbgCout() << "in.hadcalo.size() = " << in.hadcalo.size() << std::endl; - dbgCout() << "in.emcalo.size() = " << in.emcalo.size() << std::endl; + if (debug_) { + dbgCout() << "in.track.size() = " << in.track.size() << std::endl; + dbgCout() << "in.hadcalo.size() = " << in.hadcalo.size() << std::endl; + dbgCout() << "in.emcalo.size() = " << in.emcalo.size() << std::endl; + } if (ntk_) { for (unsigned int i = 0; i < nBigRegions_; i++) { diff --git a/L1Trigger/Phase2L1ParticleFlow/test/make_l1ct_binaryFiles_cfg.py b/L1Trigger/Phase2L1ParticleFlow/test/make_l1ct_binaryFiles_cfg.py index 98fe13e76b47d..2e4a31d738d9b 100644 --- a/L1Trigger/Phase2L1ParticleFlow/test/make_l1ct_binaryFiles_cfg.py +++ b/L1Trigger/Phase2L1ParticleFlow/test/make_l1ct_binaryFiles_cfg.py @@ -171,13 +171,24 @@ del process.l1tLayer1HGCalNoTKTM18.regionizerAlgoParameters.nEndcaps del process.l1tLayer1HGCalNoTKTM18.regionizerAlgoParameters.nTkLinks del process.l1tLayer1HGCalNoTKTM18.regionizerAlgoParameters.nCaloLinks + process.l1tLayer1BarrelSerenityTM18 = process.l1tLayer1BarrelSerenity.clone() + process.l1tLayer1BarrelSerenityTM18.regionizerAlgo = "MiddleBufferMultififo" + process.l1tLayer1BarrelSerenityTM18.regionizerAlgoParameters = cms.PSet( + nTrack = process.l1tLayer1BarrelSerenity.regionizerAlgoParameters.nTrack, + nCalo = process.l1tLayer1BarrelSerenity.regionizerAlgoParameters.nCalo, + nEmCalo = process.l1tLayer1BarrelSerenity.regionizerAlgoParameters.nEmCalo, + nMu = process.l1tLayer1BarrelSerenity.regionizerAlgoParameters.nMu, + ) + process.l1tLayer1BarrelSerenityTM18.boards = cms.VPSet(*[cms.PSet(regions = cms.vuint32(*range(18*i,18*i+18))) for i in range(3)]) process.runPF.insert(process.runPF.index(process.l1tLayer1HGCal)+1, process.l1tLayer1HGCalTM18) process.runPF.insert(process.runPF.index(process.l1tLayer1HGCalNoTK)+1, process.l1tLayer1HGCalNoTKTM18) + process.runPF.insert(process.runPF.index(process.l1tLayer1BarrelSerenity)+1, process.l1tLayer1BarrelSerenityTM18) if not args.patternFilesOFF: process.l1tLayer1HGCalTM18.patternWriters = cms.untracked.VPSet(*hgcalTM18WriterConfigs) process.l1tLayer1HGCalNoTKTM18.patternWriters = cms.untracked.VPSet(hgcalNoTKOutputTM18WriterConfig) + process.l1tLayer1BarrelSerenityTM18.patternWriters = cms.untracked.VPSet() if not args.dumpFilesOFF: - for det in "HGCalTM18", "HGCalNoTKTM18": + for det in "HGCalTM18", "HGCalNoTKTM18", "BarrelSerenityTM18": getattr(process, 'l1tLayer1'+det).dumpFileName = cms.untracked.string("TTbar_PU200_"+det+".dump") process.source.fileNames = [ '/store/cmst3/group/l1tr/gpetrucc/12_5_X/NewInputs125X/150223/TTbar_PU200/inputs125X_1.root' ] From 9a45075c68825d63f9bf8407501baaed202728b8 Mon Sep 17 00:00:00 2001 From: Giovanni Date: Mon, 13 Nov 2023 09:21:59 +0100 Subject: [PATCH 242/281] 27-buffer version of barrel regionizer --- .../middle_buffer_multififo_regionizer_ref.h | 6 +- ...middle_buffer_multififo_regionizer_ref.cpp | 128 +++++++++++++----- 2 files changed, 99 insertions(+), 35 deletions(-) diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h index 7f9685c119143..5ffcdbc738649 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h @@ -10,6 +10,7 @@ namespace l1ct { class MiddleBufferMultififoRegionizerEmulator : public RegionizerEmulator { public: MiddleBufferMultififoRegionizerEmulator(unsigned int nclocks, + unsigned int nbuffers, unsigned int etabufferDepth, unsigned int ntklinks, unsigned int nHCalLinks, @@ -86,11 +87,12 @@ namespace l1ct { protected: const unsigned int NTK_SECTORS, NCALO_SECTORS; const unsigned int NTK_LINKS, HCAL_LINKS, ECAL_LINKS, NMU_LINKS; - unsigned int nclocks_, etabuffer_depth_, ntk_, ncalo_, nem_, nmu_, outii_, pauseii_, nregions_pre_, nregions_post_; + unsigned int nclocks_, nbuffers_, etabuffer_depth_, ntk_, ncalo_, nem_, nmu_, outii_, pauseii_, nregions_pre_, + nregions_post_; bool streaming_; bool init_; unsigned int iclock_; - + std::vector mergedRegions_, outputRegions_; multififo_regionizer::Regionizer tkRegionizerPre_, tkRegionizerPost_; multififo_regionizer::Regionizer hadCaloRegionizerPre_, hadCaloRegionizerPost_; multififo_regionizer::Regionizer emCaloRegionizerPre_, emCaloRegionizerPost_; diff --git a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp index 59f9aef1d6c1b..d68babd637082 100644 --- a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp +++ b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp @@ -13,6 +13,7 @@ l1ct::MiddleBufferMultififoRegionizerEmulator::MiddleBufferMultififoRegionizerEmulator(const edm::ParameterSet& iConfig) : MiddleBufferMultififoRegionizerEmulator(iConfig.getParameter("nClocks"), + iConfig.getParameter("nBuffers"), iConfig.getParameter("etaBufferDepth"), iConfig.getParameter("nTkLinks"), iConfig.getParameter("nHCalLinks"), @@ -31,6 +32,7 @@ l1ct::MiddleBufferMultififoRegionizerEmulator::MiddleBufferMultififoRegionizerEm edm::ParameterSetDescription l1ct::MiddleBufferMultififoRegionizerEmulator::getParameterSetDescription() { edm::ParameterSetDescription description; description.add("nClocks", 162); + description.add("nBuffers", 54); description.add("etaBufferDepth", 54); description.add("nTkLinks", 1); description.add("nHCalLinks", 1); @@ -47,6 +49,7 @@ edm::ParameterSetDescription l1ct::MiddleBufferMultififoRegionizerEmulator::getP #endif l1ct::MiddleBufferMultififoRegionizerEmulator::MiddleBufferMultififoRegionizerEmulator(unsigned int nclocks, + unsigned int nbuffers, unsigned int etabufferDepth, unsigned int ntklinks, unsigned int nHCalLinks, @@ -67,6 +70,7 @@ l1ct::MiddleBufferMultififoRegionizerEmulator::MiddleBufferMultififoRegionizerEm ECAL_LINKS(nECalLinks), NMU_LINKS(1), nclocks_(nclocks), + nbuffers_(nbuffers), etabuffer_depth_(etabufferDepth), ntk_(ntk), ncalo_(ncalo), @@ -87,10 +91,11 @@ l1ct::MiddleBufferMultififoRegionizerEmulator::MiddleBufferMultififoRegionizerEm emCaloRegionizerPost_(nem, (nem + outii - 1) / outii, true, outii, pauseii), muRegionizerPre_(nmu, nmu, false, outii, pauseii), muRegionizerPost_(nmu, std::max(1u, (nmu + outii - 1) / outii), true, outii, pauseii), - tkBuffers_(ntk ? nregions_post_ : 0), - hadCaloBuffers_(ncalo ? nregions_post_ : 0), - emCaloBuffers_(nem ? nregions_post_ : 0), - muBuffers_(nmu ? nregions_post_ : 0) { + tkBuffers_(ntk ? nbuffers_ : 0), + hadCaloBuffers_(ncalo ? nbuffers_ : 0), + emCaloBuffers_(nem ? nbuffers_ : 0), + muBuffers_(nmu ? nbuffers_ : 0) { + assert(nbuffers_ == nregions_post_ || nbuffers_ == nregions_pre_); unsigned int phisectors = 9, etaslices = 3; for (unsigned int ietaslice = 0; ietaslice < etaslices && ntk > 0; ++ietaslice) { for (unsigned int ie = 0; ie < 2; ++ie) { // 0 = negative, 1 = positive @@ -145,6 +150,9 @@ void l1ct::MiddleBufferMultififoRegionizerEmulator::initSectorsAndRegions(const std::vector mergedRegions; unsigned int neta = 3, nphi = 9; + mergedRegions.reserve(nregions_pre_); + mergedRegions_.reserve(nregions_pre_); + outputRegions_.reserve(nregions_post_); for (unsigned int ieta = 0; ieta < neta; ++ieta) { for (unsigned int iphi = 0; iphi < nphi; ++iphi) { const PFRegionEmu& reg0 = out[(2 * ieta + 0) * nphi + iphi].region; @@ -156,32 +164,47 @@ void l1ct::MiddleBufferMultififoRegionizerEmulator::initSectorsAndRegions(const reg0.floatPhiHalfWidth() * 2, reg0.floatEtaExtra(), reg0.floatPhiExtra()); + mergedRegions_.push_back(mergedRegions.back().region); + outputRegions_.push_back(reg0); + outputRegions_.push_back(reg1); if (debug_) { dbgCout() << "Created region with etaCenter " << mergedRegions.back().region.hwEtaCenter.to_int() << ", halfWidth " << mergedRegions.back().region.hwEtaHalfWidth.to_int() << "\n"; } - for (int i = 0; i < 2; ++i) { - unsigned int iout = (2 * ieta + i) * nphi + iphi; - const l1ct::PFRegionEmu& from = mergedRegions.back().region; - const l1ct::PFRegionEmu& to = out[iout].region; - l1ct::glbeta_t etaMin = to.hwEtaCenter - to.hwEtaHalfWidth - to.hwEtaExtra - from.hwEtaCenter; - l1ct::glbeta_t etaMax = to.hwEtaCenter + to.hwEtaHalfWidth + to.hwEtaExtra - from.hwEtaCenter; - l1ct::glbeta_t etaShift = from.hwEtaCenter - to.hwEtaCenter; - l1ct::glbphi_t phiMin = -to.hwPhiHalfWidth - to.hwPhiExtra; - l1ct::glbphi_t phiMax = +to.hwPhiHalfWidth + to.hwPhiExtra; - l1ct::glbphi_t phiShift = 0; + if (nbuffers_ == nregions_post_) { + for (int i = 0; i < 2; ++i) { + unsigned int iout = (2 * ieta + i) * nphi + iphi; + const l1ct::PFRegionEmu& from = mergedRegions.back().region; + const l1ct::PFRegionEmu& to = out[iout].region; + l1ct::glbeta_t etaMin = to.hwEtaCenter - to.hwEtaHalfWidth - to.hwEtaExtra - from.hwEtaCenter; + l1ct::glbeta_t etaMax = to.hwEtaCenter + to.hwEtaHalfWidth + to.hwEtaExtra - from.hwEtaCenter; + l1ct::glbeta_t etaShift = from.hwEtaCenter - to.hwEtaCenter; + l1ct::glbphi_t phiMin = -to.hwPhiHalfWidth - to.hwPhiExtra; + l1ct::glbphi_t phiMax = +to.hwPhiHalfWidth + to.hwPhiExtra; + l1ct::glbphi_t phiShift = 0; + if (ntk_ > 0) + tkBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer( + etabuffer_depth_, etaMin, etaMax, etaShift, phiMin, phiMax, phiShift); + if (ncalo_ > 0) + hadCaloBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer( + etabuffer_depth_, etaMin, etaMax, etaShift, phiMin, phiMax, phiShift); + if (nem_ > 0) + emCaloBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer( + etabuffer_depth_, etaMin, etaMax, etaShift, phiMin, phiMax, phiShift); + if (nmu_ > 0) + muBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer( + etabuffer_depth_, etaMin, etaMax, etaShift, phiMin, phiMax, phiShift); + } + } else if (nbuffers_ == nregions_pre_) { + unsigned int iout = ieta * nphi + iphi; if (ntk_ > 0) - tkBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer( - etabuffer_depth_, etaMin, etaMax, etaShift, phiMin, phiMax, phiShift); + tkBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer(etabuffer_depth_); if (ncalo_ > 0) - hadCaloBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer( - etabuffer_depth_, etaMin, etaMax, etaShift, phiMin, phiMax, phiShift); + hadCaloBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer(etabuffer_depth_); if (nem_ > 0) - emCaloBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer( - etabuffer_depth_, etaMin, etaMax, etaShift, phiMin, phiMax, phiShift); + emCaloBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer(etabuffer_depth_); if (nmu_ > 0) - muBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer( - etabuffer_depth_, etaMin, etaMax, etaShift, phiMin, phiMax, phiShift); + muBuffers_[iout] = l1ct::multififo_regionizer::EtaPhiBuffer(etabuffer_depth_); } } } @@ -265,8 +288,8 @@ bool l1ct::MiddleBufferMultififoRegionizerEmulator::step(bool newEvent, for (unsigned int ieta = 0; ieta < neta; ++ieta) { for (unsigned int iphi = 0; iphi < nphi; ++iphi) { unsigned int iin = ieta * nphi + iphi; - for (int i = 0; i < 2; ++i) { - unsigned int iout = (2 * ieta + i) * nphi + iphi; + for (int i = 0, n = nbuffers_ == nregions_pre_ ? 1 : 2; i < n; ++i) { + unsigned int iout = (n * ieta + i) * nphi + iphi; if (ntk_) tkBuffers_[iout].maybe_push(pre_out_tk[iin]); if (ncalo_) @@ -294,15 +317,54 @@ bool l1ct::MiddleBufferMultififoRegionizerEmulator::step(bool newEvent, std::vector bufferOut_hadCalo(ncalo_ ? nregions_post_ : 0); std::vector bufferOut_emCalo(nem_ ? nregions_post_ : 0); std::vector bufferOut_mu(nmu_ ? nregions_post_ : 0); - for (unsigned int i = 0; i < nregions_post_; ++i) { - if (ntk_) - bufferOut_tk[i] = tkBuffers_[i].pop(); - if (ncalo_) - bufferOut_hadCalo[i] = hadCaloBuffers_[i].pop(); - if (nem_) - bufferOut_emCalo[i] = emCaloBuffers_[i].pop(); - if (nmu_) - bufferOut_mu[i] = muBuffers_[i].pop(); + if (nbuffers_ == nregions_post_) { // just copy directly + for (unsigned int i = 0; i < nregions_post_; ++i) { + if (ntk_) + bufferOut_tk[i] = tkBuffers_[i].pop(); + if (ncalo_) + bufferOut_hadCalo[i] = hadCaloBuffers_[i].pop(); + if (nem_) + bufferOut_emCalo[i] = emCaloBuffers_[i].pop(); + if (nmu_) + bufferOut_mu[i] = muBuffers_[i].pop(); + } + } else if (nbuffers_ == nregions_pre_) { // propagate and copy + unsigned int neta = 3, nphi = 9; + for (unsigned int ieta = 0; ieta < neta; ++ieta) { + for (unsigned int iphi = 0; iphi < nphi; ++iphi) { + unsigned int iin = ieta * nphi + iphi; + const l1ct::PFRegionEmu& from = mergedRegions_[iin]; + l1ct::TkObjEmu tk = ntk_ ? tkBuffers_[iin].pop() : l1ct::TkObjEmu(); + l1ct::HadCaloObjEmu calo = ncalo_ ? hadCaloBuffers_[iin].pop() : l1ct::HadCaloObjEmu(); + l1ct::EmCaloObjEmu em = nem_ ? emCaloBuffers_[iin].pop() : l1ct::EmCaloObjEmu(); + l1ct::MuObjEmu mu = nmu_ ? muBuffers_[iin].pop() : l1ct::MuObjEmu(); + for (int i = 0; i < 2; ++i) { + const l1ct::PFRegionEmu& to = outputRegions_[2 * iin + i]; + unsigned int iout = (2 * ieta + i) * nphi + iphi; + l1ct::glbeta_t etaMin = to.hwEtaCenter - to.hwEtaHalfWidth - to.hwEtaExtra - from.hwEtaCenter; + l1ct::glbeta_t etaMax = to.hwEtaCenter + to.hwEtaHalfWidth + to.hwEtaExtra - from.hwEtaCenter; + l1ct::glbeta_t etaShift = from.hwEtaCenter - to.hwEtaCenter; + l1ct::glbphi_t phiMin = -to.hwPhiHalfWidth - to.hwPhiExtra; + l1ct::glbphi_t phiMax = +to.hwPhiHalfWidth + to.hwPhiExtra; + if (tk.hwPt > 0 && l1ct::multififo_regionizer::local_eta_phi_window(tk, etaMin, etaMax, phiMin, phiMax)) { + bufferOut_tk[iout] = tk; + bufferOut_tk[iout].hwEta += etaShift; + } + if (calo.hwPt > 0 && l1ct::multififo_regionizer::local_eta_phi_window(calo, etaMin, etaMax, phiMin, phiMax)) { + bufferOut_hadCalo[iout] = calo; + bufferOut_hadCalo[iout].hwEta += etaShift; + } + if (em.hwPt > 0 && l1ct::multififo_regionizer::local_eta_phi_window(em, etaMin, etaMax, phiMin, phiMax)) { + bufferOut_emCalo[iout] = em; + bufferOut_emCalo[iout].hwEta += etaShift; + } + if (mu.hwPt > 0 && l1ct::multififo_regionizer::local_eta_phi_window(mu, etaMin, etaMax, phiMin, phiMax)) { + bufferOut_mu[iout] = mu; + bufferOut_mu[iout].hwEta += etaShift; + } + } + } + } } if (ntk_) tkRegionizerPost_.muxonly_step(newEvent, /*flush=*/true, bufferOut_tk, out_tk); From 82f5f7adb383c5ff1d38318ac89c9b9020338003 Mon Sep 17 00:00:00 2001 From: Giovanni Date: Wed, 15 Nov 2023 10:10:05 +0100 Subject: [PATCH 243/281] Support single-link mode for MiddleBufferMultififoRegionizerEmulator --- .../middle_buffer_multififo_regionizer_ref.h | 11 +++ ...middle_buffer_multififo_regionizer_ref.cpp | 80 ++++++++++++++++++- 2 files changed, 87 insertions(+), 4 deletions(-) diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h index 5ffcdbc738649..b53d34f05a6f3 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/middle_buffer_multififo_regionizer_ref.h @@ -56,6 +56,7 @@ namespace l1ct { std::vector unused; fillLinks(iclock, in, links, unused); } + void destream(int iclock, const std::vector& tk_out, const std::vector& em_out, @@ -108,6 +109,16 @@ namespace l1ct { const std::vector>& in, std::vector& links, std::vector& valid); + + void fillSharedCaloLinks(unsigned int iclock, + const std::vector>& em_in, + const std::vector>& had_in, + std::vector& links, + std::vector& valid); + + void encode(const l1ct::EmCaloObjEmu& from, l1ct::HadCaloObjEmu& to); + void encode(const l1ct::HadCaloObjEmu& from, l1ct::HadCaloObjEmu& to); + void decode(l1ct::HadCaloObjEmu& had, l1ct::EmCaloObjEmu& em); }; } // namespace l1ct diff --git a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp index d68babd637082..abc89f1fc696d 100644 --- a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp +++ b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp @@ -226,7 +226,8 @@ void l1ct::MiddleBufferMultififoRegionizerEmulator::initSectorsAndRegions(const assert(in.emcalo.size() == NCALO_SECTORS); emCaloRegionizerPre_.initSectors(in.emcalo); emCaloRegionizerPre_.initRegions(mergedRegions); - emCaloRegionizerPre_.initRouting(emCaloRoutes_); + if (ECAL_LINKS) + emCaloRegionizerPre_.initRouting(emCaloRoutes_); emCaloRegionizerPost_.initRegions(out); } if (nmu_) { @@ -261,8 +262,16 @@ bool l1ct::MiddleBufferMultififoRegionizerEmulator::step(bool newEvent, ret = muRegionizerPre_.step(newEvent, links_mu, pre_out_mu, false); if (ncalo_) ret = hadCaloRegionizerPre_.step(newEvent, links_hadCalo, pre_out_hadCalo, false); - if (nem_) - ret = emCaloRegionizerPre_.step(newEvent, links_emCalo, pre_out_emCalo, false); + if (nem_) { + if (ECAL_LINKS) { + ret = emCaloRegionizerPre_.step(newEvent, links_emCalo, pre_out_emCalo, false); + } else if (ncalo_) { + pre_out_emCalo.resize(pre_out_hadCalo.size()); + for (unsigned int i = 0, n = pre_out_hadCalo.size(); i < n; ++i) { + decode(pre_out_hadCalo[i], pre_out_emCalo[i]); + } + } + } // in the no-streaming case, we just output the pre-regionizer if (!streaming_) { @@ -427,6 +436,34 @@ void l1ct::MiddleBufferMultififoRegionizerEmulator::fillCaloLinks_(unsigned int } } } +void l1ct::MiddleBufferMultififoRegionizerEmulator::fillSharedCaloLinks( + unsigned int iclock, + const std::vector>& em_in, + const std::vector>& had_in, + std::vector& links, + std::vector& valid) { + assert(ECAL_LINKS == 0 && HCAL_LINKS == 1 && ncalo_ != 0 && nem_ != 0); + links.resize(NCALO_SECTORS); + valid.resize(links.size()); + // for the moment we assume the first 54 clocks are for EM, the rest for HAD + const unsigned int NCLK_EM = 54; + for (unsigned int is = 0; is < NCALO_SECTORS; ++is) { + links[is].clear(); + if (iclock < NCLK_EM) { + valid[is] = true; + if (iclock < em_in[is].size()) { + encode(em_in[is][iclock], links[is]); + } + } else { + if (iclock - NCLK_EM < had_in[is].size()) { + encode(had_in[is][iclock - NCLK_EM], links[is]); + valid[is] = true; + } else { + valid[is] = false; + } + } + } // sectors +} void l1ct::MiddleBufferMultififoRegionizerEmulator::fillLinks(unsigned int iclock, const l1ct::RegionizerDecodedInputs& in, @@ -434,7 +471,10 @@ void l1ct::MiddleBufferMultififoRegionizerEmulator::fillLinks(unsigned int icloc std::vector& valid) { if (ncalo_ == 0) return; - fillCaloLinks_(iclock, in.hadcalo, links, valid); + if (nem_ != 0 && ECAL_LINKS == 0 && HCAL_LINKS == 1) + fillSharedCaloLinks(iclock, in.emcalo, in.hadcalo, links, valid); + else + fillCaloLinks_(iclock, in.hadcalo, links, valid); } void l1ct::MiddleBufferMultififoRegionizerEmulator::fillLinks(unsigned int iclock, @@ -557,3 +597,35 @@ void l1ct::MiddleBufferMultififoRegionizerEmulator::run(const RegionizerDecodedI reset(); } + +void l1ct::MiddleBufferMultififoRegionizerEmulator::encode(const l1ct::EmCaloObjEmu& from, l1ct::HadCaloObjEmu& to) { + assert(!from.hwEmID[5]); + to.hwPt = from.hwPt; + to.hwEmPt = from.hwPtErr; + to.hwEta = from.hwEta; + to.hwPhi = from.hwPhi; + to.hwEmID[5] = true; + to.hwEmID(4, 0) = from.hwEmID(4, 0); + to.src = from.src; +} +void l1ct::MiddleBufferMultififoRegionizerEmulator::encode(const l1ct::HadCaloObjEmu& from, l1ct::HadCaloObjEmu& to) { + assert(!from.hwEmID[5]); + to = from; +} +void l1ct::MiddleBufferMultififoRegionizerEmulator::decode(l1ct::HadCaloObjEmu& had, l1ct::EmCaloObjEmu& em) { + if (had.hwPt && had.hwEmID[5]) { + em.hwPt = had.hwPt; + em.hwPtErr = had.hwEmPt; + em.hwEta = had.hwEta; + em.hwPhi = had.hwPhi; + em.hwEmID[5] = 0; + em.hwEmID(4, 0) = had.hwEmID(4, 0); + em.hwSrrTot = 0; + em.hwMeanZ = 0; + em.hwHoe = 0; + em.src = had.src; + had.clear(); + } else { + em.clear(); + } +} \ No newline at end of file From 9793955c41338f7b0dd9dc79bdb5b88a425445fb Mon Sep 17 00:00:00 2001 From: Giovanni Date: Wed, 15 Nov 2023 12:14:00 +0100 Subject: [PATCH 244/281] By default run TM18 barrel in 27-buffer single-link mode --- .../interface/regionizer/multififo_regionizer_elements_ref.h | 4 +--- .../src/regionizer/middle_buffer_multififo_regionizer_ref.cpp | 4 ++-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.h b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.h index 670e7bb91802c..0d7adcf55fe30 100644 --- a/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.h +++ b/L1Trigger/Phase2L1ParticleFlow/interface/regionizer/multififo_regionizer_elements_ref.h @@ -115,9 +115,7 @@ namespace l1ct { iwrite_ = 1 - iwrite_; items_[iwrite_].clear(); } - void readNewEvent() { - iread_ = 1 - iread_; - } + void readNewEvent() { iread_ = 1 - iread_; } T pop(); unsigned int writeSize() const { return items_[iwrite_].size(); } unsigned int readSize() const { return items_[iread_].size(); } diff --git a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp index abc89f1fc696d..aa818bb139ab6 100644 --- a/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp +++ b/L1Trigger/Phase2L1ParticleFlow/src/regionizer/middle_buffer_multififo_regionizer_ref.cpp @@ -32,11 +32,11 @@ l1ct::MiddleBufferMultififoRegionizerEmulator::MiddleBufferMultififoRegionizerEm edm::ParameterSetDescription l1ct::MiddleBufferMultififoRegionizerEmulator::getParameterSetDescription() { edm::ParameterSetDescription description; description.add("nClocks", 162); - description.add("nBuffers", 54); + description.add("nBuffers", 27); description.add("etaBufferDepth", 54); description.add("nTkLinks", 1); description.add("nHCalLinks", 1); - description.add("nECalLinks", 1); + description.add("nECalLinks", 0); description.add("nTrack", 22); description.add("nCalo", 15); description.add("nEmCalo", 12); From 009ab0dcb843ad3c8b69802a253d4b94b4fbce15 Mon Sep 17 00:00:00 2001 From: SohamBhattacharya Date: Fri, 12 Jan 2024 15:30:04 +0100 Subject: [PATCH 245/281] Add support for P2GTCandidates in HLT --- .../HLTReco/interface/TriggerEventWithRefs.h | 30 +++++++-- .../interface/TriggerRefsCollections.h | 63 ++++++++++++++++++- DataFormats/HLTReco/src/classes_def.xml | 12 ++-- .../HLTcore/interface/HLTEventAnalyzerRAW.h | 3 + .../interface/TriggerSummaryProducerAOD.h | 2 + .../HLTcore/plugins/HLTEventAnalyzerRAW.cc | 7 +++ .../plugins/TriggerSummaryProducerAOD.cc | 9 ++- .../plugins/TriggerSummaryProducerRAW.cc | 5 ++ 8 files changed, 121 insertions(+), 10 deletions(-) diff --git a/DataFormats/HLTReco/interface/TriggerEventWithRefs.h b/DataFormats/HLTReco/interface/TriggerEventWithRefs.h index a99105a311d6f..b4183caa6e6b3 100644 --- a/DataFormats/HLTReco/interface/TriggerEventWithRefs.h +++ b/DataFormats/HLTReco/interface/TriggerEventWithRefs.h @@ -63,6 +63,7 @@ namespace trigger { size_type l1tp2etsum_; size_type l1ttau_; size_type l1tetsum_; + size_type l1tp2gtcand_; /// constructor TriggerFilterObject() @@ -96,7 +97,8 @@ namespace trigger { l1tpftrack_(0), l1tp2etsum_(0), l1ttau_(0), - l1tetsum_(0) { + l1tetsum_(0), + l1tp2gtcand_(0) { filterTag_ = edm::InputTag().encode(); } TriggerFilterObject(const edm::InputTag& filterTag, @@ -129,7 +131,8 @@ namespace trigger { size_type l1tpftrack, size_type l1tp2etsum, size_type l1ttau, - size_type l1tetsum) + size_type l1tetsum, + size_type l1tp2gtcand) : filterTag_(filterTag.encode()), photons_(np), electrons_(ne), @@ -160,7 +163,8 @@ namespace trigger { l1tpftrack_(l1tpftrack), l1tp2etsum_(l1tp2etsum), l1ttau_(l1ttau), - l1tetsum_(l1tetsum) {} + l1tetsum_(l1tetsum), + l1tp2gtcand_(l1tp2gtcand) {} }; /// data members @@ -213,7 +217,8 @@ namespace trigger { addObjects(tfowr.l1tpftrackIds(), tfowr.l1tpftrackRefs()), addObjects(tfowr.l1tp2etsumIds(), tfowr.l1tp2etsumRefs()), addObjects(tfowr.l1ttauIds(), tfowr.l1ttauRefs()), - addObjects(tfowr.l1tetsumIds(), tfowr.l1tetsumRefs())) + addObjects(tfowr.l1tetsumIds(), tfowr.l1tetsumRefs()), + addObjects(tfowr.l1tp2gtcandIds(), tfowr.l1tp2gtcandRefs())) ); } @@ -414,6 +419,12 @@ namespace trigger { const size_type end(filterObjects_.at(filter).l1tetsum_); return std::pair(begin, end); } + + std::pair l1tp2gtcandSlice(size_type filter) const { + const size_type begin(filter == 0 ? 0 : filterObjects_.at(filter - 1).l1tp2gtcand_); + const size_type end(filterObjects_.at(filter).l1tp2gtcand_); + return std::pair(begin, end); + } /// extract Refs for a specific filter and of specific physics type @@ -747,6 +758,17 @@ namespace trigger { const size_type end(l1tetsumSlice(filter).second); TriggerRefsCollections::getObjects(id, l1tetsum, begin, end); } + + void getObjects(size_type filter, Vids& ids, VRl1tp2gtcand& l1tp2gtcand) const { + const size_type begin(l1tp2gtcandSlice(filter).first); + const size_type end(l1tp2gtcandSlice(filter).second); + TriggerRefsCollections::getObjects(ids, l1tp2gtcand, begin, end); + } + void getObjects(size_type filter, int id, VRl1tp2gtcand& l1tp2gtcand) const { + const size_type begin(l1tp2gtcandSlice(filter).first); + const size_type end(l1tp2gtcandSlice(filter).second); + TriggerRefsCollections::getObjects(id, l1tp2gtcand, begin, end); + } }; } // namespace trigger diff --git a/DataFormats/HLTReco/interface/TriggerRefsCollections.h b/DataFormats/HLTReco/interface/TriggerRefsCollections.h index 73ba440151d8b..f053f20739ac1 100644 --- a/DataFormats/HLTReco/interface/TriggerRefsCollections.h +++ b/DataFormats/HLTReco/interface/TriggerRefsCollections.h @@ -44,6 +44,7 @@ #include "DataFormats/L1Trigger/interface/Jet.h" #include "DataFormats/L1Trigger/interface/Tau.h" #include "DataFormats/L1Trigger/interface/EtSum.h" +#include "DataFormats/L1Trigger/interface/P2GTCandidate.h" #include "DataFormats/L1TMuonPhase2/interface/TrackerMuon.h" #include "DataFormats/L1TCorrelator/interface/TkElectron.h" #include "DataFormats/L1TCorrelator/interface/TkElectronFwd.h" @@ -102,6 +103,8 @@ namespace trigger { typedef std::vector VRpfjet; typedef std::vector VRpftau; typedef std::vector VRpfmet; + + typedef l1t::P2GTCandidateVectorRef VRl1tp2gtcand; class TriggerRefsCollections { /// data members @@ -172,6 +175,9 @@ namespace trigger { VRpftau pftauRefs_; Vids pfmetIds_; VRpfmet pfmetRefs_; + + Vids l1tp2gtcandIds_; + VRl1tp2gtcand l1tp2gtcandRefs_; /// methods public: @@ -241,7 +247,10 @@ namespace trigger { pftauIds_(), pftauRefs_(), pfmetIds_(), - pfmetRefs_() {} + pfmetRefs_(), + + l1tp2gtcandIds_(), + l1tp2gtcandRefs_() {} /// utility void swap(TriggerRefsCollections& other) { @@ -310,6 +319,9 @@ namespace trigger { std::swap(pftauRefs_, other.pftauRefs_); std::swap(pfmetIds_, other.pfmetIds_); std::swap(pfmetRefs_, other.pfmetRefs_); + + std::swap(l1tp2gtcandIds_, other.l1tp2gtcandIds_); + std::swap(l1tp2gtcandRefs_, other.l1tp2gtcandRefs_); } /// setters for L3 collections: (id=physics type, and Ref) @@ -436,6 +448,10 @@ namespace trigger { pfmetIds_.push_back(id); pfmetRefs_.push_back(ref); } + void addObject(int id, const l1t::P2GTCandidateRef& ref) { + l1tp2gtcandIds_.push_back(id); + l1tp2gtcandRefs_.push_back(ref); + } /// size_type addObjects(const Vids& ids, const VRphoton& refs) { @@ -622,6 +638,12 @@ namespace trigger { pfmetRefs_.insert(pfmetRefs_.end(), refs.begin(), refs.end()); return pfmetIds_.size(); } + size_type addObjects(const Vids& ids, const VRl1tp2gtcand& refs) { + assert(ids.size() == refs.size()); + l1tp2gtcandIds_.insert(l1tp2gtcandIds_.end(), ids.begin(), ids.end()); + l1tp2gtcandRefs_.insert(l1tp2gtcandRefs_.end(), refs.begin(), refs.end()); + return l1tp2gtcandIds_.size(); + } /// various physics-level getters: void getObjects(Vids& ids, VRphoton& refs) const { getObjects(ids, refs, 0, photonIds_.size()); } @@ -1674,6 +1696,41 @@ namespace trigger { } return; } + + void getObjects(Vids& ids, VRl1tp2gtcand& refs) const { getObjects(ids, refs, 0, l1tp2gtcandIds_.size()); } + void getObjects(Vids& ids, VRl1tp2gtcand& refs, size_type begin, size_type end) const { + assert(begin <= end); + assert(end <= l1tp2gtcandIds_.size()); + const size_type n(end - begin); + ids.resize(n); + refs.resize(n); + size_type j(0); + for (size_type i = begin; i != end; ++i) { + ids[j] = l1tp2gtcandIds_[i]; + refs[j] = l1tp2gtcandRefs_[i]; + ++j; + } + } + void getObjects(int id, VRl1tp2gtcand& refs) const { getObjects(id, refs, 0, l1tp2gtcandIds_.size()); } + void getObjects(int id, VRl1tp2gtcand& refs, size_type begin, size_type end) const { + assert(begin <= end); + assert(end <= l1tp2gtcandIds_.size()); + size_type n(0); + for (size_type i = begin; i != end; ++i) { + if (id == l1tp2gtcandIds_[i]) { + ++n; + } + } + refs.resize(n); + size_type j(0); + for (size_type i = begin; i != end; ++i) { + if (id == l1tp2gtcandIds_[i]) { + refs[j] = l1tp2gtcandRefs_[i]; + ++j; + } + } + return; + } /// low-level getters for data members size_type photonSize() const { return photonIds_.size(); } @@ -1797,6 +1854,10 @@ namespace trigger { size_type l1tetsumSize() const { return l1tetsumIds_.size(); } const Vids& l1tetsumIds() const { return l1tetsumIds_; } const VRl1tetsum& l1tetsumRefs() const { return l1tetsumRefs_; } + + size_type l1tp2gtcandSize() const { return l1tp2gtcandIds_.size(); } + const Vids& l1tp2gtcandIds() const { return l1tp2gtcandIds_; } + const VRl1tp2gtcand& l1tp2gtcandRefs() const { return l1tp2gtcandRefs_; } }; // picked up via argument dependent lookup, e-g- by boost::swap() diff --git a/DataFormats/HLTReco/src/classes_def.xml b/DataFormats/HLTReco/src/classes_def.xml index c0da653aa6527..a104854bce32d 100644 --- a/DataFormats/HLTReco/src/classes_def.xml +++ b/DataFormats/HLTReco/src/classes_def.xml @@ -43,7 +43,8 @@ - + + @@ -51,7 +52,8 @@ - + + @@ -69,7 +71,8 @@ - + + @@ -78,7 +81,8 @@ - + + diff --git a/HLTrigger/HLTcore/interface/HLTEventAnalyzerRAW.h b/HLTrigger/HLTcore/interface/HLTEventAnalyzerRAW.h index 1a130894a75af..165dbf653f84b 100644 --- a/HLTrigger/HLTcore/interface/HLTEventAnalyzerRAW.h +++ b/HLTrigger/HLTcore/interface/HLTEventAnalyzerRAW.h @@ -131,6 +131,9 @@ class HLTEventAnalyzerRAW : public edm::stream::EDAnalyzer<> { trigger::VRpftau pftauRefs_; trigger::Vids pfmetIds_; trigger::VRpfmet pfmetRefs_; + + trigger::Vids l1tp2gtcandIds_; + trigger::VRl1tp2gtcand l1tp2gtcandRefs_; }; template diff --git a/HLTrigger/HLTcore/interface/TriggerSummaryProducerAOD.h b/HLTrigger/HLTcore/interface/TriggerSummaryProducerAOD.h index 3b6b6feabc4f3..90426b68efd51 100644 --- a/HLTrigger/HLTcore/interface/TriggerSummaryProducerAOD.h +++ b/HLTrigger/HLTcore/interface/TriggerSummaryProducerAOD.h @@ -43,6 +43,7 @@ #include "DataFormats/L1Trigger/interface/L1JetParticleFwd.h" #include "DataFormats/L1Trigger/interface/L1EtMissParticleFwd.h" #include "DataFormats/L1Trigger/interface/L1HFRingsFwd.h" +#include "DataFormats/L1Trigger/interface/P2GTCandidate.h" #include "DataFormats/JetReco/interface/PFJetCollection.h" #include "DataFormats/TauReco/interface/PFTauFwd.h" @@ -217,5 +218,6 @@ class TriggerSummaryProducerAOD : public edm::global::EDProducer<> { edm::GetterOfProducts getL1TPFTauCollection_; edm::GetterOfProducts getL1THPSPFTauCollection_; edm::GetterOfProducts getL1TPFTrackCollection_; + edm::GetterOfProducts getL1TP2GTCandCollection_; }; #endif diff --git a/HLTrigger/HLTcore/plugins/HLTEventAnalyzerRAW.cc b/HLTrigger/HLTcore/plugins/HLTEventAnalyzerRAW.cc index 76116f4050f28..ed3515551b0c7 100644 --- a/HLTrigger/HLTcore/plugins/HLTEventAnalyzerRAW.cc +++ b/HLTrigger/HLTcore/plugins/HLTEventAnalyzerRAW.cc @@ -247,6 +247,9 @@ void HLTEventAnalyzerRAW::analyzeTrigger(const edm::Event& iEvent, pftauRefs_.clear(); pfmetIds_.clear(); pfmetRefs_.clear(); + + l1tp2gtcandIds_.clear(); + l1tp2gtcandRefs_.clear(); // Attention: must look only for modules actually run in this path for this event! for (unsigned int j = 0; j <= moduleIndex; ++j) { @@ -377,6 +380,10 @@ void HLTEventAnalyzerRAW::analyzeTrigger(const edm::Event& iEvent, // PFMETs triggerEventWithRefsHandle_->getObjects(filterIndex, pfmetIds_, pfmetRefs_); showObjects(pfmetIds_, pfmetRefs_, "PFMETs"); + + // L1TP2GTCandidates + triggerEventWithRefsHandle_->getObjects(filterIndex, l1tp2gtcandIds_, l1tp2gtcandRefs_); + showObjects(l1tp2gtcandIds_, l1tp2gtcandRefs_, "L1TP2GTCandidates"); } } diff --git a/HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc b/HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc index 1a3367ad08a58..036253167bd42 100644 --- a/HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc +++ b/HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc @@ -154,11 +154,13 @@ TriggerSummaryProducerAOD::TriggerSummaryProducerAOD(const edm::ParameterSet& ps getL1TPFTauCollection_ = edm::GetterOfProducts(productMatch, this); getL1THPSPFTauCollection_ = edm::GetterOfProducts(productMatch, this); getL1TPFTrackCollection_ = edm::GetterOfProducts(productMatch, this); - + getPFJetCollection_ = edm::GetterOfProducts(productMatch, this); getPFTauCollection_ = edm::GetterOfProducts(productMatch, this); getPFMETCollection_ = edm::GetterOfProducts(productMatch, this); + getL1TP2GTCandCollection_ = edm::GetterOfProducts(productMatch, this); + callWhenNewProductsRegistered([this](edm::BranchDescription const& bd) { getTriggerFilterObjectWithRefs_(bd); getRecoEcalCandidateCollection_(bd); @@ -190,6 +192,7 @@ TriggerSummaryProducerAOD::TriggerSummaryProducerAOD(const edm::ParameterSet& ps getPFJetCollection_(bd); getPFTauCollection_(bd); getPFMETCollection_(bd); + getL1TP2GTCandCollection_(bd); }); } @@ -385,6 +388,8 @@ void TriggerSummaryProducerAOD::produce(edm::StreamID, edm::Event& iEvent, const fillTriggerObjectCollections( toc, offset, tags, keys, iEvent, getPFMETCollection_, collectionTagsEvent); /// + fillTriggerObjectCollections( + toc, offset, tags, keys, iEvent, getL1TP2GTCandCollection_, collectionTagsEvent); const unsigned int nk(tags.size()); LogDebug("TriggerSummaryProducerAOD") << "Number of collections found: " << nk; const unsigned int no(toc.size()); @@ -457,6 +462,8 @@ void TriggerSummaryProducerAOD::produce(edm::StreamID, edm::Event& iEvent, const fillFilterObjectMembers(iEvent, filterTag, fobs[ifob]->pfjetIds(), fobs[ifob]->pfjetRefs(), offset, keys, ids); fillFilterObjectMembers(iEvent, filterTag, fobs[ifob]->pftauIds(), fobs[ifob]->pftauRefs(), offset, keys, ids); fillFilterObjectMembers(iEvent, filterTag, fobs[ifob]->pfmetIds(), fobs[ifob]->pfmetRefs(), offset, keys, ids); + fillFilterObjectMembers( + iEvent, filterTag, fobs[ifob]->l1tp2gtcandIds(), fobs[ifob]->l1tp2gtcandRefs(), offset, keys, ids); product->addFilter(filterTag, ids, keys); } } diff --git a/HLTrigger/HLTcore/plugins/TriggerSummaryProducerRAW.cc b/HLTrigger/HLTcore/plugins/TriggerSummaryProducerRAW.cc index e0800a26aadee..772f07124368c 100644 --- a/HLTrigger/HLTcore/plugins/TriggerSummaryProducerRAW.cc +++ b/HLTrigger/HLTcore/plugins/TriggerSummaryProducerRAW.cc @@ -115,6 +115,11 @@ void TriggerSummaryProducerRAW::produce(edm::StreamID, edm::Event& iEvent, const << "TriggerSummaryProducerRaw::addFilterObjects( )" << "\n fobs[ifob]->l1tmuonShowerIds().size() = " << fobs[ifob]->l1tmuonShowerIds().size() << "\n fobs[ifob]->l1tmuonShowerRefs().size() = " << fobs[ifob]->l1tmuonShowerRefs().size(); + LogTrace("TriggerSummaryProducerRaw") + << "TriggerSummaryProducerRaw::addFilterObjects( )" + << "\n fobs[ifob]->l1tp2gtcandSize() = " << fobs[ifob]->l1tp2gtcandSize() + << "\n fobs[ifob]->l1tp2gtcandIds().size() = " << fobs[ifob]->l1tp2gtcandIds().size() + << "\n fobs[ifob]->11tp2gtcandRefs().size() = " << fobs[ifob]->l1tp2gtcandRefs().size(); product.addFilterObject(tag, *fobs[ifob]); } From 5938ec207f2f7869fa56bcd20d0e31a6ab032b06 Mon Sep 17 00:00:00 2001 From: SohamBhattacharya Date: Fri, 12 Jan 2024 15:37:54 +0100 Subject: [PATCH 246/281] Code checks and format --- DataFormats/HLTReco/interface/TriggerEventWithRefs.h | 4 ++-- DataFormats/HLTReco/interface/TriggerRefsCollections.h | 10 +++++----- HLTrigger/HLTcore/interface/HLTEventAnalyzerRAW.h | 2 +- HLTrigger/HLTcore/plugins/HLTEventAnalyzerRAW.cc | 4 ++-- HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/DataFormats/HLTReco/interface/TriggerEventWithRefs.h b/DataFormats/HLTReco/interface/TriggerEventWithRefs.h index b4183caa6e6b3..f9e0c6877438b 100644 --- a/DataFormats/HLTReco/interface/TriggerEventWithRefs.h +++ b/DataFormats/HLTReco/interface/TriggerEventWithRefs.h @@ -419,7 +419,7 @@ namespace trigger { const size_type end(filterObjects_.at(filter).l1tetsum_); return std::pair(begin, end); } - + std::pair l1tp2gtcandSlice(size_type filter) const { const size_type begin(filter == 0 ? 0 : filterObjects_.at(filter - 1).l1tp2gtcand_); const size_type end(filterObjects_.at(filter).l1tp2gtcand_); @@ -758,7 +758,7 @@ namespace trigger { const size_type end(l1tetsumSlice(filter).second); TriggerRefsCollections::getObjects(id, l1tetsum, begin, end); } - + void getObjects(size_type filter, Vids& ids, VRl1tp2gtcand& l1tp2gtcand) const { const size_type begin(l1tp2gtcandSlice(filter).first); const size_type end(l1tp2gtcandSlice(filter).second); diff --git a/DataFormats/HLTReco/interface/TriggerRefsCollections.h b/DataFormats/HLTReco/interface/TriggerRefsCollections.h index f053f20739ac1..0fced2acffa85 100644 --- a/DataFormats/HLTReco/interface/TriggerRefsCollections.h +++ b/DataFormats/HLTReco/interface/TriggerRefsCollections.h @@ -103,7 +103,7 @@ namespace trigger { typedef std::vector VRpfjet; typedef std::vector VRpftau; typedef std::vector VRpfmet; - + typedef l1t::P2GTCandidateVectorRef VRl1tp2gtcand; class TriggerRefsCollections { @@ -175,7 +175,7 @@ namespace trigger { VRpftau pftauRefs_; Vids pfmetIds_; VRpfmet pfmetRefs_; - + Vids l1tp2gtcandIds_; VRl1tp2gtcand l1tp2gtcandRefs_; @@ -319,7 +319,7 @@ namespace trigger { std::swap(pftauRefs_, other.pftauRefs_); std::swap(pfmetIds_, other.pfmetIds_); std::swap(pfmetRefs_, other.pfmetRefs_); - + std::swap(l1tp2gtcandIds_, other.l1tp2gtcandIds_); std::swap(l1tp2gtcandRefs_, other.l1tp2gtcandRefs_); } @@ -1696,7 +1696,7 @@ namespace trigger { } return; } - + void getObjects(Vids& ids, VRl1tp2gtcand& refs) const { getObjects(ids, refs, 0, l1tp2gtcandIds_.size()); } void getObjects(Vids& ids, VRl1tp2gtcand& refs, size_type begin, size_type end) const { assert(begin <= end); @@ -1854,7 +1854,7 @@ namespace trigger { size_type l1tetsumSize() const { return l1tetsumIds_.size(); } const Vids& l1tetsumIds() const { return l1tetsumIds_; } const VRl1tetsum& l1tetsumRefs() const { return l1tetsumRefs_; } - + size_type l1tp2gtcandSize() const { return l1tp2gtcandIds_.size(); } const Vids& l1tp2gtcandIds() const { return l1tp2gtcandIds_; } const VRl1tp2gtcand& l1tp2gtcandRefs() const { return l1tp2gtcandRefs_; } diff --git a/HLTrigger/HLTcore/interface/HLTEventAnalyzerRAW.h b/HLTrigger/HLTcore/interface/HLTEventAnalyzerRAW.h index 165dbf653f84b..b5276a1469d3a 100644 --- a/HLTrigger/HLTcore/interface/HLTEventAnalyzerRAW.h +++ b/HLTrigger/HLTcore/interface/HLTEventAnalyzerRAW.h @@ -131,7 +131,7 @@ class HLTEventAnalyzerRAW : public edm::stream::EDAnalyzer<> { trigger::VRpftau pftauRefs_; trigger::Vids pfmetIds_; trigger::VRpfmet pfmetRefs_; - + trigger::Vids l1tp2gtcandIds_; trigger::VRl1tp2gtcand l1tp2gtcandRefs_; }; diff --git a/HLTrigger/HLTcore/plugins/HLTEventAnalyzerRAW.cc b/HLTrigger/HLTcore/plugins/HLTEventAnalyzerRAW.cc index ed3515551b0c7..8b3c2a873d5a3 100644 --- a/HLTrigger/HLTcore/plugins/HLTEventAnalyzerRAW.cc +++ b/HLTrigger/HLTcore/plugins/HLTEventAnalyzerRAW.cc @@ -247,7 +247,7 @@ void HLTEventAnalyzerRAW::analyzeTrigger(const edm::Event& iEvent, pftauRefs_.clear(); pfmetIds_.clear(); pfmetRefs_.clear(); - + l1tp2gtcandIds_.clear(); l1tp2gtcandRefs_.clear(); @@ -380,7 +380,7 @@ void HLTEventAnalyzerRAW::analyzeTrigger(const edm::Event& iEvent, // PFMETs triggerEventWithRefsHandle_->getObjects(filterIndex, pfmetIds_, pfmetRefs_); showObjects(pfmetIds_, pfmetRefs_, "PFMETs"); - + // L1TP2GTCandidates triggerEventWithRefsHandle_->getObjects(filterIndex, l1tp2gtcandIds_, l1tp2gtcandRefs_); showObjects(l1tp2gtcandIds_, l1tp2gtcandRefs_, "L1TP2GTCandidates"); diff --git a/HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc b/HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc index 036253167bd42..f21af12b8c190 100644 --- a/HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc +++ b/HLTrigger/HLTcore/plugins/TriggerSummaryProducerAOD.cc @@ -154,7 +154,7 @@ TriggerSummaryProducerAOD::TriggerSummaryProducerAOD(const edm::ParameterSet& ps getL1TPFTauCollection_ = edm::GetterOfProducts(productMatch, this); getL1THPSPFTauCollection_ = edm::GetterOfProducts(productMatch, this); getL1TPFTrackCollection_ = edm::GetterOfProducts(productMatch, this); - + getPFJetCollection_ = edm::GetterOfProducts(productMatch, this); getPFTauCollection_ = edm::GetterOfProducts(productMatch, this); getPFMETCollection_ = edm::GetterOfProducts(productMatch, this); From 76f11ab809e3eed0a51472227d2f0769a5d3c773 Mon Sep 17 00:00:00 2001 From: Federico Vazzoler Date: Fri, 5 May 2023 14:39:23 +0200 Subject: [PATCH 247/281] First implementation of Muon Track Splitting validation in the new all-in-one tool: - code-checks & code-format - fix deleteCanvas and code-format --- Alignment/OfflineValidation/README_MTS.md | 47 ++ .../OfflineValidation/macros/trackSplitPlot.C | 4 +- .../python/TkAlAllInOneTool/MTS.py | 499 ++++++++++++++++++ .../python/TkAlAllInOneTool/MTS_cfg.py | 203 +++++++ .../TkAlAllInOneTool/defaultInputFiles_cff.py | 2 + .../scripts/validateAlignments.py | 5 +- 6 files changed, 755 insertions(+), 5 deletions(-) create mode 100644 Alignment/OfflineValidation/README_MTS.md create mode 100644 Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS.py create mode 100644 Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS_cfg.py diff --git a/Alignment/OfflineValidation/README_MTS.md b/Alignment/OfflineValidation/README_MTS.md new file mode 100644 index 0000000000000..e818168e24d78 --- /dev/null +++ b/Alignment/OfflineValidation/README_MTS.md @@ -0,0 +1,47 @@ +## PV validation + +### General info + +``` +validations: + MTS: + : + : + +``` + +MTS validation runs in 1 possible type of steps: + - single (validation analysis by MTS_cfg.py) +Step name is arbitrary string which will be used as a reference for consequent steps. +Merge and trend jobs are not yet implemented. + +### Single PV jobs + +Single jobs can be specified per run (IoV as well). In case of MC, IoV is specified to arbitrary 1. + +**Parameters below to be updated** +Variable | Default value | Explanation/Options +-------- | ------------- | -------------------- +IOV | None | List of IOVs/runs defined by integer value. IOV 1 is reserved for MC. +Alignments | None | List of alignments. Will create separate directory for each. +dataset | See defaultInputFiles_cff.py | Path to txt file containing list of datasets to be used. If file is missing at EOS or is corrupted - job will eventually fail (most common issue). +goodlumi | cms.untracked.VLuminosityBlockRange() | Path to json file containing lumi information about selected IoV - must contain list of runs under particular IoV with lumiblock info. Format: `IOV_Vali_{}.json` +maxevents | 1 | Maximum number of events before cmsRun terminates. +maxtracks | 1 | Maximum number of tracks per event before next event is processed. +trackcollection | "generalTracks" | Track collection to be specified here, e.g. "ALCARECOTkAlMuonIsolated" or "ALCARECOTkAlMinBias" ... +tthrbuilder | "WithAngleAndTemplate" | Specify TTRH Builder +usePixelQualityFlag | True | Use pixel quality flag? +cosmicsZeroTesla | False | Is this validation for cosmics with zero magnetic field? +vertexcollection | "offlinePrimaryVertices" | Specify vertex collection to be used. +isda | True | Use DA algorithm (True) or GAP algorithm (False) +ismc | True | Is validation for MC (True) or Data (False)? +runboundary | 1 | Specify starting run number (can be also list of starting numbers in multirun approach). +runControl | False | Enable run control +ptCut | 3. | Probe tracks with pT > 3GeV +etaCut | 2.5 | Probe tracks in abs(eta) < 2.5 region +minPt | 1. | Define minimal track pT +maxPt | 30. | Define maximum track pT +doBPix | True | Do not run validation for BPix if needed +doFPix | True | Do not run validation for FPix if needed +forceBeamSpot | False | Force beam spot +numberOfBins | 48 | Define histogram granularity diff --git a/Alignment/OfflineValidation/macros/trackSplitPlot.C b/Alignment/OfflineValidation/macros/trackSplitPlot.C index 9b1d5c958a439..1e1adf6c65988 100644 --- a/Alignment/OfflineValidation/macros/trackSplitPlot.C +++ b/Alignment/OfflineValidation/macros/trackSplitPlot.C @@ -167,6 +167,7 @@ TCanvas *trackSplitPlot(Int_t nFiles, Double_t x = 0, y = 0, rel = 1, sigma1 = 1; Double_t sigma2 = 1; //if !pull, we want to divide by sqrt(2) because we want the error from 1 track Double_t sigmaorg = 0; + Int_t xint = 0, xint2 = 0; Int_t runNumber = 0; double pt1 = 0, maxpt1 = 0; @@ -644,9 +645,6 @@ void deleteCanvas(TObject *canvas) { return; } TCanvas *c1 = (TCanvas *)canvas; - TList *list = c1->GetListOfPrimitives(); - list->SetOwner(true); - list->Clear(); delete c1; } diff --git a/Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS.py b/Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS.py new file mode 100644 index 0000000000000..47fb4a959bee3 --- /dev/null +++ b/Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS.py @@ -0,0 +1,499 @@ +import copy +import os + +def MTS(config, validationDir): + ##List with all jobs + jobs = [] + mtsType = "single" + + ##Dictionary of lists of all IOVs (can be different per each single job) + IOVs = {} + + ##Auxilliary dictionary of isData flags per each merged job + isDataMerged = {} + + ##Start with single MTS jobs + if not mtsType in config["validations"]["MTS"]: + raise Exception("No 'single' key word in config for MTS") + + for singleName in config["validations"]["MTS"][mtsType]: + aux_IOV = config["validations"]["MTS"][mtsType][singleName]["IOV"] + if not isinstance(aux_IOV, list) and aux_IOV.endswith(".txt"): + config["validations"]["MTS"][mtsType][singleName]["IOV"] = [] + with open(aux_IOV, 'r') as IOVfile: + for line in IOVfile.readlines(): + if len(line) != 0: config["validations"]["MTS"][mtsType][singleName]["IOV"].append(int(line)) + for IOV in config["validations"]["MTS"][mtsType][singleName]["IOV"]: + ##Save IOV to loop later for merge jobs + if singleName not in IOVs.keys(): + IOVs[singleName] = [] + if IOV not in IOVs[singleName]: + IOVs[singleName].append(IOV) + + for alignment in config["validations"]["MTS"][mtsType][singleName]["alignments"]: + ##Work directory for each IOV + workDir = "{}/MTS/{}/{}/{}/{}".format(validationDir, mtsType, singleName, alignment, IOV) + + ##Write local config + local = {} + local["output"] = "{}/{}/MTS/{}/{}/{}/{}".format(config["LFS"], config["name"], mtsType, alignment, singleName, IOV) + local["alignment"] = copy.deepcopy(config["alignments"][alignment]) + local["validation"] = copy.deepcopy(config["validations"]["MTS"][mtsType][singleName]) + local["validation"].pop("alignments") + local["validation"]["IOV"] = IOV + if "dataset" in local["validation"]: + local["validation"]["dataset"] = local["validation"]["dataset"].format(IOV) + if "goodlumi" in local["validation"]: + local["validation"]["goodlumi"] = local["validation"]["goodlumi"].format(IOV) + + ##Write job info + job = { + "name": "MTS_{}_{}_{}_{}".format(mtsType, alignment, singleName, IOV), + "dir": workDir, + "exe": "cmsRun", + "cms-config": "{}/src/Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS_cfg.py".format(os.environ["CMSSW_BASE"]), + "run-mode": "Condor", + "dependencies": [], + "config": local, + } + + jobs.append(job) + +# FIXME%START: uncomment when the following modes will be available + if "merge" in config["validations"]["MTS"] or \ + "trends" in config["validations"]["MTS"] or \ + "averaged" in config["validations"]["MTS"]: + print("WARNING: 'merge', 'trends' and 'averaged' not yet supported. Will do nothing for them.") +# ##Do merge MTS if wished +# if "merge" in config["validations"]["MTS"]: +# ##List with merge jobs, will be expanded to jobs after looping +# mergeJobs = [] +# mtsType = "merge" +# +# ##Loop over all merge jobs +# for mergeName in config["validations"]["MTS"][mtsType]: +# ##Search for MC single(s) +# singlesMC = [] +# for singleName in config["validations"]["MTS"][mtsType][mergeName]['singles']: +# if len(IOVs[singleName]) == 1 and int(IOVs[singleName][0]) == 1: singlesMC.append(singleName) +# isMConly = (len(singlesMC) == len(config["validations"]["MTS"][mtsType][mergeName]['singles'])) +# if isMConly: +# isDataMerged[mergeName] = 0 +# elif len(singlesMC) == 0: +# isDataMerged[mergeName] = 1 +# else: +# isDataMerged[mergeName] = -1 +# +# ##Loop over singles +# for iname,singleName in enumerate(config["validations"]["MTS"][mtsType][mergeName]['singles']): +# isMC = (singleName in singlesMC) +# if isMConly and iname > 0: continue #special case for MC only comparison +# elif isMConly: singlesMC.pop(singlesMC.index(singleName)) +# +# for IOV in IOVs[singleName]: +# if isMC and not isMConly: continue #ignore IOV=1 as it is automatically added to each DATA IOV unless MC only comparison +# +# ##Work directory for each IOV +# workDir = "{}/MTS/{}/{}/{}".format(validationDir, mtsType, mergeName, IOV) #Different (DATA) single jobs must contain different set of IOVs +# +# ##Write job info +# local = {} +# +# job = { +# "name": "MTS_{}_{}_{}".format(mtsType, mergeName, IOV), +# "dir": workDir, +# "exe": "MTSmerge", +# "run-mode": "Condor", +# "dependencies": [], +# "config": local, +# } +# +# ##Deep copy necessary things from global config + assure plot order +# for alignment in config["alignments"]: +# idxIncrement = 0 +# local.setdefault("alignments", {}) +# if alignment in config["validations"]["MTS"]["single"][singleName]["alignments"]: #Cover all DATA validations +# local["alignments"][alignment] = copy.deepcopy(config["alignments"][alignment]) +# local["alignments"][alignment]['index'] = config["validations"]["MTS"]["single"][singleName]["alignments"].index(alignment) +# for singleMCname in singlesMC: +# if alignment in config["validations"]["MTS"]["single"][singleMCname]["alignments"]: #Add MC objects +# local["alignments"][alignment] = copy.deepcopy(config["alignments"][alignment]) +# local["alignments"][alignment]['index'] = len(config["validations"]["MTS"]["single"][singleName]["alignments"]) +# local["alignments"][alignment]['index'] += idxIncrement + config["validations"]["MTS"]["single"][singleMCname]["alignments"].index(alignment) +# idxIncrement += len(config["validations"]["MTS"]["single"][singleMCname]["alignments"]) +# local["validation"] = copy.deepcopy(config["validations"]["MTS"][mtsType][mergeName]) +# local["validation"]["IOV"] = IOV #is it really needed here? +# if "customrighttitle" in local["validation"].keys(): +# if "IOV" in local["validation"]["customrighttitle"]: +# local["validation"]["customrighttitle"] = local["validation"]["customrighttitle"].replace("IOV",str(IOV)) +# local["output"] = "{}/{}/MTS/{}/{}/{}".format(config["LFS"], config["name"], mtsType, mergeName, IOV) +# +# ##Add global plotting options +# if "style" in config.keys(): +# if "MTS" in config['style'].keys(): +# if mtsType in config['style']['MTS'].keys(): +# local["style"] = copy.deepcopy(config["style"]["MTS"][mtsType]) +# if "Rlabel" in local["style"] and "customrighttitle" in local["validation"].keys(): +# print("WARNING: custom right label is overwritten by global settings") +# +# ##Loop over all single jobs +# for singleJob in jobs: +# ##Get single job info and append to merge job if requirements fullfilled +# _alignment, _singleName, _singleIOV = singleJob["name"].split("_")[2:] +# if _singleName in config["validations"]["MTS"][mtsType][mergeName]["singles"]: +# if int(_singleIOV) == IOV or (int(_singleIOV) == 1 and _singleName in singlesMC): #matching DATA job or any MC single job +# local["alignments"][_alignment]["file"] = singleJob["config"]["output"] +# job["dependencies"].append(singleJob["name"]) +# +# ##Append to merge jobs +# mergeJobs.append(job) +# +# ##Append to all jobs +# jobs.extend(mergeJobs) +# +# if "trends" in config["validations"]["MTS"]: +# +# ##List with merge jobs, will be expanded to jobs after looping +# trendJobs = [] +# mtsType = "trends" +# +# for trendName in config["validations"]["MTS"][mtsType]: +# #print("trendName = {}".format(trendName)) +# ##Work directory for each IOV +# workDir = "{}/MTS/{}/{}".format(validationDir, mtsType, trendName) +# +# ##Write general job info +# local = {} +# job = { +# "name": "MTS_{}_{}".format(mtsType, trendName), +# "dir": workDir, +# "exe": "MTStrends", +# "run-mode": "Condor", +# "dependencies": [], +# "config": local, +# } +# +# ###Loop over merge steps (merge step can contain only DATA) +# mergesDATA = [] +# for mergeName in config["validations"]["MTS"][mtsType][trendName]["merges"]: +# ##Validate merge step +# if isDataMerged[mergeName] < 0: +# raise Exception("Trend jobs cannot process merge jobs containing both DATA and MC objects.") +# elif isDataMerged[mergeName] == 1: +# mergesDATA.append(mergeName) +# else: +# if "doUnitTest" in config["validations"]["MTS"][mtsType][trendName].keys() and config["validations"]["MTS"][mtsType][trendName]["doUnitTest"]: +# local.setdefault("alignments", {}) +# continue +# else: +# raise Exception("Trend jobs are not implemented for treating MC.") +# +# ###Loop over DATA singles included in merge steps +# trendIOVs = [] +# _mergeFiles = [] +# for mergeName in mergesDATA: +# for iname,singleName in enumerate(config["validations"]["MTS"]['merge'][mergeName]['singles']): +# trendIOVs += [IOV for IOV in IOVs[singleName]] +# ##Deep copy necessary things from global config + ensure plot order +# for alignment in config["alignments"]: +# local.setdefault("alignments", {}) +# if alignment in config["validations"]["MTS"]["single"][singleName]["alignments"]: #Cover all DATA validations +# local["alignments"][alignment] = copy.deepcopy(config["alignments"][alignment]) +# local["alignments"][alignment]['index'] = config["validations"]["MTS"]["single"][singleName]["alignments"].index(alignment) +# _mergeFiles.append("{}/{}/MTS/{}/{}/{}".format(config["LFS"], config["name"], "merge", mergeName, "{}")) +# trendIOVs.sort() +# local["validation"] = copy.deepcopy(config["validations"]["MTS"][mtsType][trendName]) +# if len(_mergeFiles) == 1: +# local["validation"]["mergeFile"] = _mergeFiles[0] +# else: +# local["validation"]["mergeFile"] = _mergeFiles #FIXME for multiple merge files in backend +# local["validation"]["IOV"] = trendIOVs +# local["output"] = "{}/{}/MTS/{}/{}/".format(config["LFS"], config["name"], mtsType, trendName) +# if "style" in config.keys() and "trends" in config["style"].keys(): +# local["style"] = copy.deepcopy(config["style"]) +# if "MTS" in local["style"].keys(): local["style"].pop("MTS") +# if "CMSlabel" in config["style"]["trends"].keys(): local["style"]["CMSlabel"] = config["style"]["trends"]["CMSlabel"] +# if "Rlabel" in config["style"]["trends"].keys(): +# local["style"]["trends"].pop("Rlabel") +# local["style"]["trends"]["TitleCanvas"] = config["style"]["trends"]["Rlabel"] +# else: +# raise Exception("You want to create 'trends' jobs, but there are no 'lines' section in the config for pixel updates!") +# +# #Loop over all merge jobs +# for mergeName in mergesDATA: +# for mergeJob in mergeJobs: +# alignment, mergeJobName, mergeIOV = mergeJob["name"].split("_")[1:] +# if mergeJobName == mergeName and int(mergeIOV) in trendIOVs: +# job["dependencies"].append(mergeJob["name"]) +# +# trendJobs.append(job) +# +# jobs.extend(trendJobs) +# +# if "averaged" in config["validations"]["MTS"]: +# +# ####Finally, list of jobs is expanded for luminosity-averaged plot (avp) job +# avpJobs = [] +# mtsType = "averaged" +# for avpName in config["validations"]["MTS"][mtsType]: +# ###Main workdir for each combination of displayed lumi-averaged validation objects to be plotted +# workDir = "{}/MTS/{}/{}".format(validationDir, mtsType, avpName) +# output = "{}/{}/MTS/{}/{}".format(config["LFS"], config["name"], mtsType, avpName) +# +# ###Loop over merge steps (one merge step can contain only DATA or only MC singles but not mix) +# mergesDATA = [] +# mergesMC = [] +# for mergeName in config["validations"]["MTS"][mtsType][avpName]["merges"]: +# ##Validate merge step +# if isDataMerged[mergeName] < 0: +# raise Exception("Average jobs cannot process merge jobs containing both DATA and MC objects.") +# elif isDataMerged[mergeName] == 1: +# mergesDATA.append(mergeName) +# else: +# mergesMC.append(mergeName) +# +# lumiPerRun = [] +# lumiPerIoV = [] +# lumiMC = [] +# if len(mergesDATA) > 0: +# if "lumiPerRun" in config["validations"]["MTS"][mtsType][avpName].keys(): +# for lumifile in config["validations"]["MTS"][mtsType][avpName]['lumiPerRun']: +# if lumifile.split(".")[-1] in ["txt","csv"]: +# lumiPerRun.append(lumifile) +# if "lumiPerIoV" in config["validations"]["MTS"][mtsType][avpName].keys(): +# for lumifile in config["validations"]["MTS"][mtsType][avpName]['lumiPerIoV']: +# if lumifile.split(".")[-1] in ["txt","csv"]: +# lumiPerIoV.append(lumifile) +# if len(lumiPerRun) == 0 and len(lumiPerIoV) == 0: +# raise Exception("No lumi per run/IoV file found or not specified in .csv/.txt format.") +# if len(mergesMC) > 0: +# if 'lumiMC' in config["validations"]["MTS"][mtsType][avpName].keys(): +# lumiMC = config["validations"]["MTS"][mtsType][avpName]['lumiMC'] +# +# ###Store information about plotting job in this dictionary +# plotJob = {} +# plotJob['workdir'] = "{}/{}".format(workDir,"plots") +# plotJob['output'] = "{}/{}".format(output,"plots") +# plotJob['inputData'] = [] +# plotJob['inputMC'] = [] +# plotJob['dependencies'] = [] +# +# ###First loop over DATA +# for mergeName in mergesDATA: +# ##Adapt workdir per merge step +# workDirMerge = "{}/{}".format(workDir, mergeName) +# outputMerge = "{}/{}".format(output, mergeName) +# +# ##Create local config per merge step +# local = {} +# local["type"] = "MTS" +# local["mode"] = "merge" +# local["isData"] = True +# local["isMC"] = False +# +# ##Deep copy necessary things from global config +# for alignment in config["alignments"]: +# local.setdefault("alignments", {}) +# for singleName in config["validations"]["MTS"]["merge"][mergeName]["singles"]: +# if alignment in config["validations"]["MTS"]["single"][singleName]['alignments']: +# local["alignments"][alignment] = copy.deepcopy(config["alignments"][alignment]) +# local["validation"] = copy.deepcopy(config["validations"]["MTS"][mtsType][avpName]) +# local["validation"]["mergeFile"] = "{}/{}/MTS/{}/{}/{}".format(config["LFS"], config["name"], "merge", mergeName, "{}") +# local["validation"]["lumiPerRun"] = lumiPerRun +# local["validation"]["lumiPerIoV"] = lumiPerIoV +# local["validation"]["lumiMC"] = lumiMC +# local["validation"]["firstFromNext"] = [] +# +# ##Determine list of IOVs in merge step (generally different than total list of IOVs) +# IOVsPerMergeStep = [] +# for singleName in config["validations"]["MTS"]["merge"][mergeName]["singles"]: +# for IOV in IOVs[singleName]: +# if IOV not in IOVsPerMergeStep: +# IOVsPerMergeStep.append(IOV) +# IOVsPerMergeStep.sort() +# +# ##Divide average step job to subjobs to prevent memory issues +# extra_part = 0 +# maxfiles = int(config["validations"]["MTS"][mtsType][avpName]['maxfiles']) +# if len(IOVsPerMergeStep)%maxfiles >= 2: +# extra_part = 1 +# parts = extra_part+len(IOVsPerMergeStep)//maxfiles +# +# subJob = {'name' : [], 'output' : [], 'lumiPerFile' : []} +# for ipart in range(0,parts): +# #Adapt workdir per each subjob +# workDirSub = workDirMerge+"_"+str(ipart) +# outputSub = outputMerge+"_"+str(ipart) +# +# #Define IOV group +# IOVGroup = [] +# lastIndex = 0 +# for iIOV,IOV in enumerate(IOVsPerMergeStep): +# if (iIOV//maxfiles == ipart) or (ipart == parts-1 and iIOV//maxfiles > ipart): +# IOVGroup.append(IOV) +# lastIndex = iIOV +# firstFromNext = [] +# if lastIndex != len(IOVsPerMergeStep)-1: +# firstFromNext.append(IOVsPerMergeStep[lastIndex+1]) +# +# #Write job info +# _local = copy.deepcopy(local) +# _local["output"] = outputSub +# _local["validation"]["IOV"] = IOVGroup +# _local["validation"]["firstFromNext"] = firstFromNext +# job = { +# "name": "MTS_{}_{}_{}".format(mtsType, avpName, mergeName+"_"+str(ipart)), +# "dir": workDirSub, +# "exe": "mkLumiAveragedPlots.py", +# "run-mode": "Condor", +# "dependencies": [], +# "config": _local, +# } +# subJob['output'].append(outputSub) +# subJob['name'].append("MTS_{}_{}_{}".format(mtsType, avpName, mergeName+"_"+str(ipart))) +# subJob['lumiPerFile'].append(os.path.join(outputSub,"lumiPerFile.csv")) +# if parts == 1: +# plotJob['inputData'].append(outputSub) +# plotJob['dependencies'].append(job['name']) +# +# #Set average job dependencies from the list of all merge jobs +# for mergeJob in mergeJobs: +# alignment, mergeJobName, mergeIOV = mergeJob["name"].split("_")[1:] +# if mergeJobName == mergeName and int(mergeIOV) in IOVGroup: +# job["dependencies"].append(mergeJob["name"]) +# #if mergeJobName in config["validations"]["MTS"][mtsType][avpName]["merges"]: +# # job["dependencies"].append(mergeJob["name"]) +# +# #Add to queue +# avpJobs.append(job) +# +# ##Add finalization job to merge all subjobs +# if parts > 1: +# localFinalize = copy.deepcopy(local) +# localFinalize['mode'] = "finalize" +# localFinalize['output'] = outputMerge +# localFinalize["validation"]["IOV"] = [] +# localFinalize["validation"]["mergeFile"] = subJob['output'] +# localFinalize["validation"]["lumiPerRun"] = [] +# localFinalize["validation"]["lumiPerIoV"] = subJob['lumiPerFile'] +# job = { +# "name": "MTS_{}_{}_{}".format(mtsType, avpName, mergeName+"_finalize"), +# "dir": workDirMerge, +# "exe": "mkLumiAveragedPlots.py", +# "run-mode": "Condor", +# "dependencies": subJob['name'], +# "config": localFinalize, +# } +# avpJobs.append(job) +# plotJob['inputData'].append(outputMerge) +# plotJob['dependencies'].append(job['name']) +# +# #Second create one averager job per all MC merge jobs +# if len(mergesMC) != 0: +# ##Adapt workdir per merge step +# workDirMerge = "{}/{}".format(workDir, "MC") +# outputMerge = "{}/{}".format(output, "MC") +# +# ##Create local config for MC average job +# local = {} +# local["type"] = "MTS" +# local["mode"] = "merge" +# local["isData"] = False +# local["isMC"] = True +# local["output"] = outputMerge +# +# ##Deep copy necessary things from global config +# local["validation"] = copy.deepcopy(config["validations"]["MTS"][mtsType][avpName]) +# local["validation"]["mergeFile"] = [] +# for mergeName in mergesMC: +# for alignment in config["alignments"]: +# local.setdefault("alignments", {}) +# for singleName in config["validations"]["MTS"]["merge"][mergeName]["singles"]: +# if alignment in config["validations"]["MTS"]["single"][singleName]['alignments']: +# local["alignments"][alignment] = copy.deepcopy(config["alignments"][alignment]) +# local["validation"]["mergeFile"].append("{}/{}/MTS/{}/{}/{}".format(config["LFS"], config["name"], "merge", mergeName, "{}")) +# local["validation"]["lumiPerRun"] = lumiPerRun +# local["validation"]["lumiPerIoV"] = lumiPerIoV +# local["validation"]["lumiMC"] = lumiMC +# local["validation"]["IOV"] = [1] +# +# ##Write job info +# job = { +# "name": "MTS_{}_{}_{}".format(mtsType, avpName, mergeName+"_MC"), +# "dir": workDirMerge, +# "exe": "mkLumiAveragedPlots.py", +# "run-mode": "Condor", +# "dependencies": [], +# "config": local, +# } +# plotJob['inputMC'].append(outputMerge) +# plotJob['dependencies'].append(job['name']) +# +# ##Set average job dependencies from the list of all merge jobs +# for mergeJob in mergeJobs: +# alignment, mergeJobName, mergeIOV = mergeJob["name"].split("_")[1:] +# if mergeJobName in mergesMC: +# job["dependencies"].append(mergeJob["name"]) +# +# ##Add to queue +# avpJobs.append(job) +# +# ##Finally add job to plot averaged distributions +# if len(plotJob['inputData'])+len(plotJob['inputMC']) > 0: +# local = {} +# local["type"] = "MTS" +# local["mode"] = "plot" +# local["isData"] = True if len(plotJob['inputData']) > 0 else False +# local["isMC"] = True if len(plotJob['inputMC']) > 0 else False +# local["output"] = plotJob['output'] +# local["plot"] = { "inputData" : plotJob['inputData'], +# "inputMC" : plotJob['inputMC'], +# "alignments" : [], +# "objects" : [], +# "labels" : [], +# "colors" : [], +# "styles" : [], +# "useFit" : True, +# "useFitError" : False, +# "showMean" : True, +# "showMeanError" : False, +# "showRMS" : False, +# "showRMSError" : False} +# ##Copy alignment objects info from global config +# for mergeName in mergesDATA+mergesMC: +# for singleName in config["validations"]["MTS"]["merge"][mergeName]["singles"]: +# for alignment in config["validations"]["MTS"]["single"][singleName]['alignments']: +# if alignment in config['alignments'] and alignment not in local["plot"]["alignments"]: +# local["plot"]["alignments"].append(alignment) +# objectName = config["alignments"][alignment]["title"].replace(" ","_") +# if objectName not in local["plot"]["objects"]: #can happen for MC +# local["plot"]["objects"].append(objectName) +# local["plot"]["labels"].append(config["alignments"][alignment]["title"]) +# local["plot"]["colors"].append(config["alignments"][alignment]["color"]) +# local["plot"]["styles"].append(config["alignments"][alignment]["style"]) +# ##Overwrite if needed +# for extraKey in ["objects","labels","colors","styles","useFit","useFitError","showMean","showMeamError","showRMS","showRMSError"]: +# if extraKey in config["validations"]["MTS"][mtsType][avpName].keys(): +# local["plot"][extraKey] = config["validations"]["MTS"][mtsType][avpName][extraKey] +# ##Add global plotting options +# if "style" in config.keys(): +# if "MTS" in config['style'].keys(): +# if mtsType in config['style']['MTS'].keys(): +# local["plotGlobal"] = copy.deepcopy(config["style"]['MTS'][mtsType]) +# +# ##Write job info +# job = { +# "name": "MTS_{}_{}_{}".format(mtsType, avpName, "plot"), +# "dir": plotJob['workdir'], +# "exe": "mkLumiAveragedPlots.py", +# "run-mode": "Condor", +# "dependencies": plotJob['dependencies'], +# "config": local, +# } +# avpJobs.append(job) +# +# #Finally extend main job collection +# jobs.extend(avpJobs) +# +# FIXME%END + return jobs diff --git a/Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS_cfg.py b/Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS_cfg.py new file mode 100644 index 0000000000000..f5aaedc8414fa --- /dev/null +++ b/Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS_cfg.py @@ -0,0 +1,203 @@ +import json +import yaml +import os +import FWCore.ParameterSet.Config as cms +import FWCore.PythonUtilities.LumiList as LumiList +from Alignment.OfflineValidation.TkAlAllInOneTool.defaultInputFiles_cff import filesDefaultData_Cosmics_string +from FWCore.ParameterSet.VarParsing import VarParsing +from Alignment.OfflineValidation.TkAlAllInOneTool.utils import _byteify +import pdb + +################################################################### +# Define process +################################################################### +process = cms.Process("splitter") + +################################################################### +# Argument parsing +################################################################### +options = VarParsing() +options.register("config", "", VarParsing.multiplicity.singleton, VarParsing.varType.string , "AllInOne config") +options.parseArguments() + +################################################################### +# Read in AllInOne config in JSON format +################################################################### +if options.config == "": + config = {"validation": {}, + "alignment": {}} +else: + with open(options.config, "r") as configFile: + if options.config.endswith(".json"): + config = json.load(configFile) + elif options.config.endswith(".yaml"): + config = yaml.safe_load(configFile) + +################################################################### +# Read filenames from given TXT file and define input source +################################################################### +readFiles = [] + +if "dataset" in config["validation"]: + with open(config["validation"]["dataset"], "r") as datafiles: + for fileName in datafiles.readlines(): + readFiles.append(fileName.replace("\n", "")) + + process.source = cms.Source("PoolSource", + fileNames = cms.untracked.vstring(readFiles), + skipEvents = cms.untracked.uint32(0) + ) +else: + print(">>>>>>>>>> MTS_cfg.py: msg%-i: dataset not specified! Loading default file -> filesDefaultData_Cosmics_string!") + process.source = cms.Source("PoolSource", + fileNames = cms.untracked.vstring(filesDefaultData_Cosmics_string), + skipEvents = cms.untracked.uint32(0) + ) + +################################################################### +# Get good lumi section and load data or handle MC +################################################################### +if "goodlumi" in config["validation"]: + if os.path.isfile(config["validation"]["goodlumi"]): + goodLumiSecs = cms.untracked.VLuminosityBlockRange(LumiList.LumiList(filename = config["validation"]["goodlumi"]).getCMSSWString().split(',')) + else: + print("Does not exist: {}. Continue without good lumi section file.") + goodLumiSecs = cms.untracked.VLuminosityBlockRange() + +else: + goodLumiSecs = cms.untracked.VLuminosityBlockRange() + +################################################################### +# Runs and events +################################################################### +runboundary = config["validation"].get("runboundary", 1) +isMultipleRuns=False +if(isinstance(runboundary, (list, tuple))): + isMultipleRuns=True + print("Multiple Runs are selected") +if(isMultipleRuns): + process.source.firstRun = cms.untracked.uint32(runboundary[0]) +else: + process.source.firstRun = cms.untracked.uint32(runboundary) + +################################################################### +# Default set to 1 for unit tests +################################################################### +process.maxEvents = cms.untracked.PSet(input = cms.untracked.int32(config["validation"].get("maxevents", 1))) + +################################################################### +# Bookeeping +################################################################### +process.options = cms.untracked.PSet( + wantSummary = cms.untracked.bool(False), + Rethrow = cms.untracked.vstring("ProductNotFound"), # make this exception fatal + fileMode = cms.untracked.string('NOMERGE'), # no ordering needed, but calls endRun/beginRun etc. at file boundaries +) + +################################################################### +# Messages +################################################################### +process.load("FWCore.MessageLogger.MessageLogger_cfi") +process.MessageLogger.cerr.FwkReport.reportEvery = 1000 +process.MessageLogger.cout.enableStatistics = cms.untracked.bool(True) + +################################################################### +# Basic modules +################################################################### +process.load("RecoVertex.BeamSpotProducer.BeamSpot_cff") +process.load("Configuration.Geometry.GeometryDB_cff") +process.load('Configuration.StandardSequences.Services_cff') +process.load("Configuration.StandardSequences.MagneticField_cff") + +#################################################################### +# Load and Configure Track refitter +#################################################################### +import Alignment.CommonAlignment.tools.trackselectionRefitting as trackselRefit +process.seqTrackselRefit = trackselRefit.getSequence( + process, + config["validation"].get("trackcollection", "ALCARECOTkAlCosmicsCTF0T"), + isPVValidation = False, + TTRHBuilder = config["validation"].get("tthrbuilder", "WithAngleAndTemplate"), + usePixelQualityFlag=config["validation"].get("usePixelQualityFlag", True), + openMassWindow = False, + cosmicsDecoMode = True, + cosmicsZeroTesla=config["validation"].get("cosmicsZeroTesla", False), + momentumConstraint = None, + cosmicTrackSplitting = True, + use_d0cut = False +) + +#################################################################### +# Global tag +#################################################################### +process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff") +from Configuration.AlCa.GlobalTag import GlobalTag +process.GlobalTag = GlobalTag(process.GlobalTag, config["alignment"].get("globaltag", "124X_dataRun3_Prompt_v10")) + +#################################################################### +# Load conditions if wished +#################################################################### +if "conditions" in config["alignment"]: + from CalibTracker.Configuration.Common.PoolDBESSource_cfi import poolDBESSource + + for condition in config["alignment"]["conditions"]: + setattr( + process, + "conditionsIn{}".format(condition), + poolDBESSource.clone( + # FIXME%START + connect = cms.string("sqlite_file:" + str(config["alignment"]["conditions"][condition]["connect"]) if "alignments_MP.db" in str(config["alignment"]["conditions"][condition]["connect"]) else str(config["alignment"]["conditions"][condition]["connect"])), + #FIXME%END + toGet = cms.VPSet( + cms.PSet( + record = cms.string(str(condition)), + tag = cms.string(str(config["alignment"]["conditions"][condition]["tag"])) + ) + ) + ) + ) + + setattr( + process, + "prefer_conditionsIn{}".format(condition), + cms.ESPrefer("PoolDBESSource", "conditionsIn{}".format(condition)) + ) + +#################################################################### +# Configure the Analyzer module +#################################################################### + +process.FittingSmootherRKP5.EstimateCut = -1 +process.AlignmentTrackSelector.minHitsPerSubDet.inPIXEL = 2 +# Use compressions settings of TFile +# see https://root.cern.ch/root/html534/TFile.html#TFile:SetCompressionSet tings +# settings = 100 * algorithm + level +# level is from 1 (small) to 9 (large compression) +# algo: 1 (ZLIB), 2 (LMZA) +# see more about compression & performance: https://root.cern.ch/root/html534/guides/users-guide/InputOutput.html#compression-and-performance +compressionSettings = 207 +process.cosmicValidation = cms.EDAnalyzer( + "CosmicSplitterValidation", + compressionSettings = cms.untracked.int32(compressionSettings), + ifSplitMuons = cms.bool(False), + checkIfGolden = cms.bool(False), + splitTracks = cms.InputTag("FinalTrackRefitter","","splitter"), + splitGlobalMuons = cms.InputTag("muons","","splitter"), + originalTracks = cms.InputTag("FirstTrackRefitter","","splitter"), + originalGlobalMuons = cms.InputTag("muons","","Rec") +) + +#################################################################### +# Output file +#################################################################### +process.TFileService = cms.Service("TFileService", + fileName = cms.string("{}/MTSValidation_{}_{}.root".format(config.get("output", os.getcwd()), config["alignment"].get("name", ""), config["validation"].get("IOV", 1.))), + closeFileFast = cms.untracked.bool(True), + ) + +#################################################################### +# Path +#################################################################### +process.p = cms.Path(process.seqTrackselRefit*process.cosmicValidation) + +print("Done") diff --git a/Alignment/OfflineValidation/python/TkAlAllInOneTool/defaultInputFiles_cff.py b/Alignment/OfflineValidation/python/TkAlAllInOneTool/defaultInputFiles_cff.py index d0bc9b7de5e5b..498441f5ac464 100644 --- a/Alignment/OfflineValidation/python/TkAlAllInOneTool/defaultInputFiles_cff.py +++ b/Alignment/OfflineValidation/python/TkAlAllInOneTool/defaultInputFiles_cff.py @@ -56,3 +56,5 @@ filesDefaultData_MinBias2018B = cms.untracked.vstring( '/store/express/Run2018B/StreamExpress/ALCARECO/TkAlMinBias-Express-v1/000/317/212/00000/00F0EFA7-8D64-E811-A594-FA163EFC96CC.root' ) + +filesDefaultData_Cosmics_string = "/store/data/Run2022G/Cosmics/ALCARECO/TkAlCosmics0T-PromptReco-v1/000/362/440/00000/47f31eaa-1c00-4f39-902b-a09fa19c27f2.root" diff --git a/Alignment/OfflineValidation/scripts/validateAlignments.py b/Alignment/OfflineValidation/scripts/validateAlignments.py index 6d8e7b9e0a26a..64cb7f455d3f0 100755 --- a/Alignment/OfflineValidation/scripts/validateAlignments.py +++ b/Alignment/OfflineValidation/scripts/validateAlignments.py @@ -19,6 +19,7 @@ import Alignment.OfflineValidation.TkAlAllInOneTool.SplitV as SplitV import Alignment.OfflineValidation.TkAlAllInOneTool.JetHT as JetHT import Alignment.OfflineValidation.TkAlAllInOneTool.DiMuonV as DiMuonV +import Alignment.OfflineValidation.TkAlAllInOneTool.MTS as MTS ############################################## def parser(): @@ -263,10 +264,10 @@ def main(): elif validation == "JetHT": jobs.extend(JetHT.JetHT(config, validationDir)) - elif validation == "DiMuonV": jobs.extend(DiMuonV.DiMuonV(config, validationDir)) - + elif validation == "MTS": + jobs.extend(MTS.MTS(config, validationDir)) else: raise Exception("Unknown validation method: {}".format(validation)) From f84625c28ddf06579114c6134979a7c6a577967a Mon Sep 17 00:00:00 2001 From: mmusich Date: Mon, 8 Jan 2024 17:42:56 +0100 Subject: [PATCH 248/281] implement merge step for MTS validation --- Alignment/OfflineValidation/bin/BuildFile.xml | 1 + Alignment/OfflineValidation/bin/MTSmerge.cc | 87 +++ .../OfflineValidation/macros/trackSplitPlot.C | 13 +- .../OfflineValidation/macros/trackSplitPlot.h | 14 +- .../python/TkAlAllInOneTool/MTS.py | 505 +++--------------- 5 files changed, 167 insertions(+), 453 deletions(-) create mode 100644 Alignment/OfflineValidation/bin/MTSmerge.cc diff --git a/Alignment/OfflineValidation/bin/BuildFile.xml b/Alignment/OfflineValidation/bin/BuildFile.xml index 2f5b984819312..6578fd9b70855 100644 --- a/Alignment/OfflineValidation/bin/BuildFile.xml +++ b/Alignment/OfflineValidation/bin/BuildFile.xml @@ -18,5 +18,6 @@ + diff --git a/Alignment/OfflineValidation/bin/MTSmerge.cc b/Alignment/OfflineValidation/bin/MTSmerge.cc new file mode 100644 index 0000000000000..c94e55a6d8e26 --- /dev/null +++ b/Alignment/OfflineValidation/bin/MTSmerge.cc @@ -0,0 +1,87 @@ +#include +#include +#include +#include +#include + +#include "exceptions.h" +#include "toolbox.h" +#include "Options.h" + +#include "boost/filesystem.hpp" +#include "boost/property_tree/ptree.hpp" +#include "boost/property_tree/json_parser.hpp" +#include "boost/optional.hpp" + +#include "TString.h" +#include "TASImage.h" + +#include "Alignment/OfflineValidation/macros/trackSplitPlot.h" +#include "Alignment/OfflineValidation/macros/trackSplitPlot.C" +#include "Alignment/OfflineValidation/interface/TkAlStyle.h" + +using namespace std; +using namespace AllInOneConfig; + +namespace pt = boost::property_tree; + +int merge(int argc, char* argv[]) { + // parse the command line + + Options options; + options.helper(argc, argv); + options.parser(argc, argv); + + //Read in AllInOne json config + pt::ptree main_tree; + pt::read_json(options.config, main_tree); + + pt::ptree alignments = main_tree.get_child("alignments"); + pt::ptree validation = main_tree.get_child("validation"); + pt::ptree global_style; + pt::ptree merge_style; + + int iov = validation.count("IOV") ? validation.get("IOV") : 1; + std::string rlabel = validation.count("customrighttitle") ? validation.get("customrighttitle") : ""; + rlabel = merge_style.count("Rlabel") ? merge_style.get("Rlabel") : rlabel; + std::string cmslabel = merge_style.count("CMSlabel") ? merge_style.get("CMSlabel") : "INTERNAL"; + if (TkAlStyle::toStatus(cmslabel) == CUSTOM) + TkAlStyle::set(CUSTOM, NONE, cmslabel, rlabel); + else + TkAlStyle::set(TkAlStyle::toStatus(cmslabel), NONE, "", rlabel); + + TString filesAndLabels; + for (const auto& childTree : alignments) { + // Print node name and its attributes + std::cout << "Node: " << childTree.first << std::endl; + for (const auto& attr : childTree.second) { + std::cout << " Attribute: " << attr.first << " = " << attr.second.data() << std::endl; + } + + //std::cout << childTree.second.get("file") << std::endl; + //std::cout << childTree.second.get("title") << std::endl; + //std::cout << childTree.second.get("color") << std::endl; + //std::cout << childTree.second.get("style") << std::endl; + + std::string toAdd = childTree.second.get("file") + + Form("/MTSValidation_%s_%d.root=", childTree.first.c_str(), iov) + + childTree.second.get("title") + + Form("|%i|%i,", childTree.second.get("color"), childTree.second.get("style")); + filesAndLabels += toAdd; + } + + std::cout << "filesAndLabels: " << filesAndLabels << std::endl; + + TkAlStyle::legendheader = ""; + TkAlStyle::legendoptions = "all"; + outliercut = -1.0; + //fillmatrix(); + subdetector = "PIXEL"; + makePlots(filesAndLabels, "./"); + + return EXIT_SUCCESS; +} + +#ifndef DOXYGEN_SHOULD_SKIP_THIS +int main(int argc, char* argv[]) { return exceptions(argc, argv); } +#endif diff --git a/Alignment/OfflineValidation/macros/trackSplitPlot.C b/Alignment/OfflineValidation/macros/trackSplitPlot.C index 1e1adf6c65988..9cdcf2b7e95cb 100644 --- a/Alignment/OfflineValidation/macros/trackSplitPlot.C +++ b/Alignment/OfflineValidation/macros/trackSplitPlot.C @@ -8,6 +8,7 @@ Table Of Contents 5. Place Legend ***********************************/ +using namespace std; #include "trackSplitPlot.h" #include "Alignment/OfflineValidation/interface/TkAlStyle.h" @@ -1869,12 +1870,12 @@ void makePlots(TString file, Bool_t matrix[xsize][ysize]) { setupcolors(); file.Remove(TString::kTrailing, ','); - int n = file.CountChar(',') + 1; + unsigned int n = file.CountChar(',') + 1; TString *files = new TString[n]; TString *names = new TString[n]; vector tempcolors = colors; vector tempstyles = styles; - for (int i = 0; i < n; i++) { + for (unsigned int i = 0; i < n; i++) { TString thisfile = nPart(i + 1, file, ","); int numberofpipes = thisfile.CountChar('|'); if (numberofpipes >= 0 && nPart(numberofpipes + 1, thisfile, "|").IsDigit()) { @@ -1951,12 +1952,12 @@ void makePlots(TString file, TString yvar) { setupcolors(); file.Remove(TString::kTrailing, ','); - int n = file.CountChar(',') + 1; + unsigned int n = file.CountChar(',') + 1; TString *files = new TString[n]; TString *names = new TString[n]; vector tempcolors = colors; vector tempstyles = styles; - for (int i = 0; i < n; i++) { + for (unsigned int i = 0; i < n; i++) { TString thisfile = nPart(i + 1, file, ","); int numberofpipes = thisfile.CountChar('|'); if (numberofpipes >= 0 && nPart(numberofpipes + 1, thisfile, "|").IsDigit()) { @@ -2008,12 +2009,12 @@ void makePlots(Int_t nFiles, TString *files, TString *names, TString directory) void makePlots(TString file, TString misalignment, Double_t *values, Double_t *phases, TString directory) { setupcolors(); file.Remove(TString::kTrailing, ','); - int n = file.CountChar(',') + 1; + unsigned int n = file.CountChar(',') + 1; TString *files = new TString[n]; TString *names = new TString[n]; vector tempcolors = colors; vector tempstyles = styles; - for (int i = 0; i < n; i++) { + for (unsigned int i = 0; i < n; i++) { TString thisfile = nPart(i + 1, file, ","); int numberofpipes = thisfile.CountChar('|'); if (numberofpipes >= 0 && nPart(numberofpipes + 1, thisfile, "|").IsDigit()) { diff --git a/Alignment/OfflineValidation/macros/trackSplitPlot.h b/Alignment/OfflineValidation/macros/trackSplitPlot.h index f861dcfd3b8b7..0f2d5d4b17972 100644 --- a/Alignment/OfflineValidation/macros/trackSplitPlot.h +++ b/Alignment/OfflineValidation/macros/trackSplitPlot.h @@ -34,8 +34,8 @@ enum PlotType { ScatterPlot, Profile, Histogram, OrgHistogram, Resolution }; enum Statistic { Minimum, Maximum, Average, RMS }; const Double_t pi = TMath::Pi(); -vector colors; -vector styles; +std::vector colors; +std::vector styles; bool colorsset = false; Int_t minrun = -1; Int_t maxrun = -1; @@ -67,7 +67,7 @@ Table Of Contents #include "trackSplitPlot.h" -ofstream devnull("/dev/null"); +std::ofstream devnull("/dev/null"); template T identity(T t) { return t; @@ -86,7 +86,7 @@ TCanvas *trackSplitPlot(Int_t nFiles, Bool_t resolution = false, Bool_t pull = false, TString saveas = "", - ostream &summaryfile = devnull); + std::ostream &summaryfile = devnull); TCanvas *trackSplitPlot(Int_t nFiles, TString *files, TString *names, @@ -94,7 +94,7 @@ TCanvas *trackSplitPlot(Int_t nFiles, Bool_t relative = false, Bool_t pull = false, TString saveas = "", - ostream &summaryfile = devnull); + std::ostream &summaryfile = devnull); TCanvas *trackSplitPlot(TString file, TString xvar, TString yvar, @@ -103,13 +103,13 @@ TCanvas *trackSplitPlot(TString file, Bool_t resolution = false, Bool_t pull = false, TString saveas = "", - ostream &summaryfile = devnull); + std::ostream &summaryfile = devnull); TCanvas *trackSplitPlot(TString file, TString var, Bool_t relative = false, Bool_t pull = false, TString saveas = "", - ostream &summaryfile = devnull); + std::ostream &summaryfile = devnull); void placeholder(TString saveas = "", Bool_t wide = false); void saveplot(TCanvas *c1, TString saveas); void deleteCanvas(TObject *canvas); diff --git a/Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS.py b/Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS.py index 47fb4a959bee3..ae0d9a44a6bcb 100644 --- a/Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS.py +++ b/Alignment/OfflineValidation/python/TkAlAllInOneTool/MTS.py @@ -26,10 +26,10 @@ def MTS(config, validationDir): for IOV in config["validations"]["MTS"][mtsType][singleName]["IOV"]: ##Save IOV to loop later for merge jobs if singleName not in IOVs.keys(): - IOVs[singleName] = [] + IOVs[singleName] = [] if IOV not in IOVs[singleName]: - IOVs[singleName].append(IOV) - + IOVs[singleName].append(IOV) + for alignment in config["validations"]["MTS"][mtsType][singleName]["alignments"]: ##Work directory for each IOV workDir = "{}/MTS/{}/{}/{}/{}".format(validationDir, mtsType, singleName, alignment, IOV) @@ -59,441 +59,66 @@ def MTS(config, validationDir): jobs.append(job) -# FIXME%START: uncomment when the following modes will be available - if "merge" in config["validations"]["MTS"] or \ - "trends" in config["validations"]["MTS"] or \ - "averaged" in config["validations"]["MTS"]: - print("WARNING: 'merge', 'trends' and 'averaged' not yet supported. Will do nothing for them.") -# ##Do merge MTS if wished -# if "merge" in config["validations"]["MTS"]: -# ##List with merge jobs, will be expanded to jobs after looping -# mergeJobs = [] -# mtsType = "merge" -# -# ##Loop over all merge jobs -# for mergeName in config["validations"]["MTS"][mtsType]: -# ##Search for MC single(s) -# singlesMC = [] -# for singleName in config["validations"]["MTS"][mtsType][mergeName]['singles']: -# if len(IOVs[singleName]) == 1 and int(IOVs[singleName][0]) == 1: singlesMC.append(singleName) -# isMConly = (len(singlesMC) == len(config["validations"]["MTS"][mtsType][mergeName]['singles'])) -# if isMConly: -# isDataMerged[mergeName] = 0 -# elif len(singlesMC) == 0: -# isDataMerged[mergeName] = 1 -# else: -# isDataMerged[mergeName] = -1 -# -# ##Loop over singles -# for iname,singleName in enumerate(config["validations"]["MTS"][mtsType][mergeName]['singles']): -# isMC = (singleName in singlesMC) -# if isMConly and iname > 0: continue #special case for MC only comparison -# elif isMConly: singlesMC.pop(singlesMC.index(singleName)) -# -# for IOV in IOVs[singleName]: -# if isMC and not isMConly: continue #ignore IOV=1 as it is automatically added to each DATA IOV unless MC only comparison -# -# ##Work directory for each IOV -# workDir = "{}/MTS/{}/{}/{}".format(validationDir, mtsType, mergeName, IOV) #Different (DATA) single jobs must contain different set of IOVs -# -# ##Write job info -# local = {} -# -# job = { -# "name": "MTS_{}_{}_{}".format(mtsType, mergeName, IOV), -# "dir": workDir, -# "exe": "MTSmerge", -# "run-mode": "Condor", -# "dependencies": [], -# "config": local, -# } -# -# ##Deep copy necessary things from global config + assure plot order -# for alignment in config["alignments"]: -# idxIncrement = 0 -# local.setdefault("alignments", {}) -# if alignment in config["validations"]["MTS"]["single"][singleName]["alignments"]: #Cover all DATA validations -# local["alignments"][alignment] = copy.deepcopy(config["alignments"][alignment]) -# local["alignments"][alignment]['index'] = config["validations"]["MTS"]["single"][singleName]["alignments"].index(alignment) -# for singleMCname in singlesMC: -# if alignment in config["validations"]["MTS"]["single"][singleMCname]["alignments"]: #Add MC objects -# local["alignments"][alignment] = copy.deepcopy(config["alignments"][alignment]) -# local["alignments"][alignment]['index'] = len(config["validations"]["MTS"]["single"][singleName]["alignments"]) -# local["alignments"][alignment]['index'] += idxIncrement + config["validations"]["MTS"]["single"][singleMCname]["alignments"].index(alignment) -# idxIncrement += len(config["validations"]["MTS"]["single"][singleMCname]["alignments"]) -# local["validation"] = copy.deepcopy(config["validations"]["MTS"][mtsType][mergeName]) -# local["validation"]["IOV"] = IOV #is it really needed here? -# if "customrighttitle" in local["validation"].keys(): -# if "IOV" in local["validation"]["customrighttitle"]: -# local["validation"]["customrighttitle"] = local["validation"]["customrighttitle"].replace("IOV",str(IOV)) -# local["output"] = "{}/{}/MTS/{}/{}/{}".format(config["LFS"], config["name"], mtsType, mergeName, IOV) -# -# ##Add global plotting options -# if "style" in config.keys(): -# if "MTS" in config['style'].keys(): -# if mtsType in config['style']['MTS'].keys(): -# local["style"] = copy.deepcopy(config["style"]["MTS"][mtsType]) -# if "Rlabel" in local["style"] and "customrighttitle" in local["validation"].keys(): -# print("WARNING: custom right label is overwritten by global settings") -# -# ##Loop over all single jobs -# for singleJob in jobs: -# ##Get single job info and append to merge job if requirements fullfilled -# _alignment, _singleName, _singleIOV = singleJob["name"].split("_")[2:] -# if _singleName in config["validations"]["MTS"][mtsType][mergeName]["singles"]: -# if int(_singleIOV) == IOV or (int(_singleIOV) == 1 and _singleName in singlesMC): #matching DATA job or any MC single job -# local["alignments"][_alignment]["file"] = singleJob["config"]["output"] -# job["dependencies"].append(singleJob["name"]) -# -# ##Append to merge jobs -# mergeJobs.append(job) -# -# ##Append to all jobs -# jobs.extend(mergeJobs) -# -# if "trends" in config["validations"]["MTS"]: -# -# ##List with merge jobs, will be expanded to jobs after looping -# trendJobs = [] -# mtsType = "trends" -# -# for trendName in config["validations"]["MTS"][mtsType]: -# #print("trendName = {}".format(trendName)) -# ##Work directory for each IOV -# workDir = "{}/MTS/{}/{}".format(validationDir, mtsType, trendName) -# -# ##Write general job info -# local = {} -# job = { -# "name": "MTS_{}_{}".format(mtsType, trendName), -# "dir": workDir, -# "exe": "MTStrends", -# "run-mode": "Condor", -# "dependencies": [], -# "config": local, -# } -# -# ###Loop over merge steps (merge step can contain only DATA) -# mergesDATA = [] -# for mergeName in config["validations"]["MTS"][mtsType][trendName]["merges"]: -# ##Validate merge step -# if isDataMerged[mergeName] < 0: -# raise Exception("Trend jobs cannot process merge jobs containing both DATA and MC objects.") -# elif isDataMerged[mergeName] == 1: -# mergesDATA.append(mergeName) -# else: -# if "doUnitTest" in config["validations"]["MTS"][mtsType][trendName].keys() and config["validations"]["MTS"][mtsType][trendName]["doUnitTest"]: -# local.setdefault("alignments", {}) -# continue -# else: -# raise Exception("Trend jobs are not implemented for treating MC.") -# -# ###Loop over DATA singles included in merge steps -# trendIOVs = [] -# _mergeFiles = [] -# for mergeName in mergesDATA: -# for iname,singleName in enumerate(config["validations"]["MTS"]['merge'][mergeName]['singles']): -# trendIOVs += [IOV for IOV in IOVs[singleName]] -# ##Deep copy necessary things from global config + ensure plot order -# for alignment in config["alignments"]: -# local.setdefault("alignments", {}) -# if alignment in config["validations"]["MTS"]["single"][singleName]["alignments"]: #Cover all DATA validations -# local["alignments"][alignment] = copy.deepcopy(config["alignments"][alignment]) -# local["alignments"][alignment]['index'] = config["validations"]["MTS"]["single"][singleName]["alignments"].index(alignment) -# _mergeFiles.append("{}/{}/MTS/{}/{}/{}".format(config["LFS"], config["name"], "merge", mergeName, "{}")) -# trendIOVs.sort() -# local["validation"] = copy.deepcopy(config["validations"]["MTS"][mtsType][trendName]) -# if len(_mergeFiles) == 1: -# local["validation"]["mergeFile"] = _mergeFiles[0] -# else: -# local["validation"]["mergeFile"] = _mergeFiles #FIXME for multiple merge files in backend -# local["validation"]["IOV"] = trendIOVs -# local["output"] = "{}/{}/MTS/{}/{}/".format(config["LFS"], config["name"], mtsType, trendName) -# if "style" in config.keys() and "trends" in config["style"].keys(): -# local["style"] = copy.deepcopy(config["style"]) -# if "MTS" in local["style"].keys(): local["style"].pop("MTS") -# if "CMSlabel" in config["style"]["trends"].keys(): local["style"]["CMSlabel"] = config["style"]["trends"]["CMSlabel"] -# if "Rlabel" in config["style"]["trends"].keys(): -# local["style"]["trends"].pop("Rlabel") -# local["style"]["trends"]["TitleCanvas"] = config["style"]["trends"]["Rlabel"] -# else: -# raise Exception("You want to create 'trends' jobs, but there are no 'lines' section in the config for pixel updates!") -# -# #Loop over all merge jobs -# for mergeName in mergesDATA: -# for mergeJob in mergeJobs: -# alignment, mergeJobName, mergeIOV = mergeJob["name"].split("_")[1:] -# if mergeJobName == mergeName and int(mergeIOV) in trendIOVs: -# job["dependencies"].append(mergeJob["name"]) -# -# trendJobs.append(job) -# -# jobs.extend(trendJobs) -# -# if "averaged" in config["validations"]["MTS"]: -# -# ####Finally, list of jobs is expanded for luminosity-averaged plot (avp) job -# avpJobs = [] -# mtsType = "averaged" -# for avpName in config["validations"]["MTS"][mtsType]: -# ###Main workdir for each combination of displayed lumi-averaged validation objects to be plotted -# workDir = "{}/MTS/{}/{}".format(validationDir, mtsType, avpName) -# output = "{}/{}/MTS/{}/{}".format(config["LFS"], config["name"], mtsType, avpName) -# -# ###Loop over merge steps (one merge step can contain only DATA or only MC singles but not mix) -# mergesDATA = [] -# mergesMC = [] -# for mergeName in config["validations"]["MTS"][mtsType][avpName]["merges"]: -# ##Validate merge step -# if isDataMerged[mergeName] < 0: -# raise Exception("Average jobs cannot process merge jobs containing both DATA and MC objects.") -# elif isDataMerged[mergeName] == 1: -# mergesDATA.append(mergeName) -# else: -# mergesMC.append(mergeName) -# -# lumiPerRun = [] -# lumiPerIoV = [] -# lumiMC = [] -# if len(mergesDATA) > 0: -# if "lumiPerRun" in config["validations"]["MTS"][mtsType][avpName].keys(): -# for lumifile in config["validations"]["MTS"][mtsType][avpName]['lumiPerRun']: -# if lumifile.split(".")[-1] in ["txt","csv"]: -# lumiPerRun.append(lumifile) -# if "lumiPerIoV" in config["validations"]["MTS"][mtsType][avpName].keys(): -# for lumifile in config["validations"]["MTS"][mtsType][avpName]['lumiPerIoV']: -# if lumifile.split(".")[-1] in ["txt","csv"]: -# lumiPerIoV.append(lumifile) -# if len(lumiPerRun) == 0 and len(lumiPerIoV) == 0: -# raise Exception("No lumi per run/IoV file found or not specified in .csv/.txt format.") -# if len(mergesMC) > 0: -# if 'lumiMC' in config["validations"]["MTS"][mtsType][avpName].keys(): -# lumiMC = config["validations"]["MTS"][mtsType][avpName]['lumiMC'] -# -# ###Store information about plotting job in this dictionary -# plotJob = {} -# plotJob['workdir'] = "{}/{}".format(workDir,"plots") -# plotJob['output'] = "{}/{}".format(output,"plots") -# plotJob['inputData'] = [] -# plotJob['inputMC'] = [] -# plotJob['dependencies'] = [] -# -# ###First loop over DATA -# for mergeName in mergesDATA: -# ##Adapt workdir per merge step -# workDirMerge = "{}/{}".format(workDir, mergeName) -# outputMerge = "{}/{}".format(output, mergeName) -# -# ##Create local config per merge step -# local = {} -# local["type"] = "MTS" -# local["mode"] = "merge" -# local["isData"] = True -# local["isMC"] = False -# -# ##Deep copy necessary things from global config -# for alignment in config["alignments"]: -# local.setdefault("alignments", {}) -# for singleName in config["validations"]["MTS"]["merge"][mergeName]["singles"]: -# if alignment in config["validations"]["MTS"]["single"][singleName]['alignments']: -# local["alignments"][alignment] = copy.deepcopy(config["alignments"][alignment]) -# local["validation"] = copy.deepcopy(config["validations"]["MTS"][mtsType][avpName]) -# local["validation"]["mergeFile"] = "{}/{}/MTS/{}/{}/{}".format(config["LFS"], config["name"], "merge", mergeName, "{}") -# local["validation"]["lumiPerRun"] = lumiPerRun -# local["validation"]["lumiPerIoV"] = lumiPerIoV -# local["validation"]["lumiMC"] = lumiMC -# local["validation"]["firstFromNext"] = [] -# -# ##Determine list of IOVs in merge step (generally different than total list of IOVs) -# IOVsPerMergeStep = [] -# for singleName in config["validations"]["MTS"]["merge"][mergeName]["singles"]: -# for IOV in IOVs[singleName]: -# if IOV not in IOVsPerMergeStep: -# IOVsPerMergeStep.append(IOV) -# IOVsPerMergeStep.sort() -# -# ##Divide average step job to subjobs to prevent memory issues -# extra_part = 0 -# maxfiles = int(config["validations"]["MTS"][mtsType][avpName]['maxfiles']) -# if len(IOVsPerMergeStep)%maxfiles >= 2: -# extra_part = 1 -# parts = extra_part+len(IOVsPerMergeStep)//maxfiles -# -# subJob = {'name' : [], 'output' : [], 'lumiPerFile' : []} -# for ipart in range(0,parts): -# #Adapt workdir per each subjob -# workDirSub = workDirMerge+"_"+str(ipart) -# outputSub = outputMerge+"_"+str(ipart) -# -# #Define IOV group -# IOVGroup = [] -# lastIndex = 0 -# for iIOV,IOV in enumerate(IOVsPerMergeStep): -# if (iIOV//maxfiles == ipart) or (ipart == parts-1 and iIOV//maxfiles > ipart): -# IOVGroup.append(IOV) -# lastIndex = iIOV -# firstFromNext = [] -# if lastIndex != len(IOVsPerMergeStep)-1: -# firstFromNext.append(IOVsPerMergeStep[lastIndex+1]) -# -# #Write job info -# _local = copy.deepcopy(local) -# _local["output"] = outputSub -# _local["validation"]["IOV"] = IOVGroup -# _local["validation"]["firstFromNext"] = firstFromNext -# job = { -# "name": "MTS_{}_{}_{}".format(mtsType, avpName, mergeName+"_"+str(ipart)), -# "dir": workDirSub, -# "exe": "mkLumiAveragedPlots.py", -# "run-mode": "Condor", -# "dependencies": [], -# "config": _local, -# } -# subJob['output'].append(outputSub) -# subJob['name'].append("MTS_{}_{}_{}".format(mtsType, avpName, mergeName+"_"+str(ipart))) -# subJob['lumiPerFile'].append(os.path.join(outputSub,"lumiPerFile.csv")) -# if parts == 1: -# plotJob['inputData'].append(outputSub) -# plotJob['dependencies'].append(job['name']) -# -# #Set average job dependencies from the list of all merge jobs -# for mergeJob in mergeJobs: -# alignment, mergeJobName, mergeIOV = mergeJob["name"].split("_")[1:] -# if mergeJobName == mergeName and int(mergeIOV) in IOVGroup: -# job["dependencies"].append(mergeJob["name"]) -# #if mergeJobName in config["validations"]["MTS"][mtsType][avpName]["merges"]: -# # job["dependencies"].append(mergeJob["name"]) -# -# #Add to queue -# avpJobs.append(job) -# -# ##Add finalization job to merge all subjobs -# if parts > 1: -# localFinalize = copy.deepcopy(local) -# localFinalize['mode'] = "finalize" -# localFinalize['output'] = outputMerge -# localFinalize["validation"]["IOV"] = [] -# localFinalize["validation"]["mergeFile"] = subJob['output'] -# localFinalize["validation"]["lumiPerRun"] = [] -# localFinalize["validation"]["lumiPerIoV"] = subJob['lumiPerFile'] -# job = { -# "name": "MTS_{}_{}_{}".format(mtsType, avpName, mergeName+"_finalize"), -# "dir": workDirMerge, -# "exe": "mkLumiAveragedPlots.py", -# "run-mode": "Condor", -# "dependencies": subJob['name'], -# "config": localFinalize, -# } -# avpJobs.append(job) -# plotJob['inputData'].append(outputMerge) -# plotJob['dependencies'].append(job['name']) -# -# #Second create one averager job per all MC merge jobs -# if len(mergesMC) != 0: -# ##Adapt workdir per merge step -# workDirMerge = "{}/{}".format(workDir, "MC") -# outputMerge = "{}/{}".format(output, "MC") -# -# ##Create local config for MC average job -# local = {} -# local["type"] = "MTS" -# local["mode"] = "merge" -# local["isData"] = False -# local["isMC"] = True -# local["output"] = outputMerge -# -# ##Deep copy necessary things from global config -# local["validation"] = copy.deepcopy(config["validations"]["MTS"][mtsType][avpName]) -# local["validation"]["mergeFile"] = [] -# for mergeName in mergesMC: -# for alignment in config["alignments"]: -# local.setdefault("alignments", {}) -# for singleName in config["validations"]["MTS"]["merge"][mergeName]["singles"]: -# if alignment in config["validations"]["MTS"]["single"][singleName]['alignments']: -# local["alignments"][alignment] = copy.deepcopy(config["alignments"][alignment]) -# local["validation"]["mergeFile"].append("{}/{}/MTS/{}/{}/{}".format(config["LFS"], config["name"], "merge", mergeName, "{}")) -# local["validation"]["lumiPerRun"] = lumiPerRun -# local["validation"]["lumiPerIoV"] = lumiPerIoV -# local["validation"]["lumiMC"] = lumiMC -# local["validation"]["IOV"] = [1] -# -# ##Write job info -# job = { -# "name": "MTS_{}_{}_{}".format(mtsType, avpName, mergeName+"_MC"), -# "dir": workDirMerge, -# "exe": "mkLumiAveragedPlots.py", -# "run-mode": "Condor", -# "dependencies": [], -# "config": local, -# } -# plotJob['inputMC'].append(outputMerge) -# plotJob['dependencies'].append(job['name']) -# -# ##Set average job dependencies from the list of all merge jobs -# for mergeJob in mergeJobs: -# alignment, mergeJobName, mergeIOV = mergeJob["name"].split("_")[1:] -# if mergeJobName in mergesMC: -# job["dependencies"].append(mergeJob["name"]) -# -# ##Add to queue -# avpJobs.append(job) -# -# ##Finally add job to plot averaged distributions -# if len(plotJob['inputData'])+len(plotJob['inputMC']) > 0: -# local = {} -# local["type"] = "MTS" -# local["mode"] = "plot" -# local["isData"] = True if len(plotJob['inputData']) > 0 else False -# local["isMC"] = True if len(plotJob['inputMC']) > 0 else False -# local["output"] = plotJob['output'] -# local["plot"] = { "inputData" : plotJob['inputData'], -# "inputMC" : plotJob['inputMC'], -# "alignments" : [], -# "objects" : [], -# "labels" : [], -# "colors" : [], -# "styles" : [], -# "useFit" : True, -# "useFitError" : False, -# "showMean" : True, -# "showMeanError" : False, -# "showRMS" : False, -# "showRMSError" : False} -# ##Copy alignment objects info from global config -# for mergeName in mergesDATA+mergesMC: -# for singleName in config["validations"]["MTS"]["merge"][mergeName]["singles"]: -# for alignment in config["validations"]["MTS"]["single"][singleName]['alignments']: -# if alignment in config['alignments'] and alignment not in local["plot"]["alignments"]: -# local["plot"]["alignments"].append(alignment) -# objectName = config["alignments"][alignment]["title"].replace(" ","_") -# if objectName not in local["plot"]["objects"]: #can happen for MC -# local["plot"]["objects"].append(objectName) -# local["plot"]["labels"].append(config["alignments"][alignment]["title"]) -# local["plot"]["colors"].append(config["alignments"][alignment]["color"]) -# local["plot"]["styles"].append(config["alignments"][alignment]["style"]) -# ##Overwrite if needed -# for extraKey in ["objects","labels","colors","styles","useFit","useFitError","showMean","showMeamError","showRMS","showRMSError"]: -# if extraKey in config["validations"]["MTS"][mtsType][avpName].keys(): -# local["plot"][extraKey] = config["validations"]["MTS"][mtsType][avpName][extraKey] -# ##Add global plotting options -# if "style" in config.keys(): -# if "MTS" in config['style'].keys(): -# if mtsType in config['style']['MTS'].keys(): -# local["plotGlobal"] = copy.deepcopy(config["style"]['MTS'][mtsType]) -# -# ##Write job info -# job = { -# "name": "MTS_{}_{}_{}".format(mtsType, avpName, "plot"), -# "dir": plotJob['workdir'], -# "exe": "mkLumiAveragedPlots.py", -# "run-mode": "Condor", -# "dependencies": plotJob['dependencies'], -# "config": local, -# } -# avpJobs.append(job) -# -# #Finally extend main job collection -# jobs.extend(avpJobs) -# -# FIXME%END + ##Do merge MTS if wished + if "merge" in config["validations"]["MTS"]: + ##List with merge jobs, will be expanded to jobs after looping + mergeJobs = [] + pvType = "merge" + + ##Loop over all merge jobs/IOVs which are wished + for mergeName in config["validations"]["MTS"][pvType]: + ##Loop over singles + for iname,singleName in enumerate(config["validations"]["MTS"][pvType][mergeName]['singles']): + for IOV in IOVs[singleName]: + + ##Work directory for each IOV + workDir = "{}/MTS/{}/{}/{}".format(validationDir, pvType, mergeName, IOV) #Different (DATA) single jobs must contain different set of IOVs + + ##Write job info + local = {} + + job = { + "name": "MTS_{}_{}_{}".format(pvType, mergeName, IOV), + "dir": workDir, + "exe": "MTSmerge", + "run-mode": "Condor", + "dependencies": [], + "config": local, + } + + ##Deep copy necessary things from global config + assure plot order + for alignment in config["alignments"]: + local.setdefault("alignments", {}) + if alignment in config["validations"]["MTS"]["single"][singleName]["alignments"]: #Cover all DATA validations + local["alignments"][alignment] = copy.deepcopy(config["alignments"][alignment]) + local["alignments"][alignment]['index'] = config["validations"]["MTS"]["single"][singleName]["alignments"].index(alignment) + local["alignments"][alignment]['isMC'] = False + local["validation"] = copy.deepcopy(config["validations"]["MTS"][pvType][mergeName]) + local["validation"]["IOV"] = IOV + if "customrighttitle" in local["validation"].keys(): + if "IOV" in local["validation"]["customrighttitle"]: + local["validation"]["customrighttitle"] = local["validation"]["customrighttitle"].replace("IOV",str(IOV)) + local["output"] = "{}/{}/MTS/{}/{}/{}".format(config["LFS"], config["name"], pvType, mergeName, IOV) + + ##Add global plotting options + if "style" in config.keys(): + if "MTS" in config['style'].keys(): + if pvType in config['style']['MTS'].keys(): + local["style"] = copy.deepcopy(config["style"]["MTS"][pvType]) + if "Rlabel" in local["style"] and "customrighttitle" in local["validation"].keys(): + print("WARNING: custom right label is overwritten by global settings") + + ##Loop over all single jobs + for singleJob in jobs: + ##Get single job info and append to merge job if requirements fullfilled + _alignment, _singleName, _singleIOV = singleJob["name"].split("_")[2:] + if _singleName in config["validations"]["MTS"][pvType][mergeName]["singles"]: + if (int(_singleIOV) == IOV): #matching DATA job or any MC single job + local["alignments"][_alignment]["file"] = singleJob["config"]["output"] + job["dependencies"].append(singleJob["name"]) + + mergeJobs.append(job) + + jobs.extend(mergeJobs) + return jobs From 4feac7164841c65c98d3e115f11dd58c60cf8179 Mon Sep 17 00:00:00 2001 From: mmusich Date: Mon, 8 Jan 2024 17:45:52 +0100 Subject: [PATCH 249/281] implement MTS validation in all-in-one unit tests --- .../OfflineValidation/test/BuildFile.xml | 3 + .../test/testingScripts/test_unitMTS.sh | 23 ++++++++ .../OfflineValidation/test/unit_test.json | 59 ++++++++++++++++++- .../OfflineValidation/test/unit_test.yaml | 47 +++++++++++++++ 4 files changed, 131 insertions(+), 1 deletion(-) create mode 100755 Alignment/OfflineValidation/test/testingScripts/test_unitMTS.sh diff --git a/Alignment/OfflineValidation/test/BuildFile.xml b/Alignment/OfflineValidation/test/BuildFile.xml index a8bfe03534a9b..d6cc4c190ef4d 100644 --- a/Alignment/OfflineValidation/test/BuildFile.xml +++ b/Alignment/OfflineValidation/test/BuildFile.xml @@ -18,6 +18,9 @@ + + + diff --git a/Alignment/OfflineValidation/test/testingScripts/test_unitMTS.sh b/Alignment/OfflineValidation/test/testingScripts/test_unitMTS.sh new file mode 100755 index 0000000000000..71945e6a00b63 --- /dev/null +++ b/Alignment/OfflineValidation/test/testingScripts/test_unitMTS.sh @@ -0,0 +1,23 @@ +#! /bin/bash + +function die { echo $1: status $2 ; exit $2; } + +echo "TESTING Alignment/MTS single configuration with json..." +pushd test_yaml/MTS/single/testSingleMTS/PromptNewTemplate/1 +./cmsRun validation_cfg.py config=validation.json || die "Failure running MTS single configuration with json" $? + +echo "TESTING Alignment/MTS single configuration standalone..." +./cmsRun validation_cfg.py || die "Failure running MTS single configuration standalone" $? +popd + +pushd test_yaml/MTS/single/testSingleMTS/mp3619/1 +./cmsRun validation_cfg.py config=validation.json || die "Failure running MTS single configuration with json (part 2)" $? + +echo "TESTING Alignment/MTS single configuration standalone..." +./cmsRun validation_cfg.py || die "Failure running MTS single configuration standalone (part 2)" $? +popd + +echo "TESTING MTS merge step" +pushd test_yaml/MTS/merge/testSingleMTS/1 +./MTSmerge validation.json --verbose || die "Failure running MTS merge step" $? +popd diff --git a/Alignment/OfflineValidation/test/unit_test.json b/Alignment/OfflineValidation/test/unit_test.json index b5bba7315f84e..773866c51fec5 100644 --- a/Alignment/OfflineValidation/test/unit_test.json +++ b/Alignment/OfflineValidation/test/unit_test.json @@ -56,7 +56,45 @@ "globaltag": "auto:phase1_2018_realistic", "style": "2101", "title": "unit test" - } + }, + "PromptNewTemplate" : { + "name" : "PromptNewTemplate", + "color" : "1", + "globaltag" : "124X_dataRun3_Prompt_v10", + "style" : "2301", + "title" : "Alignment in prompt with 400V pixel templates", + "conditions" : { + "SiPixelTemplateDBObjectRcd" : { + "connect" : "frontier://FrontierProd/CMS_CONDITIONS", + "tag" : "SiPixelTemplateDBObject_phase1_38T_2022_v9" + }, + "SiPixel2DTemplateDBObjectRcd" : { + "connect" : "frontier://FrontierProd/CMS_CONDITIONS", + "tag" : "SiPixel2DTemplateDBObject_phase1_38T_2022_v9" + } + } + }, + "mp3619" : { + "name" : "mp3619", + "color" : "2", + "globaltag" : "124X_dataRun3_Prompt_v10", + "style" : "2001", + "title" : "mp3619", + "conditions" : { + "TrackerAlignmentRcd" : { + "connect" : "frontier://FrontierProd/CMS_CONDITIONS", + "tag" : "TrackerAlignment_collisions22_v13" + }, + "SiPixelTemplateDBObjectRcd" : { + "connect" : "frontier://FrontierProd/CMS_CONDITIONS", + "tag" : "SiPixelTemplateDBObject_phase1_38T_2022_v9" + }, + "SiPixel2DTemplateDBObjectRcd" : { + "connect" : "frontier://FrontierProd/CMS_CONDITIONS", + "tag" : "SiPixel2DTemplateDBObject_phase1_38T_2022_v9" + } + } + } }, "validations": { "DMR": { @@ -161,6 +199,25 @@ } } }, + "MTS" : { + "merge" : { + "testSingleMTS" : { + "singles" : ["testSingleMTS"] + } + }, + "single" : { + "testSingleMTS" : { + "IOV" : ["1"], + "alignments": ["PromptNewTemplate","mp3619"], + "maxevents" : 200000, + "trackcollection" : "ALCARECOTkAlCosmicsCTF0T", + "tthrbuilder" : "WithAngleAndTemplate", + "usePixelQualityFlag" : "True", + "cosmicsZeroTesla" : "False", + "magneticfield" : 3.8 + } + } + }, "GCP": { "GCPdetUnits": { "levels": "DetUnit", diff --git a/Alignment/OfflineValidation/test/unit_test.yaml b/Alignment/OfflineValidation/test/unit_test.yaml index 19c26174b914f..6274962d8076c 100644 --- a/Alignment/OfflineValidation/test/unit_test.yaml +++ b/Alignment/OfflineValidation/test/unit_test.yaml @@ -44,6 +44,35 @@ alignments: globaltag: auto:phase1_2022_realistic style: 2101 title: unit test + PromptNewTemplate: + name: PromptNewTemplate + color: 1 + globaltag: 124X_dataRun3_Prompt_v10 + style: 2301 + title: Alignment in prompt with 400V pixel templates + conditions: + SiPixelTemplateDBObjectRcd: + connect: frontier://FrontierProd/CMS_CONDITIONS + tag: SiPixelTemplateDBObject_phase1_38T_2022_v9 + SiPixel2DTemplateDBObjectRcd: + connect: frontier://FrontierProd/CMS_CONDITIONS + tag: SiPixel2DTemplateDBObject_phase1_38T_2022_v9 + mp3619: + name: mp3619 + color: 2 + globaltag: 124X_dataRun3_Prompt_v10 + style: 2001 + title: mp3619 + conditions: + TrackerAlignmentRcd: + connect: frontier://FrontierProd/CMS_CONDITIONS + tag: TrackerAlignment_collisions22_v13 + SiPixelTemplateDBObjectRcd: + connect: frontier://FrontierProd/CMS_CONDITIONS + tag: SiPixelTemplateDBObject_phase1_38T_2022_v9 + SiPixel2DTemplateDBObjectRcd: + connect: frontier://FrontierProd/CMS_CONDITIONS + tag: SiPixel2DTemplateDBObject_phase1_38T_2022_v9 validations: DMR: single: @@ -153,6 +182,24 @@ validations: - unitTestDiMuonVMC trackcollection: generalTracks maxevents: 10 + MTS: + merge: + testSingleMTS: + singles: + - testSingleMTS + single: + testSingleMTS: + IOV: + - 1 + alignments: + - PromptNewTemplate + - mp3619 + maxevents: 200000 + trackcollection: ALCARECOTkAlCosmicsCTF0T + tthrbuilder: WithAngleAndTemplate + usePixelQualityFlag: True + cosmicsZeroTesla: False + magneticfield: 3.8 GCP: GCPdetUnits: levels: DetUnit From 7557c510867078ba0c9650dbefa00f5fdc321da1 Mon Sep 17 00:00:00 2001 From: mmusich Date: Mon, 8 Jan 2024 17:46:26 +0100 Subject: [PATCH 250/281] fix typo in test_unitDiMuonV --- .../OfflineValidation/test/testingScripts/test_unitDiMuonV.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Alignment/OfflineValidation/test/testingScripts/test_unitDiMuonV.sh b/Alignment/OfflineValidation/test/testingScripts/test_unitDiMuonV.sh index 662561dfd0016..6d01a1d61385b 100755 --- a/Alignment/OfflineValidation/test/testingScripts/test_unitDiMuonV.sh +++ b/Alignment/OfflineValidation/test/testingScripts/test_unitDiMuonV.sh @@ -10,7 +10,7 @@ echo "TESTING Alignment/DiMuonV single configuration standalone..." ./cmsRun validation_cfg.py || die "Failure running DiMuonV single configuration standalone" $? popd -echo "TESTING PV merge step" +echo "TESTING DiMuonV merge step" pushd test_yaml/DiMuonV/merge/testUnits/1/ ./DiMuonVmerge validation.json --verbose || die "Failure running DiMuonV merge step" $? popd From b842705d6802144d2b108d9477de6c1a6bcdbe87 Mon Sep 17 00:00:00 2001 From: mmusich Date: Mon, 8 Jan 2024 18:04:45 +0100 Subject: [PATCH 251/281] update README for Muon Track Splitting --- Alignment/OfflineValidation/README.md | 3 +++ Alignment/OfflineValidation/README_MTS.md | 20 +++----------------- 2 files changed, 6 insertions(+), 17 deletions(-) diff --git a/Alignment/OfflineValidation/README.md b/Alignment/OfflineValidation/README.md index 02dd633ff9ca4..d7c4554d9812d 100644 --- a/Alignment/OfflineValidation/README.md +++ b/Alignment/OfflineValidation/README.md @@ -114,5 +114,8 @@ For details read [`README_PV.md`](https://github.com/cms-sw/cmssw/blob/master/Al ## JetHT validation For details read [`README_JetHT.md`](https://github.com/cms-sw/cmssw/blob/master/Alignment/OfflineValidation/README_JetHT.md) +## MTS validation +For details read [`README_MTS.md`](https://github.com/cms-sw/cmssw/blob/master/Alignment/OfflineValidation/README_MTS.md) + ## General info about IOV/run arguments For details read [`README_IOV.md`](https://github.com/cms-sw/cmssw/blob/master/Alignment/OfflineValidation/README_IOV.md) diff --git a/Alignment/OfflineValidation/README_MTS.md b/Alignment/OfflineValidation/README_MTS.md index e818168e24d78..e616e4d549147 100644 --- a/Alignment/OfflineValidation/README_MTS.md +++ b/Alignment/OfflineValidation/README_MTS.md @@ -1,4 +1,4 @@ -## PV validation +## MTS (Muon Track Splitting) validation ### General info @@ -15,9 +15,9 @@ MTS validation runs in 1 possible type of steps: Step name is arbitrary string which will be used as a reference for consequent steps. Merge and trend jobs are not yet implemented. -### Single PV jobs +### Single MTS jobs -Single jobs can be specified per run (IoV as well). In case of MC, IoV is specified to arbitrary 1. +Single jobs can be specified per run (IoV as well). **Parameters below to be updated** Variable | Default value | Explanation/Options @@ -27,21 +27,7 @@ Alignments | None | List of alignments. Will create separate directory for each. dataset | See defaultInputFiles_cff.py | Path to txt file containing list of datasets to be used. If file is missing at EOS or is corrupted - job will eventually fail (most common issue). goodlumi | cms.untracked.VLuminosityBlockRange() | Path to json file containing lumi information about selected IoV - must contain list of runs under particular IoV with lumiblock info. Format: `IOV_Vali_{}.json` maxevents | 1 | Maximum number of events before cmsRun terminates. -maxtracks | 1 | Maximum number of tracks per event before next event is processed. trackcollection | "generalTracks" | Track collection to be specified here, e.g. "ALCARECOTkAlMuonIsolated" or "ALCARECOTkAlMinBias" ... tthrbuilder | "WithAngleAndTemplate" | Specify TTRH Builder usePixelQualityFlag | True | Use pixel quality flag? cosmicsZeroTesla | False | Is this validation for cosmics with zero magnetic field? -vertexcollection | "offlinePrimaryVertices" | Specify vertex collection to be used. -isda | True | Use DA algorithm (True) or GAP algorithm (False) -ismc | True | Is validation for MC (True) or Data (False)? -runboundary | 1 | Specify starting run number (can be also list of starting numbers in multirun approach). -runControl | False | Enable run control -ptCut | 3. | Probe tracks with pT > 3GeV -etaCut | 2.5 | Probe tracks in abs(eta) < 2.5 region -minPt | 1. | Define minimal track pT -maxPt | 30. | Define maximum track pT -doBPix | True | Do not run validation for BPix if needed -doFPix | True | Do not run validation for FPix if needed -forceBeamSpot | False | Force beam spot -numberOfBins | 48 | Define histogram granularity From 9b5497d196cad52c79265eb7028f180eb2c679d4 Mon Sep 17 00:00:00 2001 From: mmusich Date: Fri, 12 Jan 2024 19:31:21 +0100 Subject: [PATCH 252/281] apply code-checks and code-format to trackSplitPlot.C --- .../OfflineValidation/macros/trackSplitPlot.C | 77 ++++++++++--------- 1 file changed, 40 insertions(+), 37 deletions(-) diff --git a/Alignment/OfflineValidation/macros/trackSplitPlot.C b/Alignment/OfflineValidation/macros/trackSplitPlot.C index 9cdcf2b7e95cb..39e030fe10a91 100644 --- a/Alignment/OfflineValidation/macros/trackSplitPlot.C +++ b/Alignment/OfflineValidation/macros/trackSplitPlot.C @@ -37,7 +37,7 @@ TCanvas *trackSplitPlot(Int_t nFiles, stufftodelete->SetOwner(true); cout << xvar << " " << yvar << endl; if (xvar == "" && yvar == "") - return 0; + return nullptr; PlotType type; if (xvar == "") @@ -160,7 +160,7 @@ TCanvas *trackSplitPlot(Int_t nFiles, TFile *f = TFile::Open(files[i]); TTree *tree = (TTree *)f->Get("cosmicValidation/splitterTree"); - if (tree == 0) + if (tree == nullptr) tree = (TTree *)f->Get("splitterTree"); lengths[i] = tree->GetEntries(); @@ -438,16 +438,16 @@ TCanvas *trackSplitPlot(Int_t nFiles, } } - TH1 *firstp = 0; + TH1 *firstp = nullptr; for (int i = 0; i < n; i++) { if (used[i]) { firstp = p[i]; break; } } - if (firstp == 0) { + if (firstp == nullptr) { stufftodelete->Clear(); - return 0; + return nullptr; } TCanvas *c1 = TCanvas::MakeDefCanvas(); @@ -546,13 +546,13 @@ TCanvas *trackSplitPlot(Int_t nFiles, p[i]->Draw("same hist"); legend->AddEntry(p[i], names[i], "l"); } - legend->AddEntry((TObject *)0, meansrmss[i], ""); + legend->AddEntry((TObject *)nullptr, meansrmss[i], ""); } } - if (legend->GetListOfPrimitives()->At(0) == 0) { + if (legend->GetListOfPrimitives()->At(0) == nullptr) { stufftodelete->Clear(); deleteCanvas(c1); - return 0; + return nullptr; } c1->Update(); @@ -639,7 +639,7 @@ void saveplot(TCanvas *c1, TString saveas) { } void deleteCanvas(TObject *canvas) { - if (canvas == 0) + if (canvas == nullptr) return; if (!canvas->InheritsFrom("TCanvas")) { delete canvas; @@ -730,7 +730,7 @@ void misalignmentDependence(TCanvas *c1old, Bool_t resolution, Bool_t pull, TString saveas) { - if (c1old == 0) + if (c1old == nullptr) return; c1old = (TCanvas *)c1old->Clone("c1old"); if (misalignment == "" || yvar == "") @@ -761,9 +761,9 @@ void misalignmentDependence(TCanvas *c1old, s0 << "p" << i; TString pname = s0.str(); p[i] = (TH1 *)list->/*At(i+1+(xvar == ""))*/ FindObject(pname); - used[i] = (p[i] != 0); + used[i] = (p[i] != nullptr); if (used[i]) - p[i]->SetDirectory(0); + p[i]->SetDirectory(nullptr); if (xvar == "") continue; stringstream s; @@ -862,12 +862,12 @@ void misalignmentDependence(TCanvas *c1old, legend->SetFillStyle(0); legend->Draw(); } else { - if (values == 0) + if (values == nullptr) return; Bool_t phasesmatter = false; if (misalignment == "elliptical" || misalignment == "sagitta" || misalignment == "skew") { - if (phases == 0) { + if (phases == nullptr) { cout << "This misalignment has a phase, but you didn't supply the phases!" << endl << "Can't produce plots depending on the misalignment value." << endl; return; @@ -884,7 +884,7 @@ void misalignmentDependence(TCanvas *c1old, } if (!phasesmatter) { - TGraphErrors *g = new TGraphErrors(nFiles, values, result, (Double_t *)0, error); + TGraphErrors *g = new TGraphErrors(nFiles, values, result, (Double_t *)nullptr, error); g->SetName(""); stufftodelete->Add(g); @@ -918,7 +918,8 @@ void misalignmentDependence(TCanvas *c1old, xvalues[i] = values[i] * cos(phases[i]); yvalues[i] = values[i] * sin(phases[i]); } - TGraph2DErrors *g = new TGraph2DErrors(nFiles, xvalues, yvalues, result, (Double_t *)0, (Double_t *)0, error); + TGraph2DErrors *g = + new TGraph2DErrors(nFiles, xvalues, yvalues, result, (Double_t *)nullptr, (Double_t *)nullptr, error); g->SetName(""); stufftodelete->Add(g); delete[] xvalues; //A TGraph2DErrors has its own copy of xvalues and yvalues, so it's ok to delete these copies. @@ -1255,7 +1256,7 @@ Bool_t misalignmentDependence(TCanvas *c1old, Bool_t pull, TString saveas) { if (xvar == "") { - if (c1old == 0 || misalignment == "" || values == 0) + if (c1old == nullptr || misalignment == "" || values == nullptr) return false; misalignmentDependence(c1old, nFiles, @@ -1265,7 +1266,7 @@ Bool_t misalignmentDependence(TCanvas *c1old, phases, xvar, yvar, - (TF1 *)0, + (TF1 *)nullptr, 0, "", "", @@ -1275,7 +1276,7 @@ Bool_t misalignmentDependence(TCanvas *c1old, saveas); return true; } - TF1 *f = 0; + TF1 *f = nullptr; TString functionname = ""; //if only one parameter is of interest @@ -1284,8 +1285,8 @@ Bool_t misalignmentDependence(TCanvas *c1old, //if multiple parameters are of interest Int_t nParameters = -1; - TString *parameternames = 0; - Int_t *parameters = 0; + TString *parameternames = nullptr; + Int_t *parameters = nullptr; if (misalignment == "sagitta") { if (xvar == "phi" && yvar == "phi" && !resolution && !pull) { @@ -1556,12 +1557,12 @@ Bool_t misalignmentDependence(Int_t nFiles, } Bool_t hasFit(TString misalignment, TString xvar, TString yvar, Bool_t relative, Bool_t resolution, Bool_t pull) { - return misalignmentDependence((TCanvas *)0, + return misalignmentDependence((TCanvas *)nullptr, 0, - (TString *)0, + (TString *)nullptr, misalignment, - (Double_t *)0, - (Double_t *)0, + (Double_t *)nullptr, + (Double_t *)nullptr, xvar, yvar, false, @@ -1586,7 +1587,7 @@ void makePlots(Int_t nFiles, stufftodelete->SetOwner(true); for (Int_t i = 0, totaltime = 0; i < nFiles; i++) { - TFile *f = 0; + TFile *f = nullptr; bool exists = false; if (files[i] == "") exists = true; @@ -1594,7 +1595,7 @@ void makePlots(Int_t nFiles, for (int j = 1; j <= 60 * 24 && !exists; j++, totaltime++) //wait up to 1 day for the validation to be finished { f = TFile::Open(files[i]); - if (f != 0) + if (f != nullptr) exists = f->IsOpen(); delete f; if (exists) @@ -1859,7 +1860,7 @@ void makePlots(Int_t nFiles, } void makePlots(Int_t nFiles, TString *files, TString *names, TString directory, Bool_t matrix[xsize][ysize]) { - makePlots(nFiles, files, names, "", (Double_t *)0, (Double_t *)0, directory, matrix); + makePlots(nFiles, files, names, "", (Double_t *)nullptr, (Double_t *)nullptr, directory, matrix); } void makePlots(TString file, @@ -1903,7 +1904,7 @@ void makePlots(TString file, } void makePlots(TString file, TString directory, Bool_t matrix[xsize][ysize]) { - makePlots(file, "", (Double_t *)0, (Double_t *)0, directory, matrix); + makePlots(file, "", (Double_t *)nullptr, (Double_t *)nullptr, directory, matrix); } //*************************************************************************** @@ -1940,7 +1941,7 @@ void makePlots(Int_t nFiles, } void makePlots(Int_t nFiles, TString *files, TString *names, TString directory, TString xvar, TString yvar) { - makePlots(nFiles, files, names, "", (Double_t *)0, (Double_t *)0, directory, xvar, yvar); + makePlots(nFiles, files, names, "", (Double_t *)nullptr, (Double_t *)nullptr, directory, xvar, yvar); } void makePlots(TString file, @@ -1985,7 +1986,7 @@ void makePlots(TString file, } void makePlots(TString file, TString directory, TString xvar, TString yvar) { - makePlots(file, "", (Double_t *)0, (Double_t *)0, directory, xvar, yvar); + makePlots(file, "", (Double_t *)nullptr, (Double_t *)nullptr, directory, xvar, yvar); } //*************************** @@ -2003,7 +2004,7 @@ void makePlots(Int_t nFiles, } void makePlots(Int_t nFiles, TString *files, TString *names, TString directory) { - makePlots(nFiles, files, names, "", (Double_t *)0, (Double_t *)0, directory); + makePlots(nFiles, files, names, "", (Double_t *)nullptr, (Double_t *)nullptr, directory); } void makePlots(TString file, TString misalignment, Double_t *values, Double_t *phases, TString directory) { @@ -2041,7 +2042,9 @@ void makePlots(TString file, TString misalignment, Double_t *values, Double_t *p styles = tempstyles; } -void makePlots(TString file, TString directory) { makePlots(file, "", (Double_t *)0, (Double_t *)0, directory); } +void makePlots(TString file, TString directory) { + makePlots(file, "", (Double_t *)nullptr, (Double_t *)nullptr, directory); +} //============= //3. Axis Label @@ -2108,7 +2111,7 @@ TString latexunits(TString variable, char axis) { TString axislabel(TString variable, Char_t axis, Bool_t relative, Bool_t resolution, Bool_t pull) { if (axis == 'X' || axis == 'Y') { double min, max, bins; - axislimits(0, 0, variable, tolower(axis), relative, pull, min, max, bins); + axislimits(0, nullptr, variable, tolower(axis), relative, pull, min, max, bins); if (variable.BeginsWith("nHits")) return "fraction of tracks"; @@ -2284,7 +2287,7 @@ Double_t findStatistic( continue; TFile *f = TFile::Open(files[j]); TTree *tree = (TTree *)f->Get("cosmicValidation/splitterTree"); - if (tree == 0) + if (tree == nullptr) tree = (TTree *)f->Get("splitterTree"); Int_t length = tree->GetEntries(); @@ -2576,9 +2579,9 @@ Double_t placeLegend( Bool_t fitsHere(TLegend *l, Double_t x1, Double_t y1, Double_t x2, Double_t y2) { Bool_t fits = true; TList *list = l->GetListOfPrimitives(); - for (Int_t k = 0; list->At(k) != 0 && fits; k++) { + for (Int_t k = 0; list->At(k) != nullptr && fits; k++) { TObject *obj = ((TLegendEntry *)(list->At(k)))->GetObject(); - if (obj == 0) + if (obj == nullptr) continue; TClass *cl = obj->IsA(); From 549f1aec32323eb76ad61a33d88c6c59ee9ad289 Mon Sep 17 00:00:00 2001 From: swagata87 Date: Mon, 15 Jan 2024 12:03:24 +0100 Subject: [PATCH 253/281] alleviate maintenance burden --- .../EgammaEcalRecHitIsolationProducer.cc | 195 --- .../PFProducer/plugins/PFPhotonTranslator.cc | 1100 ----------------- .../plugins/importers/EGPhotonImporter.cc | 104 -- .../PFProducer/src/PhotonSelectorAlgo.cc | 66 - 4 files changed, 1465 deletions(-) delete mode 100644 RecoEgamma/EgammaIsolationAlgos/plugins/EgammaEcalRecHitIsolationProducer.cc delete mode 100644 RecoParticleFlow/PFProducer/plugins/PFPhotonTranslator.cc delete mode 100644 RecoParticleFlow/PFProducer/plugins/importers/EGPhotonImporter.cc delete mode 100644 RecoParticleFlow/PFProducer/src/PhotonSelectorAlgo.cc diff --git a/RecoEgamma/EgammaIsolationAlgos/plugins/EgammaEcalRecHitIsolationProducer.cc b/RecoEgamma/EgammaIsolationAlgos/plugins/EgammaEcalRecHitIsolationProducer.cc deleted file mode 100644 index b10131924d649..0000000000000 --- a/RecoEgamma/EgammaIsolationAlgos/plugins/EgammaEcalRecHitIsolationProducer.cc +++ /dev/null @@ -1,195 +0,0 @@ -//***************************************************************************** -// File: EgammaEcalRecHitIsolationProducer.cc -// ---------------------------------------------------------------------------- -// OrigAuth: Matthias Mozer, adapted from EgammaHcalIsolationProducer by S. Harper -// Institute: IIHE-VUB, RAL -//============================================================================= -//***************************************************************************** - -#include "DataFormats/Candidate/interface/Candidate.h" -#include "DataFormats/Candidate/interface/CandAssociation.h" -#include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/DetId/interface/DetId.h" -#include "DataFormats/EgammaReco/interface/SuperCluster.h" -#include "DataFormats/EgammaReco/interface/SuperClusterFwd.h" -#include "DataFormats/RecoCandidate/interface/RecoCandidate.h" -#include "FWCore/Framework/interface/ConsumesCollector.h" -#include "FWCore/Framework/interface/ESHandle.h" -#include "FWCore/Framework/interface/EventSetup.h" -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/global/EDProducer.h" -#include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/Utilities/interface/ESGetToken.h" -#include "Geometry/CaloGeometry/interface/CaloGeometry.h" -#include "Geometry/Records/interface/CaloGeometryRecord.h" -#include "RecoEgamma/EgammaIsolationAlgos/interface/EgammaRecHitIsolation.h" -#include "RecoLocalCalo/EcalRecAlgos/interface/EcalSeverityLevelAlgo.h" -#include "RecoLocalCalo/EcalRecAlgos/interface/EcalSeverityLevelAlgoRcd.h" - -class EgammaEcalRecHitIsolationProducer : public edm::global::EDProducer<> { -public: - explicit EgammaEcalRecHitIsolationProducer(const edm::ParameterSet&); - - void produce(edm::StreamID, edm::Event&, const edm::EventSetup&) const override; - -private: - const edm::EDGetTokenT> emObjectProducer_; - const edm::EDGetTokenT ecalBarrelRecHitCollection_; - const edm::EDGetTokenT ecalEndcapRecHitCollection_; - - double egIsoPtMinBarrel_; //minimum Et noise cut - double egIsoEMinBarrel_; //minimum E noise cut - double egIsoPtMinEndcap_; //minimum Et noise cut - double egIsoEMinEndcap_; //minimum E noise cut - double egIsoConeSizeOut_; //outer cone size - double egIsoConeSizeInBarrel_; //inner cone size - double egIsoConeSizeInEndcap_; //inner cone size - double egIsoJurassicWidth_; // exclusion strip width for jurassic veto - - bool useIsolEt_; //switch for isolEt rather than isolE - bool tryBoth_; // use rechits from barrel + endcap - bool subtract_; // subtract SC energy (allows veto cone of zero size) - - bool useNumCrystals_; // veto on number of crystals - bool vetoClustered_; // veto all clusterd rechits - - edm::ESGetToken sevLvToken_; - edm::ESGetToken caloGeometrytoken_; - - const EcalPFRecHitThresholds* thresholds = nullptr; -}; - -#include "FWCore/Framework/interface/MakerMacros.h" -DEFINE_FWK_MODULE(EgammaEcalRecHitIsolationProducer); - -EgammaEcalRecHitIsolationProducer::EgammaEcalRecHitIsolationProducer(const edm::ParameterSet& config) - //inputs - : emObjectProducer_{consumes(config.getParameter("emObjectProducer"))}, - ecalBarrelRecHitCollection_{consumes(config.getParameter("ecalBarrelRecHitCollection"))}, - ecalEndcapRecHitCollection_{consumes(config.getParameter("ecalEndcapRecHitCollection"))} { - //vetos - egIsoPtMinBarrel_ = config.getParameter("etMinBarrel"); - egIsoEMinBarrel_ = config.getParameter("eMinBarrel"); - egIsoPtMinEndcap_ = config.getParameter("etMinEndcap"); - egIsoEMinEndcap_ = config.getParameter("eMinEndcap"); - egIsoConeSizeInBarrel_ = config.getParameter("intRadiusBarrel"); - egIsoConeSizeInEndcap_ = config.getParameter("intRadiusEndcap"); - egIsoConeSizeOut_ = config.getParameter("extRadius"); - egIsoJurassicWidth_ = config.getParameter("jurassicWidth"); - - // options - useIsolEt_ = config.getParameter("useIsolEt"); - tryBoth_ = config.getParameter("tryBoth"); - subtract_ = config.getParameter("subtract"); - useNumCrystals_ = config.getParameter("useNumCrystals"); - vetoClustered_ = config.getParameter("vetoClustered"); - - //EventSetup Tokens - sevLvToken_ = esConsumes(); - caloGeometrytoken_ = esConsumes(); - - //register your products - produces>(); -} - -// ------------ method called to produce the data ------------ -void EgammaEcalRecHitIsolationProducer::produce(edm::StreamID, - edm::Event& iEvent, - const edm::EventSetup& iSetup) const { - // Get the filtered objects - auto emObjectHandle = iEvent.getHandle(emObjectProducer_); - - // Next get Ecal hits barrel - auto ecalBarrelRecHitHandle = iEvent.getHandle(ecalBarrelRecHitCollection_); - - // Next get Ecal hits endcap - auto ecalEndcapRecHitHandle = iEvent.getHandle(ecalEndcapRecHitCollection_); - - edm::ESHandle sevlv = iSetup.getHandle(sevLvToken_); - const EcalSeverityLevelAlgo* sevLevel = sevlv.product(); - - //Get Calo Geometry - edm::ESHandle pG = iSetup.getHandle(caloGeometrytoken_); - const CaloGeometry* caloGeom = pG.product(); - - //reco::CandViewDoubleAssociations* isoMap = new reco::CandViewDoubleAssociations( reco::CandidateBaseRefProd( emObjectHandle ) ); - auto isoMap = std::make_unique>(); - edm::ValueMap::Filler filler(*isoMap); - std::vector retV(emObjectHandle->size(), 0); - - EgammaRecHitIsolation ecalBarrelIsol(egIsoConeSizeOut_, - egIsoConeSizeInBarrel_, - egIsoJurassicWidth_, - egIsoPtMinBarrel_, - egIsoEMinBarrel_, - caloGeom, - *ecalBarrelRecHitHandle, - sevLevel, - DetId::Ecal); - ecalBarrelIsol.setUseNumCrystals(useNumCrystals_); - ecalBarrelIsol.setVetoClustered(vetoClustered_); - - EgammaRecHitIsolation ecalEndcapIsol(egIsoConeSizeOut_, - egIsoConeSizeInEndcap_, - egIsoJurassicWidth_, - egIsoPtMinEndcap_, - egIsoEMinEndcap_, - caloGeom, - *ecalEndcapRecHitHandle, - sevLevel, - DetId::Ecal); - ecalEndcapIsol.setUseNumCrystals(useNumCrystals_); - ecalEndcapIsol.setVetoClustered(vetoClustered_); - - for (size_t i = 0; i < emObjectHandle->size(); ++i) { - //i need to know if its in the barrel/endcap so I get the supercluster handle to find out the detector eta - //this might not be the best way, are we guaranteed that eta<1.5 is barrel - //this can be safely replaced by another method which determines where the emobject is - //then we either get the isolation Et or isolation Energy depending on user selection - double isoValue = 0.; - - reco::SuperClusterRef superClus = emObjectHandle->at(i).get(); - - if (tryBoth_) { //barrel + endcap - if (useIsolEt_) - isoValue = ecalBarrelIsol.getEtSum(&(emObjectHandle->at(i)), *thresholds) + - ecalEndcapIsol.getEtSum(&(emObjectHandle->at(i)), *thresholds); - else - isoValue = ecalBarrelIsol.getEnergySum(&(emObjectHandle->at(i)), *thresholds) + - ecalEndcapIsol.getEnergySum(&(emObjectHandle->at(i)), *thresholds); - } else if (fabs(superClus->eta()) < 1.479) { //barrel - if (useIsolEt_) - isoValue = ecalBarrelIsol.getEtSum(&(emObjectHandle->at(i)), *thresholds); - else - isoValue = ecalBarrelIsol.getEnergySum(&(emObjectHandle->at(i)), *thresholds); - } else { //endcap - if (useIsolEt_) - isoValue = ecalEndcapIsol.getEtSum(&(emObjectHandle->at(i)), *thresholds); - else - isoValue = ecalEndcapIsol.getEnergySum(&(emObjectHandle->at(i)), *thresholds); - } - - //we subtract off the electron energy here as well - double subtractVal = 0; - - if (useIsolEt_) - subtractVal = superClus.get()->rawEnergy() * sin(2 * atan(exp(-superClus.get()->eta()))); - else - subtractVal = superClus.get()->rawEnergy(); - - if (subtract_) - isoValue -= subtractVal; - - retV[i] = isoValue; - //all done, isolation is now in the map - - } //end of loop over em objects - - filler.insert(emObjectHandle, retV.begin(), retV.end()); - filler.fill(); - - iEvent.put(std::move(isoMap)); -} - -//define this as a plug-in -//DEFINE_FWK_MODULE(EgammaRecHitIsolation,Producer); diff --git a/RecoParticleFlow/PFProducer/plugins/PFPhotonTranslator.cc b/RecoParticleFlow/PFProducer/plugins/PFPhotonTranslator.cc deleted file mode 100644 index f128e0dbe6a6a..0000000000000 --- a/RecoParticleFlow/PFProducer/plugins/PFPhotonTranslator.cc +++ /dev/null @@ -1,1100 +0,0 @@ -#include "FWCore/MessageLogger/interface/MessageLogger.h" -#include "FWCore/Framework/interface/ESHandle.h" -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "CommonTools/ParticleFlow/interface/PFClusterWidthAlgo.h" -#include "DataFormats/ParticleFlowCandidate/interface/PFCandidate.h" -#include "DataFormats/EgammaReco/interface/PreshowerCluster.h" -#include "DataFormats/EgammaReco/interface/SuperCluster.h" -#include "DataFormats/EgammaCandidates/interface/PhotonCore.h" -#include "DataFormats/EgammaCandidates/interface/Photon.h" -#include "DataFormats/VertexReco/interface/Vertex.h" -#include "DataFormats/ParticleFlowReco/interface/PFBlockElement.h" -#include "DataFormats/Math/interface/Vector3D.h" -#include "DataFormats/Math/interface/LorentzVector.h" -#include "RecoEcal/EgammaCoreTools/interface/Mustache.h" -#include "FWCore/Framework/interface/stream/EDProducer.h" -#include "FWCore/Framework/interface/MakerMacros.h" -#include "DataFormats/Common/interface/ValueMap.h" -#include "DataFormats/EgammaReco/interface/BasicCluster.h" -#include "DataFormats/ParticleFlowReco/interface/PFCluster.h" -#include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/ParticleFlowCandidate/interface/PFCandidatePhotonExtra.h" -#include "DataFormats/ParticleFlowReco/interface/PFBlock.h" -#include "CondFormats/EcalObjects/interface/EcalMustacheSCParameters.h" -#include "CondFormats/DataRecord/interface/EcalMustacheSCParametersRcd.h" - -class CaloGeometry; -class CaloTopology; -class DetId; -namespace edm { - class EventSetup; -} // namespace edm - -class PFPhotonTranslator : public edm::stream::EDProducer<> { -public: - explicit PFPhotonTranslator(const edm::ParameterSet &); - ~PFPhotonTranslator() override; - - void produce(edm::Event &, const edm::EventSetup &) override; - - typedef std::vector > > IsolationValueMaps; - -private: - // to retrieve the collection from the event - bool fetchCandidateCollection(edm::Handle &c, - const edm::InputTag &tag, - const edm::Event &iEvent) const; - - // makes a basic cluster from PFBlockElement and add it to the collection ; the corrected energy is taken - // from the PFCandidate - void createBasicCluster(const reco::PFBlockElement &, - reco::BasicClusterCollection &basicClusters, - std::vector &, - const reco::PFCandidate &coCandidate) const; - // makes a preshower cluster from of PFBlockElement and add it to the collection - void createPreshowerCluster(const reco::PFBlockElement &PFBE, - reco::PreshowerClusterCollection &preshowerClusters, - unsigned plane) const; - - // create the basic cluster Ptr - void createBasicClusterPtrs(const edm::OrphanHandle &basicClustersHandle); - - // create the preshower cluster Refs - void createPreshowerClusterPtrs(const edm::OrphanHandle &preshowerClustersHandle); - - // make a super cluster from its ingredients and add it to the collection - void createSuperClusters(const reco::PFCandidateCollection &, reco::SuperClusterCollection &superClusters) const; - - void createOneLegConversions(const edm::OrphanHandle &superClustersHandle, - reco::ConversionCollection &oneLegConversions); - - //create photon cores - void createPhotonCores(const edm::OrphanHandle &superClustersHandle, - const edm::OrphanHandle &oneLegConversionHandle, - reco::PhotonCoreCollection &photonCores); - - void createPhotons(reco::VertexCollection &vertexCollection, - edm::Handle &egPhotons, - const edm::OrphanHandle &photonCoresHandle, - const IsolationValueMaps &isolationValues, - reco::PhotonCollection &photons); - - const reco::PFCandidate &correspondingDaughterCandidate(const reco::PFCandidate &cand, - const reco::PFBlockElement &pfbe) const; - - edm::InputTag inputTagPFCandidates_; - std::vector inputTagIsoVals_; - std::string PFBasicClusterCollection_; - std::string PFPreshowerClusterCollection_; - std::string PFSuperClusterCollection_; - std::string PFPhotonCoreCollection_; - std::string PFPhotonCollection_; - std::string PFConversionCollection_; - std::string EGPhotonCollection_; - std::string vertexProducer_; - edm::InputTag barrelEcalHits_; - edm::InputTag endcapEcalHits_; - edm::InputTag hcalTowers_; - double hOverEConeSize_; - - // the collection of basic clusters associated to a photon - std::vector basicClusters_; - // the correcsponding PFCluster ref - std::vector > pfClusters_; - // the collection of preshower clusters associated to a photon - std::vector preshowerClusters_; - // the super cluster collection (actually only one) associated to a photon - std::vector superClusters_; - // the references to the basic clusters associated to a photon - std::vector basicClusterPtr_; - // the references to the basic clusters associated to a photon - std::vector preshowerClusterPtr_; - // keep track of the index of the PF Candidate - std::vector photPFCandidateIndex_; - // the list of candidatePtr - std::vector CandidatePtr_; - // the e/g SC associated - std::vector egSCRef_; - // the e/g photon associated - std::vector egPhotonRef_; - // the PF MVA and regression - std::vector pfPhotonMva_; - std::vector energyRegression_; - std::vector energyRegressionError_; - - //Vector of vector of Conversions Refs - std::vector pfConv_; - std::vector > pfSingleLegConv_; - std::vector > pfSingleLegConvMva_; - - std::vector conv1legPFCandidateIndex_; - std::vector conv2legPFCandidateIndex_; - - edm::ESHandle theCaloTopo_; - edm::ESHandle theCaloGeom_; - - // Mustache SC parameters - edm::ESGetToken ecalMustacheSCParametersToken_; - const EcalMustacheSCParameters *mustacheSCParams_; - - bool emptyIsOk_; -}; - -DEFINE_FWK_MODULE(PFPhotonTranslator); - -using namespace edm; -using namespace std; -using namespace reco; - -typedef math::XYZTLorentzVector LorentzVector; -typedef math::XYZPoint Point; -typedef math::XYZVector Vector; - -PFPhotonTranslator::PFPhotonTranslator(const edm::ParameterSet &iConfig) { - //std::cout << "PFPhotonTranslator" << std::endl; - - inputTagPFCandidates_ = iConfig.getParameter("PFCandidate"); - - edm::ParameterSet isoVals = iConfig.getParameter("isolationValues"); - inputTagIsoVals_.push_back(isoVals.getParameter("pfChargedHadrons")); - inputTagIsoVals_.push_back(isoVals.getParameter("pfPhotons")); - inputTagIsoVals_.push_back(isoVals.getParameter("pfNeutralHadrons")); - - PFBasicClusterCollection_ = iConfig.getParameter("PFBasicClusters"); - PFPreshowerClusterCollection_ = iConfig.getParameter("PFPreshowerClusters"); - PFSuperClusterCollection_ = iConfig.getParameter("PFSuperClusters"); - PFConversionCollection_ = iConfig.getParameter("PFConversionCollection"); - PFPhotonCoreCollection_ = iConfig.getParameter("PFPhotonCores"); - PFPhotonCollection_ = iConfig.getParameter("PFPhotons"); - - EGPhotonCollection_ = iConfig.getParameter("EGPhotons"); - - vertexProducer_ = iConfig.getParameter("primaryVertexProducer"); - - barrelEcalHits_ = iConfig.getParameter("barrelEcalHits"); - endcapEcalHits_ = iConfig.getParameter("endcapEcalHits"); - - hcalTowers_ = iConfig.getParameter("hcalTowers"); - hOverEConeSize_ = iConfig.getParameter("hOverEConeSize"); - - if (iConfig.exists("emptyIsOk")) - emptyIsOk_ = iConfig.getParameter("emptyIsOk"); - else - emptyIsOk_ = false; - - ecalMustacheSCParametersToken_ = esConsumes(); - - produces(PFBasicClusterCollection_); - produces(PFPreshowerClusterCollection_); - produces(PFSuperClusterCollection_); - produces(PFPhotonCoreCollection_); - produces(PFPhotonCollection_); - produces(PFConversionCollection_); -} - -PFPhotonTranslator::~PFPhotonTranslator() {} - -void PFPhotonTranslator::produce(edm::Event &iEvent, const edm::EventSetup &iSetup) { - //cout << "NEW EVENT"<(); - - auto psClusters_p = std::make_unique(); - - /* - auto SingleLeg_p = std::make_unique(); - */ - - reco::SuperClusterCollection outputSuperClusterCollection; - reco::ConversionCollection outputOneLegConversionCollection; - reco::PhotonCoreCollection outputPhotonCoreCollection; - reco::PhotonCollection outputPhotonCollection; - - outputSuperClusterCollection.clear(); - outputOneLegConversionCollection.clear(); - outputPhotonCoreCollection.clear(); - outputPhotonCollection.clear(); - - edm::Handle pfCandidates; - bool status = fetchCandidateCollection(pfCandidates, inputTagPFCandidates_, iEvent); - - edm::Handle egPhotons; - iEvent.getByLabel(EGPhotonCollection_, egPhotons); - - Handle vertexHandle; - - IsolationValueMaps isolationValues(inputTagIsoVals_.size()); - for (size_t j = 0; j < inputTagIsoVals_.size(); ++j) { - iEvent.getByLabel(inputTagIsoVals_[j], isolationValues[j]); - } - - // clear the vectors - photPFCandidateIndex_.clear(); - basicClusters_.clear(); - pfClusters_.clear(); - preshowerClusters_.clear(); - superClusters_.clear(); - basicClusterPtr_.clear(); - preshowerClusterPtr_.clear(); - CandidatePtr_.clear(); - egSCRef_.clear(); - egPhotonRef_.clear(); - pfPhotonMva_.clear(); - energyRegression_.clear(); - energyRegressionError_.clear(); - pfConv_.clear(); - pfSingleLegConv_.clear(); - pfSingleLegConvMva_.clear(); - conv1legPFCandidateIndex_.clear(); - conv2legPFCandidateIndex_.clear(); - - // loop on the candidates - //CC@@ - // we need first to create AND put the SuperCluster, - // basic clusters and presh clusters collection - // in order to get a working Handle - unsigned ncand = (status) ? pfCandidates->size() : 0; - - unsigned iphot = 0; - unsigned iconv1leg = 0; - unsigned iconv2leg = 0; - - for (unsigned i = 0; i < ncand; ++i) { - const reco::PFCandidate &cand = (*pfCandidates)[i]; - if (cand.particleId() != reco::PFCandidate::gamma) - continue; - //cout << "cand.mva_nothing_gamma()="< 0.001) //Found PFPhoton with PFPhoton Extras saved - { - //cout << "NEW PHOTON" << endl; - - //std::cout << "nDoubleLegConv="<conversionRef().size()<conversionRef().empty()) { - pfConv_.push_back(reco::ConversionRefVector()); - - const reco::ConversionRefVector &doubleLegConvColl = cand.photonExtraRef()->conversionRef(); - for (unsigned int iconv = 0; iconv < doubleLegConvColl.size(); iconv++) { - pfConv_[iconv2leg].push_back(doubleLegConvColl[iconv]); - } - - conv2legPFCandidateIndex_.push_back(iconv2leg); - iconv2leg++; - } else - conv2legPFCandidateIndex_.push_back(-1); - - const std::vector &singleLegConvColl = cand.photonExtraRef()->singleLegConvTrackRef(); - const std::vector &singleLegConvCollMva = cand.photonExtraRef()->singleLegConvMva(); - - //std::cout << "nSingleLegConv=" <()); - pfSingleLegConvMva_.push_back(std::vector()); - - //cout << "nTracks="<< singleLegConvColl.size()<begin(); gamIter != egPhotons->end(); ++gamIter) { - if (cand.superClusterRef() == gamIter->superCluster()) { - reco::PhotonRef PhotRef(reco::PhotonRef(egPhotons, iegphot)); - egPhotonRef_.push_back(PhotRef); - } - iegphot++; - } - - //std::cout << "Cand elements in blocks : " << cand.elementsInBlocks().size() << std::endl; - - for (unsigned iele = 0; iele < cand.elementsInBlocks().size(); ++iele) { - // first get the block - reco::PFBlockRef blockRef = cand.elementsInBlocks()[iele].first; - // - unsigned elementIndex = cand.elementsInBlocks()[iele].second; - // check it actually exists - if (blockRef.isNull()) - continue; - - // then get the elements of the block - const edm::OwnVector &elements = (*blockRef).elements(); - - const reco::PFBlockElement &pfbe(elements[elementIndex]); - // The first ECAL element should be the cluster associated to the GSF; defined as the seed - if (pfbe.type() == reco::PFBlockElement::ECAL) { - //std::cout << "BlockElement ECAL" << std::endl; - // the Brem photons are saved as daughter PFCandidate; this - // is convenient to access the corrected energy - // std::cout << " Found candidate " << correspondingDaughterCandidate(coCandidate,pfbe) << " " << coCandidate << std::endl; - createBasicCluster(pfbe, basicClusters_[iphot], pfClusters_[iphot], correspondingDaughterCandidate(cand, pfbe)); - } - if (pfbe.type() == reco::PFBlockElement::PS1) { - //std::cout << "BlockElement PS1" << std::endl; - createPreshowerCluster(pfbe, preshowerClusters_[iphot], 1); - } - if (pfbe.type() == reco::PFBlockElement::PS2) { - //std::cout << "BlockElement PS2" << std::endl; - createPreshowerCluster(pfbe, preshowerClusters_[iphot], 2); - } - - } // loop on the elements - - // save the basic clusters - basicClusters_p->insert(basicClusters_p->end(), basicClusters_[iphot].begin(), basicClusters_[iphot].end()); - // save the preshower clusters - psClusters_p->insert(psClusters_p->end(), preshowerClusters_[iphot].begin(), preshowerClusters_[iphot].end()); - - ++iphot; - - } // loop on PFCandidates - - //Save the basic clusters and get an handle as to be able to create valid Refs (thanks to Claude) - // std::cout << " Number of basic clusters " << basicClusters_p->size() << std::endl; - const edm::OrphanHandle bcRefProd = - iEvent.put(std::move(basicClusters_p), PFBasicClusterCollection_); - - //preshower clusters - const edm::OrphanHandle psRefProd = - iEvent.put(std::move(psClusters_p), PFPreshowerClusterCollection_); - - // now that the Basic clusters are in the event, the Ref can be created - createBasicClusterPtrs(bcRefProd); - // now that the preshower clusters are in the event, the Ref can be created - createPreshowerClusterPtrs(psRefProd); - - // and now the Super cluster can be created with valid references - //if(status) createSuperClusters(*pfCandidates,*superClusters_p); - if (status) - createSuperClusters(*pfCandidates, outputSuperClusterCollection); - - //std::cout << "nb superclusters in collection : "<(outputSuperClusterCollection); - const edm::OrphanHandle scRefProd = - iEvent.put(std::move(superClusters_p), PFSuperClusterCollection_); - - /* - int ipho=0; - for (reco::SuperClusterCollection::const_iterator gamIter = scRefProd->begin(); gamIter != scRefProd->end(); ++gamIter){ - std::cout << "SC i="<(outputPhotonCoreCollection); - //std::cout << "photon core collection put in unique_ptr"< pcRefProd = - iEvent.put(std::move(photonCores_p), PFPhotonCoreCollection_); - - //std::cout << "photon core have been put in the event"<begin(); gamIter != pcRefProd->end(); ++gamIter){ - std::cout << "PhotonCore i="< barrelHitHandle; - EcalRecHitCollection barrelRecHits; - iEvent.getByLabel(barrelEcalHits_, barrelHitHandle); - if (!barrelHitHandle.isValid()) { - edm::LogError("PhotonProducer") << "Error! Can't get the product "< endcapHitHandle; - iEvent.getByLabel(endcapEcalHits_, endcapHitHandle); - EcalRecHitCollection endcapRecHits; - if (!endcapHitHandle.isValid()) { - edm::LogError("PhotonProducer") << "Error! Can't get the product "<().get(theCaloGeom_); - - edm::ESHandle pTopology; - iSetup.get().get(theCaloTopo_); - const CaloTopology *topology = theCaloTopo_.product(); - - // get Hcal rechits collection - Handle hcalTowersHandle; - iEvent.getByLabel(hcalTowers_, hcalTowersHandle); - */ - - //create photon collection - //if(status) createPhotons(vertexCollection, pcRefProd, topology, &barrelRecHits, &endcapRecHits, hcalRecHitsHandle, isolationValues, outputPhotonCollection); - if (status) - createPhotons(vertexCollection, egPhotons, pcRefProd, isolationValues, outputPhotonCollection); - - // Put the photons in the event - auto photons_p = std::make_unique(outputPhotonCollection); - //std::cout << "photon collection put in unique_ptr"< photonRefProd = iEvent.put(std::move(photons_p), PFPhotonCollection_); - //std::cout << "photons have been put in the event"<begin(); gamIter != photonRefProd->end(); ++gamIter){ - std::cout << "Photon i="< the energy is not corrected -// It should be possible to get the corrected energy (including the associated PS energy) -// from the PFCandidate daugthers ; Needs some work -void PFPhotonTranslator::createBasicCluster(const reco::PFBlockElement &PFBE, - reco::BasicClusterCollection &basicClusters, - std::vector &pfClusters, - const reco::PFCandidate &coCandidate) const { - const reco::PFClusterRef &myPFClusterRef = PFBE.clusterRef(); - if (myPFClusterRef.isNull()) - return; - - const reco::PFCluster &myPFCluster(*myPFClusterRef); - pfClusters.push_back(&myPFCluster); - //std::cout << " Creating BC " << myPFCluster.energy() << " " << coCandidate.ecalEnergy() <<" "<< coCandidate.rawEcalEnergy() <energy(), myPFClusterRef->position(), myPFClusterRef->hitsAndFractions(), plane)); -} - -void PFPhotonTranslator::createBasicClusterPtrs( - const edm::OrphanHandle &basicClustersHandle) { - unsigned size = photPFCandidateIndex_.size(); - unsigned basicClusterCounter = 0; - basicClusterPtr_.resize(size); - - for (unsigned iphot = 0; iphot < size; ++iphot) // loop on tracks - { - unsigned nbc = basicClusters_[iphot].size(); - for (unsigned ibc = 0; ibc < nbc; ++ibc) // loop on basic clusters - { - // std::cout << "Track "<< iGSF << " ref " << basicClusterCounter << std::endl; - reco::CaloClusterPtr bcPtr(basicClustersHandle, basicClusterCounter); - basicClusterPtr_[iphot].push_back(bcPtr); - ++basicClusterCounter; - } - } -} - -void PFPhotonTranslator::createPreshowerClusterPtrs( - const edm::OrphanHandle &preshowerClustersHandle) { - unsigned size = photPFCandidateIndex_.size(); - unsigned psClusterCounter = 0; - preshowerClusterPtr_.resize(size); - - for (unsigned iphot = 0; iphot < size; ++iphot) // loop on tracks - { - unsigned nbc = preshowerClusters_[iphot].size(); - for (unsigned ibc = 0; ibc < nbc; ++ibc) // loop on basic clusters - { - // std::cout << "Track "<< iGSF << " ref " << basicClusterCounter << std::endl; - reco::CaloClusterPtr psPtr(preshowerClustersHandle, psClusterCounter); - preshowerClusterPtr_[iphot].push_back(psPtr); - ++psClusterCounter; - } - } -} - -void PFPhotonTranslator::createSuperClusters(const reco::PFCandidateCollection &pfCand, - reco::SuperClusterCollection &superClusters) const { - unsigned nphot = photPFCandidateIndex_.size(); - for (unsigned iphot = 0; iphot < nphot; ++iphot) { - //cout << "SC iphot=" << iphot << endl; - - // Computes energy position a la e/gamma - double sclusterE = 0; - double posX = 0.; - double posY = 0.; - double posZ = 0.; - - unsigned nbasics = basicClusters_[iphot].size(); - for (unsigned ibc = 0; ibc < nbasics; ++ibc) { - //cout << "BC in SC : iphot="< > &v1 = basicClusters_[iphot][ibc].hitsAndFractions(); - // std::cout << " Number of cells " << v1.size() << std::endl; - for (std::vector >::const_iterator diIt = v1.begin(); diIt != v1.end(); ++diIt) { - // std::cout << " Adding DetId " << (diIt->first).rawId() << " " << diIt->second << std::endl; - mySuperCluster.addHitAndFraction(diIt->first, diIt->second); - } // loop over rechits - } - - unsigned nps = preshowerClusterPtr_[iphot].size(); - for (unsigned ips = 0; ips < nps; ++ips) { - mySuperCluster.addPreshowerCluster(preshowerClusterPtr_[iphot][ips]); - } - - // Set the preshower energy - mySuperCluster.setPreshowerEnergy(pfCand[photPFCandidateIndex_[iphot]].pS1Energy() + - pfCand[photPFCandidateIndex_[iphot]].pS2Energy()); - - // Set the cluster width - mySuperCluster.setEtaWidth(pfwidth.pflowEtaWidth()); - mySuperCluster.setPhiWidth(pfwidth.pflowPhiWidth()); - // Force the computation of rawEnergy_ of the reco::SuperCluster - mySuperCluster.rawEnergy(); - - //cout << "SC energy="<< mySuperCluster.energy()< &superClustersHandle, - reco::ConversionCollection &oneLegConversions) { - //std::cout << "createOneLegConversions" << std::endl; - - unsigned nphot = photPFCandidateIndex_.size(); - for (unsigned iphot = 0; iphot < nphot; ++iphot) { - //if (conv1legPFCandidateIndex_[iphot]==-1) cout << "No OneLegConversions to add"< -1) { - for (unsigned iConv = 0; iConv < pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]].size(); iConv++) { - reco::CaloClusterPtrVector scPtrVec; - std::vector matchingBC; - math::Error<3>::type error; - const reco::Vertex *convVtx = - new reco::Vertex(pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->innerPosition(), error); - - //cout << "Vtx x="<x() << " y="<< convVtx->y()<<" z="<z()<< endl; - //cout << "VtxError x=" << convVtx->xError() << endl; - - std::vector OneLegConvVector; - OneLegConvVector.push_back(pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]); - - std::vector tr = OneLegConvVector; - std::vector trackPositionAtEcalVec; - std::vector innPointVec; - std::vector trackPinVec; - std::vector trackPoutVec; - math::XYZPointF trackPositionAtEcal( - pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->outerPosition().X(), - pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->outerPosition().Y(), - pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->outerPosition().Z()); - math::XYZPointF innPoint(pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->innerPosition().X(), - pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->innerPosition().Y(), - pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->innerPosition().Z()); - math::XYZVectorF trackPin(pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->innerMomentum().X(), - pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->innerMomentum().Y(), - pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->innerMomentum().Z()); - math::XYZVectorF trackPout(pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->outerMomentum().X(), - pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->outerMomentum().Y(), - pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->outerMomentum().Z()); - float DCA = pfSingleLegConv_[conv1legPFCandidateIndex_[iphot]][iConv]->d0(); - trackPositionAtEcalVec.push_back(trackPositionAtEcal); - innPointVec.push_back(innPoint); - trackPinVec.push_back(trackPin); - trackPoutVec.push_back(trackPout); - std::vector OneLegMvaVector; - reco::Conversion myOneLegConversion(scPtrVec, - OneLegConvVector, - trackPositionAtEcalVec, - *convVtx, - matchingBC, - DCA, - innPointVec, - trackPinVec, - trackPoutVec, - pfSingleLegConvMva_[conv1legPFCandidateIndex_[iphot]][iConv], - reco::Conversion::pflow); - OneLegMvaVector.push_back(pfSingleLegConvMva_[conv1legPFCandidateIndex_[iphot]][iConv]); - myOneLegConversion.setOneLegMVA(OneLegMvaVector); - //reco::Conversion myOneLegConversion(scPtrVec, - //OneLegConvVector, *convVtx, reco::Conversion::pflow); - - /* - std::cout << "One leg conversion created" << endl; - std::vector > convtracks = myOneLegConversion.tracks(); - const std::vector mvalist = myOneLegConversion.oneLegMVA(); - - cout << "nTracks="<< convtracks.size()<pt(); - std::cout << "Track pt="<< convtracks[itk]->pt() << std::endl; - std::cout << "Track mva="<< mvalist[itk] << std::endl; - } - */ - oneLegConversions.push_back(myOneLegConversion); - - //cout << "OneLegConv added"< &superClustersHandle, - const edm::OrphanHandle &oneLegConversionHandle, - reco::PhotonCoreCollection &photonCores) { - //std::cout << "createPhotonCores" << std::endl; - - unsigned nphot = photPFCandidateIndex_.size(); - - unsigned i1legtot = 0; - - for (unsigned iphot = 0; iphot < nphot; ++iphot) { - //std::cout << "iphot="<electronPixelSeeds(); - for (unsigned iseed = 0; iseed < pixelSeeds.size(); iseed++) { - myPhotonCore.addElectronPixelSeed(pixelSeeds[iseed]); - } - - //cout << "PhotonCores : SC OK" << endl; - - //cout << "conv1legPFCandidateIndex_[iphot]="< &egPhotons, - const edm::OrphanHandle &photonCoresHandle, - const IsolationValueMaps &isolationValues, - reco::PhotonCollection &photons) { - //cout << "createPhotons" << endl; - - unsigned nphot = photPFCandidateIndex_.size(); - - for (unsigned iphot = 0; iphot < nphot; ++iphot) { - //std::cout << "iphot="<position(); - //std::cout << "vtx made" << std::endl; - - math::XYZVector direction = PCref->parentSuperCluster()->position() - vtx; - - //It could be that pfSC energy gives not the best resolution : use smaller agregates for some cases ? - math::XYZVector P3 = direction.unit() * PCref->parentSuperCluster()->energy(); - LorentzVector P4(P3.x(), P3.y(), P3.z(), PCref->parentSuperCluster()->energy()); - - reco::Photon myPhoton(P4, PCref->parentSuperCluster()->position(), PCref, vtx); - //cout << "photon created"<e1x5(); - showerShape.e2x5 = egPhotonRef_[iphot]->e2x5(); - showerShape.e3x3 = egPhotonRef_[iphot]->e3x3(); - showerShape.e5x5 = egPhotonRef_[iphot]->e5x5(); - showerShape.maxEnergyXtal = egPhotonRef_[iphot]->maxEnergyXtal(); - showerShape.sigmaEtaEta = egPhotonRef_[iphot]->sigmaEtaEta(); - showerShape.sigmaIetaIeta = egPhotonRef_[iphot]->sigmaIetaIeta(); - for (uint id = 0; id < showerShape.hcalOverEcal.size(); ++id) { - showerShape.hcalOverEcal[id] = egPhotonRef_[iphot]->hcalOverEcal(id + 1); - } - myPhoton.setShowerShapeVariables(showerShape); - - saturationInfo.nSaturatedXtals = egPhotonRef_[iphot]->nSaturatedXtals(); - saturationInfo.isSeedSaturated = egPhotonRef_[iphot]->isSeedSaturated(); - myPhoton.setSaturationInfo(saturationInfo); - - fiducialFlags.isEB = egPhotonRef_[iphot]->isEB(); - fiducialFlags.isEE = egPhotonRef_[iphot]->isEE(); - fiducialFlags.isEBEtaGap = egPhotonRef_[iphot]->isEBEtaGap(); - fiducialFlags.isEBPhiGap = egPhotonRef_[iphot]->isEBPhiGap(); - fiducialFlags.isEERingGap = egPhotonRef_[iphot]->isEERingGap(); - fiducialFlags.isEEDeeGap = egPhotonRef_[iphot]->isEEDeeGap(); - fiducialFlags.isEBEEGap = egPhotonRef_[iphot]->isEBEEGap(); - myPhoton.setFiducialVolumeFlags(fiducialFlags); - - isolationVariables03.ecalRecHitSumEt = egPhotonRef_[iphot]->ecalRecHitSumEtConeDR03(); - for (uint id = 0; id < isolationVariables03.hcalRecHitSumEt.size(); ++id) { - isolationVariables03.hcalRecHitSumEt[id] = egPhotonRef_[iphot]->hcalTowerSumEtConeDR03(id + 1); - } - isolationVariables03.trkSumPtSolidCone = egPhotonRef_[iphot]->trkSumPtSolidConeDR03(); - isolationVariables03.trkSumPtHollowCone = egPhotonRef_[iphot]->trkSumPtHollowConeDR03(); - isolationVariables03.nTrkSolidCone = egPhotonRef_[iphot]->nTrkSolidConeDR03(); - isolationVariables03.nTrkHollowCone = egPhotonRef_[iphot]->nTrkHollowConeDR03(); - isolationVariables04.ecalRecHitSumEt = egPhotonRef_[iphot]->ecalRecHitSumEtConeDR04(); - for (uint id = 0; id < isolationVariables04.hcalRecHitSumEt.size(); ++id) { - isolationVariables04.hcalRecHitSumEt[id] = egPhotonRef_[iphot]->hcalTowerSumEtConeDR04(id + 1); - } - isolationVariables04.trkSumPtSolidCone = egPhotonRef_[iphot]->trkSumPtSolidConeDR04(); - isolationVariables04.trkSumPtHollowCone = egPhotonRef_[iphot]->trkSumPtHollowConeDR04(); - isolationVariables04.nTrkSolidCone = egPhotonRef_[iphot]->nTrkSolidConeDR04(); - isolationVariables04.nTrkHollowCone = egPhotonRef_[iphot]->nTrkHollowConeDR04(); - myPhoton.setIsolationVariables(isolationVariables04, isolationVariables03); - - reco::Photon::PflowIsolationVariables myPFIso; - myPFIso.chargedHadronIso = (*isolationValues[0])[CandidatePtr_[iphot]]; - myPFIso.photonIso = (*isolationValues[1])[CandidatePtr_[iphot]]; - myPFIso.neutralHadronIso = (*isolationValues[2])[CandidatePtr_[iphot]]; - myPhoton.setPflowIsolationVariables(myPFIso); - - reco::Photon::PflowIDVariables myPFVariables; - - reco::Mustache myMustache(mustacheSCParams_); - myMustache.MustacheID( - *(myPhoton.parentSuperCluster()), myPFVariables.nClusterOutsideMustache, myPFVariables.etOutsideMustache); - myPFVariables.mva = pfPhotonMva_[iphot]; - myPhoton.setPflowIDVariables(myPFVariables); - - //cout << "chargedHadronIso="<elementsInBlocks().size() != 1) { - // std::cout << " Daughter with " << myPFCandidate.elementsInBlocks().size()<< " element in block " << std::endl; - return cand; - } - if (myPFCandidate->elementsInBlocks()[0].second == refindex) { - // std::cout << " Found it " << cand << std::endl; - return *myPFCandidate; - } - } - return cand; -} diff --git a/RecoParticleFlow/PFProducer/plugins/importers/EGPhotonImporter.cc b/RecoParticleFlow/PFProducer/plugins/importers/EGPhotonImporter.cc deleted file mode 100644 index 846628a65a091..0000000000000 --- a/RecoParticleFlow/PFProducer/plugins/importers/EGPhotonImporter.cc +++ /dev/null @@ -1,104 +0,0 @@ -#include "RecoParticleFlow/PFProducer/interface/BlockElementImporterBase.h" -#include "RecoParticleFlow/PFProducer/interface/PhotonSelectorAlgo.h" -#include "DataFormats/ParticleFlowReco/interface/PFCluster.h" -#include "DataFormats/ParticleFlowReco/interface/PFBlockElementSuperCluster.h" -#include "DataFormats/EgammaCandidates/interface/Photon.h" -#include "DataFormats/EgammaReco/interface/SuperCluster.h" -#include "RecoParticleFlow/PFProducer/interface/PFBlockElementSCEqual.h" - -#include - -#include - -class EGPhotonImporter : public BlockElementImporterBase { -public: - enum SelectionChoices { SeparateDetectorIso, CombinedDetectorIso }; - - EGPhotonImporter(const edm::ParameterSet&, edm::ConsumesCollector&); - - void importToBlock(const edm::Event&, ElementList&) const override; - -private: - edm::EDGetTokenT _src; - const std::unordered_map _selectionTypes; - SelectionChoices _selectionChoice; - std::unique_ptr _selector; - bool _superClustersArePF; -}; - -DEFINE_EDM_PLUGIN(BlockElementImporterFactory, EGPhotonImporter, "EGPhotonImporter"); - -EGPhotonImporter::EGPhotonImporter(const edm::ParameterSet& conf, edm::ConsumesCollector& cc) - : BlockElementImporterBase(conf, cc), - _src(cc.consumes(conf.getParameter("source"))), - _selectionTypes({{"SeparateDetectorIso", EGPhotonImporter::SeparateDetectorIso}, - {"CombinedDetectorIso", EGPhotonImporter::CombinedDetectorIso}}), - _superClustersArePF(conf.getParameter("superClustersArePF")) { - const std::string& selChoice = conf.getParameter("SelectionChoice"); - _selectionChoice = _selectionTypes.at(selChoice); - const edm::ParameterSet& selDef = conf.getParameterSet("SelectionDefinition"); - const float minEt = selDef.getParameter("minEt"); - const float trackIso_const = selDef.getParameter("trackIsoConstTerm"); - const float trackIso_slope = selDef.getParameter("trackIsoSlopeTerm"); - const float ecalIso_const = selDef.getParameter("ecalIsoConstTerm"); - const float ecalIso_slope = selDef.getParameter("ecalIsoSlopeTerm"); - const float hcalIso_const = selDef.getParameter("hcalIsoConstTerm"); - const float hcalIso_slope = selDef.getParameter("hcalIsoSlopeTerm"); - const float hoe = selDef.getParameter("HoverE"); - const float loose_hoe = selDef.getParameter("LooseHoverE"); - const float combIso = selDef.getParameter("combIsoConstTerm"); - _selector = std::make_unique((float)_selectionChoice, - minEt, - trackIso_const, - trackIso_slope, - ecalIso_const, - ecalIso_slope, - hcalIso_const, - hcalIso_slope, - hoe, - combIso, - loose_hoe); -} - -void EGPhotonImporter::importToBlock(const edm::Event& e, BlockElementImporterBase::ElementList& elems) const { - typedef BlockElementImporterBase::ElementList::value_type ElementType; - auto photons = e.getHandle(_src); - elems.reserve(elems.size() + photons->size()); - // setup our elements so that all the SCs are grouped together - auto SCs_end = std::partition( - elems.begin(), elems.end(), [](const ElementType& a) { return a->type() == reco::PFBlockElement::SC; }); - //now add the photons - auto bphoton = photons->cbegin(); - auto ephoton = photons->cend(); - reco::PFBlockElementSuperCluster* scbe = nullptr; - reco::PhotonRef phoref; - for (auto photon = bphoton; photon != ephoton; ++photon) { - if (_selector->passPhotonSelection(*photon)) { - phoref = reco::PhotonRef(photons, std::distance(bphoton, photon)); - const reco::SuperClusterRef& scref = photon->superCluster(); - PFBlockElementSCEqual myEqual(scref); - auto sc_elem = std::find_if(elems.begin(), SCs_end, myEqual); - if (sc_elem != SCs_end) { - scbe = static_cast(sc_elem->get()); - scbe->setFromPhoton(true); - scbe->setPhotonRef(phoref); - scbe->setTrackIso(photon->trkSumPtHollowConeDR04()); - scbe->setEcalIso(photon->ecalRecHitSumEtConeDR04()); - scbe->setHcalIso(photon->hcalTowerSumEtConeDR04()); - scbe->setHoE(photon->hadronicOverEm()); - } else { - scbe = new reco::PFBlockElementSuperCluster(scref); - scbe->setFromPhoton(true); - scbe->setFromPFSuperCluster(_superClustersArePF); - scbe->setPhotonRef(phoref); - scbe->setTrackIso(photon->trkSumPtHollowConeDR04()); - scbe->setEcalIso(photon->ecalRecHitSumEtConeDR04()); - scbe->setHcalIso(photon->hcalTowerSumEtConeDR04()); - scbe->setHoE(photon->hadronicOverEm()); - SCs_end = elems.insert(SCs_end, ElementType(scbe)); - ++SCs_end; // point to element *after* the new one - } - } - } // loop on photons - elems.shrink_to_fit(); -} diff --git a/RecoParticleFlow/PFProducer/src/PhotonSelectorAlgo.cc b/RecoParticleFlow/PFProducer/src/PhotonSelectorAlgo.cc deleted file mode 100644 index 48e22a8b4a0aa..0000000000000 --- a/RecoParticleFlow/PFProducer/src/PhotonSelectorAlgo.cc +++ /dev/null @@ -1,66 +0,0 @@ -// -// Original Authors: Nicholas Wardle, Florian Beaudette -// -#include "RecoParticleFlow/PFProducer/interface/PhotonSelectorAlgo.h" - -PhotonSelectorAlgo::PhotonSelectorAlgo(float choice, - float c_Et, - float c_iso_track_a, - float c_iso_track_b, - float c_iso_ecal_a, - float c_iso_ecal_b, - float c_iso_hcal_a, - float c_iso_hcal_b, - float c_hoe, - float comb_iso, - float loose_hoe) - : choice_(choice), - c_Et_(c_Et), - c_iso_track_a_(c_iso_track_a), - c_iso_track_b_(c_iso_track_b), - c_iso_ecal_a_(c_iso_ecal_a), - c_iso_ecal_b_(c_iso_ecal_b), - c_iso_hcal_a_(c_iso_hcal_a), - c_iso_hcal_b_(c_iso_hcal_b), - c_hoe_(c_hoe), - comb_iso_(comb_iso), - loose_hoe_(loose_hoe) { - ; -} - -bool PhotonSelectorAlgo::passPhotonSelection(const reco::Photon& photon) const { - // Photon ET - float photonPt = photon.pt(); - if (photonPt < c_Et_) - return false; - if (choice_ < 0.1) //EGM Loose - { - //std::cout<<"Cuts:"< c_hoe_) - return false; - - // Track iso - if (photon.trkSumPtHollowConeDR04() > c_iso_track_a_ + c_iso_track_b_ * photonPt) - return false; - - // ECAL iso - if (photon.ecalRecHitSumEtConeDR04() > c_iso_ecal_a_ + c_iso_ecal_b_ * photonPt) - return false; - - // HCAL iso - if (photon.hcalTowerSumEtConeDR04() > c_iso_hcal_a_ + c_iso_hcal_b_ * photonPt) - return false; - } - if (choice_ > 0.99) { - //std::cout<<"Cuts "< loose_hoe_) - return false; - //Isolation variables in 0.3 cone combined - if (photon.trkSumPtHollowConeDR03() + photon.ecalRecHitSumEtConeDR03() + photon.hcalTowerSumEtConeDR03() > - comb_iso_) - return false; - } - - return true; -} From e5397be2ad3e36eef291c4cd78c276eda1fc2b48 Mon Sep 17 00:00:00 2001 From: mmusich Date: Wed, 27 Dec 2023 16:44:34 +0100 Subject: [PATCH 254/281] rename eop cfi files in order to not conflicy with auto-generated configuration --- ...pElecTreeWriter_cfi.py => energyOverMomentumTreeElec_cfi.py} | 0 .../{eopTreeWriter_cfi.py => energyOverMomentumTree_cfi.py} | 0 Alignment/OfflineValidation/test/eopElecTreeWriter_cfg.py | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) rename Alignment/OfflineValidation/python/{eopElecTreeWriter_cfi.py => energyOverMomentumTreeElec_cfi.py} (100%) rename Alignment/OfflineValidation/python/{eopTreeWriter_cfi.py => energyOverMomentumTree_cfi.py} (100%) diff --git a/Alignment/OfflineValidation/python/eopElecTreeWriter_cfi.py b/Alignment/OfflineValidation/python/energyOverMomentumTreeElec_cfi.py similarity index 100% rename from Alignment/OfflineValidation/python/eopElecTreeWriter_cfi.py rename to Alignment/OfflineValidation/python/energyOverMomentumTreeElec_cfi.py diff --git a/Alignment/OfflineValidation/python/eopTreeWriter_cfi.py b/Alignment/OfflineValidation/python/energyOverMomentumTree_cfi.py similarity index 100% rename from Alignment/OfflineValidation/python/eopTreeWriter_cfi.py rename to Alignment/OfflineValidation/python/energyOverMomentumTree_cfi.py diff --git a/Alignment/OfflineValidation/test/eopElecTreeWriter_cfg.py b/Alignment/OfflineValidation/test/eopElecTreeWriter_cfg.py index cc00fd049b3d0..4a0c73ac8ec16 100644 --- a/Alignment/OfflineValidation/test/eopElecTreeWriter_cfg.py +++ b/Alignment/OfflineValidation/test/eopElecTreeWriter_cfg.py @@ -131,7 +131,7 @@ else: print( "NO REFIT") -process.load("Alignment.OfflineValidation.eopElecTreeWriter_cfi") +process.load("Alignment.OfflineValidation.energyOverMomentumTreeElec_cfi") if REFIT: print( "REFIT") From 2635c3a2fef083fbba249760cb2ca84104b5ae87 Mon Sep 17 00:00:00 2001 From: mmusich Date: Wed, 27 Dec 2023 17:11:39 +0100 Subject: [PATCH 255/281] update testTrackAnalyzers --- .../test/testTrackAnalyzers.cc | 190 ++++++++++++------ 1 file changed, 123 insertions(+), 67 deletions(-) diff --git a/Alignment/OfflineValidation/test/testTrackAnalyzers.cc b/Alignment/OfflineValidation/test/testTrackAnalyzers.cc index 1874fcbacbd2a..e644d562787b6 100644 --- a/Alignment/OfflineValidation/test/testTrackAnalyzers.cc +++ b/Alignment/OfflineValidation/test/testTrackAnalyzers.cc @@ -2,36 +2,35 @@ #include "FWCore/Utilities/interface/Exception.h" #include "FWCore/ServiceRegistry/interface/Service.h" #include "CommonTools/UtilAlgos/interface/TFileService.h" +#include "Alignment/OfflineValidation/interface/TkAlStyle.h" #define CATCH_CONFIG_MAIN #include "catch.hpp" -TEST_CASE("GeneralPurposeTrackAnalyzer tests", "[GeneralPurposeTrackAnalyzer]") { - //The python configuration - const std::string baseConfig{ - R"_(from FWCore.TestProcessor.TestProcess import * -from Alignment.OfflineValidation.generalPurposeTrackAnalyzer_cfi import generalPurposeTrackAnalyzer -process = TestProcess() -process.trackAnalyzer = generalPurposeTrackAnalyzer -process.moduleToTest(process.trackAnalyzer) -process.add_(cms.Service('MessageLogger')) -process.add_(cms.Service('JobReportService')) -process.add_(cms.Service('TFileService',fileName=cms.string('tesTrackAnalyzer1.root'))) -)_"}; - +// Function to run the catch2 tests +//___________________________________________________________________________________________ +void runTestForAnalyzer(const std::string& baseConfig, const std::string& analyzerName) { edm::test::TestProcessor::Config config{baseConfig}; - SECTION("base configuration is OK") { REQUIRE_NOTHROW(edm::test::TestProcessor(config)); } - // SECTION("No event data") { - // edm::test::TestProcessor tester(config); - // REQUIRE_NOTHROW(tester.test()); - // } + SECTION(analyzerName + " base configuration is OK") { REQUIRE_NOTHROW(edm::test::TestProcessor(config)); } + + SECTION(analyzerName + " No Runs data") { + edm::test::TestProcessor tester(config); + REQUIRE_NOTHROW(tester.testWithNoRuns()); + } - SECTION("beginJob and endJob only") { + SECTION(analyzerName + " beginJob and endJob only") { edm::test::TestProcessor tester(config); REQUIRE_NOTHROW(tester.testBeginAndEndJobOnly()); } + // Add more sections as needed + + //SECTION("No event data") { + // edm::test::TestProcessor tester(config); + // REQUIRE_NOTHROW(tester.test()); + //} + // SECTION("Run with no LuminosityBlocks") { // edm::test::TestProcessor tester(config); // REQUIRE_NOTHROW(tester.testRunWithNoLuminosityBlocks()); @@ -43,65 +42,122 @@ process.add_(cms.Service('TFileService',fileName=cms.string('tesTrackAnalyzer1.r // } } -TEST_CASE("DMRChecker tests", "[DMRChecker]") { - //The python configuration - const std::string baseConfig{ - R"_(from FWCore.TestProcessor.TestProcess import * -from Alignment.OfflineValidation.dmrChecker_cfi import dmrChecker +// Function to generate base configuration string +//___________________________________________________________________________________________ +std::string generateBaseConfig(const std::string& analyzerName, const std::string& rootFileName) { + // Define a raw string literal + const char* rawString = R"_(from FWCore.TestProcessor.TestProcess import * +from Alignment.OfflineValidation.{}_cfi import {} process = TestProcess() -process.dmrAnalyzer = dmrChecker -process.moduleToTest(process.dmrAnalyzer) +process.trackAnalyzer = {} +process.moduleToTest(process.trackAnalyzer) process.add_(cms.Service('MessageLogger')) process.add_(cms.Service('JobReportService')) -process.add_(cms.Service('TFileService',fileName=cms.string('tesTrackAnalyzer2.root'))) -)_"}; +process.add_(cms.Service('TFileService',fileName=cms.string('{}'))) + )_"; - edm::test::TestProcessor::Config config{baseConfig}; - SECTION("base configuration is OK") { REQUIRE_NOTHROW(edm::test::TestProcessor(config)); } - - // SECTION("No event data") { - // edm::test::TestProcessor tester(config); - // REQUIRE_NOTHROW(tester.test()); - // } + // Format the raw string literal using fmt::format + return fmt::format(rawString, analyzerName, analyzerName, analyzerName, rootFileName); +} - SECTION("beginJob and endJob only") { - edm::test::TestProcessor tester(config); - REQUIRE_NOTHROW(tester.testBeginAndEndJobOnly()); - } +//___________________________________________________________________________________________ +TEST_CASE("GeneralPurposeTrackAnalyzer tests", "[GeneralPurposeTrackAnalyzer]") { + const std::string baseConfig = generateBaseConfig("generalPurposeTrackAnalyzer", "tesTrackAnalyzer0.root"); + runTestForAnalyzer(baseConfig, "GeneralPurposeTrackAnalyzer"); +} - // SECTION("Run with no LuminosityBlocks") { - // edm::test::TestProcessor tester(config); - // REQUIRE_NOTHROW(tester.testRunWithNoLuminosityBlocks()); - // } +//___________________________________________________________________________________________ +TEST_CASE("GeneralPurposeVertexAnalyzer tests", "[GeneralPurposeVertexAnalyzer]") { + const std::string baseConfig = generateBaseConfig("generalPurposeVertexAnalyzer", "tesVertexAnalyzer1.root"); + runTestForAnalyzer(baseConfig, "GeneralPurposeVertexAnalyzer"); +} - // SECTION("LuminosityBlock with no Events") { - // edm::test::TestProcessor tester(config); - // REQUIRE_NOTHROW(tester.testLuminosityBlockWithNoEvents()); - // } +//___________________________________________________________________________________________ +TEST_CASE("DMRChecker tests", "[DMRChecker]") { + const std::string baseConfig = generateBaseConfig("dmrChecker", "tesTrackAnalyzer2.root"); + runTestForAnalyzer(baseConfig, "DMRChecker"); } +//___________________________________________________________________________________________ TEST_CASE("JetHTAnalyzer tests", "[JetHTAnalyzer]") { - //The python configuration - edm::test::TestProcessor::Config config{ - R"_(import FWCore.ParameterSet.Config as cms -from FWCore.TestProcessor.TestProcess import * -from Alignment.OfflineValidation.jetHTAnalyzer_cfi import jetHTAnalyzer -process = TestProcess() -process.JetHTAnalyzer = jetHTAnalyzer -process.moduleToTest(process.JetHTAnalyzer) -process.add_(cms.Service('JobReportService')) -process.add_(cms.Service('TFileService',fileName=cms.string('tesTrackAnalyzer3.root'))) -)_"}; + const std::string baseConfig = generateBaseConfig("jetHTAnalyzer", "tesTrackAnalyzer3.root"); + runTestForAnalyzer(baseConfig, "JetHTAnalyzer"); +} - SECTION("base configuration is OK") { REQUIRE_NOTHROW(edm::test::TestProcessor(config)); } +//___________________________________________________________________________________________ +TEST_CASE("DiMuonValidation tests", "[DiMuonValidation]") { + const std::string baseConfig = generateBaseConfig("diMuonValidation", "tesTrackAnalyzer4.root"); + runTestForAnalyzer(baseConfig, "DiMuonValidation"); +} - SECTION("beginJob and endJob only") { - edm::test::TestProcessor tester(config); - REQUIRE_NOTHROW(tester.testBeginAndEndJobOnly()); - } +//___________________________________________________________________________________________ +TEST_CASE("CosmicSplitterValidation tests", "[CosmicsSplitterValidation]") { + const std::string baseConfig = generateBaseConfig("cosmicSplitterValidation", "tesTrackAnalyzer5.root"); + runTestForAnalyzer(baseConfig, "CosmicSplitterValidation"); +} - // SECTION("No event data") { - // edm::test::TestProcessor tester(config); - // REQUIRE_NOTHROW(tester.test()); - //} +//___________________________________________________________________________________________ +TEST_CASE("DiElectronVertexValidation tests", "[DiElectronVertexValidation]") { + const std::string baseConfig = generateBaseConfig("diElectronVertexValidation", "tesTrackAnalyzer6.root"); + runTestForAnalyzer(baseConfig, "DiElectronVertexValidation"); +} + +//___________________________________________________________________________________________ +TEST_CASE("DiMuonVertexValidation tests", "[DiMuonVertexValidation]") { + const std::string baseConfig = generateBaseConfig("diMuonVertexValidation", "tesTrackAnalyzer7.root"); + runTestForAnalyzer(baseConfig, "DiMuonVertexValidation"); +} + +//___________________________________________________________________________________________ +TEST_CASE("EopElecTreeWriter tests", "[EopElecTreeWriter]") { + const std::string baseConfig = generateBaseConfig("eopElecTreeWriter", "tesTrackAnalyzer8.root"); + runTestForAnalyzer(baseConfig, "EopElecTreeWriter"); +} + +//___________________________________________________________________________________________ +TEST_CASE("EopTreeWriter tests", "[EopTreeWriter]") { + const std::string baseConfig = generateBaseConfig("eopTreeWriter", "tesTrackAnalyzer9.root"); + runTestForAnalyzer(baseConfig, "EopTreeWriter"); +} + +//___________________________________________________________________________________________ +TEST_CASE("OverlapValidation tests", "[OverlapValidation]") { + const std::string baseConfig = generateBaseConfig("overlapValidation", "tesTrackAnalyzer10.root"); + runTestForAnalyzer(baseConfig, "OverlapValidation"); +} + +//___________________________________________________________________________________________ +TEST_CASE("PixelBaryCentreAnalyzer tests", "[PixelBaryCentreAnalyzer]") { + const std::string baseConfig = generateBaseConfig("pixelBaryCentreAnalyzer", "tesTrackAnalyzer11.root"); + runTestForAnalyzer(baseConfig, "PixelBaryCentreAnalyzer"); +} + +//___________________________________________________________________________________________ +TEST_CASE("PrimaryVertexValidation tests", "[PrimaryVertexValidation]") { + const std::string baseConfig = generateBaseConfig("primaryVertexValidation", "tesTrackAnalyzer12.root"); + runTestForAnalyzer(baseConfig, "PrimaryVertexValidation"); +} + +//___________________________________________________________________________________________ +TEST_CASE("SplitVertexResolution tests", "[SplitVertexResolution]") { + const std::string baseConfig = generateBaseConfig("splitVertexResolution", "tesTrackAnalyzer13.root"); + runTestForAnalyzer(baseConfig, "SplitVertexResolution"); +} + +//___________________________________________________________________________________________ +TEST_CASE("TrackerGeometryIntoNtuples tests", "[TrackerGeometryIntoNtuples]") { + const std::string baseConfig = generateBaseConfig("trackerGeometryIntoNtuples", "tesTrackAnalyzer14.root"); + runTestForAnalyzer(baseConfig, "TrackerGeometryIntoNtuples"); +} + +//___________________________________________________________________________________________ +TEST_CASE("TrackerOfflineValidation tests", "[TrackerOfflineValidation]") { + const std::string baseConfig = generateBaseConfig("TrackerOfflineValidation", "tesTrackAnalyzer15.root"); + runTestForAnalyzer(baseConfig, "TrackerOfflineValidation"); +} + +//___________________________________________________________________________________________ +TEST_CASE("TrackerGeometryCompare tests", "[TrackerGeometryCompare]") { + const std::string baseConfig = generateBaseConfig("trackerGeometryCompare", "tesTrackAnalyzer16.root"); + runTestForAnalyzer(baseConfig, "trackerGeometryCompare"); } From 5b5b1edd08b14fe606f967246b59c74c698708ad Mon Sep 17 00:00:00 2001 From: mmusich Date: Mon, 15 Jan 2024 20:38:50 +0100 Subject: [PATCH 256/281] make momentumElectronBiasValidation.C fail explicitly the unit tests in case checkArguments is not true --- .../OfflineValidation/macros/momentumElectronBiasValidation.C | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Alignment/OfflineValidation/macros/momentumElectronBiasValidation.C b/Alignment/OfflineValidation/macros/momentumElectronBiasValidation.C index 52bfdab5b4eb7..ac77f589f8e11 100644 --- a/Alignment/OfflineValidation/macros/momentumElectronBiasValidation.C +++ b/Alignment/OfflineValidation/macros/momentumElectronBiasValidation.C @@ -131,7 +131,7 @@ void momentumElectronBiasValidation(TString variable, std::vector labels; // list of input labels if (!checkArguments( variable, path, alignmentWithLabel, outputType, radius, verbose, givenMin, givenMax, mode, files, labels)) - return; + exit(EXIT_FAILURE); else { std::cout << "-> Number of files: " << files.size() << std::endl; } From 779091bcfcb468f714567ce47d25fc6dc12c956e Mon Sep 17 00:00:00 2001 From: AdrianoDee Date: Tue, 28 Mar 2023 13:02:46 +0200 Subject: [PATCH 257/281] Guard for no digis for Phase2 - Adding NuGun wfs --- .../PyReleaseValidation/python/relval_2017.py | 5 ++- .../PyReleaseValidation/python/relval_2026.py | 2 ++ .../PyReleaseValidation/python/relval_gpu.py | 4 +++ .../python/upgradeWorkflowComponents.py | 7 ++++- .../plugins/SiPixelPhase2DigiToClusterCUDA.cc | 31 +++++++++++++------ 5 files changed, 38 insertions(+), 11 deletions(-) diff --git a/Configuration/PyReleaseValidation/python/relval_2017.py b/Configuration/PyReleaseValidation/python/relval_2017.py index 088cff74d42e9..2f641e5005ff4 100644 --- a/Configuration/PyReleaseValidation/python/relval_2017.py +++ b/Configuration/PyReleaseValidation/python/relval_2017.py @@ -47,7 +47,9 @@ # (Patatrack pixel-only: ZMM - on CPU: quadruplets, triplets) # (TTbar FastSim, TTbar FastSim PU, MinBiasFS for mixing)) # (ZEE) +# (Nu Gun) # 2024 (TTbar, TTbar PU, TTbar PU premix) + numWFIB = [10001.0,10002.0,10003.0,10004.0,10005.0,10006.0,10007.0,10008.0,10009.0,10059.0,10071.0, 10042.0,10024.0,10025.0,10026.0,10023.0,10224.0,10225.0,10424.0, 10024.1,10024.2,10024.3,10024.4,10024.5, @@ -85,7 +87,8 @@ 12450.501,12450.505, 14034.0,14234.0,14040.303, 12446.0, - 12834.0,13034.0,13034.99,] + 12461.0, + 12834.0,13034.0,13034.99,] for numWF in numWFIB: if not numWF in _upgrade_workflows: diff --git a/Configuration/PyReleaseValidation/python/relval_2026.py b/Configuration/PyReleaseValidation/python/relval_2026.py index 7dc42987a84b3..1567a9086eb57 100644 --- a/Configuration/PyReleaseValidation/python/relval_2026.py +++ b/Configuration/PyReleaseValidation/python/relval_2026.py @@ -42,6 +42,8 @@ #CloseByPGun for HGCAL numWFIB.extend([24896.0]) #CE_E_Front_120um D98 numWFIB.extend([24900.0]) #CE_H_Coarse_Scint D98 +# NuGun +numWFIB.extend([24861.0]) #Nu Gun 2026D98 for numWF in numWFIB: workflows[numWF] = _upgrade_workflows[numWF] diff --git a/Configuration/PyReleaseValidation/python/relval_gpu.py b/Configuration/PyReleaseValidation/python/relval_gpu.py index d53c326662370..3eeabf9d3c43a 100644 --- a/Configuration/PyReleaseValidation/python/relval_gpu.py +++ b/Configuration/PyReleaseValidation/python/relval_gpu.py @@ -23,6 +23,8 @@ # Patatrack pixel-only triplets, ECAL, HCAL: TTbar - on GPU (optional), GPU-vs-CPU validation, profiling (to be implemented) # full reco with Patatrack pixel-only quadruplets: TTbar - on GPU (optional), GPU-vs-CPU validation # full reco with Patatrack pixel-only triplets: TTbar - on GPU (optional), GPU-vs-CPU validation +# Patatrack Single Nu E10 on GPU (optional) +# mc 2026 Patatrack Single Nu E10 on GPU (optional) numWFIB = [ # 2023 12450.502, 12450.503, 12450.504, @@ -35,6 +37,8 @@ 12434.586, 12434.587, # 12434.588, 12434.592, 12434.593, 12434.596, 12434.597, + 12461.502, + 24861.502 ] for numWF in numWFIB: diff --git a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py index ea6041c9d2822..f9717a3c7446b 100644 --- a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py +++ b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py @@ -782,10 +782,13 @@ def condition(self, fragment, stepList, key, hasHarvest): # - 2018 conditions, TTbar # - 2018 conditions, Z->mumu # - 2022 conditions (labelled "2021"), TTbar +# - 2022 conditions (labelled "2021"), NuGun # - 2022 conditions (labelled "2021"), Z->mumu # - 2023 conditions, TTbar +# - 2023 conditions, NuGun # - 2023 conditions, Z->mumu # - 2026 conditions, TTbar +# - 2026 conditions, NuGu class PatatrackWorkflow(UpgradeWorkflow): def __init__(self, digi = {}, reco = {}, mini = {}, harvest = {}, **kwargs): # adapt the parameters for the UpgradeWorkflow init method @@ -843,10 +846,12 @@ def condition(self, fragment, stepList, key, hasHarvest): ('2018' in key and fragment == "TTbar_13"), ('2021' in key and fragment == "TTbar_14TeV" and 'FS' not in key), ('2023' in key and fragment == "TTbar_14TeV" and 'FS' not in key), + ('2021' in key and fragment == "NuGun"), + ('2023' in key and fragment == "NuGun"), ('2018' in key and fragment == "ZMM_13"), ('2021' in key and fragment == "ZMM_14" and 'FS' not in key), ('2023' in key and fragment == "ZMM_14" and 'FS' not in key), - ('2026' in key and fragment == "TTbar_14TeV"), + ('2026' in key and (fragment == "TTbar_14TeV" or fragment=="NuGun")), (('HI' in key) and 'Hydjet' in fragment and "PixelOnly" in self.suffix ) ] result = any(selected) and hasHarvest diff --git a/RecoLocalTracker/SiPixelClusterizer/plugins/SiPixelPhase2DigiToClusterCUDA.cc b/RecoLocalTracker/SiPixelClusterizer/plugins/SiPixelPhase2DigiToClusterCUDA.cc index 260b288b581db..e68c8074d8535 100644 --- a/RecoLocalTracker/SiPixelClusterizer/plugins/SiPixelPhase2DigiToClusterCUDA.cc +++ b/RecoLocalTracker/SiPixelClusterizer/plugins/SiPixelPhase2DigiToClusterCUDA.cc @@ -69,6 +69,7 @@ class SiPixelPhase2DigiToClusterCUDA : public edm::stream::EDProducer(gpuClustering::maxNumDigis, ctx.stream()); auto yDigis = cms::cuda::make_host_unique(gpuClustering::maxNumDigis, ctx.stream()); @@ -126,20 +127,23 @@ void SiPixelPhase2DigiToClusterCUDA::acquire(const edm::Event& iEvent, const GeomDetUnit* genericDet = geom_->idToDetUnit(detIdObject); auto const gind = genericDet->index(); for (auto const& px : *DSViter) { - moduleIds[nDigis] = uint16_t(gind); + moduleIds[nDigis_] = uint16_t(gind); - xDigis[nDigis] = uint16_t(px.row()); - yDigis[nDigis] = uint16_t(px.column()); - adcDigis[nDigis] = uint16_t(px.adc()); + xDigis[nDigis_] = uint16_t(px.row()); + yDigis[nDigis_] = uint16_t(px.column()); + adcDigis[nDigis_] = uint16_t(px.adc()); - packedData[nDigis] = uint32_t(px.packedData()); + packedData[nDigis_] = uint32_t(px.packedData()); - rawIds[nDigis] = uint32_t(detid); + rawIds[nDigis_] = uint32_t(detid); - nDigis++; + nDigis_++; } } + if (nDigis_ == 0) + return; + gpuAlgo_.makePhase2ClustersAsync(clusterThresholds_, moduleIds.get(), xDigis.get(), @@ -147,13 +151,22 @@ void SiPixelPhase2DigiToClusterCUDA::acquire(const edm::Event& iEvent, adcDigis.get(), packedData.get(), rawIds.get(), - nDigis, + nDigis_, ctx.stream()); } void SiPixelPhase2DigiToClusterCUDA::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { cms::cuda::ScopedContextProduce ctx{ctxState_}; + if (nDigis_ == 0) { + ctx.emplace(iEvent, digiPutToken_, nDigis_, ctx.stream()); + ctx.emplace(iEvent, clusterPutToken_, pixelTopology::Phase2::numberOfModules, ctx.stream()); + if (includeErrors_) { + ctx.emplace(iEvent, digiErrorPutToken_, SiPixelDigiErrorsCUDA{}); + } + return; + } + auto tmp = gpuAlgo_.getResults(); ctx.emplace(iEvent, digiPutToken_, std::move(tmp.first)); ctx.emplace(iEvent, clusterPutToken_, std::move(tmp.second)); From d4e03cec37717df5d238b3d468490e0bac09b5dd Mon Sep 17 00:00:00 2001 From: etzia Date: Tue, 16 Jan 2024 10:21:16 +0100 Subject: [PATCH 258/281] fix a parenthesis --- .../SelectorUtils/interface/PFJetIDSelectionFunctor.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h b/PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h index c5b4c8baa62ef..039625b269f5e 100644 --- a/PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h +++ b/PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h @@ -798,7 +798,7 @@ class PFJetIDSelectionFunctor : public Selector { push_back("CEF_TR"); } } - if ((version_ == RUN3CHSrunsBCDEprompt)) { + if (version_ == RUN3CHSrunsBCDEprompt) { push_back("NHF_TR"); push_back("NEF_TR"); push_back("NCH_TR"); @@ -815,7 +815,7 @@ class PFJetIDSelectionFunctor : public Selector { push_back("CEF_TR"); } } - if ((version_ == RUN3CHSruns2022FGruns2023CD)) { + if (version_ == RUN3CHSruns2022FGruns2023CD) { push_back("NHF_TR"); push_back("NEF_TR"); push_back("NCH_TR"); From 7d02d7ed03a5635b8e5012ea592b33b85733e455 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Tue, 16 Jan 2024 10:41:18 +0100 Subject: [PATCH 259/281] Modify to analyze flat files contatining only full silisonlayers of EE and HE (usefule for HFNose) --- Geometry/ForwardCommonData/data/hfnose01.txt | 16 +- .../HGCalCommonData/test/HGCalConvert.cpp | 299 +++++++++++++++++- 2 files changed, 305 insertions(+), 10 deletions(-) diff --git a/Geometry/ForwardCommonData/data/hfnose01.txt b/Geometry/ForwardCommonData/data/hfnose01.txt index d87a7c46bde57..adfc0eb4ea1e9 100644 --- a/Geometry/ForwardCommonData/data/hfnose01.txt +++ b/Geometry/ForwardCommonData/data/hfnose01.txt @@ -1,11 +1,11 @@ -1 0 0.00 0.00 0.00 0.00 0.00 0.00 -2 4 0.00 0.00 0.00 0.00 0.00 0.00 -3 0 0.00 0.00 0.00 0.00 0.00 0.00 -4 4 0.00 0.00 0.00 0.00 0.00 0.00 -5 0 0.00 0.00 0.00 0.00 0.00 0.00 -6 4 0.00 0.00 0.00 0.00 0.00 0.00 -7 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 -8 4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +1 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +2 4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +3 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +4 4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +5 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +6 4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +7 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +8 4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 1 0 h120 586.043 -725.040 0 -6 -5 3 1 0 h120 669.763 -580.032 0 -6 -4 3 1 0 h120 753.484 -435.024 0 -6 -3 3 diff --git a/Geometry/HGCalCommonData/test/HGCalConvert.cpp b/Geometry/HGCalCommonData/test/HGCalConvert.cpp index b1596a5f32698..e9836316e866d 100644 --- a/Geometry/HGCalCommonData/test/HGCalConvert.cpp +++ b/Geometry/HGCalCommonData/test/HGCalConvert.cpp @@ -37,6 +37,20 @@ // debug (int) Two digit integer to set debug for each // of the outputs // +// HGCalConvert 4 infile outfile1 outfile2 modeGlobal debug +// 4 for the V18 formats of HFNose +// infile (const char*) Input file from conatining layer #, size, depth, +// x, y position, orientation, u, v, cassette +// outfile1 (const char*) Output fle for the EE part +// outfile2 (const char*) Output fle for the HE part +// maxLayEE (int) Maximum layer number of the EE part +// maxLayHE (int) Maximum layer number of the HE part +// modeGlobal (int) Flag to create parts to be inserted in the +// global section (0) or to be inserted in +// the ddAlgorithm part (1) +// debug (int) Two digit integer to set debug for each +// of the outputs (opional) +// ////////////////////////////////////////////////////////////////////////////// #include "Geometry/HGCalCommonData/interface/HGCalProperty.h" @@ -154,6 +168,27 @@ class ConvertScintillator { const int cassette_; }; +class ConvertNoseV0 { +public: + ConvertNoseV0(unsigned int layMax1 = 6, unsigned int layMax2 = 8); + void convert(const char* infile, + const char* outfile1, + const char* outfile2, + int modeGlobal = 0, + int debug = 0); + +private: + void writeNose(const char*, + const unsigned int, + const std::vector&, + const std::map&, + const std::string&, + const bool&, + const bool&); + + const unsigned int layMax1_, layMax2_; +}; + int main(int argc, char* argv[]) { if (argc < 7) { std::cout << "Please give a minimum of 7 arguments \n" @@ -170,12 +205,18 @@ int main(int argc, char* argv[]) { << " number of layers in the EE section: 28 or 26\n" << " flag to utilize cassette partition or not\n" << " debug flag\n" + << "for HFNose 4 additional parameters after the first 3\n" + << " second output file name\n" + << " maximum layer number of the EE section: 6\n" + << " maximum layer number of the HE section: 8\n" + << " output mode (0: gobal; 1: local)\n" << std::endl; return 0; } int mode = std::atoi(argv[1]); const char* infile = argv[2]; + int code(0); if (mode <= 2) { const char* outfile1 = argv[3]; const char* outfile2 = argv[4]; @@ -194,7 +235,7 @@ int main(int argc, char* argv[]) { ConvertSiliconV2 c1; c1.convert(infile, outfile1, outfile2, outfile3, modeGlobal, debug); } - } else { + } else if (mode == 3) { const char* outfile1 = argv[3]; const char* outfile2 = argv[4]; int laymin = atoi(argv[5]); @@ -204,8 +245,21 @@ int main(int argc, char* argv[]) { << " Laymin " << laymin << " Cassette " << cassette << " Debug " << debug << std::endl; ConvertScintillator c1(laymin, cassette); c1.convert(infile, outfile1, outfile2, debug); + } else if (mode == 4) { + const char* outfile1 = argv[3]; + const char* outfile2 = argv[4]; + int maxLayEE = atoi(argv[5]); + int maxLayHE = atoi(argv[6]); + int modeGlobal = atoi(argv[7]); + int debug = (argc > 7) ? atoi(argv[8]) : 0; + std::cout << "Calls ConvertNose for i/p file " << infile << " o/p files " << outfile1 << ":" << outfile2 << " Layers " + << maxLayEE << ":" << maxLayHE << " Mode " << modeGlobal << " Debug " << debug << std::endl; + ConvertNoseV0 c1 (maxLayEE, maxLayHE); + c1.convert(infile, outfile1, outfile2, modeGlobal, debug); + } else { + code = 1; } - return 0; + return code; } std::vector splitString(const std::string& fLine) { @@ -1189,3 +1243,244 @@ void ConvertScintillator::makeTitle(const char* outfile, fout.close(); } } + +ConvertNoseV0::ConvertNoseV0(unsigned int layMax1, unsigned int layMax2) : layMax1_(layMax1), layMax2_(layMax2) { + std::cout << "ConvertNoseV0 Iniltailized with " << layMax1_ << ":" << layMax2_ << std::endl; +} + +void ConvertNoseV0::convert( + const char* infile, const char* outfile1, const char* outfile2, int modeGlobal, int debug) { + std::ifstream fInput(infile); + if (!fInput.good()) { + std::cout << "Cannot open file " << infile << std::endl; + } else { + //First read in all records + char buffer[1024]; + const int thksize = 4; + std::string thick[thksize] = {"h120", "l200", "l300", "h200"}; + int addType[thksize] = {HGCalTypes::WaferFineThin, + HGCalTypes::WaferCoarseThin, + HGCalTypes::WaferCoarseThick, + HGCalTypes::WaferFineThick}; + const int partTypeH[6] = {HGCalTypes::WaferFull, + HGCalTypes::WaferHDTop, + HGCalTypes::WaferHDBottom, + HGCalTypes::WaferHDLeft, + HGCalTypes::WaferHDRight, + HGCalTypes::WaferHDFive}; + const int partTypeL[7] = {HGCalTypes::WaferFull, + HGCalTypes::WaferLDTop, + HGCalTypes::WaferLDBottom, + HGCalTypes::WaferLDLeft, + HGCalTypes::WaferLDRight, + HGCalTypes::WaferLDFive, + HGCalTypes::WaferLDThree}; + const unsigned int cassetteEE(12), cassetteHE(24); + std::map module1, module2; + unsigned int all(0), comments(0), others(0), bad(0), good(0); + unsigned int layers(layMax2_); + std::vector layer1, layer2; + int cminEE(-1), cmaxEE(-1), cminHE(-1), cmaxHE(-1); + bool global = (modeGlobal < 1); + while (fInput.getline(buffer, 1024)) { + ++all; + if (debug % 10 > 1) + std::cout << "[" << all << "] " << buffer << std::endl; + if (buffer[0] == '#') { + ++comments; + } else { + ++others; + std::vector items = splitString(std::string(buffer)); + if (others <= layMax2_) { + unsigned int cassettes = (others <= layMax1_) ? cassetteEE : cassetteHE; + if (items.size() < (cassettes + 2)) { + if (debug % 10 > 1) + std::cout << "Size " << items.size() << " expect >= " << (cassettes +2 ) << std::endl; + ++bad; + } else { + int layer = std::atoi(items[0].c_str()); + int type = std::atoi(items[1].c_str()); + std::vector dR; + for (unsigned int k = 0; k < cassettes; ++k) + dR.emplace_back(std::atof(items[k + 2].c_str())); + layerInfo ltype(layer, type, dR); + if (others <= layMax1_) { + layer1.emplace_back(ltype); + } else { + layer2.emplace_back(ltype); + } + } + } else if (items.size() != 9) { + ++bad; + } else { + ++good; + unsigned int layer = std::atoi(items[0].c_str()); + int waferU = std::atoi(items[6].c_str()); + int waferV = std::atoi(items[7].c_str()); + int cassette = std::atoi(items[8].c_str()); + int thck = static_cast(std::find(thick, thick + thksize, items[2]) - thick); + int part = std::atoi(items[1].c_str()); + if ((thck <= thksize) && (part >= 0)) { + if ((addType[thck] == HGCalTypes::WaferFineThin) || (addType[thck] == HGCalTypes::WaferFineThick)) + part = partTypeH[part]; + else + part = partTypeL[part]; + } + int orient = std::atoi(items[5].c_str()); + wafer waf(thck, part, orient, cassette); + if (layer <= layMax1_) { + int index = HGCalWaferIndex::waferIndex(layer, waferU, waferV, false); + module1[index] = waf; + if ((cminEE < 0) || (cassette < cminEE)) + cminEE = cassette; + if ((cmaxEE < 0) || (cassette > cmaxEE)) + cmaxEE = cassette; + } else { + int index = HGCalWaferIndex::waferIndex(layer - layMax1_, waferU, waferV, false); + module2[index] = waf; + if ((cminHE < 0) || (cassette < cminHE)) + cminHE = cassette; + if ((cmaxHE < 0) || (cassette > cmaxHE)) + cmaxHE = cassette; + } + } + } + } + fInput.close(); + std::cout << "Read " << all << " records with " << comments << " comments " << others << " non-comment records out of which " << good << ":" << module1.size() << ":" << module2.size() << " are good and " << bad << " are bad and with " << layers << " layers\n"; + std::cout << "\nThere are " << layer1.size() << " of types:" << std::endl; + for (const auto& l : layer1) { + std::cout << "Layer " << l.layer << " Type " << l.type << " DR"; + for (unsigned int k = 0; k < l.deltaR.size(); ++k) + std::cout << ": " << l.deltaR[k]; + std::cout << std::endl; + } + std::cout << "\nThere are " << layer2.size() << " of types:" << std::endl; + for (const auto& l : layer2) { + std::cout << "Layer " << l.layer << " Type " << l.type << " DR"; + for (unsigned int k = 0; k < l.deltaR.size(); ++k) + std::cout << ": " << l.deltaR[k]; + std::cout << std::endl; + } + std::cout << "\nMinimum and Maximum Cassette #'s:: EE: " << cminEE << ":" << cmaxEE << " HE: " << cminHE << ":" + << cmaxHE << std::endl; + std::cout << std::endl << std::endl; + + //Now write separately for EE and HE + writeNose(outfile1, cassetteEE, layer1, module1, "EE", global, (debug % 10 > 0)); + // Next HEsil part + writeNose(outfile2, cassetteHE, layer2, module2, "HE", global, ((debug / 10) % 10 > 0)); + } +} + +void ConvertNoseV0::writeNose(const char* outfile, + const unsigned int cassettes, + const std::vector& layers, + const std::map& module, + const std::string& tag, + const bool& mode, + const bool& debug) { + char apost('"'); + unsigned int k0(0), k1(0), k2(0), k3(0); + std::map::const_iterator itr; + std::string blank = (mode) ? " " : " "; + std::ofstream fOut(outfile); + std::vector layerStart; + int layer(-1); + if (mode) { + fOut << blank << ""; + } else { + fOut << blank << ""; + } + for (const auto& l : layers) { + std::string last = ((k0 + 1) == layers.size()) ? " " : ","; + if (k0 % 20 == 0) + fOut << "\n " << blank << std::setw(2) << l.type << last; + else + fOut << std::setw(2) << l.type << last; + ++k0; + } + fOut << "\n" << blank << "\n"; + if (mode) { + fOut << blank << ""; + } else { + fOut << blank << ""; + } + for (itr = module.begin(); itr != module.end(); ++itr) { + std::string last = ((k1 + 1) == module.size()) ? " " : ","; + if (k1 % 7 == 0) + fOut << "\n " << blank << std::setw(8) << itr->first << last; + else + fOut << std::setw(8) << itr->first << last; + if (HGCalWaferIndex::waferLayer(itr->first) != layer) { + layerStart.emplace_back(k1); + layer = HGCalWaferIndex::waferLayer(itr->first); + } + ++k1; + if (debug) + std::cout << "Wafer " << HGCalWaferIndex::waferLayer(itr->first) << ":" << HGCalWaferIndex::waferU(itr->first) + << ":" << HGCalWaferIndex::waferV(itr->first) << " T " << (itr->second).thick << " P " + << (itr->second).partial << " O " << (itr->second).orient << " C " << (itr->second).cassette + << " Property " + << HGCalProperty::waferProperty( + (itr->second).thick, (itr->second).partial, (itr->second).orient, (itr->second).cassette) + << std::endl; + } + fOut << "\n" << blank << "\n"; + if (mode) + fOut << blank << ""; + else + fOut << blank << ""; + for (itr = module.begin(); itr != module.end(); ++itr) { + int property = HGCalProperty::waferProperty( + (itr->second).thick, (itr->second).partial, (itr->second).orient, (itr->second).cassette); + std::string last = ((k2 + 1) == module.size()) ? " " : ","; + if (k2 % 8 == 0) + fOut << "\n " << blank << std::setw(7) << property << last; + else + fOut << std::setw(7) << property << last; + ++k2; + } + fOut << "\n" << blank << "\n"; + if (mode) { + fOut << blank << ""; + } else { + fOut << blank << ""; + } + for (unsigned k = 0; k < layerStart.size(); ++k) { + std::string last = ((k + 1) == layerStart.size()) ? " " : ","; + if (k % 10 == 0) + fOut << "\n " << blank << std::setw(5) << layerStart[k] << last; + else + fOut << std::setw(5) << layerStart[k] << last; + } + fOut << "\n" << blank << "\n"; + unsigned int csize = cassettes * layers.size(); + if (mode) { + fOut << blank << ""; + } else { + fOut << blank << ""; + } + for (const auto& l : layers) { + ++k3; + for (unsigned int k = 0; k < cassettes; ++k) { + std::string last = ((k3 == layers.size()) && ((k + 1) == cassettes)) ? "*mm" : "*mm,"; + if ((k % 6) == 0) + fOut << "\n " << blank << std::setw(9) << l.deltaR[k] << last; + else + fOut << std::setw(9) << l.deltaR[k] << last; + } + } + fOut << "\n" << blank << "\n"; + fOut.close(); +} From ea1688eccb27ae64511e9efd0d2cce0ff07a93e8 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Tue, 16 Jan 2024 13:02:31 +0100 Subject: [PATCH 260/281] Code check --- .../HGCalCommonData/test/HGCalConvert.cpp | 51 +++++++++---------- 1 file changed, 24 insertions(+), 27 deletions(-) diff --git a/Geometry/HGCalCommonData/test/HGCalConvert.cpp b/Geometry/HGCalCommonData/test/HGCalConvert.cpp index e9836316e866d..105050233612c 100644 --- a/Geometry/HGCalCommonData/test/HGCalConvert.cpp +++ b/Geometry/HGCalCommonData/test/HGCalConvert.cpp @@ -40,9 +40,9 @@ // HGCalConvert 4 infile outfile1 outfile2 modeGlobal debug // 4 for the V18 formats of HFNose // infile (const char*) Input file from conatining layer #, size, depth, -// x, y position, orientation, u, v, cassette +// x, y position, orientation, u, v, cassette // outfile1 (const char*) Output fle for the EE part -// outfile2 (const char*) Output fle for the HE part +// outfile2 (const char*) Output fle for the HE part // maxLayEE (int) Maximum layer number of the EE part // maxLayHE (int) Maximum layer number of the HE part // modeGlobal (int) Flag to create parts to be inserted in the @@ -171,20 +171,16 @@ class ConvertScintillator { class ConvertNoseV0 { public: ConvertNoseV0(unsigned int layMax1 = 6, unsigned int layMax2 = 8); - void convert(const char* infile, - const char* outfile1, - const char* outfile2, - int modeGlobal = 0, - int debug = 0); + void convert(const char* infile, const char* outfile1, const char* outfile2, int modeGlobal = 0, int debug = 0); private: void writeNose(const char*, - const unsigned int, - const std::vector&, - const std::map&, - const std::string&, - const bool&, - const bool&); + const unsigned int, + const std::vector&, + const std::map&, + const std::string&, + const bool&, + const bool&); const unsigned int layMax1_, layMax2_; }; @@ -252,9 +248,9 @@ int main(int argc, char* argv[]) { int maxLayHE = atoi(argv[6]); int modeGlobal = atoi(argv[7]); int debug = (argc > 7) ? atoi(argv[8]) : 0; - std::cout << "Calls ConvertNose for i/p file " << infile << " o/p files " << outfile1 << ":" << outfile2 << " Layers " - << maxLayEE << ":" << maxLayHE << " Mode " << modeGlobal << " Debug " << debug << std::endl; - ConvertNoseV0 c1 (maxLayEE, maxLayHE); + std::cout << "Calls ConvertNose for i/p file " << infile << " o/p files " << outfile1 << ":" << outfile2 + << " Layers " << maxLayEE << ":" << maxLayHE << " Mode " << modeGlobal << " Debug " << debug << std::endl; + ConvertNoseV0 c1(maxLayEE, maxLayHE); c1.convert(infile, outfile1, outfile2, modeGlobal, debug); } else { code = 1; @@ -1248,8 +1244,7 @@ ConvertNoseV0::ConvertNoseV0(unsigned int layMax1, unsigned int layMax2) : layMa std::cout << "ConvertNoseV0 Iniltailized with " << layMax1_ << ":" << layMax2_ << std::endl; } -void ConvertNoseV0::convert( - const char* infile, const char* outfile1, const char* outfile2, int modeGlobal, int debug) { +void ConvertNoseV0::convert(const char* infile, const char* outfile1, const char* outfile2, int modeGlobal, int debug) { std::ifstream fInput(infile); if (!fInput.good()) { std::cout << "Cannot open file " << infile << std::endl; @@ -1294,8 +1289,8 @@ void ConvertNoseV0::convert( if (others <= layMax2_) { unsigned int cassettes = (others <= layMax1_) ? cassetteEE : cassetteHE; if (items.size() < (cassettes + 2)) { - if (debug % 10 > 1) - std::cout << "Size " << items.size() << " expect >= " << (cassettes +2 ) << std::endl; + if (debug % 10 > 1) + std::cout << "Size " << items.size() << " expect >= " << (cassettes + 2) << std::endl; ++bad; } else { int layer = std::atoi(items[0].c_str()); @@ -1347,7 +1342,9 @@ void ConvertNoseV0::convert( } } fInput.close(); - std::cout << "Read " << all << " records with " << comments << " comments " << others << " non-comment records out of which " << good << ":" << module1.size() << ":" << module2.size() << " are good and " << bad << " are bad and with " << layers << " layers\n"; + std::cout << "Read " << all << " records with " << comments << " comments " << others + << " non-comment records out of which " << good << ":" << module1.size() << ":" << module2.size() + << " are good and " << bad << " are bad and with " << layers << " layers\n"; std::cout << "\nThere are " << layer1.size() << " of types:" << std::endl; for (const auto& l : layer1) { std::cout << "Layer " << l.layer << " Type " << l.type << " DR"; @@ -1374,12 +1371,12 @@ void ConvertNoseV0::convert( } void ConvertNoseV0::writeNose(const char* outfile, - const unsigned int cassettes, - const std::vector& layers, - const std::map& module, - const std::string& tag, - const bool& mode, - const bool& debug) { + const unsigned int cassettes, + const std::vector& layers, + const std::map& module, + const std::string& tag, + const bool& mode, + const bool& debug) { char apost('"'); unsigned int k0(0), k1(0), k2(0), k3(0); std::map::const_iterator itr; From 62e7d690b5951e4e77a80ff64778d0c2bb92f2a4 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Tue, 16 Jan 2024 13:55:37 +0100 Subject: [PATCH 261/281] Steps to create a scenario of B18 Geometry of HGCal where no innecr cell straucture of full wafers are not created atin Geant4 geometry --- .../data/hgcalCons/v18n/hgcalCons.xml | 231 +++++ .../data/hgcalwafer/v18n/hgcalwafer.xml | 899 ++++++++++++++++++ .../python/testHGCalV18nXML_cfi.py | 125 +++ .../test/python/g4OverlapCheck_cfg.py | 4 +- 4 files changed, 1257 insertions(+), 2 deletions(-) create mode 100644 Geometry/HGCalCommonData/data/hgcalCons/v18n/hgcalCons.xml create mode 100644 Geometry/HGCalCommonData/data/hgcalwafer/v18n/hgcalwafer.xml create mode 100644 Geometry/HGCalCommonData/python/testHGCalV18nXML_cfi.py diff --git a/Geometry/HGCalCommonData/data/hgcalCons/v18n/hgcalCons.xml b/Geometry/HGCalCommonData/data/hgcalCons/v18n/hgcalCons.xml new file mode 100644 index 0000000000000..6977b9777964f --- /dev/null +++ b/Geometry/HGCalCommonData/data/hgcalCons/v18n/hgcalCons.xml @@ -0,0 +1,231 @@ + + + + + + + [hgcal:radMixL0], [hgcal:radMixL1], [hgcal:radMixL2], [hgcal:radMixL3], + [hgcal:radMixL4], [hgcal:radMixL5], [hgcal:radMixL6], [hgcal:radMixL7], + [hgcal:radMixL8], [hgcal:radMixL9], [hgcal:radMixL10],[hgcal:radMixL11], + [hgcal:radMixL12],[hgcal:radMixL13] + + + [hgcal:zHGCalEE1], [hgcal:zHGCalHEsil1], [hgcal:zHGCalHEmix1], + [hgcal:zHGCalHEmix6] + + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 6, 0, 6, 0, 6, 0, + 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1 + + + [hgcal:CalibCellRHD], [hgcal:CalibCellRLD] + + 203, 209, 514, 902, 908, 1114, 1321, 1404, 1512, 1921, 2010, 2118 + + + 202, 208, 615, 802, 807, 1115, 1221, 1505, 1612, 1821, 2111, 2117 + + + 104, 509, 603, 1104, 1114, 1210 + + + 103, 508, 704, 1014, 1110, 1205 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Geometry/HGCalCommonData/data/hgcalwafer/v18n/hgcalwafer.xml b/Geometry/HGCalCommonData/data/hgcalwafer/v18n/hgcalwafer.xml new file mode 100644 index 0000000000000..ee45ade370de5 --- /dev/null +++ b/Geometry/HGCalCommonData/data/hgcalwafer/v18n/hgcalwafer.xml @@ -0,0 +1,899 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 0, 0, 0, 0, 0, 0 + + 06, 07, 08, 09, 10, 11 + + HGCalEEAirGap, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_EEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Epoxy, + materials:Kapton, materials:Silicon, hgcalMaterial:WCu + + 0.225*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 1.40*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 7, 5, 6, 5, 8 + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 1, 1, 1, 1, 1, 1 + + 00, 01, 02, 03, 04, 05 + + HGCalEEAirGap, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_EEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Epoxy, + materials:Kapton, materials:Silicon, hgcalMaterial:WCu + + 0.225*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 1.40*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 8, 5, 6, 5, 7, 4, 3, 2, 1, 0 + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 0, 0, 0, 0, 0, 0 + + 06, 07, 08, 09, 10, 11 + + HGCalEEAirGap, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_EEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Epoxy, + materials:Kapton, materials:Silicon, hgcalMaterial:WCu + + 0.225*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 1.40*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 7, 5, 6, 5, 8 + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 1, 1, 1, 1, 1, 1 + + 00, 01, 02, 03, 04, 05 + + HGCalEEAirGap, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_EEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Epoxy, + materials:Kapton, materials:Silicon, hgcalMaterial:WCu + + 0.225*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 1.40*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 8, 5, 6, 5, 7, 4, 3, 2, 1, 0 + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 0, 0, 0, 0, 0, 0 + + 06, 07, 08, 09, 10, 11 + + HGCalEEAirGap, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_EEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Epoxy, + materials:Kapton, materials:Silicon, hgcalMaterial:WCu + + 0.225*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 1.40*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 7, 5, 6, 5, 8 + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 1, 1, 1, 1, 1, 1 + + 00, 01, 02, 03, 04, 05 + + HGCalEEAirGap, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_EEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Epoxy, + materials:Kapton, materials:Silicon, hgcalMaterial:WCu + + 0.225*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 1.40*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 8, 5, 6, 5, 7, 4, 3, 2, 1, 0 + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 0, 0, 0, 0, 0, 0 + + 06, 07, 08, 09, 10, 11 + + HGCalHEAirGap, HGCalHEPCB, HGCalHEConnector, HGCalHEMotherBoard, + HGCalHEEpoxy, HGCalHEKapton, HGCalHESiliconSensitive, + HGCalHEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_HEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Kapton, + materials:Silicon, hgcalMaterial:HGC_G10-FR4 + + 0.40*mm, 1.60*mm, 3.475*mm, 1.60*mm, 0.075*mm, 0.10*mm, + [WaferThickness], 1.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], 0.30*mm, + [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 6, 4, 5, 4, 7 + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 1, 1, 1, 1, 1, 1 + + 00, 01, 02, 03, 04, 05 + + HGCalHEAirGap, HGCalHEPCB, HGCalHEConnector, HGCalHEMotherBoard, + HGCalHEEpoxy, HGCalHEKapton, HGCalHESiliconSensitive, + HGCalHEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_HEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Kapton, + materials:Silicon, hgcalMaterial:HGC_G10-FR4 + + 0.40*mm, 1.60*mm, 3.475*mm, 1.60*mm, 0.075*mm, 0.10*mm, + [WaferThickness], 1.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], 0.30*mm, + [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 1, 0 + + 7, 4, 5, 4, 6, 4, 3, 2, 1, 0 + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 0, 0, 0, 0, 0, 0 + + 06, 07, 08, 09, 10, 11 + + HGCalHEAirGap, HGCalHEPCB, HGCalHEConnector, HGCalHEMotherBoard, + HGCalHEEpoxy, HGCalHEKapton, HGCalHESiliconSensitive, + HGCalHEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_HEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Kapton, + materials:Silicon, hgcalMaterial:HGC_G10-FR4 + + 0.40*mm, 1.60*mm, 3.475*mm, 1.60*mm, 0.075*mm, 0.10*mm, + [WaferThickness], 1.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], 0.30*mm, + [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 6, 4, 5, 4, 7 + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 1, 1, 1, 1, 1, 1 + + 00, 01, 02, 03, 04, 05 + + HGCalHEAirGap, HGCalHEPCB, HGCalHEConnector, HGCalHEMotherBoard, + HGCalHEEpoxy, HGCalHEKapton, HGCalHESiliconSensitive, + HGCalHEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_HEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Kapton, + materials:Silicon, hgcalMaterial:HGC_G10-FR4 + + 0.40*mm, 1.60*mm, 3.475*mm, 1.60*mm, 0.075*mm, 0.10*mm, + [WaferThickness], 1.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], 0.30*mm, + [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 1, 0 + + 7, 4, 5, 4, 6, 4, 3, 2, 1, 0 + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 0, 0, 0, 0, 0, 0 + + 06, 07, 08, 09, 10, 11 + + HGCalHEAirGap, HGCalHEPCB, HGCalHEConnector, HGCalHEMotherBoard, + HGCalHEEpoxy, HGCalHEKapton, HGCalHESiliconSensitive, + HGCalHEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_HEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Kapton, + materials:Silicon, hgcalMaterial:HGC_G10-FR4 + + 0.40*mm, 1.60*mm, 3.475*mm, 1.60*mm, 0.075*mm, 0.10*mm, + [WaferThickness], 1.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], 0.30*mm, + [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 6, 4, 5, 4, 7 + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 1, 1, 1, 1, 1, 1 + + 00, 01, 02, 03, 04, 05 + + HGCalHEAirGap, HGCalHEPCB, HGCalHEConnector, HGCalHEMotherBoard, + HGCalHEEpoxy, HGCalHEKapton, HGCalHESiliconSensitive, + HGCalHEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_HEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Kapton, + materials:Silicon, hgcalMaterial:HGC_G10-FR4 + + 0.40*mm, 1.60*mm, 3.475*mm, 1.60*mm, 0.075*mm, 0.10*mm, + [WaferThickness], 1.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], 0.30*mm, + [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 1, 0 + + 7, 4, 5, 4, 6, 4, 3, 2, 1, 0 + + + + + + + + + + + + + HD1, HD2, HD3, HD4, HD5 + + 21, 22, 23, 24, 25 + + 0, 1, 2, 3, 4, 5 + + 00, 01, 02, 03, 04, 05 + + HGCalEEAirGap, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_EEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Epoxy, + materials:Kapton, materials:Silicon, hgcalMaterial:WCu + + 0.225*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 1.40*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 8, 5, 6, 5, 7, 4, 3, 2, 1, 0 + + + + + + + + + + + + + + + HD1, HD2, HD3, HD4, HD5 + + 21, 22, 23, 24, 25 + + 6, 7, 8, 9, 10, 11 + + 06, 07, 08, 09, 10, 11 + + HGCalEEAirGap, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_EEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Epoxy, + materials:Kapton, materials:Silicon, hgcalMaterial:WCu + + 0.225*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 1.40*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 7, 5, 6, 5, 8 + + + + + + + + + + + + + + + LD1, LD2, LD3, LD4, LD5, LD6 + + 11, 12, 13, 14, 15, 16 + + 0, 1, 2, 3, 4, 5 + + 00, 01, 02, 03, 04, 05 + + HGCalEEAirGap, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_EEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Epoxy, + materials:Kapton, materials:Silicon, hgcalMaterial:WCu + + 0.225*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 1.40*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 8, 5, 6, 5, 7, 4, 3, 2, 1, 0 + + + + + + + + + + + + + + + LD1, LD2, LD3, LD4, LD5, LD6 + + 11, 12, 13, 14, 15, 16 + + 6, 7, 8, 9, 10, 11 + + 06, 07, 08, 09, 10, 11 + + HGCalEEAirGap, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_EEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Epoxy, + materials:Kapton, materials:Silicon, hgcalMaterial:WCu + + 0.225*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 1.40*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 7, 5, 6, 5, 8 + + + + + + + + + + + + + + + LD1, LD2, LD3, LD4, LD5, LD6 + + 11, 12, 13, 14, 15, 16 + + 0, 1, 2, 3, 4, 5 + + 00, 01, 02, 03, 04, 05 + + HGCalEEAirGap, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_EEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Epoxy, + materials:Kapton, materials:Silicon, hgcalMaterial:WCu + + 0.225*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 1.40*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 8, 5, 6, 5, 7, 4, 3, 2, 1, 0 + + + + + + + + + + + + + + + LD1, LD2, LD3, LD4, LD5, LD6 + + 11, 12, 13, 14, 15, 16 + + 6, 7, 8, 9, 10, 11 + + 06, 07, 08, 09, 10, 11 + + HGCalEEAirGap, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_EEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Epoxy, + materials:Kapton, materials:Silicon, hgcalMaterial:WCu + + 0.225*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 1.40*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 7, 5, 6, 5, 8 + + + + + + + + + + + + + + + HD1, HD2, HD3, HD4, HD5 + + 21, 22, 23, 24, 25 + + 0, 1, 2, 3, 4, 5 + + 00, 01, 02, 03, 04, 05 + + HGCalHEAirGap, HGCalHEPCB, HGCalHEConnector, HGCalHEMotherBoard, + HGCalHEEpoxy, HGCalHEKapton, HGCalHESiliconSensitive, + HGCalHEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_HEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Kapton, + materials:Silicon, hgcalMaterial:HGC_G10-FR4 + + 0.40*mm, 1.60*mm, 3.475*mm, 1.60*mm, 0.075*mm, 0.10*mm, + [WaferThickness], 1.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], 0.30*mm, + [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 1, 0 + + 7, 4, 5, 4, 6, 4, 3, 2, 1, 0 + + + + + + + + + + + + + + + HD1, HD2, HD3, HD4, HD5 + + 21, 22, 23, 24, 25 + + 6, 7, 8, 9, 10, 11 + + 06, 07, 08, 09, 10, 11 + + HGCalHEAirGap, HGCalHEPCB, HGCalHEConnector, HGCalHEMotherBoard, + HGCalHEEpoxy, HGCalHEKapton, HGCalHESiliconSensitive, + HGCalHEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_HEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Kapton, + materials:Silicon, hgcalMaterial:HGC_G10-FR4 + + 0.40*mm, 1.60*mm, 3.475*mm, 1.60*mm, 0.075*mm, 0.10*mm, + [WaferThickness], 1.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], 0.30*mm, + [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 6, 4, 5, 4, 7 + + + + + + + + + + + + + + + LD1, LD2, LD3, LD4, LD5, LD6 + + 11, 12, 13, 14, 15, 16 + + 0, 1, 2, 3, 4, 5 + + 00, 01, 02, 03, 04, 05 + + HGCalHEAirGap, HGCalHEPCB, HGCalHEConnector, HGCalHEMotherBoard, + HGCalHEEpoxy, HGCalHEKapton, HGCalHESiliconSensitive, + HGCalHEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_HEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Kapton, + materials:Silicon, hgcalMaterial:HGC_G10-FR4 + + 0.40*mm, 1.60*mm, 3.475*mm, 1.60*mm, 0.075*mm, 0.10*mm, + [WaferThickness], 1.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], 0.30*mm, + [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 1, 0 + + 7, 4, 5, 4, 6, 4, 3, 2, 1, 0 + + + + + + + + + + + + + + + LD1, LD2, LD3, LD4, LD5, LD6 + + 11, 12, 13, 14, 15, 16 + + 6, 7, 8, 9, 10, 11 + + 06, 07, 08, 09, 10, 11 + + HGCalHEAirGap, HGCalHEPCB, HGCalHEConnector, HGCalHEMotherBoard, + HGCalHEEpoxy, HGCalHEKapton, HGCalHESiliconSensitive, + HGCalHEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_HEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Kapton, + materials:Silicon, hgcalMaterial:HGC_G10-FR4 + + 0.40*mm, 1.60*mm, 3.475*mm, 1.60*mm, 0.075*mm, 0.10*mm, + [WaferThickness], 1.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], 0.30*mm, + [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 6, 4, 5, 4, 7 + + + + + + + + + + + + + + + LD1, LD2, LD3, LD4, LD5, LD6 + + 11, 12, 13, 14, 15, 16 + + 0, 1, 2, 3, 4, 5 + + 00, 01, 02, 03, 04, 05 + + HGCalHEAirGap, HGCalHEPCB, HGCalHEConnector, HGCalHEMotherBoard, + HGCalHEEpoxy, HGCalHEKapton, HGCalHESiliconSensitive, + HGCalHEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_HEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Kapton, + materials:Silicon, hgcalMaterial:HGC_G10-FR4 + + 0.40*mm, 1.60*mm, 3.475*mm, 1.60*mm, 0.075*mm, 0.10*mm, + [WaferThickness], 1.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], 0.30*mm, + [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 1, 0 + + 7, 4, 5, 4, 6, 4, 3, 2, 1, 0 + + + + + + + + + + + + + + + LD1, LD2, LD3, LD4, LD5, LD6 + + 11, 12, 13, 14, 15, 16 + + 6, 7, 8, 9, 10, 11 + + 06, 07, 08, 09, 10, 11 + + HGCalHEAirGap, HGCalHEPCB, HGCalHEConnector, HGCalHEMotherBoard, + HGCalHEEpoxy, HGCalHEKapton, HGCalHESiliconSensitive, + HGCalHEBasePlate + + materials:Air, hgcalMaterial:HGC_G10-FR4, hgcalMaterial:HGC_HEConnector, + hgcalMaterial:HGC_G10-FR4, materials:Epoxy, materials:Kapton, + materials:Silicon, hgcalMaterial:HGC_G10-FR4 + + 0.40*mm, 1.60*mm, 3.475*mm, 1.60*mm, 0.075*mm, 0.10*mm, + [WaferThickness], 1.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], 0.30*mm, + [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 6, 4, 5, 4, 7 + + + + + + diff --git a/Geometry/HGCalCommonData/python/testHGCalV18nXML_cfi.py b/Geometry/HGCalCommonData/python/testHGCalV18nXML_cfi.py new file mode 100644 index 0000000000000..59cadb36977e1 --- /dev/null +++ b/Geometry/HGCalCommonData/python/testHGCalV18nXML_cfi.py @@ -0,0 +1,125 @@ +import FWCore.ParameterSet.Config as cms + +XMLIdealGeometryESSource = cms.ESSource("XMLIdealGeometryESSource", + geomXMLFiles = cms.vstring( + 'Geometry/CMSCommonData/data/materials/2021/v1/materials.xml', + 'Geometry/CMSCommonData/data/rotations.xml', + 'Geometry/CMSCommonData/data/extend/v2/cmsextent.xml', + 'Geometry/CMSCommonData/data/cavernData/2021/v1/cavernData.xml', + 'Geometry/CMSCommonData/data/cms/2026/v5/cms.xml', + 'Geometry/CMSCommonData/data/cmsMother.xml', + 'Geometry/CMSCommonData/data/eta3/etaMax.xml', + 'Geometry/CMSCommonData/data/cmsTracker.xml', + 'Geometry/CMSCommonData/data/caloBase/2026/v7/caloBase.xml', + 'Geometry/CMSCommonData/data/cmsCalo.xml', + 'Geometry/CMSCommonData/data/muonBase/2026/v5/muonBase.xml', + 'Geometry/CMSCommonData/data/cmsMuon.xml', + 'Geometry/CMSCommonData/data/mgnt.xml', + 'Geometry/CMSCommonData/data/beampipe/2026/v3/beampipe.xml', + 'Geometry/CMSCommonData/data/cmsBeam/2026/v1/cmsBeam.xml', + 'Geometry/CMSCommonData/data/muonMB.xml', + 'Geometry/CMSCommonData/data/muonMagnet.xml', + 'Geometry/CMSCommonData/data/cavern/2021/v1/cavern.xml', + 'Geometry/CMSCommonData/data/cavernFloor/2017/v1/cavernFloor.xml', + 'Geometry/TrackerCommonData/data/PhaseII/trackerParameters.xml', + 'Geometry/TrackerCommonData/data/pixfwdCommon.xml', + 'Geometry/TrackerCommonData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/pixfwd.xml', + 'Geometry/TrackerCommonData/data/PhaseII/OuterTracker616_2020_04/pixbar.xml', + 'Geometry/TrackerCommonData/data/trackermaterial.xml', + 'Geometry/TrackerCommonData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/tracker.xml', + 'Geometry/TrackerCommonData/data/PhaseII/OuterTracker616_2020_04/otst.xml', + 'Geometry/TrackerCommonData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/pixel.xml', + 'Geometry/TrackerCommonData/data/PhaseII/TiltedTracker404/trackerbar.xml', + 'Geometry/TrackerCommonData/data/PhaseII/TiltedTracker404/trackerfwd.xml', + 'Geometry/TrackerCommonData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/trackerStructureTopology.xml', + 'Geometry/TrackerCommonData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/pixelStructureTopology.xml', + 'Geometry/TrackerSimData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/trackersens.xml', + 'Geometry/TrackerSimData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/pixelsens.xml', + 'Geometry/TrackerRecoData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/trackerRecoMaterial.xml', + 'SimTracker/TrackerMaterialAnalysis/data/trackingMaterialGroups_ForPhaseII/v1/trackingMaterialGroups_ForPhaseII.xml', + 'Geometry/TrackerSimData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/trackerProdCuts.xml', + 'Geometry/TrackerSimData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/pixelProdCuts.xml', + 'Geometry/TrackerSimData/data/trackerProdCutsBEAM.xml', + 'Geometry/EcalCommonData/data/eregalgo/2026/v2/eregalgo.xml', + 'Geometry/EcalCommonData/data/ectkcable/2026/v1/ectkcable.xml', + 'Geometry/EcalCommonData/data/ectkcablemat/2026/v2/ectkcablemat.xml', + 'Geometry/EcalCommonData/data/ebalgo.xml', + 'Geometry/EcalCommonData/data/ebcon/2021/v1/ebcon.xml', + 'Geometry/EcalCommonData/data/ebrot.xml', + 'Geometry/HcalCommonData/data/hcalrotations.xml', + 'Geometry/HcalCommonData/data/average/hcalforwardmaterial.xml', + 'Geometry/HcalCommonData/data/hcal/v2/hcalalgo.xml', + 'Geometry/HcalCommonData/data/hcalbarrelalgo.xml', + 'Geometry/HcalCommonData/data/hcalcablealgo/v2/hcalcablealgo.xml', + 'Geometry/HcalCommonData/data/hcalouteralgo/v1/hcalouteralgo.xml', + 'Geometry/HcalCommonData/data/hcalforwardalgo.xml', + 'Geometry/HcalCommonData/data/hcalSimNumbering/NoHE/v1/hcalSimNumbering.xml', + 'Geometry/HcalCommonData/data/hcalRecNumbering/NoHE/v2/hcalRecNumbering.xml', + 'Geometry/HGCalCommonData/data/hgcalMaterial/v2/hgcalMaterial.xml', + 'Geometry/HGCalCommonData/data/hgcal/v18/hgcal.xml', + 'Geometry/HGCalCommonData/data/hgcalwafer/v18n/hgcalwafer.xml', + 'Geometry/HGCalCommonData/data/hgcalPassive/v18/hgcalPassive.xml', + 'Geometry/HGCalCommonData/data/hgcalEE/v18/hgcalEE.xml', + 'Geometry/HGCalCommonData/data/hgcalHEsil/v18/hgcalHEsil.xml', + 'Geometry/HGCalCommonData/data/hgcalHEmix/v18/hgcalHEmix.xml', + 'Geometry/HGCalCommonData/data/hgcalCons/v18n/hgcalCons.xml', + 'Geometry/HGCalCommonData/data/hgcalConsData/v17/hgcalConsData.xml', + 'Geometry/MuonCommonData/data/mbCommon/2021/v1/mbCommon.xml', + 'Geometry/MuonCommonData/data/mb1/2015/v2/mb1.xml', + 'Geometry/MuonCommonData/data/mb2/2015/v2/mb2.xml', + 'Geometry/MuonCommonData/data/mb3/2015/v2/mb3.xml', + 'Geometry/MuonCommonData/data/mb4/2015/v2/mb4.xml', + 'Geometry/MuonCommonData/data/mb4Shield/2021/v1/mb4Shield.xml', + 'Geometry/MuonCommonData/data/muonYoke/2026/v3/muonYoke.xml', + 'Geometry/MuonCommonData/data/mf/2026/v8/mf.xml', + 'Geometry/MuonCommonData/data/csc/2021/v2/csc.xml', + 'Geometry/MuonCommonData/data/rpcf/2026/v3/rpcf.xml', + 'Geometry/MuonCommonData/data/gemf/TDR_BaseLine/gemf.xml', + 'Geometry/MuonCommonData/data/gem11/TDR_BaseLine/gem11.xml', + 'Geometry/MuonCommonData/data/gem21/TDR_Eta16/gem21.xml', + 'Geometry/MuonCommonData/data/mfshield/2026/v6/mfshield.xml', + 'Geometry/MuonCommonData/data/ge0/TDR_Dev/v4/ge0.xml', + 'Geometry/MuonCommonData/data/ge0shield/2026/v1/ge0shield.xml', + 'Geometry/ForwardCommonData/data/forwardshield/2026/v4/forwardshield.xml', + 'Geometry/ForwardCommonData/data/zdcmaterials/2021/v1/zdcmaterials.xml', + 'Geometry/ForwardCommonData/data/lumimaterials.xml', + 'Geometry/ForwardCommonData/data/zdcrotations.xml', + 'Geometry/ForwardCommonData/data/lumirotations.xml', + 'Geometry/ForwardCommonData/data/zdc/2026/v1/zdc.xml', + 'Geometry/ForwardCommonData/data/zdclumi/2021/v2/zdclumi.xml', + 'Geometry/ForwardCommonData/data/cmszdc.xml', + 'Geometry/MTDCommonData/data/mtdMaterial/v3/mtdMaterial.xml', + 'Geometry/MTDCommonData/data/btl/v1/btl.xml', + 'Geometry/MTDCommonData/data/etl/v7/etl.xml', + 'Geometry/MTDCommonData/data/mtdParameters/v3/mtdStructureTopology.xml', + 'Geometry/MTDCommonData/data/mtdParameters/v2/mtdParameters.xml', + )+ + cms.vstring( + 'Geometry/MuonCommonData/data/muonNumbering/TDR_DeV/v5/muonNumbering.xml', + 'Geometry/EcalSimData/data/PhaseII/ecalsens.xml', + 'Geometry/HcalCommonData/data/hcalsens/NoHE/v1/hcalsenspmf.xml', + 'Geometry/HcalSimData/data/hf.xml', + 'Geometry/HcalSimData/data/hfpmt.xml', + 'Geometry/HcalSimData/data/hffibrebundle.xml', + 'Geometry/HcalSimData/data/CaloUtil/2026/v2c/CaloUtil.xml', + 'Geometry/HGCalSimData/data/hgcsensv17n.xml', + 'Geometry/MuonSimData/data/PhaseII/v2/muonSens.xml', + 'Geometry/DTGeometryBuilder/data/dtSpecsFilter/2021/v1/dtSpecsFilter.xml', + 'Geometry/CSCGeometryBuilder/data/cscSpecsFilter.xml', + 'Geometry/CSCGeometryBuilder/data/cscSpecs.xml', + 'Geometry/RPCGeometryBuilder/data/2026/v1/RPCSpecs.xml', + 'Geometry/GEMGeometryBuilder/data/v12/GEMSpecsFilter.xml', + 'Geometry/GEMGeometryBuilder/data/v12/GEMSpecs.xml', + 'Geometry/ForwardSimData/data/zdcsens.xml', + 'Geometry/MTDSimData/data/v2/mtdsens.xml', + 'Geometry/HcalSimData/data/HcalProdCuts/2026/v1/HcalProdCuts.xml', + 'Geometry/EcalSimData/data/EcalProdCuts.xml', + 'Geometry/HGCalSimData/data/hgcProdCutsv15.xml', + 'Geometry/MuonSimData/data/muonProdCuts/2026/v2/muonProdCuts.xml', + 'Geometry/ForwardSimData/data/zdcProdCuts.xml', + 'Geometry/ForwardSimData/data/ForwardShieldProdCuts.xml', + 'Geometry/MTDSimData/data/v2/mtdProdCuts.xml', + 'Geometry/CMSCommonData/data/FieldParameters.xml' + ), + rootNodeName = cms.string('cms:OCMS') +) diff --git a/Geometry/HGCalCommonData/test/python/g4OverlapCheck_cfg.py b/Geometry/HGCalCommonData/test/python/g4OverlapCheck_cfg.py index fa093f10bfcc4..e7fd184de69cd 100644 --- a/Geometry/HGCalCommonData/test/python/g4OverlapCheck_cfg.py +++ b/Geometry/HGCalCommonData/test/python/g4OverlapCheck_cfg.py @@ -2,7 +2,7 @@ # Way to use this: # cmsRun g4OverlapCheck_cfg.py type=V17 tol=0.01 # -# Options for type V16, V17, V17n, V17ng, V18, Wafer, WaferFR, WaferPR +# Options for type V16, V17, V17n, V17ng, V18, V18n, Wafer, WaferFR, WaferPR # tol 1.0, 0.1, 0.01, 0.0 # ############################################################################### @@ -17,7 +17,7 @@ "V17", VarParsing.VarParsing.multiplicity.singleton, VarParsing.VarParsing.varType.string, - "type of operations: V16, V17, V17n, V7ng, V18, Wafer, WaferFR, WaferPR") + "type of operations: V16, V17, V17n, V7ng, V18, V18n, Wafer, WaferFR, WaferPR") options.register('tol', 0.01, VarParsing.VarParsing.multiplicity.singleton, From 83c8bd31ac91d6e2299ecb1f5ffb247f05833431 Mon Sep 17 00:00:00 2001 From: Slava Krutelyov Date: Sat, 9 Jul 2022 16:10:15 -0700 Subject: [PATCH 262/281] add ph2_usedMask --- Validation/RecoTrack/plugins/BuildFile.xml | 1 + .../RecoTrack/plugins/TrackingNtuple.cc | 37 +++++++++++++++++-- 2 files changed, 34 insertions(+), 4 deletions(-) diff --git a/Validation/RecoTrack/plugins/BuildFile.xml b/Validation/RecoTrack/plugins/BuildFile.xml index b0284ed3f3618..322b636ba73a0 100644 --- a/Validation/RecoTrack/plugins/BuildFile.xml +++ b/Validation/RecoTrack/plugins/BuildFile.xml @@ -22,6 +22,7 @@ + diff --git a/Validation/RecoTrack/plugins/TrackingNtuple.cc b/Validation/RecoTrack/plugins/TrackingNtuple.cc index 9a60ce7c7e442..7b223282791b1 100644 --- a/Validation/RecoTrack/plugins/TrackingNtuple.cc +++ b/Validation/RecoTrack/plugins/TrackingNtuple.cc @@ -55,6 +55,8 @@ #include "MagneticField/Engine/interface/MagneticField.h" #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h" +#include "DataFormats/Phase2TrackerCluster/interface/Phase2TrackerCluster1D.h" + #include "DataFormats/SiPixelDetId/interface/PixelChannelIdentifier.h" #include "DataFormats/SiStripCluster/interface/SiStripClusterTools.h" #include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHitCollection.h" @@ -492,6 +494,7 @@ class TrackingNtuple : public edm::one::EDAnalyzer { using PixelMaskContainer = edm::ContainerMask>; using StripMaskContainer = edm::ContainerMask>; + using Phase2OTMaskContainer = edm::ContainerMask>; struct TPHitIndex { TPHitIndex(unsigned int tp = 0, unsigned int simHit = 0, float to = 0, unsigned int id = 0) @@ -681,6 +684,7 @@ class TrackingNtuple : public edm::one::EDAnalyzer { std::vector>> pixelUseMaskTokens_; std::vector>> stripUseMaskTokens_; + std::vector>> ph2OTUseMaskTokens_; std::string builderName_; const bool includeSeeds_; @@ -1287,6 +1291,7 @@ class TrackingNtuple : public edm::one::EDAnalyzer { std::vector ph2_radL; //http://cmslxr.fnal.gov/lxr/source/DataFormats/GeometrySurface/interface/MediumProperties.h std::vector ph2_bbxi; + std::vector ph2_usedMask; //////////////////// // invalid (missing/inactive/etc) hits @@ -1490,14 +1495,20 @@ TrackingNtuple::TrackingNtuple(const edm::ParameterSet& iConfig) auto const& maskVPset = iConfig.getUntrackedParameterSetVector("clusterMasks"); pixelUseMaskTokens_.reserve(maskVPset.size()); stripUseMaskTokens_.reserve(maskVPset.size()); + ph2OTUseMaskTokens_.reserve(maskVPset.size()); for (auto const& mask : maskVPset) { auto index = mask.getUntrackedParameter("index"); assert(index < 64); pixelUseMaskTokens_.emplace_back(index, consumes(mask.getUntrackedParameter("src"))); - if (includeStripHits_) - stripUseMaskTokens_.emplace_back( - index, consumes(mask.getUntrackedParameter("src"))); + if (includeStripHits_) { + if (includePhase2OTHits_) + ph2OTUseMaskTokens_.emplace_back( + index, consumes(mask.getUntrackedParameter("src"))); + else + stripUseMaskTokens_.emplace_back( + index, consumes(mask.getUntrackedParameter("src"))); + } } } @@ -1872,7 +1883,7 @@ TrackingNtuple::TrackingNtuple(const edm::ParameterSet& iConfig) t->Branch("ph2_zx", &ph2_zx); t->Branch("ph2_radL", &ph2_radL); t->Branch("ph2_bbxi", &ph2_bbxi); - t->Branch("ph2_bbxi", &ph2_bbxi); + t->Branch("ph2_usedMask", &ph2_usedMask); } //invalid hits t->Branch("inv_isBarrel", &inv_isBarrel); @@ -2299,6 +2310,7 @@ void TrackingNtuple::clearVariables() { ph2_zx.clear(); ph2_radL.clear(); ph2_bbxi.clear(); + ph2_usedMask.clear(); //invalid hits inv_isBarrel.clear(); inv_detId.clear(); @@ -3315,6 +3327,22 @@ void TrackingNtuple::fillPhase2OTHits(const edm::Event& iEvent, const TrackerTopology& tTopo, const SimHitRefKeyToIndex& simHitRefKeyToIndex, std::set& hitProductIds) { + std::vector> phase2OTMasks; + phase2OTMasks.reserve(ph2OTUseMaskTokens_.size()); + for (const auto& itoken : ph2OTUseMaskTokens_) { + edm::Handle aH; + iEvent.getByToken(itoken.second, aH); + phase2OTMasks.emplace_back(1 << itoken.first, aH.product()); + } + auto ph2OTUsedMask = [&phase2OTMasks](size_t key) { + uint64_t mask = 0; + for (auto const& m : phase2OTMasks) { + if (m.second->mask(key)) + mask |= m.first; + } + return mask; + }; + edm::Handle phase2OTHits; iEvent.getByToken(phase2OTRecHitToken_, phase2OTHits); for (auto it = phase2OTHits->begin(); it != phase2OTHits->end(); it++) { @@ -3350,6 +3378,7 @@ void TrackingNtuple::fillPhase2OTHits(const edm::Event& iEvent, ph2_zx.push_back(hit->globalPositionError().czx()); ph2_radL.push_back(hit->surface()->mediumProperties().radLen()); ph2_bbxi.push_back(hit->surface()->mediumProperties().xi()); + ph2_usedMask.push_back(ph2OTUsedMask(hit->firstClusterRef().key())); LogTrace("TrackingNtuple") << "phase2 OT cluster=" << key << " subdId=" << hitId.subdetId() << " lay=" << lay << " rawId=" << hitId.rawId() << " pos =" << hit->globalPosition(); From e3e0824c7c7c8843710c0b2e8ebc18831cb961b8 Mon Sep 17 00:00:00 2001 From: Slava Krutelyov Date: Wed, 13 Jul 2022 12:02:38 -0700 Subject: [PATCH 263/281] fixup ph2 OT masks --- Validation/RecoTrack/plugins/TrackingNtuple.cc | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/Validation/RecoTrack/plugins/TrackingNtuple.cc b/Validation/RecoTrack/plugins/TrackingNtuple.cc index 7b223282791b1..b98d01a7dcbf7 100644 --- a/Validation/RecoTrack/plugins/TrackingNtuple.cc +++ b/Validation/RecoTrack/plugins/TrackingNtuple.cc @@ -1501,14 +1501,12 @@ TrackingNtuple::TrackingNtuple(const edm::ParameterSet& iConfig) assert(index < 64); pixelUseMaskTokens_.emplace_back(index, consumes(mask.getUntrackedParameter("src"))); - if (includeStripHits_) { - if (includePhase2OTHits_) - ph2OTUseMaskTokens_.emplace_back( - index, consumes(mask.getUntrackedParameter("src"))); - else - stripUseMaskTokens_.emplace_back( - index, consumes(mask.getUntrackedParameter("src"))); - } + if (includeStripHits_) + stripUseMaskTokens_.emplace_back( + index, consumes(mask.getUntrackedParameter("src"))); + if (includePhase2OTHits_) + ph2OTUseMaskTokens_.emplace_back( + index, consumes(mask.getUntrackedParameter("src"))); } } From 1138d2714285fd4a6e113a6439b1fd4fdc9adabb Mon Sep 17 00:00:00 2001 From: Shahzad Malik Muzaffar Date: Tue, 16 Jan 2024 16:03:25 +0100 Subject: [PATCH 264/281] Unit tests to check SCRAM test command works --- Utilities/ReleaseScripts/test/BuildFile.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Utilities/ReleaseScripts/test/BuildFile.xml b/Utilities/ReleaseScripts/test/BuildFile.xml index c33943c32914e..9c17b56d1c695 100644 --- a/Utilities/ReleaseScripts/test/BuildFile.xml +++ b/Utilities/ReleaseScripts/test/BuildFile.xml @@ -1,4 +1,6 @@ + + From ecba17c383ad35b6df7750c9e22f9089c8b01698 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Tue, 16 Jan 2024 15:18:45 -0600 Subject: [PATCH 265/281] DQMStore avoids using 0 as invalid module ID The framework allows 0 as a valid ID. --- DQMServices/Core/interface/DQMStore.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/DQMServices/Core/interface/DQMStore.h b/DQMServices/Core/interface/DQMStore.h index 7413255a48f58..a1ec64fc1c601 100644 --- a/DQMServices/Core/interface/DQMStore.h +++ b/DQMServices/Core/interface/DQMStore.h @@ -554,7 +554,8 @@ namespace dqm { DQMStore* store_ = nullptr; MonitorElementData::Scope scope_ = MonitorElementData::Scope::JOB; - uint64_t moduleID_ = 0; + static constexpr uint64_t kInvalidModuleID = std::numeric_limits::max(); + uint64_t moduleID_ = kInvalidModuleID; edm::LuminosityBlockID runlumi_ = edm::LuminosityBlockID(); }; @@ -684,8 +685,8 @@ namespace dqm { oldid_ = booker_.setModuleID(newid); oldscope_ = booker_.setScope(newscope); oldrunlumi_ = booker_.setRunLumi(newrunlumi); - assert(newid != 0 || !"moduleID must be set for normal booking transaction"); - assert(oldid_ == 0 || !"Nested booking transaction?"); + assert(newid != kInvalidModuleID || !"moduleID must be set for normal booking transaction"); + assert(oldid_ == kInvalidModuleID || !"Nested booking transaction?"); } ~ModuleIdScope() { booker_.setModuleID(oldid_); From 4cfad47cd3fc7ef176467c95c00450c0f23ac524 Mon Sep 17 00:00:00 2001 From: Matti Kortelainen Date: Wed, 17 Jan 2024 00:03:05 +0100 Subject: [PATCH 266/281] Make Minuit2 error on non-posdef initial matrix an error message instead of an exception This behavior reflects the behavior of Minuit, where no error message was given. This change is made initially as a workaround to change DQMGenericClient fits back to chi2 from likelihood, but keeping the error as a message might become a longer-term solution as well. --- FWCore/Services/plugins/InitRootHandlers.cc | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/FWCore/Services/plugins/InitRootHandlers.cc b/FWCore/Services/plugins/InitRootHandlers.cc index a186ae6cb3e92..dee198b3fe7af 100644 --- a/FWCore/Services/plugins/InitRootHandlers.cc +++ b/FWCore/Services/plugins/InitRootHandlers.cc @@ -186,9 +186,11 @@ namespace { "Inverter::Dinv", "RTaskArenaWrapper"}}; - constexpr std::array in_message_print_error{{"number of iterations was insufficient", - "bad integrand behavior", - "integral is divergent, or slowly convergent"}}; + constexpr std::array in_message_print_error{ + {"number of iterations was insufficient", + "bad integrand behavior", + "integral is divergent, or slowly convergent", + "VariableMetricBuilder Initial matrix not pos.def."}}; void RootErrorHandlerImpl(int level, char const* location, char const* message) { bool die = false; From f689bde0b181654c7444f0b8b70a4cd241772173 Mon Sep 17 00:00:00 2001 From: Sunanda Date: Wed, 17 Jan 2024 05:27:31 +0100 Subject: [PATCH 267/281] Commit changes made by Ashim for 2023 August/Septemeber Test Beam --- .../data/TB230/{Jul230 => Aug230}/cms.xml | 0 .../data/TB230/{Jul230 => Aug230}/hgcal.xml | 0 .../TB230/{Jul230 => Aug230}/hgcalBeam.xml | 0 .../TB230/{Jul230 => Aug230}/hgcalCons.xml | 0 .../{Jul230 => Aug230}/hgcalConsData.xml | 0 .../data/TB230/Aug230/hgcalEE.xml | 588 ++++++++++++++++++ .../TB230/{Jul230 => Aug230}/hgcalcell.xml | 0 .../TB230/{Jul230 => Aug230}/hgcalsense.xml | 0 .../TB230/{Jul230 => Aug230}/hgcalwafer.xml | 0 .../data/TB230/Sep230/cms.xml | 72 +++ .../data/TB230/Sep230/hgcal.xml | 74 +++ .../data/TB230/Sep230/hgcalBeam.xml | 107 ++++ .../data/TB230/Sep230/hgcalCons.xml | 83 +++ .../data/TB230/Sep230/hgcalConsData.xml | 179 ++++++ .../data/TB230/{Jul230 => Sep230}/hgcalEE.xml | 260 +++++--- .../data/TB230/Sep230/hgcalcell.xml | 102 +++ .../data/TB230/Sep230/hgcalsense.xml | 11 + .../data/TB230/Sep230/hgcalwafer.xml | 199 ++++++ ...30JulXML_cfi.py => testTB230AugXML_cfi.py} | 18 +- .../python/testTB230SepXML_cfi.py | 21 + .../python/HGCalTB230SepXML_cfi.py | 21 + ...alTB230Jul_cfg.py => HGCalTB230Aug_cfg.py} | 2 +- .../HGCalTestBeam/test/HGCalTB230Sep_cfg.py | 134 ++++ 23 files changed, 1762 insertions(+), 109 deletions(-) rename Geometry/HGCalTBCommonData/data/TB230/{Jul230 => Aug230}/cms.xml (100%) rename Geometry/HGCalTBCommonData/data/TB230/{Jul230 => Aug230}/hgcal.xml (100%) rename Geometry/HGCalTBCommonData/data/TB230/{Jul230 => Aug230}/hgcalBeam.xml (100%) rename Geometry/HGCalTBCommonData/data/TB230/{Jul230 => Aug230}/hgcalCons.xml (100%) rename Geometry/HGCalTBCommonData/data/TB230/{Jul230 => Aug230}/hgcalConsData.xml (100%) create mode 100644 Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalEE.xml rename Geometry/HGCalTBCommonData/data/TB230/{Jul230 => Aug230}/hgcalcell.xml (100%) rename Geometry/HGCalTBCommonData/data/TB230/{Jul230 => Aug230}/hgcalsense.xml (100%) rename Geometry/HGCalTBCommonData/data/TB230/{Jul230 => Aug230}/hgcalwafer.xml (100%) create mode 100644 Geometry/HGCalTBCommonData/data/TB230/Sep230/cms.xml create mode 100644 Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcal.xml create mode 100644 Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalBeam.xml create mode 100644 Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalCons.xml create mode 100644 Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalConsData.xml rename Geometry/HGCalTBCommonData/data/TB230/{Jul230 => Sep230}/hgcalEE.xml (61%) create mode 100644 Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalcell.xml create mode 100644 Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalsense.xml create mode 100644 Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalwafer.xml rename Geometry/HGCalTBCommonData/python/{testTB230JulXML_cfi.py => testTB230AugXML_cfi.py} (81%) create mode 100644 Geometry/HGCalTBCommonData/python/testTB230SepXML_cfi.py create mode 100644 SimG4CMS/HGCalTestBeam/python/HGCalTB230SepXML_cfi.py rename SimG4CMS/HGCalTestBeam/test/{HGCalTB230Jul_cfg.py => HGCalTB230Aug_cfg.py} (98%) create mode 100644 SimG4CMS/HGCalTestBeam/test/HGCalTB230Sep_cfg.py diff --git a/Geometry/HGCalTBCommonData/data/TB230/Jul230/cms.xml b/Geometry/HGCalTBCommonData/data/TB230/Aug230/cms.xml similarity index 100% rename from Geometry/HGCalTBCommonData/data/TB230/Jul230/cms.xml rename to Geometry/HGCalTBCommonData/data/TB230/Aug230/cms.xml diff --git a/Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcal.xml b/Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcal.xml similarity index 100% rename from Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcal.xml rename to Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcal.xml diff --git a/Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalBeam.xml b/Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalBeam.xml similarity index 100% rename from Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalBeam.xml rename to Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalBeam.xml diff --git a/Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalCons.xml b/Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalCons.xml similarity index 100% rename from Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalCons.xml rename to Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalCons.xml diff --git a/Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalConsData.xml b/Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalConsData.xml similarity index 100% rename from Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalConsData.xml rename to Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalConsData.xml diff --git a/Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalEE.xml b/Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalEE.xml new file mode 100644 index 0000000000000..d0e60d92ea45a --- /dev/null +++ b/Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalEE.xml @@ -0,0 +1,588 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalcell.xml b/Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalcell.xml similarity index 100% rename from Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalcell.xml rename to Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalcell.xml diff --git a/Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalsense.xml b/Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalsense.xml similarity index 100% rename from Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalsense.xml rename to Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalsense.xml diff --git a/Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalwafer.xml b/Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalwafer.xml similarity index 100% rename from Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalwafer.xml rename to Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalwafer.xml diff --git a/Geometry/HGCalTBCommonData/data/TB230/Sep230/cms.xml b/Geometry/HGCalTBCommonData/data/TB230/Sep230/cms.xml new file mode 100644 index 0000000000000..5a4edf6a9d36f --- /dev/null +++ b/Geometry/HGCalTBCommonData/data/TB230/Sep230/cms.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcal.xml b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcal.xml new file mode 100644 index 0000000000000..23028c4adb4a2 --- /dev/null +++ b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcal.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalBeam.xml b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalBeam.xml new file mode 100644 index 0000000000000..536c7f52f2c81 --- /dev/null +++ b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalBeam.xml @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalCons.xml b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalCons.xml new file mode 100644 index 0000000000000..652518619804f --- /dev/null +++ b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalCons.xml @@ -0,0 +1,83 @@ + + + + + + + 0.0*mm, 0.0*mm + + [hgcal:zHGCalEE1], [hgcal:zHGCalEE2] + + 0, 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalConsData.xml b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalConsData.xml new file mode 100644 index 0000000000000..e987daff7c303 --- /dev/null +++ b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalConsData.xml @@ -0,0 +1,179 @@ + + + + + + 0, 0 + + 262146, 262147, 262148, 262149, 262150, 262151, 262152, + 262153, 262178, 262179, 262180, 262181, 262182, 262183, + 262184, 262185, 262210, 262211, 262212, 262213, 262214, + 262215, 262216, 262217, 262241, 262242, 262243, 262244, + 262245, 262246, 262247, 262248, 262272, 262273, 262274, + 262275, 262276, 262277, 262278, 262279, 262280, 262281, + 262282, 262305, 262306, 262307, 262308, 262309, 262310, + 262311, 262312, 262336, 262337, 262338, 262339, 262340, + 262341, 262342, 262343, 262344, 262345, 262346, 262369, + 262370, 262371, 262372, 262373, 262374, 262375, 262400, + 262401, 262402, 262403, 262404, 262405, 262406, 262407, + 262408, 262409, 262410, 262433, 262434, 262435, 262436, + 262437, 262438, 262464, 262465, 262466, 262467, 262468, + 262469, 262470, 262471, 262472, 262473, 262474, 262497, + 262498, 262499, 262500, 262501, 262528, 262529, 262530, + 262531, 262532, 262533, 262534, 262535, 262536, 262537, + 262538, 262561, 262562, 262563, 262564, 262592, 262593, + 262594, 262595, 262596, 262597, 262598, 262599, 262600, + 262601, 262602, 262625, 262626, 262627, 262656, 262657, + 262658, 262659, 262660, 262661, 262662, 262663, 262664, + 262665, 262666, 262689, 262690, 262720, 262721, 262722, + 262723, 262724, 262725, 262726, 262727, 262728, 262729, + 262786, 262787, 262788, 262789, 262790, 262791, 262792, + 264257, 264258, 264259, 264260, 264261, 264262, 264263, + 264264, 264290, 264291, 264292, 264293, 264294, 264295, + 264296, 264297, 264320, 264321, 264322, 264323, 264324, + 264325, 264326, 264327, 264328, 264353, 264354, 264355, + 264356, 264357, 264358, 264359, 264360, 264361, 264362, + 264384, 264385, 264386, 264387, 264388, 264389, 264390, + 264391, 264417, 264418, 264419, 264420, 264421, 264422, + 264423, 264424, 264425, 264426, 264448, 264449, 264450, + 264451, 264452, 264453, 264454, 264481, 264482, 264483, + 264484, 264485, 264486, 264487, 264488, 264489, 264490, + 264512, 264513, 264514, 264515, 264516, 264517, 264545, + 264546, 264547, 264548, 264549, 264550, 264551, 264552, + 264553, 264554, 264576, 264577, 264578, 264579, 264580, + 264609, 264610, 264611, 264612, 264613, 264614, 264615, + 264616, 264617, 264618, 264640, 264641, 264642, 264643, + 264673, 264674, 264675, 264676, 264677, 264678, 264679, + 264680, 264681, 264682, 264704, 264705, 264706, 264737, + 264738, 264739, 264740, 264741, 264742, 264743, 264744, + 264745, 264746, 264768, 264801, 264802, 264803, 264804, + 264805, 264806, 264807, 264808, 264809, 264866, 264867, + 264868, 264869, 264870, 264871, 264872, 524290, 524291, + 524292, 524293, 524294, 524295, 524296, 524322, 524323, + 524324, 524325, 524326, 524327, 524328, 524354, 524355, + 524356, 524357, 524358, 524359, 524360, 524361, 524385, + 524386, 524387, 524388, 524389, 524390, 524391, 524392, + 524416, 524417, 524418, 524419, 524420, 524421, 524422, + 524423, 524424, 524425, 524449, 524450, 524451, 524452, + 524453, 524454, 524455, 524480, 524481, 524482, 524483, + 524484, 524485, 524486, 524487, 524488, 524489, 524513, + 524514, 524515, 524516, 524517, 524518, 524544, 524545, + 524546, 524547, 524548, 524549, 524550, 524551, 524552, + 524553, 524554, 524577, 524578, 524579, 524580, 524581, + 524582, 524608, 524609, 524610, 524611, 524612, 524613, + 524614, 524615, 524616, 524617, 524618, 524641, 524642, + 524643, 524644, 524645, 524672, 524673, 524674, 524675, + 524676, 524677, 524678, 524679, 524680, 524681, 524682, + 524705, 524706, 524707, 524708, 524736, 524737, 524738, + 524739, 524740, 524741, 524742, 524743, 524744, 524745, + 524769, 524770, 524800, 524801, 524802, 524803, 524804, + 524805, 524806, 524807, 524808, 524809, 524833, 524865, + 524866, 524867, 524868, 524869, 524870, 524871, 524872, + 524932, 524933, 524934, 526401, 526402, 526403, 526404, + 526405, 526406, 526407, 526408, 526434, 526435, 526436, + 526437, 526438, 526439, 526440, 526441, 526464, 526465, + 526466, 526467, 526468, 526469, 526470, 526471, 526497, + 526498, 526499, 526500, 526501, 526502, 526503, 526504, + 526505, 526528, 526529, 526530, 526531, 526532, 526533, + 526534, 526561, 526562, 526563, 526564, 526565, 526566, + 526567, 526568, 526569, 526592, 526593, 526594, 526595, + 526596, 526597, 526598, 526625, 526626, 526627, 526628, + 526629, 526630, 526631, 526632, 526633, 526634, 526656, + 526657, 526658, 526659, 526660, 526661, 526689, 526690, + 526691, 526692, 526693, 526694, 526695, 526696, 526697, + 526698, 526720, 526721, 526722, 526723, 526724, 526753, + 526754, 526755, 526756, 526757, 526758, 526759, 526760, + 526761, 526762, 526784, 526785, 526786, 526817, 526818, + 526819, 526820, 526821, 526822, 526823, 526824, 526825, + 526848, 526849, 526881, 526882, 526883, 526884, 526885, + 526886, 526887, 526888, 526889, 526945, 526946, 526947, + 526948, 526949, 526950, 526951, 526952, 527012, 527013, + 527014 + + + 15220, 12000, 12000, 12001, 12002, 12002, 12002, 10162, + 42220, 45000, 45000, 45001, 45002, 45002, 45002, 43162, + 11230, 13000, 12000, 12000, 12002, 12002, 12002, 12002, + 33230, 35000, 35000, 35000, 32002, 32002, 32002, 31152, + 31220, 22230, 20220, 13000, 13000, 12000, 12001, 12002, + 12002, 12002, 11162, 35000, 35000, 35000, 32001, 32002, + 32002, 32002, 33162, 34000, 24000, 24000, 23000, 13000, + 13000, 10001, 12002, 12002, 12002, 15112, 34000, 34000, + 32001, 32002, 32002, 32002, 32112, 34000, 24000, 24000, + 23000, 23000, 13000, 10001, 10002, 12002, 12002, 14152, + 34000, 34001, 34002, 34002, 32002, 30152, 34001, 24000, + 24000, 23000, 23000, 23001, 10002, 10002, 10002, 10002, + 14132, 34002, 34002, 34002, 34002, 30132, 34002, 21002, + 21001, 21001, 23001, 23002, 23002, 10002, 10002, 10002, + 14152, 34002, 34002, 34002, 30152, 34002, 21002, 21002, + 21002, 23002, 23002, 23002, 23002, 10002, 10002, 10112, + 34002, 34002, 31112, 34002, 21002, 21002, 21002, 23002, + 23002, 23002, 23002, 23002, 15152, 11162, 34002, 33162, + 32162, 20152, 21002, 21002, 21002, 23002, 23002, 23002, + 23002, 21162, 22162, 21112, 25152, 25132, 25152, 20112, + 22162, 60230, 62000, 62000, 62000, 65002, 65002, 65002, + 64152, 44230, 40000, 45000, 45000, 45002, 45002, 45002, + 45002, 64220, 62000, 62000, 62000, 65001, 65002, 65002, + 65002, 60162, 55230, 53220, 40000, 40000, 45000, 45001, + 45002, 45002, 45002, 44162, 61000, 61000, 61000, 65001, + 65002, 65002, 65002, 65112, 51000, 51000, 50000, 40000, + 40000, 43001, 45002, 45002, 45002, 42112, 61000, 61000, + 61001, 61002, 61002, 65002, 63152, 51000, 51000, 50000, + 50000, 40000, 43001, 43002, 45002, 45002, 41152, 61001, + 61002, 61002, 61002, 61002, 63132, 51000, 51000, 50000, + 50000, 50001, 43002, 43002, 43002, 43002, 41132, 61002, + 61002, 61002, 61002, 63152, 54002, 54001, 54001, 50001, + 50002, 50002, 43002, 43002, 43002, 41152, 61002, 61002, + 61002, 64112, 54002, 54002, 54002, 50002, 50002, 50002, + 50002, 43002, 43002, 43112, 61002, 61002, 60162, 54002, + 54002, 54002, 50002, 50002, 50002, 50002, 50002, 42152, + 44162, 65162, 53152, 54002, 54002, 54002, 50002, 50002, + 50002, 50002, 54162, 55162, 54112, 52152, 52132, 52152, + 53112, 55162, 12220, 12000, 12000, 12001, 12002, 12002, + 12002, 45220, 45000, 45000, 45001, 45002, 45002, 45002, + 13230, 11000, 12000, 12000, 12002, 12002, 12002, 12112, + 31230, 35000, 35000, 35000, 32002, 32002, 32002, 35112, + 30220, 22230, 21220, 11000, 11000, 12000, 12001, 12002, + 12002, 12002, 35000, 35000, 35000, 32001, 32002, 32002, + 32002, 30000, 20000, 20000, 21000, 11000, 11000, 14001, + 12002, 12002, 12002, 30000, 30000, 32001, 32002, 32002, + 32002, 30000, 20000, 20000, 21000, 21000, 11000, 14001, + 14002, 14002, 14002, 13162, 30000, 30001, 30002, 32002, + 32002, 31162, 30001, 20000, 20000, 21000, 21000, 21001, + 14002, 14002, 14002, 14002, 13162, 30002, 30002, 30002, + 32002, 31162, 30002, 23002, 23001, 23001, 21001, 21002, + 21002, 14002, 14002, 14002, 13162, 30002, 30002, 30002, + 31162, 30002, 23002, 23002, 23002, 21002, 21002, 21002, + 21002, 14002, 14002, 30002, 30002, 30002, 23002, 23002, + 23002, 23002, 21002, 21002, 21002, 21002, 11112, 30112, + 20112, 23002, 23002, 23002, 23002, 21002, 21002, 21112, + 22162, 22162, 22162, 64230, 62000, 62000, 62000, 65002, + 65002, 65002, 62112, 40230, 44000, 45000, 45000, 45002, + 45002, 45002, 45112, 63220, 62000, 62000, 62000, 65001, + 65002, 65002, 65002, 55230, 54220, 44000, 44000, 45000, + 45001, 45002, 45002, 45002, 63000, 63000, 63000, 65001, + 65002, 65002, 65002, 53000, 53000, 54000, 44000, 44000, + 41001, 45002, 45002, 45002, 63000, 63000, 63001, 63002, + 65002, 65002, 64162, 53000, 53000, 54000, 54000, 44000, + 41001, 41002, 41002, 41002, 40162, 63001, 63002, 63002, + 63002, 65002, 64162, 53000, 53000, 54000, 54000, 54001, + 41002, 41002, 41002, 41002, 40162, 63002, 63002, 63002, + 63002, 64162, 50002, 50001, 50001, 54001, 54002, 54002, + 41002, 41002, 41002, 40162, 63002, 63002, 63002, 50002, + 50002, 50002, 54002, 54002, 54002, 54002, 41002, 41002, + 63002, 63112, 50002, 50002, 50002, 50002, 54002, 54002, + 54002, 54002, 44112, 53112, 50002, 50002, 50002, 50002, + 54002, 54002, 54112, 55162, 55162, 55162, 15220, 12000, + 12000 + + + 0, 306 + + 0*mm, 0*mm, 0*mm, 0*mm, 0*mm, 0*mm, + 0*mm, 0*mm, 0*mm, 0*mm, 0*mm, 0*mm, + 0*mm, 0*mm, 0*mm, 0*mm, 0*mm, 0*mm, + 0*mm, 0*mm, 0*mm, 0*mm, 0*mm, 0*mm + + + + diff --git a/Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalEE.xml b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalEE.xml similarity index 61% rename from Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalEE.xml rename to Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalEE.xml index 38a5185f5543d..a330b33c12c2d 100644 --- a/Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalEE.xml +++ b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalEE.xml @@ -12,52 +12,61 @@ - - + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + - - + + @@ -72,6 +81,7 @@ + @@ -96,6 +106,10 @@ + + + + @@ -237,154 +251,202 @@ - + - + - + - + - + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + - - + + diff --git a/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalcell.xml b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalcell.xml new file mode 100644 index 0000000000000..003537d85de81 --- /dev/null +++ b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalcell.xml @@ -0,0 +1,102 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + HGCalEECellTrunc01Coarse2, HGCalEECellTrunc02Coarse2, + HGCalEECellTrunc03Coarse2, HGCalEECellTrunc04Coarse2, + HGCalEECellTrunc05Coarse2, HGCalEECellTrunc06Coarse2 + + HGCalEECellSensitiveTrunc01Coarse2, HGCalEECellSensitiveTrunc02Coarse2, + HGCalEECellSensitiveTrunc03Coarse2, HGCalEECellSensitiveTrunc04Coarse2, + HGCalEECellSensitiveTrunc05Coarse2, HGCalEECellSensitiveTrunc06Coarse2 + + HGCalEECellExten01Coarse2, HGCalEECellExten02Coarse2, + HGCalEECellExten03Coarse2, HGCalEECellExten04Coarse2, + HGCalEECellExten05Coarse2, HGCalEECellExten06Coarse2 + + HGCalEECellSensitiveExten01Coarse2, HGCalEECellSensitiveExten02Coarse2, + HGCalEECellSensitiveExten03Coarse2, HGCalEECellSensitiveExten04Coarse2, + HGCalEECellSensitiveExten05Coarse2, HGCalEECellSensitiveExten06Coarse2 + + HGCalEECellCorner01Coarse2, HGCalEECellCorner02Coarse2, + HGCalEECellCorner03Coarse2, HGCalEECellCorner04Coarse2, + HGCalEECellCorner05Coarse2, HGCalEECellCorner06Coarse2, + HGCalEECellCorner07Coarse2, HGCalEECellCorner08Coarse2, + HGCalEECellCorner09Coarse2, HGCalEECellCorner10Coarse2, + HGCalEECellCorner11Coarse2, HGCalEECellCorner12Coarse2 + + HGCalEECellSensitiveCorner01Coarse2, HGCalEECellSensitiveCorner02Coarse2, + HGCalEECellSensitiveCorner03Coarse2, HGCalEECellSensitiveCorner04Coarse2, + HGCalEECellSensitiveCorner05Coarse2, HGCalEECellSensitiveCorner06Coarse2, + HGCalEECellSensitiveCorner07Coarse2, HGCalEECellSensitiveCorner08Coarse2, + HGCalEECellSensitiveCorner09Coarse2, HGCalEECellSensitiveCorner10Coarse2, + HGCalEECellSensitiveCorner11Coarse2, HGCalEECellSensitiveCorner12Coarse2 + + + + + + + + + + + + + + + HGCalEECellTrunc21Coarse2, HGCalEECellTrunc22Coarse2, + HGCalEECellTrunc23Coarse2, HGCalEECellTrunc24Coarse2, + HGCalEECellTrunc25Coarse2, HGCalEECellTrunc26Coarse2 + + HGCalEECellSensitiveTrunc21Coarse2, HGCalEECellSensitiveTrunc22Coarse2, + HGCalEECellSensitiveTrunc23Coarse2, HGCalEECellSensitiveTrunc24Coarse2, + HGCalEECellSensitiveTrunc25Coarse2, HGCalEECellSensitiveTrunc26Coarse2 + + HGCalEECellExten21Coarse2, HGCalEECellExten22Coarse2, + HGCalEECellExten23Coarse2, HGCalEECellExten24Coarse2, + HGCalEECellExten25Coarse2, HGCalEECellExten26Coarse2 + + HGCalEECellSensitiveExten21Coarse2, HGCalEECellSensitiveExten22Coarse2, + HGCalEECellSensitiveExten23Coarse2, HGCalEECellSensitiveExten24Coarse2, + HGCalEECellSensitiveExten25Coarse2, HGCalEECellSensitiveExten26Coarse2 + + HGCalEECellCorner21Coarse2, HGCalEECellCorner22Coarse2, + HGCalEECellCorner23Coarse2, HGCalEECellCorner24Coarse2, + HGCalEECellCorner25Coarse2, HGCalEECellCorner26Coarse2, + HGCalEECellCorner27Coarse2, HGCalEECellCorner28Coarse2, + HGCalEECellCorner29Coarse2, HGCalEECellCorner30Coarse2, + HGCalEECellCorner31Coarse2, HGCalEECellCorner32Coarse2 + + HGCalEECellSensitiveCorner21Coarse2, HGCalEECellSensitiveCorner22Coarse2, + HGCalEECellSensitiveCorner23Coarse2, HGCalEECellSensitiveCorner24Coarse2, + HGCalEECellSensitiveCorner25Coarse2, HGCalEECellSensitiveCorner26Coarse2, + HGCalEECellSensitiveCorner27Coarse2, HGCalEECellSensitiveCorner28Coarse2, + HGCalEECellSensitiveCorner29Coarse2, HGCalEECellSensitiveCorner30Coarse2, + HGCalEECellSensitiveCorner31Coarse2, HGCalEECellSensitiveCorner32Coarse2 + + + + diff --git a/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalsense.xml b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalsense.xml new file mode 100644 index 0000000000000..10c5f11b203ac --- /dev/null +++ b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalsense.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalwafer.xml b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalwafer.xml new file mode 100644 index 0000000000000..e5f01e3c36529 --- /dev/null +++ b/Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalwafer.xml @@ -0,0 +1,199 @@ + + + + + + + + + + + + + + + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 0, 0, 0, 0, 0, 0 + + 06, 07, 08, 09, 10, 11 + + HGCalEEMylar, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Mylar, hgcalMaterial:HGC_G10-FR4, + hgcalMaterial:HGC_EEConnector, hgcalMaterial:HGC_G10-FR4, + materials:Epoxy, materials:Epoxy, materials:Kapton, materials:Silicon, + hgcalMaterial:HGC_G10-FR4 + + 0.50*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 2.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 7, 5, 6, 5, 8 + + + + 0, 1, 13, 19 + + hgcalcell:HGCalEECellFull0Coarse2, hgcalcell:HGCalEECellCorner01Coarse2, + hgcalcell:HGCalEECellCorner02Coarse2,hgcalcell:HGCalEECellCorner03Coarse2, + hgcalcell:HGCalEECellCorner04Coarse2,hgcalcell:HGCalEECellCorner05Coarse2, + hgcalcell:HGCalEECellCorner06Coarse2,hgcalcell:HGCalEECellCorner07Coarse2, + hgcalcell:HGCalEECellCorner08Coarse2,hgcalcell:HGCalEECellCorner09Coarse2, + hgcalcell:HGCalEECellCorner10Coarse2,hgcalcell:HGCalEECellCorner11Coarse2, + hgcalcell:HGCalEECellCorner12Coarse2,hgcalcell:HGCalEECellTrunc01Coarse2, + hgcalcell:HGCalEECellTrunc02Coarse2, hgcalcell:HGCalEECellTrunc03Coarse2, + hgcalcell:HGCalEECellTrunc04Coarse2, hgcalcell:HGCalEECellTrunc05Coarse2, + hgcalcell:HGCalEECellTrunc06Coarse2, hgcalcell:HGCalEECellExten01Coarse2, + hgcalcell:HGCalEECellExten02Coarse2, hgcalcell:HGCalEECellExten03Coarse2, + hgcalcell:HGCalEECellExten04Coarse2, hgcalcell:HGCalEECellExten05Coarse2, + hgcalcell:HGCalEECellExten06Coarse2 + + + + + + + + + + + 0, 1, 2, 3, 4, 5 + + 1, 1, 1, 1, 1, 1 + + 00, 01, 02, 03, 04, 05 + + HGCalEEMylar, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Mylar, hgcalMaterial:HGC_G10-FR4, + hgcalMaterial:HGC_EEConnector, hgcalMaterial:HGC_G10-FR4, + materials:Epoxy, materials:Epoxy, materials:Kapton, materials:Silicon, + hgcalMaterial:HGC_G10-FR4 + + 0.50*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 2.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 8, 5, 6, 5, 7, 4, 3, 2, 1, 0 + + + + 0, 1, 13, 19 + + hgcalcell:HGCalEECellFull1Coarse2, hgcalcell:HGCalEECellCorner21Coarse2, + hgcalcell:HGCalEECellCorner22Coarse2,hgcalcell:HGCalEECellCorner23Coarse2, + hgcalcell:HGCalEECellCorner24Coarse2,hgcalcell:HGCalEECellCorner25Coarse2, + hgcalcell:HGCalEECellCorner26Coarse2,hgcalcell:HGCalEECellCorner27Coarse2, + hgcalcell:HGCalEECellCorner28Coarse2,hgcalcell:HGCalEECellCorner29Coarse2, + hgcalcell:HGCalEECellCorner30Coarse2,hgcalcell:HGCalEECellCorner31Coarse2, + hgcalcell:HGCalEECellCorner32Coarse2,hgcalcell:HGCalEECellTrunc21Coarse2, + hgcalcell:HGCalEECellTrunc22Coarse2, hgcalcell:HGCalEECellTrunc23Coarse2, + hgcalcell:HGCalEECellTrunc24Coarse2, hgcalcell:HGCalEECellTrunc25Coarse2, + hgcalcell:HGCalEECellTrunc26Coarse2, hgcalcell:HGCalEECellExten21Coarse2, + hgcalcell:HGCalEECellExten22Coarse2, hgcalcell:HGCalEECellExten23Coarse2, + hgcalcell:HGCalEECellExten24Coarse2, hgcalcell:HGCalEECellExten25Coarse2, + hgcalcell:HGCalEECellExten26Coarse2 + + + + + + + + + + + LD1, LD2, LD3, LD4, LD5, LD6 + + 11, 12, 13, 14, 15, 16 + + 0, 1, 2, 3, 4, 5 + + 00, 01, 02, 03, 04, 05 + + HGCalEEMylar, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Mylar, hgcalMaterial:HGC_G10-FR4, + hgcalMaterial:HGC_EEConnector, hgcalMaterial:HGC_G10-FR4, + materials:Epoxy, materials:Epoxy, materials:Kapton, materials:Silicon, + hgcalMaterial:HGC_G10-FR4 + + 0.50*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 2.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 8, 5, 6, 5, 7, 4, 3, 2, 1, 0 + + + + + + + + + + + + + + LD1, LD2, LD3, LD4, LD5, LD6 + + 11, 12, 13, 14, 15, 16 + + 6, 7, 8, 9, 10, 11 + + 06, 07, 08, 09, 10, 11 + + HGCalEEMylar, HGCalEEPCB, HGCalEEConnector, HGCalEEMotherBoard, + HGCalEEEpoxy, HGCalEEEpoxyT, HGCalEEKapton, HGCalEESensitive, + HGCalEEBasePlate + + materials:Mylar, hgcalMaterial:HGC_G10-FR4, + hgcalMaterial:HGC_EEConnector, hgcalMaterial:HGC_G10-FR4, + materials:Epoxy, materials:Epoxy, materials:Kapton, materials:Silicon, + hgcalMaterial:HGC_G10-FR4 + + 0.50*mm, 1.60*mm, 3.73*mm, 1.60*mm, 0.075*mm, 0.065*mm, 0.265*mm, + [WaferThickness], 2.0*mm + + 0.00*mm, 0.00*mm, 0.70*mm, 0.70*mm, [SensorSizeOffset], + [SensorSizeOffset], 0.30*mm, [SensorSizeOffset], 0.50*mm + + 0, 0, 0, 0, 0, 0, 0, 1, 0 + + 0, 1, 2, 3, 4, 7, 5, 6, 5, 8 + + + + + + diff --git a/Geometry/HGCalTBCommonData/python/testTB230JulXML_cfi.py b/Geometry/HGCalTBCommonData/python/testTB230AugXML_cfi.py similarity index 81% rename from Geometry/HGCalTBCommonData/python/testTB230JulXML_cfi.py rename to Geometry/HGCalTBCommonData/python/testTB230AugXML_cfi.py index 0f328a2d81973..67a416e424481 100644 --- a/Geometry/HGCalTBCommonData/python/testTB230JulXML_cfi.py +++ b/Geometry/HGCalTBCommonData/python/testTB230AugXML_cfi.py @@ -4,15 +4,15 @@ geomXMLFiles = cms.vstring('Geometry/CMSCommonData/data/materials.xml', 'Geometry/CMSCommonData/data/rotations.xml', 'Geometry/HGCalCommonData/data/hgcalMaterial/v2/hgcalMaterial.xml', - 'Geometry/HGCalTBCommonData/data/TB230/Jul230/cms.xml', - 'Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcal.xml', - 'Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalBeam.xml', - 'Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalcell.xml', - 'Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalwafer.xml', - 'Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalEE.xml', - 'Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalCons.xml', - 'Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalConsData.xml', - 'Geometry/HGCalTBCommonData/data/TB230/Jul230/hgcalsense.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Aug230/cms.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcal.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalBeam.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalcell.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalwafer.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalEE.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalCons.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalConsData.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Aug230/hgcalsense.xml', 'Geometry/HGCalTBCommonData/data/TB230/hgcProdCuts.xml', ), rootNodeName = cms.string('cms:OCMS') diff --git a/Geometry/HGCalTBCommonData/python/testTB230SepXML_cfi.py b/Geometry/HGCalTBCommonData/python/testTB230SepXML_cfi.py new file mode 100644 index 0000000000000..4273533fb9336 --- /dev/null +++ b/Geometry/HGCalTBCommonData/python/testTB230SepXML_cfi.py @@ -0,0 +1,21 @@ +import FWCore.ParameterSet.Config as cms + +XMLIdealGeometryESSource = cms.ESSource("XMLIdealGeometryESSource", + geomXMLFiles = cms.vstring('Geometry/CMSCommonData/data/materials.xml', + 'Geometry/CMSCommonData/data/rotations.xml', + 'Geometry/HGCalCommonData/data/hgcalMaterial/v2/hgcalMaterial.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/cms.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcal.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalBeam.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalcell.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalwafer.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalEE.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalCons.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalConsData.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalsense.xml', + 'Geometry/HGCalTBCommonData/data/TB230/hgcProdCuts.xml', + ), + rootNodeName = cms.string('cms:OCMS') +) + + diff --git a/SimG4CMS/HGCalTestBeam/python/HGCalTB230SepXML_cfi.py b/SimG4CMS/HGCalTestBeam/python/HGCalTB230SepXML_cfi.py new file mode 100644 index 0000000000000..4273533fb9336 --- /dev/null +++ b/SimG4CMS/HGCalTestBeam/python/HGCalTB230SepXML_cfi.py @@ -0,0 +1,21 @@ +import FWCore.ParameterSet.Config as cms + +XMLIdealGeometryESSource = cms.ESSource("XMLIdealGeometryESSource", + geomXMLFiles = cms.vstring('Geometry/CMSCommonData/data/materials.xml', + 'Geometry/CMSCommonData/data/rotations.xml', + 'Geometry/HGCalCommonData/data/hgcalMaterial/v2/hgcalMaterial.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/cms.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcal.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalBeam.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalcell.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalwafer.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalEE.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalCons.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalConsData.xml', + 'Geometry/HGCalTBCommonData/data/TB230/Sep230/hgcalsense.xml', + 'Geometry/HGCalTBCommonData/data/TB230/hgcProdCuts.xml', + ), + rootNodeName = cms.string('cms:OCMS') +) + + diff --git a/SimG4CMS/HGCalTestBeam/test/HGCalTB230Jul_cfg.py b/SimG4CMS/HGCalTestBeam/test/HGCalTB230Aug_cfg.py similarity index 98% rename from SimG4CMS/HGCalTestBeam/test/HGCalTB230Jul_cfg.py rename to SimG4CMS/HGCalTestBeam/test/HGCalTB230Aug_cfg.py index d28b02d58f24c..efa5f0f0262a3 100644 --- a/SimG4CMS/HGCalTestBeam/test/HGCalTB230Jul_cfg.py +++ b/SimG4CMS/HGCalTestBeam/test/HGCalTB230Aug_cfg.py @@ -8,7 +8,7 @@ process.load('Configuration.StandardSequences.Services_cff') process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi') process.load('Configuration.EventContent.EventContent_cff') -process.load('Geometry.HGCalTBCommonData.testTB230JulXML_cfi') +process.load('Geometry.HGCalTBCommonData.testTB230AugXML_cfi') process.load('Geometry.HGCalCommonData.hgcalEENumberingInitialization_cfi') process.load('Geometry.HGCalCommonData.hgcalEEParametersInitialization_cfi') process.load('Geometry.HcalTestBeamData.hcalTB06Parameters_cff') diff --git a/SimG4CMS/HGCalTestBeam/test/HGCalTB230Sep_cfg.py b/SimG4CMS/HGCalTestBeam/test/HGCalTB230Sep_cfg.py new file mode 100644 index 0000000000000..2d82d05bcca6e --- /dev/null +++ b/SimG4CMS/HGCalTestBeam/test/HGCalTB230Sep_cfg.py @@ -0,0 +1,134 @@ +import FWCore.ParameterSet.Config as cms +from Configuration.Eras.Modifier_hgcaltb_cff import hgcaltb + +process = cms.Process('SIM', hgcaltb) + +# import of standard configurations +process.load("FWCore.MessageService.MessageLogger_cfi") +process.load('Configuration.StandardSequences.Services_cff') +process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi') +process.load('Configuration.EventContent.EventContent_cff') +process.load('Geometry.HGCalTBCommonData.testTB230SepXML_cfi') +process.load('Geometry.HGCalCommonData.hgcalEENumberingInitialization_cfi') +process.load('Geometry.HGCalCommonData.hgcalEEParametersInitialization_cfi') +process.load('Geometry.HcalTestBeamData.hcalTB06Parameters_cff') +process.load('Configuration.StandardSequences.MagneticField_0T_cff') +process.load('Configuration.StandardSequences.Generator_cff') +process.load('IOMC.EventVertexGenerators.VtxSmearedFlat_cfi') +process.load('GeneratorInterface.Core.genFilterSummary_cff') +process.load('Configuration.StandardSequences.SimIdeal_cff') +process.load('Configuration.StandardSequences.EndOfProcess_cff') +process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') +process.load('SimG4CMS.HGCalTestBeam.HGCalTB23Analyzer_cfi') + +process.maxEvents = cms.untracked.PSet( + input = cms.untracked.int32(1000) +) + +if 'MessageLogger' in process.__dict__: + process.MessageLogger.G4cerr=dict() + process.MessageLogger.G4cout=dict() + process.MessageLogger.HGCSim=dict() + process.MessageLogger.CaloSim=dict() + process.MessageLogger.FlatThetaGun=dict() + process.MessageLogger.FlatEvtVtx=dict() + +# Input source +process.source = cms.Source("EmptySource") + +process.options = cms.untracked.PSet( +) + +# Production Info +process.configurationMetadata = cms.untracked.PSet( + annotation = cms.untracked.string('SingleMuonE200_cfi nevts:10'), + name = cms.untracked.string('Applications'), + version = cms.untracked.string('$Revision: 1.19 $') +) + +# Output definition + +process.RAWSIMoutput = cms.OutputModule("PoolOutputModule", + SelectEvents = cms.untracked.PSet( + SelectEvents = cms.vstring('generation_step') + ), + dataset = cms.untracked.PSet( + dataTier = cms.untracked.string('GEN-SIM'), + filterName = cms.untracked.string('') + ), + eventAutoFlushCompressedSize = cms.untracked.int32(5242880), + fileName = cms.untracked.string('file:gensim.root'), + outputCommands = process.RAWSIMEventContent.outputCommands, + splitLevel = cms.untracked.int32(0) +) + +# Additional output definition +process.TFileService = cms.Service("TFileService", + fileName = cms.string('TBGenSimSep.root') + ) + +# Other statements +process.genstepfilter.triggerConditions=cms.vstring("generation_step") +from Configuration.AlCa.GlobalTag import GlobalTag +process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:run2_mc', '') + +process.generator = cms.EDProducer("FlatRandomEThetaGunProducer", + AddAntiParticle = cms.bool(False), + PGunParameters = cms.PSet( + MinE = cms.double(199.99), + MaxE = cms.double(200.01), + MinTheta = cms.double(0.0), + MaxTheta = cms.double(0.0), + MinPhi = cms.double(-3.14159265359), + MaxPhi = cms.double(3.14159265359), + PartID = cms.vint32(11) + ), + Verbosity = cms.untracked.int32(1), + firstRun = cms.untracked.uint32(1), + psethack = cms.string('single electron E 10') +) +process.VtxSmeared.MinZ = -100.0 +process.VtxSmeared.MaxZ = -100.0 +#process.VtxSmeared.MinX = -1.0 +#process.VtxSmeared.MaxX = 1.0 +#process.VtxSmeared.MinY = -1.0 +#process.VtxSmeared.MaxY = 1.0 +process.g4SimHits.OnlySDs = ['HGCalSensitiveDetector', 'HcalTB06BeamDetector'] +process.g4SimHits.HGCSD.Detectors = 1 +process.g4SimHits.HGCSD.RejectMouseBite = False +process.g4SimHits.HGCSD.RotatedWafer = False + +process.g4SimHits.CaloTrkProcessing.TestBeam = True +process.g4SimHits.HCalSD.ForTBHCAL = True +process.g4SimHits.NonBeamEvent = True +process.g4SimHits.UseMagneticField = False + +process.g4SimHits.EventVerbose = 2 +process.g4SimHits.SteppingVerbosity = 2 +process.g4SimHits.StepVerboseThreshold= 0.1 +process.g4SimHits.VerboseEvents = [1] +process.g4SimHits.VertexNumber = [] +process.g4SimHits.VerboseTracks =[] + +# Path and EndPath definitions +process.generation_step = cms.Path(process.pgen) +process.simulation_step = cms.Path(process.psim) +process.genfiltersummary_step = cms.EndPath(process.genFilterSummary) +process.analysis_step = cms.Path(process.HGCalTB23Analyzer) +process.endjob_step = cms.EndPath(process.endOfProcess) +process.RAWSIMoutput_step = cms.EndPath(process.RAWSIMoutput) + +process.g4SimHits.Physics.type = 'SimG4Core/Physics/FTFP_BERT_EMN' + +# Schedule definition +process.schedule = cms.Schedule(process.generation_step, + process.simulation_step, +# process.analysis_step, + process.endjob_step, + process.RAWSIMoutput_step, + ) +# filter all path with the production filter sequence +for path in process.paths: + getattr(process,path)._seq = process.generator * getattr(process,path)._seq + + From df5ba007bbf8cb734f149c0d4b162c1f18c3dc9d Mon Sep 17 00:00:00 2001 From: silviodonato Date: Wed, 17 Jan 2024 11:26:15 +0100 Subject: [PATCH 268/281] add fillDescription in CommonTools/UtilAlgos/interface/Merger.h --- CommonTools/UtilAlgos/interface/Merger.h | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/CommonTools/UtilAlgos/interface/Merger.h b/CommonTools/UtilAlgos/interface/Merger.h index 63c72cc1fe6fd..ef6d41172e5d1 100644 --- a/CommonTools/UtilAlgos/interface/Merger.h +++ b/CommonTools/UtilAlgos/interface/Merger.h @@ -19,6 +19,8 @@ */ #include "FWCore/Framework/interface/global/EDProducer.h" #include "FWCore/Framework/interface/Event.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/Utilities/interface/transform.h" #include "FWCore/Utilities/interface/InputTag.h" @@ -34,19 +36,20 @@ class Merger : public edm::global::EDProducer<> { explicit Merger(const edm::ParameterSet&); /// destructor ~Merger() override; + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); private: /// process an event void produce(edm::StreamID, edm::Event&, const edm::EventSetup&) const override; /// vector of strings - typedef std::vector > vtoken; + typedef std::vector> vtoken; /// labels of the collections to be merged vtoken srcToken_; }; template Merger::Merger(const edm::ParameterSet& par) - : srcToken_(edm::vector_transform(par.template getParameter >("src"), + : srcToken_(edm::vector_transform(par.template getParameter>("src"), [this](edm::InputTag const& tag) { return consumes(tag); })) { produces(); } @@ -69,4 +72,15 @@ void Merger::produce(edm::StreamID, evt.put(std::move(coll)); } +template +void Merger::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.add>("src", + { + edm::InputTag("collection1"), + edm::InputTag("collection2"), + }); + descriptions.add("simpleMergedTracks", desc); +} + #endif From 366848638b155ed6a23c133df9c16917b3b39803 Mon Sep 17 00:00:00 2001 From: silviodonato Date: Wed, 17 Jan 2024 14:21:02 +0100 Subject: [PATCH 269/281] use addWithDefaultLabel instead of add in fillDescription of Merger.h --- CommonTools/UtilAlgos/interface/Merger.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CommonTools/UtilAlgos/interface/Merger.h b/CommonTools/UtilAlgos/interface/Merger.h index ef6d41172e5d1..054baa5943a7f 100644 --- a/CommonTools/UtilAlgos/interface/Merger.h +++ b/CommonTools/UtilAlgos/interface/Merger.h @@ -80,7 +80,7 @@ void Merger::fillDescriptions(edm::Configu edm::InputTag("collection1"), edm::InputTag("collection2"), }); - descriptions.add("simpleMergedTracks", desc); + descriptions.addWithDefaultLabel(desc); } #endif From 43c8e006f57cfb95b2204acb1fd068932f7f4c03 Mon Sep 17 00:00:00 2001 From: Fabio Cossutti Date: Wed, 17 Jan 2024 14:37:33 +0100 Subject: [PATCH 270/281] Update the BTL time correction MTDTimeCalib according to geometry scenario, fix for missing v3 --- RecoLocalFastTime/FTLCommonAlgos/src/MTDTimeCalib.cc | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/RecoLocalFastTime/FTLCommonAlgos/src/MTDTimeCalib.cc b/RecoLocalFastTime/FTLCommonAlgos/src/MTDTimeCalib.cc index 6a4932e4c3a1d..d798435d55230 100644 --- a/RecoLocalFastTime/FTLCommonAlgos/src/MTDTimeCalib.cc +++ b/RecoLocalFastTime/FTLCommonAlgos/src/MTDTimeCalib.cc @@ -39,15 +39,12 @@ float MTDTimeCalib::getTimeCalib(const MTDDetId& id) const { const RectangularMTDTopology& topo = static_cast(topoproxy.specificTopology()); BTLDetId::CrysLayout btlL = MTDTopologyMode::crysLayoutFromTopoMode(topo_->getMTDTopologyMode()); - if (btlL == BTLDetId::CrysLayout::tile) { - time_calib -= btlLightCollTime_; //simply remove the offset introduced at sim level - } else if (btlL == BTLDetId::CrysLayout::bar || btlL == BTLDetId::CrysLayout::barphiflat || - btlL == BTLDetId::CrysLayout::v2) { + if (static_cast(btlL) >= static_cast(BTLDetId::CrysLayout::barphiflat)) { //for bars in phi time_calib -= 0.5 * topo.pitch().first * btlLightCollSlope_; //time offset for bar time is L/2v - } else if (btlL == BTLDetId::CrysLayout::barzflat) { - //for bars in z - time_calib -= 0.5 * topo.pitch().second * btlLightCollSlope_; //time offset for bar time is L/2v + } else { + throw cms::Exception("MTDTimeCalib") + << "BTL topology mode " << static_cast(btlL) << " unsupported! Aborting"; } } else if (id.mtdSubDetector() == MTDDetId::ETL) { time_calib += etlTimeOffset_; From 35bf7286b81ed4b71dbe8dc6c05345e99d936293 Mon Sep 17 00:00:00 2001 From: mmusich Date: Tue, 2 Jan 2024 17:01:10 +0100 Subject: [PATCH 271/281] - Update SingleLongTrackProducer: changes to run on ALCARECO and setComments in fillDescriptions - ShortenedTrackResolution: improve histogram titles - implement unit tests --- .../plugins/ShortenedTrackResolution.cc | 11 +- DQM/TrackingMonitorSource/test/BuildFile.xml | 1 + .../test/testTrackResolutionHarvesting_cfg.py | 91 ++++++++++ .../test/testTrackResolution_cfg.py | 157 ++++++++++++++++++ .../test/testTrackingResolution.sh | 15 ++ .../plugins/SingleLongTrackProducer.cc | 52 +++--- 6 files changed, 301 insertions(+), 26 deletions(-) create mode 100644 DQM/TrackingMonitorSource/test/testTrackResolutionHarvesting_cfg.py create mode 100644 DQM/TrackingMonitorSource/test/testTrackResolution_cfg.py create mode 100755 DQM/TrackingMonitorSource/test/testTrackingResolution.sh diff --git a/DQM/TrackingMonitorSource/plugins/ShortenedTrackResolution.cc b/DQM/TrackingMonitorSource/plugins/ShortenedTrackResolution.cc index cfdc15789c633..ab6dbc45e8411 100644 --- a/DQM/TrackingMonitorSource/plugins/ShortenedTrackResolution.cc +++ b/DQM/TrackingMonitorSource/plugins/ShortenedTrackResolution.cc @@ -13,6 +13,9 @@ // ROOT includes #include "TLorentzVector.h" +// standard includes +#include + class ShortenedTrackResolution : public DQMEDAnalyzer { public: ShortenedTrackResolution(const edm::ParameterSet &); @@ -67,7 +70,13 @@ void ShortenedTrackResolution::bookHistograms(DQMStore::IBooker &iBook, for (int i = 0; i < int(hitsRemain_.size()); ++i) { histsPtAll_.push_back(iBook.book1D( - "trackPt" + hitsRemain_[i] + "lAllPt", "Track p_{T} - " + hitsRemain_[i] + " layers", 41, 0.0, 2.0)); + fmt::sprintf("trackPtRatio_%s", hitsRemain_[i]).c_str(), + fmt::sprintf("Short Track p_{T} / Full Track p_{T} - %s layers;p_{T}^{short}/p_{T}^{full};n. tracks", + hitsRemain_[i]) + .c_str(), + 101, + -0.05, + 2.05)); } } diff --git a/DQM/TrackingMonitorSource/test/BuildFile.xml b/DQM/TrackingMonitorSource/test/BuildFile.xml index 80f374037d92c..5d606b7bfcc91 100644 --- a/DQM/TrackingMonitorSource/test/BuildFile.xml +++ b/DQM/TrackingMonitorSource/test/BuildFile.xml @@ -1 +1,2 @@ + diff --git a/DQM/TrackingMonitorSource/test/testTrackResolutionHarvesting_cfg.py b/DQM/TrackingMonitorSource/test/testTrackResolutionHarvesting_cfg.py new file mode 100644 index 0000000000000..3a399aae2523f --- /dev/null +++ b/DQM/TrackingMonitorSource/test/testTrackResolutionHarvesting_cfg.py @@ -0,0 +1,91 @@ +import FWCore.ParameterSet.Config as cms +import FWCore.ParameterSet.VarParsing as VarParsing + +options = VarParsing.VarParsing() +options.register('maxEvents', + -1, + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.int, + "maximum events") +options.register('globalTag', + '125X_mcRun3_2022_design_v6', + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "conditions") +options.register('inputFile', + 'step1_DQM_LayerRot_9p43e-6_fromRECO.root', + VarParsing.VarParsing.multiplicity.singleton, + VarParsing.VarParsing.varType.string, + "input file") +options.parseArguments() + +from Configuration.Eras.Era_Run3_cff import Run3 +process = cms.Process('HARVESTING',Run3) + +# import of standard configurations +process.load('Configuration.StandardSequences.Services_cff') +process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi') +process.load('FWCore.MessageService.MessageLogger_cfi') +process.load('Configuration.EventContent.EventContent_cff') +process.load('SimGeneral.MixingModule.mixNoPU_cfi') +process.load('Configuration.StandardSequences.GeometryRecoDB_cff') +process.load('Configuration.StandardSequences.MagneticField_cff') +process.load('Configuration.StandardSequences.DQMSaverAtRunEnd_cff') +process.load('Configuration.StandardSequences.Harvesting_cff') +process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') + +process.maxEvents = cms.untracked.PSet( + input = cms.untracked.int32(options.maxEvents), + output = cms.optional.untracked.allowed(cms.int32,cms.PSet) +) + +# Input source +process.source = cms.Source("DQMRootSource", + fileNames = cms.untracked.vstring('file:'+options.inputFile) + ) + +process.options = cms.untracked.PSet( + IgnoreCompletely = cms.untracked.vstring(), + Rethrow = cms.untracked.vstring('ProductNotFound'), + accelerators = cms.untracked.vstring('*'), + allowUnscheduled = cms.obsolete.untracked.bool, + canDeleteEarly = cms.untracked.vstring(), + deleteNonConsumedUnscheduledModules = cms.untracked.bool(True), + dumpOptions = cms.untracked.bool(False), + emptyRunLumiMode = cms.obsolete.untracked.string, + eventSetup = cms.untracked.PSet( + forceNumberOfConcurrentIOVs = cms.untracked.PSet( + allowAnyLabel_=cms.required.untracked.uint32 + ), + numberOfConcurrentIOVs = cms.untracked.uint32(0) + ), + fileMode = cms.untracked.string('FULLMERGE'), + forceEventSetupCacheClearOnNewRun = cms.untracked.bool(False), + makeTriggerResults = cms.obsolete.untracked.bool, + numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(0), + numberOfConcurrentRuns = cms.untracked.uint32(1), + numberOfStreams = cms.untracked.uint32(0), + numberOfThreads = cms.untracked.uint32(1), + printDependencies = cms.untracked.bool(False), + sizeOfStackForThreadsInKB = cms.optional.untracked.uint32, + throwIfIllegalParameter = cms.untracked.bool(True), + wantSummary = cms.untracked.bool(False) +) + +# Other statements +from Configuration.AlCa.GlobalTag import GlobalTag +process.GlobalTag = GlobalTag(process.GlobalTag, options.globalTag, '') + +process.dqmsave_step = cms.Path(process.DQMSaver) + +# Schedule definition +process.schedule = cms.Schedule(process.alcaHarvesting,process.dqmsave_step) +from PhysicsTools.PatAlgos.tools.helpers import associatePatAlgosToolsTask +associatePatAlgosToolsTask(process) + +# Customisation from command line + +# Add early deletion of temporary data products to reduce peak memory need +from Configuration.StandardSequences.earlyDeleteSettings_cff import customiseEarlyDelete +process = customiseEarlyDelete(process) +# End adding early deletion diff --git a/DQM/TrackingMonitorSource/test/testTrackResolution_cfg.py b/DQM/TrackingMonitorSource/test/testTrackResolution_cfg.py new file mode 100644 index 0000000000000..49ef4149d18de --- /dev/null +++ b/DQM/TrackingMonitorSource/test/testTrackResolution_cfg.py @@ -0,0 +1,157 @@ +import FWCore.ParameterSet.Config as cms +import FWCore.Utilities.FileUtils as FileUtils +from FWCore.ParameterSet.VarParsing import VarParsing + +options = VarParsing('analysis') +options.register('inputTag', + 'LayerRot_9p43e-6', + VarParsing.multiplicity.singleton, + VarParsing.varType.string, + "input tag") +options.register('inputFile', + '/store/relval/CMSSW_14_0_0_pre1/RelValZMM_14/GEN-SIM-RECO/133X_mcRun3_2023_realistic_v3-v1/2590000/586487a4-71be-4b23-b5a4-5662fab803c9.root', + VarParsing.multiplicity.singleton, + VarParsing.varType.string, + "input file") +options.register('isAlCaReco', + False, + VarParsing.multiplicity.singleton, + VarParsing.varType.bool, + "is alcareco input file?") +options.register('isUnitTest', + False, + VarParsing.multiplicity.singleton, + VarParsing.varType.bool, + "is this configuration run in unit test?") +options.parseArguments() + +from Configuration.Eras.Era_Run3_cff import Run3 +process = cms.Process("TrackingResolution", Run3) + +##################################################################### +# import of standard configurations +##################################################################### +process.load('Configuration.StandardSequences.Services_cff') +process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi') +process.load('FWCore.MessageService.MessageLogger_cfi') +process.MessageLogger.cerr.FwkReport.reportEvery = (100 if options.isUnitTest else 100000) +process.load('Configuration.EventContent.EventContent_cff') +process.load('Configuration.StandardSequences.GeometryRecoDB_cff') +process.load('Configuration.StandardSequences.MagneticField_cff') +process.load('DQMOffline.Configuration.DQMOffline_cff') +process.load('Configuration.StandardSequences.EndOfProcess_cff') +process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') + +##################################################################### +## BeamSpot from database (i.e. GlobalTag), needed for Refitter +##################################################################### +process.load("RecoVertex.BeamSpotProducer.BeamSpot_cfi") + +##################################################################### +# Load and Configure Measurement Tracker Event +##################################################################### +process.load("RecoTracker.MeasurementDet.MeasurementTrackerEventProducer_cfi") +if(options.isAlCaReco): + # customize MeasurementTrackerEvent for ALCARECO + process.MeasurementTrackerEvent.pixelClusterProducer = "ALCARECOTkAlDiMuon" + process.MeasurementTrackerEvent.stripClusterProducer = "ALCARECOTkAlDiMuon" + process.MeasurementTrackerEvent.inactivePixelDetectorLabels = cms.VInputTag() + process.MeasurementTrackerEvent.inactiveStripDetectorLabels = cms.VInputTag() + +process.maxEvents = cms.untracked.PSet( + input = cms.untracked.int32(10 if options.isUnitTest else -1) +) + +##################################################################### +# Input source +##################################################################### +#filelist = FileUtils.loadListFromFile("listOfFiles_idealMC_GEN-SIM-RECO.txt") +#filelist = FileUtils.loadListFromFile("listOfFiles_idealMC_TkAlDiMuonAndVertex.txt") +#readFiles = cms.untracked.vstring( *filelist) + +readFiles = cms.untracked.vstring(options.inputFile) +process.source = cms.Source("PoolSource",fileNames = readFiles) + +process.options = cms.untracked.PSet() + +##################################################################### +# Output +##################################################################### +process.DQMoutput = cms.OutputModule("DQMRootOutputModule", + dataset = cms.untracked.PSet( + dataTier = cms.untracked.string('DQMIO'), + filterName = cms.untracked.string('') + ), + fileName = cms.untracked.string('file:step1_DQM_'+options.inputTag+'_'+('fromALCA' if options.isAlCaReco else 'fromRECO' )+'.root'), + outputCommands = process.DQMEventContent.outputCommands, + splitLevel = cms.untracked.int32(0) +) + +##################################################################### +# Other statements +##################################################################### +from Configuration.AlCa.GlobalTag import GlobalTag +#process.GlobalTag = GlobalTag(process.GlobalTag,"133X_mcRun3_2023_realistic_v3", '') +process.GlobalTag = GlobalTag(process.GlobalTag, "125X_mcRun3_2022_design_v6", '') +process.GlobalTag.toGet = cms.VPSet(cms.PSet(connect = cms.string("frontier://FrontierProd/CMS_CONDITIONS"), + record = cms.string('TrackerAlignmentRcd'), + tag = cms.string(options.inputTag))) + +##################################################################### +# The DQM analysis sequence +##################################################################### +process.load("DQM.TrackingMonitorSource.shortTrackResolution_cff") +process.load("RecoTracker.TrackProducer.TrackRefitters_cff") +import RecoTracker.TrackProducer.TrackRefitters_cff +process.LongTracksRefit = process.TrackRefitter.clone( + src = 'SingleLongTrackProducer', + TrajectoryInEvent = True, + TTRHBuilder = "WithAngleAndTemplate", + NavigationSchool = '' +) + +process.ShortTrackCandidates3.src = cms.InputTag("LongTracksRefit") +process.ShortTrackCandidates4.src = cms.InputTag("LongTracksRefit") +process.ShortTrackCandidates5.src = cms.InputTag("LongTracksRefit") +process.ShortTrackCandidates6.src = cms.InputTag("LongTracksRefit") +process.ShortTrackCandidates7.src = cms.InputTag("LongTracksRefit") +process.ShortTrackCandidates8.src = cms.InputTag("LongTracksRefit") + +process.SingleLongTrackProducer.matchMuons = cms.InputTag("muons") +if(options.isAlCaReco): + process.SingleLongTrackProducer.requiredDr = cms.double(-9999.) # do not require any matchings + process.SingleLongTrackProducer.allTracks = cms.InputTag("ALCARECOTkAlDiMuon") + +##################################################################### +# Path +##################################################################### +process.analysis_step = cms.Path(process.offlineBeamSpot * + process.MeasurementTrackerEvent * + process.SingleLongTrackProducer * + process.LongTracksRefit * + process.ShortTrackCandidates3 * + process.ShortTrackCandidates4 * + process.ShortTrackCandidates5 * + process.ShortTrackCandidates6 * + process.ShortTrackCandidates7 * + process.ShortTrackCandidates8 * + process.RefittedShortTracks3 * + process.RefittedShortTracks4 * + process.RefittedShortTracks5 * + process.RefittedShortTracks6 * + process.RefittedShortTracks7 * + process.RefittedShortTracks8 * + process.trackingResolution) + +##################################################################### +# Path and EndPath definitions +##################################################################### +process.endjob_step = cms.EndPath(process.endOfProcess) +process.DQMoutput_step = cms.EndPath(process.DQMoutput) + +process.schedule = cms.Schedule(process.analysis_step, process.endjob_step, process.DQMoutput_step) + +################################################################### +# Set the process to run multi-threaded +################################################################### +process.options.numberOfThreads = 8 diff --git a/DQM/TrackingMonitorSource/test/testTrackingResolution.sh b/DQM/TrackingMonitorSource/test/testTrackingResolution.sh new file mode 100755 index 0000000000000..25c44a8fdc3d7 --- /dev/null +++ b/DQM/TrackingMonitorSource/test/testTrackingResolution.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +function die { echo $1: status $2 ; exit $2; } + +echo -e "TESTING step1 with RECO inputs ...\n\n" +cmsRun ${SCRAM_TEST_PATH}/testTrackResolution_cfg.py isUnitTest=True || die "Failure running testTrackResolution_cfg.py isUnitTest=True" $? + +echo -e "TESTING step1 with ALCARECO inputs ...\n\n" +cmsRun ${SCRAM_TEST_PATH}/testTrackResolution_cfg.py isUnitTest=True isAlCaReco=True inputFile=/store/mc/Run3Winter23Reco/DYJetsToMuMu_M-50_TuneCP5_13p6TeV-madgraphMLM-pythia8/ALCARECO/TkAlDiMuonAndVertex-TRKDesignNoPU_AlcaRecoTRKMu_designGaussSigmaZ4cm_125X_mcRun3_2022_design_v6-v1/60000/93401af5-0da6-40ce-82e4-d5571c93dd97.root || die "Failure running testTrackResolution_cfg.py isUnitTest=True isAlCaReco=True" $? + +echo -e "TESTING harvesting with RECO inputs ...\n\n" +cmsRun ${SCRAM_TEST_PATH}/testTrackResolutionHarvesting_cfg.py || die "Failure running testTrackResolutionHarvesting_cfg.py" $? + +echo -e "TESTING harvesting with ALCARECO inputs ...\n\n" +cmsRun ${SCRAM_TEST_PATH}/testTrackResolutionHarvesting_cfg.py inputFile=step1_DQM_LayerRot_9p43e-6_fromALCA.root || die "Failure running testTrackResolutionHarvesting_cfg.py inputFile=step1_DQM_LayerRot_9p43e-6_fromALCA.root" $? diff --git a/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc b/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc index a9b8141f423ac..4301dac1e511e 100644 --- a/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc +++ b/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc @@ -67,7 +67,7 @@ void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup } const auto &muons = iEvent.getHandle(muonsToken); - if (!muons.isValid()) { + if (!muons.isValid() && matchInDr > 0.) { edm::LogError("SingleLongTrackProducer") << "Input muon collection is not valid.\n Returning empty output track collection."; iEvent.put(std::move(goodTracks), ""); @@ -108,21 +108,22 @@ void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup TLorentzVector pTrack(track.px(), track.py(), track.pz(), track.pt()); - // Long track needs to be close to a good muon - for (const auto &m : *muons) { - if (m.isTrackerMuon()) { - tMuon++; - reco::Track matchedTrack = *(m.innerTrack()); - TLorentzVector pMatched(matchedTrack.px(), matchedTrack.py(), matchedTrack.pz(), matchedTrack.pt()); - // match to general track in deltaR - double dr = pTrack.DeltaR(pMatched); - if (dr < dRmin) - dRmin = dr; + // Long track needs to be close to a good muon (only if requested) + if (matchInDr > 0.) { + for (const auto &m : *muons) { + if (m.isTrackerMuon()) { + tMuon++; + reco::Track matchedTrack = *(m.innerTrack()); + TLorentzVector pMatched(matchedTrack.px(), matchedTrack.py(), matchedTrack.pz(), matchedTrack.pt()); + // match to general track in deltaR + double dr = pTrack.DeltaR(pMatched); + if (dr < dRmin) + dRmin = dr; + } } + if (dRmin >= matchInDr) + continue; } - - if (dRmin >= matchInDr) - continue; // do vertex consistency: bool vertex_match = dxy < maxDxy && dz < maxDz; if (!(vertex_match)) @@ -226,17 +227,18 @@ void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup void SingleLongTrackProducer::fillDescriptions(edm::ConfigurationDescriptions &descriptions) { edm::ParameterSetDescription desc; - desc.add("allTracks", edm::InputTag("generalTracks")); - desc.add("matchMuons", edm::InputTag("earlyMuons")); - desc.add("PrimaryVertex", edm::InputTag("offlinePrimaryVertices")); - desc.add("minNumberOfLayers", 10); - desc.add("requiredDr", 0.01); - desc.add("onlyValidHits", true); - desc.add("debug", false); - desc.add("minPt", 15.0); - desc.add("maxEta", 2.2); - desc.add("maxDxy", 0.02); - desc.add("maxDz", 0.5); + desc.add("allTracks", edm::InputTag("generalTracks"))->setComment("input track collection"); + desc.add("matchMuons", edm::InputTag("earlyMuons"))->setComment("input muon collection for matching"); + desc.add("PrimaryVertex", edm::InputTag("offlinePrimaryVertices")) + ->setComment("input primary vertex collection"); + desc.add("minNumberOfLayers", 10)->setComment("minimum number of layers"); + desc.add("requiredDr", 0.01)->setComment("matching muons deltaR. If negative do not match"); + desc.add("onlyValidHits", true)->setComment("use only valid hits"); + desc.add("debug", false)->setComment("verbose?"); + desc.add("minPt", 15.0)->setComment("minimum pT"); + desc.add("maxEta", 2.2)->setComment("maximum pseudorapidity (absolute value)"); + desc.add("maxDxy", 0.02)->setComment("maximum transverse impact parameter"); + desc.add("maxDz", 0.5)->setComment("maximum longitudinal impact parameter"); descriptions.addWithDefaultLabel(desc); } From 3be3e25aa7e232fe84c1e3b86428c402a6299b3e Mon Sep 17 00:00:00 2001 From: mmusich Date: Thu, 4 Jan 2024 12:26:46 +0100 Subject: [PATCH 272/281] add ShortenedTrackValidation and related configuration --- .../plugins/ShortenedTrackValidation.cc | 600 ++++++++++++++++++ .../test/testShortenedTrackValidation_cfg.py | 153 +++++ 2 files changed, 753 insertions(+) create mode 100644 Alignment/OfflineValidation/plugins/ShortenedTrackValidation.cc create mode 100644 Alignment/OfflineValidation/test/testShortenedTrackValidation_cfg.py diff --git a/Alignment/OfflineValidation/plugins/ShortenedTrackValidation.cc b/Alignment/OfflineValidation/plugins/ShortenedTrackValidation.cc new file mode 100644 index 0000000000000..d606dd6f2704d --- /dev/null +++ b/Alignment/OfflineValidation/plugins/ShortenedTrackValidation.cc @@ -0,0 +1,600 @@ +// -*- C++ -*- +// +// Package: Alignment/OfflineValidation +// Class: ShortenedTrackValidation +// +/* + *\class ShortenedTrackValidation ShortenedTrackValidation.cc Alignment/OfflineValidation/plugins/ShortenedTrackValidation.cc + + Description: This module is meant to monitor the track pT resolution using the amputated tracks method, by comparing the performance using different alignments. + + Implementation: The implemenation takes advantage of the existing implementation in the DQM/TrackingMonitorSource. + +*/ +// +// Original Author: Marco Musich +// Created: Fri, 05 Jan 2023 11:41:00 GMT +// +// + +// ROOT includes files +#include "TMath.h" +#include "TFile.h" +#include "TH1D.h" +#include "TH1I.h" +#include "TH2D.h" +#include "TProfile.h" +#include "TLorentzVector.h" + +// standard includes +#include + +// user includes +#include "CommonTools/UtilAlgos/interface/TFileService.h" +#include "DataFormats/TrackReco/interface/Track.h" +#include "DataFormats/SiStripDetId/interface/SiStripDetId.h" +#include "DataFormats/TrackerRecHit2D/interface/ProjectedSiStripRecHit2D.h" +#include "DataFormats/TrackerRecHit2D/interface/SiStripMatchedRecHit2D.h" +#include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit1D.h" +#include "DataFormats/TrackerRecHit2D/interface/SiTrackerMultiRecHit.h" +#include "DataFormats/VertexReco/interface/Vertex.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/one/EDAnalyzer.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" +#include "FWCore/ServiceRegistry/interface/Service.h" +#include "FWCore/Utilities/interface/transform.h" // for edm::vector_transform + +#define CREATE_HIST_1D(varname, nbins, first, last, fs) fs.make(#varname, #varname, nbins, first, last) + +#define CREATE_HIST_2D(varname, nbins, first, last, fs) \ + fs.make(#varname, #varname, nbins, first, last, nbins, first, last) + +const int kBPIX = PixelSubdetector::PixelBarrel; +const int kFPIX = PixelSubdetector::PixelEndcap; + +class ShortenedTrackValidation : public edm::one::EDAnalyzer { + class trackingMon { + public: + trackingMon() {} + ~trackingMon() = default; + + void book(const TFileDirectory &fs) { + h_chi2ndof = CREATE_HIST_1D(h_chi2ndof, 100, 0.0, 10.0, fs); + h_trkQuality = CREATE_HIST_1D(h_trkQuality, 6, -1, 5, fs); + h_trkAlgo = CREATE_HIST_1D(h_trkAlgo, reco::TrackBase::algoSize, 0.0, double(reco::TrackBase::algoSize), fs); + h_trkOriAlgo = + CREATE_HIST_1D(h_trkOriAlgo, reco::TrackBase::algoSize, 0.0, double(reco::TrackBase::algoSize), fs); + h_P = CREATE_HIST_1D(h_P, 100, 0.0, 200.0, fs); + h_Pt = CREATE_HIST_1D(h_Pt, 100, 0.0, 100.0, fs); + h_nHit = CREATE_HIST_1D(h_nHit, 50, -0.5, 49.5, fs); + h_nHit2D = CREATE_HIST_1D(h_nHit2D, 20, -0.5, 19.5, fs); + h_Charge = CREATE_HIST_1D(h_Charge, 3, -1.5, 1.5, fs); + h_QoverP = CREATE_HIST_1D(h_QoverP, 100, -1.0, 1.0, fs); + h_QoverPZoom = CREATE_HIST_1D(h_QoverPZoom, 100, -0.1, 0.1, fs); + h_Eta = CREATE_HIST_1D(h_Eta, 100, -3., 3., fs); + h_Phi = CREATE_HIST_1D(h_Phi, 100, -M_PI, M_PI, fs); + h_vx = CREATE_HIST_1D(h_vx, 100, -0.5, 0.5, fs); + h_vy = CREATE_HIST_1D(h_vy, 100, -0.5, 0.5, fs); + h_vz = CREATE_HIST_1D(h_vz, 100, -20.0, 20.0, fs); + h_d0 = CREATE_HIST_1D(h_d0, 100, -0.5, 0.5, fs); + h_dz = CREATE_HIST_1D(h_dz, 100, -20.0, 20.0, fs); + h_dxy = CREATE_HIST_1D(h_dxy, 100, -0.5, 0.5, fs); + h_nhpxb = CREATE_HIST_1D(h_nhpxb, 10, -0.5, 9.5, fs); + h_nhpxe = CREATE_HIST_1D(h_nhpxe, 10, -0.5, 9.5, fs); + h_nhTIB = CREATE_HIST_1D(h_nhTIB, 20, -0.5, 19.5, fs); + h_nhTID = CREATE_HIST_1D(h_nhTID, 20, -0.5, 19.5, fs); + h_nhTOB = CREATE_HIST_1D(h_nhTOB, 20, -0.5, 19.5, fs); + h_nhTEC = CREATE_HIST_1D(h_nhTEC, 20, -0.5, 19.5, fs); + h_dxyBS = CREATE_HIST_1D(h_dxyBS, 100, -0.05, 0.05, fs); + h_d0BS = CREATE_HIST_1D(h_d0BS, 100, -0.05, 0.05, fs); + h_dzBS = CREATE_HIST_1D(h_dzBS, 100, -20.0, 20., fs); + h_dxyPV = CREATE_HIST_1D(h_dxyPV, 100, -0.05, 0.05, fs); + h_d0PV = CREATE_HIST_1D(h_d0PV, 100, -0.05, 0.05, fs); + h_dzPV = CREATE_HIST_1D(h_dzPV, 100, -0.05, 0.05, fs); + + edm::LogInfo("trackingMonitoring") << "done booking"; + } + + //____________________________________________________________ + int trackQual(const reco::Track &track) { + int myquality = -99; + if (track.quality(reco::TrackBase::undefQuality)) + myquality = -1; + if (track.quality(reco::TrackBase::loose)) + myquality = 0; + if (track.quality(reco::TrackBase::tight)) + myquality = 1; + if (track.quality(reco::TrackBase::highPurity)) + myquality = 2; + if (track.quality(reco::TrackBase::goodIterative)) + myquality = 3; + + return myquality; + } + + //____________________________________________________________ + static bool isHit2D(const TrackingRecHit &hit) { + if (hit.dimension() < 2) { + return false; // some (muon...) stuff really has RecHit1D + } else { + const DetId detId(hit.geographicalId()); + if (detId.det() == DetId::Tracker) { + if (detId.subdetId() == kBPIX || detId.subdetId() == kFPIX) { + return true; // pixel is always 2D + } else { // should be SiStrip now + if (dynamic_cast(&hit)) + return false; // normal hit + else if (dynamic_cast(&hit)) + return true; // matched is 2D + else if (dynamic_cast(&hit)) + return false; // crazy hit... + else { + edm::LogError("UnknownType") << "@SUB=CalibrationTrackSelector::isHit2D" + << "Tracker hit not in pixel and neither SiStripRecHit2D nor " + << "SiStripMatchedRecHit2D nor ProjectedSiStripRecHit2D."; + return false; + } + } + } else { // not tracker?? + edm::LogWarning("DetectorMismatch") << "@SUB=CalibrationTrackSelector::isHit2D" + << "Hit not in tracker with 'official' dimension >=2."; + return true; // dimension() >= 2 so accept that... + } + } + // never reached... + } + + //____________________________________________________________ + unsigned int count2DHits(const reco::Track &track) { + unsigned int nHit2D = 0; + for (auto iHit = track.recHitsBegin(); iHit != track.recHitsEnd(); ++iHit) { + if (isHit2D(**iHit)) { + ++nHit2D; + } + } + return nHit2D; + } + + //____________________________________________________________ + void fill(const reco::Track &track, const reco::BeamSpot &beamSpot, const reco::Vertex &pvtx) { + h_chi2ndof->Fill(track.normalizedChi2()); + h_trkQuality->Fill(trackQual(track)); + h_trkAlgo->Fill(static_cast(track.algo())); + h_trkOriAlgo->Fill(static_cast(track.originalAlgo())); + h_P->Fill(track.p()); + h_Pt->Fill(track.pt()); + h_nHit->Fill(track.numberOfValidHits()); + h_nHit2D->Fill(count2DHits(track)); + h_Charge->Fill(track.charge()); + h_QoverP->Fill(track.qoverp()); + h_QoverPZoom->Fill(track.qoverp()); + h_Eta->Fill(track.eta()); + h_Phi->Fill(track.phi()); + h_vx->Fill(track.vx()); + h_vy->Fill(track.vy()); + h_vz->Fill(track.vz()); + h_d0->Fill(track.d0()); + h_dz->Fill(track.dz()); + h_dxy->Fill(track.dxy()); + h_nhpxb->Fill(track.hitPattern().numberOfValidPixelBarrelHits()); + h_nhpxe->Fill(track.hitPattern().numberOfValidPixelEndcapHits()); + h_nhTIB->Fill(track.hitPattern().numberOfValidStripTIBHits()); + h_nhTID->Fill(track.hitPattern().numberOfValidStripTIDHits()); + h_nhTOB->Fill(track.hitPattern().numberOfValidStripTOBHits()); + h_nhTEC->Fill(track.hitPattern().numberOfValidStripTECHits()); + + math::XYZPoint BS(beamSpot.x0(), beamSpot.y0(), beamSpot.z0()); + h_dxyBS->Fill(track.dxy(BS)); + h_d0BS->Fill(-track.dxy(BS)); + h_dzBS->Fill(track.dz(BS)); + + math::XYZPoint PV(pvtx.x(), pvtx.y(), pvtx.z()); + h_dxyPV->Fill(track.dxy(PV)); + h_d0PV->Fill(-track.dxy(PV)); + h_dzPV->Fill(track.dz(PV)); + } + + private: + TH1D *h_chi2ndof; + TH1D *h_trkQuality; + TH1D *h_trkAlgo; + TH1D *h_trkOriAlgo; + TH1D *h_P; + TH1D *h_Pt; + TH1D *h_nHit; + TH1D *h_nHit2D; + TH1D *h_Charge; + TH1D *h_QoverP; + TH1D *h_QoverPZoom; + TH1D *h_Eta; + TH1D *h_Phi; + TH1D *h_vx; + TH1D *h_vy; + TH1D *h_vz; + TH1D *h_d0; + TH1D *h_dz; + TH1D *h_dxy; + TH1D *h_nhpxb; + TH1D *h_nhpxe; + TH1D *h_nhTIB; + TH1D *h_nhTID; + TH1D *h_nhTOB; + TH1D *h_nhTEC; + TH1D *h_dxyBS; + TH1D *h_d0BS; + TH1D *h_dzBS; + TH1D *h_dxyPV; + TH1D *h_d0PV; + TH1D *h_dzPV; + }; + + class trackComparator { + public: + trackComparator() {} + ~trackComparator() = default; + + //__________________________________________________ + void book(const TFileDirectory &fs) { + h2_chi2ndof = CREATE_HIST_2D(h2_chi2ndof, 100, 0.0, 10.0, fs); + h2_trkAlgo = CREATE_HIST_2D(h2_trkAlgo, reco::TrackBase::algoSize, 0.0, double(reco::TrackBase::algoSize), fs); + h2_trkOriAlgo = + CREATE_HIST_2D(h2_trkOriAlgo, reco::TrackBase::algoSize, 0.0, double(reco::TrackBase::algoSize), fs); + h2_P = CREATE_HIST_2D(h2_P, 100, 0.0, 200.0, fs); + h2_Pt = CREATE_HIST_2D(h2_Pt, 100, 0.0, 100.0, fs); + h2_nHit = CREATE_HIST_2D(h2_nHit, 50, -0.5, 49.5, fs); + h2_Charge = CREATE_HIST_2D(h2_Charge, 3, -1.5, 1.5, fs); + h2_QoverPZoom = CREATE_HIST_2D(h2_QoverPZoom, 100, -0.1, 0.1, fs); + h2_Eta = CREATE_HIST_2D(h2_Eta, 100, -3., 3., fs); + h2_Phi = CREATE_HIST_2D(h2_Phi, 100, -M_PI, M_PI, fs); + h2_vx = CREATE_HIST_2D(h2_vx, 100, -0.5, 0.5, fs); + h2_vy = CREATE_HIST_2D(h2_vy, 100, -0.5, 0.5, fs); + h2_vz = CREATE_HIST_2D(h2_vz, 100, -20.0, 20.0, fs); + h2_d0 = CREATE_HIST_2D(h2_d0, 100, -0.5, 0.5, fs); + h2_dz = CREATE_HIST_2D(h2_dz, 100, -20.0, 20.0, fs); + h2_nhpxb = CREATE_HIST_2D(h2_nhpxb, 10, -0.5, 9.5, fs); + h2_nhpxe = CREATE_HIST_2D(h2_nhpxe, 10, -0.5, 9.5, fs); + h2_nhTIB = CREATE_HIST_2D(h2_nhTIB, 20, -0.5, 19.5, fs); + h2_nhTID = CREATE_HIST_2D(h2_nhTID, 20, -0.5, 19.5, fs); + h2_nhTOB = CREATE_HIST_2D(h2_nhTOB, 20, -0.5, 19.5, fs); + h2_nhTEC = CREATE_HIST_2D(h2_nhTEC, 20, -0.5, 19.5, fs); + } + + //__________________________________________________ + void fill(const reco::Track &tk1, const reco::Track &tk2) { + h2_chi2ndof->Fill(tk1.normalizedChi2(), tk2.normalizedChi2()); + h2_trkAlgo->Fill(static_cast(tk1.algo()), static_cast(tk2.algo())); + h2_trkOriAlgo->Fill(static_cast(tk1.originalAlgo()), static_cast(tk2.originalAlgo())); + h2_P->Fill(tk1.p(), tk2.p()); + h2_Pt->Fill(tk1.pt(), tk2.p()); + h2_nHit->Fill(tk1.numberOfValidHits(), tk2.numberOfValidHits()); + h2_Charge->Fill(tk1.charge(), tk2.charge()); + h2_QoverPZoom->Fill(tk1.qoverp(), tk2.qoverp()); + h2_Eta->Fill(tk1.eta(), tk2.eta()); + h2_Phi->Fill(tk1.phi(), tk2.phi()); + h2_vx->Fill(tk1.vx(), tk2.vx()); + h2_vy->Fill(tk1.vy(), tk2.vy()); + h2_vz->Fill(tk1.vz(), tk2.vz()); + h2_d0->Fill(tk1.d0(), tk2.d0()); + h2_dz->Fill(tk2.dz(), tk2.dz()); + h2_nhpxb->Fill(tk1.hitPattern().numberOfValidPixelBarrelHits(), tk2.hitPattern().numberOfValidPixelBarrelHits()); + h2_nhpxe->Fill(tk1.hitPattern().numberOfValidPixelEndcapHits(), tk2.hitPattern().numberOfValidPixelEndcapHits()); + h2_nhTIB->Fill(tk1.hitPattern().numberOfValidStripTIBHits(), tk2.hitPattern().numberOfValidStripTIBHits()); + h2_nhTID->Fill(tk1.hitPattern().numberOfValidStripTIDHits(), tk2.hitPattern().numberOfValidStripTIDHits()); + h2_nhTOB->Fill(tk1.hitPattern().numberOfValidStripTOBHits(), tk2.hitPattern().numberOfValidStripTOBHits()); + h2_nhTEC->Fill(tk1.hitPattern().numberOfValidStripTECHits(), tk2.hitPattern().numberOfValidStripTECHits()); + } + + private: + TH2D *h2_chi2ndof; + TH2D *h2_trkAlgo; + TH2D *h2_trkOriAlgo; + TH2D *h2_P; + TH2D *h2_Pt; + TH2D *h2_nHit; + TH2D *h2_Charge; + TH2D *h2_QoverPZoom; + TH2D *h2_Eta; + TH2D *h2_Phi; + TH2D *h2_vx; + TH2D *h2_vy; + TH2D *h2_vz; + TH2D *h2_d0; + TH2D *h2_dz; + TH2D *h2_nhpxb; + TH2D *h2_nhpxe; + TH2D *h2_nhTIB; + TH2D *h2_nhTID; + TH2D *h2_nhTOB; + TH2D *h2_nhTEC; + }; + +public: + explicit ShortenedTrackValidation(const edm::ParameterSet &); + ~ShortenedTrackValidation() override = default; + static void fillDescriptions(edm::ConfigurationDescriptions &descriptions); + +private: + template + T *book(const TFileDirectory &dir, const Args &...args) const; + void beginJob() override; + void analyze(edm::Event const &iEvent, edm::EventSetup const &iSetup) override; + + // ----------member data --------------------------- + edm::Service fs_; + const std::string folderName_; + const std::vector hitsRemain_; + const double minTracksEta_; + const double maxTracksEta_; + const double minTracksPt_; + const double maxTracksPt_; + + const double maxDr_; + const edm::InputTag tracksTag_; + const std::vector tracksRerecoTag_; + const edm::InputTag BeamSpotTag_; + const edm::InputTag VerticesTag_; + const edm::EDGetTokenT> tracksToken_; + const std::vector>> tracksRerecoToken_; + const edm::EDGetTokenT beamspotToken_; + const edm::EDGetTokenT vertexToken_; + + // monitoring histograms + std::vector histsPtRatioAll_; + std::vector histsPtDiffAll_; + std::vector histsEtaDiffAll_; + std::vector histsPhiDiffAll_; + std::vector histsPtRatioVsDeltaRAll_; + std::vector histsDeltaPtOverPtAll_; + std::vector histsPtAll_; + std::vector histsNhitsAll_; + std::vector histsDeltaRAll_; + + trackingMon originalTrack; + std::vector comparators_; + static constexpr double muMass = 0.105658; +}; + +// ----------------------------- +// constructors and destructor +// ----------------------------- +ShortenedTrackValidation::ShortenedTrackValidation(const edm::ParameterSet &ps) + : folderName_(ps.getUntrackedParameter("folderName", "TrackRefitting")), + hitsRemain_(ps.getUntrackedParameter>("hitsRemainInput")), + minTracksEta_(ps.getUntrackedParameter("minTracksEtaInput", 0.0)), + maxTracksEta_(ps.getUntrackedParameter("maxTracksEtaInput", 2.2)), + minTracksPt_(ps.getUntrackedParameter("minTracksPtInput", 15.0)), + maxTracksPt_(ps.getUntrackedParameter("maxTracksPtInput", 99999.9)), + maxDr_(ps.getUntrackedParameter("maxDrInput", 0.01)), + tracksTag_(ps.getUntrackedParameter("tracksInputTag", edm::InputTag("generalTracks", "", "DQM"))), + tracksRerecoTag_(ps.getUntrackedParameter>("tracksRerecoInputTag")), + BeamSpotTag_(ps.getUntrackedParameter("BeamSpotTag", edm::InputTag("offlineBeamSpot"))), + VerticesTag_(ps.getUntrackedParameter("VerticesTag", edm::InputTag("offlinePrimaryVertices"))), + tracksToken_(consumes>(tracksTag_)), + tracksRerecoToken_(edm::vector_transform( + tracksRerecoTag_, [this](edm::InputTag const &tag) { return consumes>(tag); })), + beamspotToken_(consumes(BeamSpotTag_)), + vertexToken_(consumes(VerticesTag_)) { + usesResource(TFileService::kSharedResource); + histsPtRatioAll_.clear(); + histsPtDiffAll_.clear(); + histsEtaDiffAll_.clear(); + histsPhiDiffAll_.clear(); + histsPtRatioVsDeltaRAll_.clear(); + histsDeltaPtOverPtAll_.clear(); + histsPtAll_.clear(); + histsNhitsAll_.clear(); + histsDeltaRAll_.clear(); + comparators_.clear(); + + comparators_.reserve(hitsRemain_.size()); + for (unsigned int i = 0; i < hitsRemain_.size(); ++i) { + comparators_.push_back(new trackComparator()); + } +} + +//__________________________________________________________________________________ +template +T *ShortenedTrackValidation::book(const TFileDirectory &dir, const Args &...args) const { + T *t = dir.make(args...); + return t; +} + +//__________________________________________________________________________________ +void ShortenedTrackValidation::beginJob() { + std::string currentFolder = folderName_ + "/Resolutions"; + TFileDirectory ShortTrackResolution = fs_->mkdir(currentFolder); + currentFolder = folderName_ + "/Tracks"; + TFileDirectory TrackQuals = fs_->mkdir(currentFolder); + + for (unsigned int i = 0; i < hitsRemain_.size(); ++i) { + histsPtRatioAll_.push_back( + book(ShortTrackResolution, + fmt::sprintf("trackPtRatio_%s", hitsRemain_[i]).c_str(), + fmt::sprintf("Short Track p_{T} / Full Track p_{T} - %s layers;p_{T}^{short}/p_{T}^{full};n. tracks", + hitsRemain_[i]) + .c_str(), + 101, + -0.05, + 2.05)); + + histsPtDiffAll_.push_back(book( + ShortTrackResolution, + fmt::sprintf("trackPtDiff_%s", hitsRemain_[i]).c_str(), + fmt::sprintf("Short Track p_{T} - Full Track p_{T} - %s layers;p_{T}^{short} - p_{T}^{full} [GeV];n. tracks", + hitsRemain_[i]) + .c_str(), + 100, + -10., + 10.)); + + histsEtaDiffAll_.push_back( + book(ShortTrackResolution, + fmt::sprintf("trackEtaDiff_%s", hitsRemain_[i]).c_str(), + fmt::sprintf("Short Track #eta - Full Track #eta - %s layers;#eta^{short} - #eta^{full};n. tracks", + hitsRemain_[i]) + .c_str(), + 100, + -0.01, + 0.01)); + + histsPhiDiffAll_.push_back( + book(ShortTrackResolution, + fmt::sprintf("trackPhiDiff_%s", hitsRemain_[i]).c_str(), + fmt::sprintf("Short Track #phi - Full Track #phi - %s layers;#phi^{short} - #phi^{full};n. tracks", + hitsRemain_[i]) + .c_str(), + 100, + -0.01, + 0.01)); + + histsPtRatioVsDeltaRAll_.push_back( + book(ShortTrackResolution, + fmt::sprintf("trackPtRatioVsDeltaR_%s", hitsRemain_[i]).c_str(), + fmt::sprintf("Short Track p_{T} / Full Track p_{T} - %s layers vs " + "#DeltaR;#DeltaR(short,full);p_{T}^{short}/p_{T}^{full} [GeV];n. tracks", + hitsRemain_[i]) + .c_str(), + 100, + 0., + 0.01, + 101, + -0.05, + 2.05)); + + histsDeltaPtOverPtAll_.push_back( + book(ShortTrackResolution, + fmt::sprintf("trackDeltaPtOverPt_%s", hitsRemain_[i]).c_str(), + fmt::sprintf("Short Track p_{T} - Full Track p_{T} / Full Track p_{T} - %s layers;p_{T}^{short} - " + "p_{T}^{full} / p^{full}_{T};n. tracks", + hitsRemain_[i]) + .c_str(), + 101, + -10., + 10.)); + + histsPtAll_.push_back( + book(TrackQuals, + fmt::sprintf("trackPt_%s", hitsRemain_[i]).c_str(), + fmt::sprintf("Short Track p_{T} - %s layers;p_{T}^{short} [GeV];n. tracks", hitsRemain_[i]).c_str(), + 101, + -0.05, + 200.5)); + + histsNhitsAll_.push_back( + book(TrackQuals, + fmt::sprintf("trackNhits_%s", hitsRemain_[i]).c_str(), + fmt::sprintf("Short Track n. hits - %s layers; n. hits per track;n. tracks", hitsRemain_[i]).c_str(), + 20, + -0.5, + 19.5)); + + histsDeltaRAll_.push_back(book( + TrackQuals, + fmt::sprintf("trackDeltaR_%s", hitsRemain_[i]).c_str(), + fmt::sprintf("Short Track / Long Track #DeltaR %s layers;#DeltaR(short,long);n. tracks", hitsRemain_[i]).c_str(), + 100, + 0., + 0.01)); + + currentFolder = fmt::sprintf("%s/Compare_%sHit", folderName_, hitsRemain_[i]); + comparators_[i]->book(fs_->mkdir(currentFolder)); + } + + currentFolder = folderName_ + "/OriginalTrack"; + TFileDirectory original = fs_->mkdir(currentFolder); + originalTrack.book(original); +} + +//__________________________________________________________________________________ +void ShortenedTrackValidation::analyze(edm::Event const &iEvent, edm::EventSetup const &iSetup) { + const auto &tracks = iEvent.getHandle(tracksToken_); + + if (!tracks.isValid()) { + edm::LogError("ShortenedTrackValidation") << "Missing input track collection " << tracksTag_.encode() << std::endl; + return; + } + + reco::BeamSpot beamSpot; + edm::Handle beamSpotHandle = iEvent.getHandle(beamspotToken_); + if (beamSpotHandle.isValid()) { + beamSpot = *beamSpotHandle; + } else { + beamSpot = reco::BeamSpot(); + } + + reco::Vertex pvtx; + edm::Handle vertexHandle = iEvent.getHandle(vertexToken_); + if (vertexHandle.isValid()) { + pvtx = (*vertexHandle).at(0); + } else { + pvtx = reco::Vertex(); + } + + // the original long track + for (const auto &track : *tracks) { + const reco::HitPattern &hp = track.hitPattern(); + if (int(int(hp.numberOfValidHits()) - int(hp.numberOfAllHits(reco::HitPattern::TRACK_HITS))) != 0) { + break; + } + + // fill the original track properties monitoring + originalTrack.fill(track, beamSpot, pvtx); + + TLorentzVector tvec; + tvec.SetPtEtaPhiM(track.pt(), track.eta(), track.phi(), muMass); + + int i = 0; // token index + // loop on the re-recoed shortened track collections + for (const auto &token : tracksRerecoToken_) { + const auto &tracks_rereco = iEvent.getHandle(token); + + for (const auto &track_rereco : *tracks_rereco) { + TLorentzVector trerecovec; + trerecovec.SetPtEtaPhiM(track_rereco.pt(), track_rereco.eta(), track_rereco.phi(), 0.0); + double deltaR = tvec.DeltaR(trerecovec); + + if (deltaR < maxDr_) { + if (track_rereco.pt() >= minTracksPt_ && track_rereco.pt() <= maxTracksPt_ && + std::abs(track_rereco.eta()) >= minTracksEta_ && std::abs(track_rereco.eta()) <= maxTracksEta_) { + // fill the 2D comparisons per track + comparators_[i]->fill(track, track_rereco); + + histsPtRatioAll_[i]->Fill(1.0 * track_rereco.pt() / track.pt()); + histsPtDiffAll_[i]->Fill(track_rereco.pt() - track.pt()); + histsDeltaPtOverPtAll_[i]->Fill((track_rereco.pt() - track.pt()) / track.pt()); + histsEtaDiffAll_[i]->Fill(track_rereco.eta() - track.eta()); + histsPhiDiffAll_[i]->Fill(track_rereco.phi() - track.phi()); + histsPtRatioVsDeltaRAll_[i]->Fill(deltaR, track_rereco.pt() / track.pt()); + histsPtAll_[i]->Fill(track_rereco.pt()); + histsNhitsAll_[i]->Fill(track_rereco.numberOfValidHits()); + histsDeltaRAll_[i]->Fill(deltaR); + } + } + } + ++i; + } + } +} + +//__________________________________________________________________________________ +void ShortenedTrackValidation::fillDescriptions(edm::ConfigurationDescriptions &descriptions) { + edm::ParameterSetDescription desc; + desc.addUntracked("folderName", "TrackRefitting"); + desc.addUntracked>("hitsRemainInput", {}); + desc.addUntracked("minTracksEtaInput", 0.0); + desc.addUntracked("maxTracksEtaInput", 2.2); + desc.addUntracked("minTracksPtInput", 15.0); + desc.addUntracked("maxTracksPtInput", 99999.9); + desc.addUntracked("maxDrInput", 0.01); + desc.addUntracked("tracksInputTag", edm::InputTag("generalTracks", "", "DQM")); + desc.addUntracked>("tracksRerecoInputTag", {}); + desc.addUntracked("BeamSpotTag", edm::InputTag("offlineBeamSpot")); + desc.addUntracked("VerticesTag", edm::InputTag("offlinePrimaryVertices")); + descriptions.addWithDefaultLabel(desc); +} + +// Define this as a plug-in +#include "FWCore/Framework/interface/MakerMacros.h" +DEFINE_FWK_MODULE(ShortenedTrackValidation); diff --git a/Alignment/OfflineValidation/test/testShortenedTrackValidation_cfg.py b/Alignment/OfflineValidation/test/testShortenedTrackValidation_cfg.py new file mode 100644 index 0000000000000..2901ef5a7fc83 --- /dev/null +++ b/Alignment/OfflineValidation/test/testShortenedTrackValidation_cfg.py @@ -0,0 +1,153 @@ +import FWCore.ParameterSet.Config as cms +import FWCore.Utilities.FileUtils as FileUtils +from FWCore.ParameterSet.VarParsing import VarParsing + +options = VarParsing('analysis') +options.register('scenario', + '0', + VarParsing.multiplicity.singleton, + VarParsing.varType.string, + "Name of input misalignment scenario") +options.parseArguments() + +valid_scenarios = ['-10e-6','-8e-6','-6e-6','-4e-6','-2e-6','0','2e-6','4e-6','6e-6','8e-6','10e-6'] + +if options.scenario not in valid_scenarios: + print("Error: Invalid scenario specified. Please choose from the following list: ") + print(valid_scenarios) + exit(1) + +process = cms.Process("TrackingResolution") + +##################################################################### +# import of standard configurations +##################################################################### +process.load('Configuration.StandardSequences.Services_cff') +process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi') +process.load('FWCore.MessageService.MessageLogger_cfi') +process.MessageLogger.cerr.FwkReport.reportEvery = 100000 +process.load('Configuration.EventContent.EventContent_cff') +process.load('Configuration.StandardSequences.GeometryRecoDB_cff') +process.load('Configuration.StandardSequences.MagneticField_cff') +process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') + +##################################################################### +## BeamSpot from database (i.e. GlobalTag), needed for Refitter +##################################################################### +process.load("RecoVertex.BeamSpotProducer.BeamSpot_cfi") + +##################################################################### +# Load and Configure Measurement Tracker Event +##################################################################### +process.load("RecoTracker.MeasurementDet.MeasurementTrackerEventProducer_cfi") +process.MeasurementTrackerEvent.pixelClusterProducer = "ALCARECOTkAlDiMuon" +process.MeasurementTrackerEvent.stripClusterProducer = "ALCARECOTkAlDiMuon" +process.MeasurementTrackerEvent.inactivePixelDetectorLabels = cms.VInputTag() +process.MeasurementTrackerEvent.inactiveStripDetectorLabels = cms.VInputTag() + +process.maxEvents = cms.untracked.PSet( + input = cms.untracked.int32(1000000) +) + +##################################################################### +# Input source +##################################################################### +# filelist = FileUtils.loadListFromFile("listOfFiles_idealMC_TkAlDiMuonAndVertex.txt") +# readFiles = cms.untracked.vstring( *filelist) +# events taken from /DYJetsToMuMu_M-50_TuneCP5_13p6TeV-madgraphMLM-pythia8/Run3Winter23Reco-TkAlDiMuonAndVertex-TRKDesignNoPU_AlcaRecoTRKMu_designGaussSigmaZ4cm_125X_mcRun3_2022_design_v6-v1/ALCARECO +readFiles = cms.untracked.vstring('/store/mc/Run3Winter23Reco/DYJetsToMuMu_M-50_TuneCP5_13p6TeV-madgraphMLM-pythia8/ALCARECO/TkAlDiMuonAndVertex-TRKDesignNoPU_AlcaRecoTRKMu_designGaussSigmaZ4cm_125X_mcRun3_2022_design_v6-v1/60000/d3af17a5-2409-4551-9c3d-00deb2f3f64f.root') +process.source = cms.Source("PoolSource",fileNames = readFiles) + +process.options = cms.untracked.PSet() + +#################################################################### +# Output file +#################################################################### +process.TFileService = cms.Service("TFileService", + fileName = cms.string("shortenedTrackResolution_LayerRotation_"+options.scenario+".root")) + +##################################################################### +# Other statements +##################################################################### +from Configuration.AlCa.GlobalTag import GlobalTag +process.GlobalTag = GlobalTag(process.GlobalTag, "125X_mcRun3_2022_design_v6", '') +if (options.scenario=='null'): + print("null scenario, do nothing") + pass +else: + process.GlobalTag.toGet = cms.VPSet(cms.PSet(connect = cms.string("frontier://FrontierPrep/CMS_CONDITIONS"), + record = cms.string('TrackerAlignmentRcd'), + tag = cms.string("LayerRotation_"+options.scenario))) + +##################################################################### +# The DQM analysis sequence +##################################################################### +process.load("DQM.TrackingMonitorSource.shortTrackResolution_cff") + +##################################################################### +# The changes to cope with ALCARECO data format +##################################################################### +process.load("RecoTracker.TrackProducer.TrackRefitters_cff") +import RecoTracker.TrackProducer.TrackRefitters_cff +process.LongTracksRefit = process.TrackRefitter.clone( + src = 'SingleLongTrackProducer', + TrajectoryInEvent = True, + TTRHBuilder = "WithAngleAndTemplate", + NavigationSchool = '' +) + +process.ShortTrackCandidates3.src = cms.InputTag("LongTracksRefit") +process.ShortTrackCandidates4.src = cms.InputTag("LongTracksRefit") +process.ShortTrackCandidates5.src = cms.InputTag("LongTracksRefit") +process.ShortTrackCandidates6.src = cms.InputTag("LongTracksRefit") +process.ShortTrackCandidates7.src = cms.InputTag("LongTracksRefit") +process.ShortTrackCandidates8.src = cms.InputTag("LongTracksRefit") + +process.SingleLongTrackProducer.requiredDr = cms.double(-9999.) # do not require any matchings +process.SingleLongTrackProducer.matchMuons = cms.InputTag("muons") # for ALCA irrelevant (see above) +process.SingleLongTrackProducer.allTracks = cms.InputTag("ALCARECOTkAlDiMuon") + +##################################################################### +# The Analysis module +##################################################################### +from Alignment.OfflineValidation.shortenedTrackValidation_cfi import shortenedTrackValidation as _shortenedTrackValidation +process.ShortenedTrackValidation = _shortenedTrackValidation.clone(folderName = "ShortTrackResolution", + hitsRemainInput = ["3","4","5","6","7","8"], + minTracksEtaInput = 0.0, + maxTracksEtaInput = 2.2, + minTracksPtInput = 15.0, + maxTracksPtInput = 99999.9, + maxDrInput = 0.01, + tracksInputTag = "SingleLongTrackProducer", + tracksRerecoInputTag = ["RefittedShortTracks3", + "RefittedShortTracks4", + "RefittedShortTracks5", + "RefittedShortTracks6", + "RefittedShortTracks7", + "RefittedShortTracks8"]) + +##################################################################### +# Path +##################################################################### +process.analysis_step = cms.Path(process.offlineBeamSpot * + process.MeasurementTrackerEvent * + process.SingleLongTrackProducer * + process.LongTracksRefit * + process.ShortTrackCandidates3 * + process.ShortTrackCandidates4 * + process.ShortTrackCandidates5 * + process.ShortTrackCandidates6 * + process.ShortTrackCandidates7 * + process.ShortTrackCandidates8 * + process.RefittedShortTracks3 * + process.RefittedShortTracks4 * + process.RefittedShortTracks5 * + process.RefittedShortTracks6 * + process.RefittedShortTracks7 * + process.RefittedShortTracks8 * + process.ShortenedTrackValidation) + +################################################################### +# Set the process to run multi-threaded +################################################################### +process.options.numberOfThreads = 8 From 3da22f135cede8946c5fb127de8f66bbd4905ba0 Mon Sep 17 00:00:00 2001 From: mmusich Date: Wed, 17 Jan 2024 17:24:26 +0100 Subject: [PATCH 273/281] use deltaR2 for muon / track matching computation in SingleLongTrackProducer --- .../plugins/SingleLongTrackProducer.cc | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc b/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc index 4301dac1e511e..8430385347ae4 100644 --- a/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc +++ b/RecoTracker/FinalTrackSelectors/plugins/SingleLongTrackProducer.cc @@ -1,4 +1,5 @@ // user includes +#include "DataFormats/Math/interface/deltaR.h" #include "DataFormats/MuonReco/interface/Muon.h" #include "DataFormats/TrackReco/interface/Track.h" #include "DataFormats/VertexReco/interface/Vertex.h" @@ -92,7 +93,7 @@ void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup for (const auto &track : *tracks) { const reco::HitPattern &hitpattern = track.hitPattern(); - double dRmin = 10; + double dR2min = 100.; double chiNdof = track.normalizedChi2(); double dxy = std::abs(track.dxy(vtx.position())); double dz = std::abs(track.dz(vtx.position())); @@ -106,22 +107,20 @@ void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup if (hitpattern.trackerLayersWithMeasurement() < minNumberOfLayers) continue; - TLorentzVector pTrack(track.px(), track.py(), track.pz(), track.pt()); - // Long track needs to be close to a good muon (only if requested) if (matchInDr > 0.) { for (const auto &m : *muons) { if (m.isTrackerMuon()) { tMuon++; reco::Track matchedTrack = *(m.innerTrack()); - TLorentzVector pMatched(matchedTrack.px(), matchedTrack.py(), matchedTrack.pz(), matchedTrack.pt()); // match to general track in deltaR - double dr = pTrack.DeltaR(pMatched); - if (dr < dRmin) - dRmin = dr; + double dr2 = reco::deltaR2(track, matchedTrack); + if (dr2 < dR2min) + dR2min = dr2; } } - if (dRmin >= matchInDr) + // matchInDr here is defined positive + if (dR2min >= matchInDr * matchInDr) continue; } // do vertex consistency: @@ -137,7 +136,7 @@ void SingleLongTrackProducer::produce(edm::Event &iEvent, const edm::EventSetup bestTrack.setExtra(track.extra()); } if (debug) - edm::LogPrint("SingleLongTrackProducer") << " deltaR (general) track to matched Track: " << dRmin; + edm::LogPrint("SingleLongTrackProducer") << " deltaR2 (general) track to matched Track: " << dR2min; if (debug) edm::LogPrint("SingleLongTrackProducer") << "chi2Ndof:" << chiNdof << " best Track: " << fitProb; } From 84535a0eb9843e569ec827ed777a9f345755ba1a Mon Sep 17 00:00:00 2001 From: Norraphat Date: Wed, 17 Jan 2024 18:42:54 +0100 Subject: [PATCH 274/281] update --- Configuration/PyReleaseValidation/python/relval_2026.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Configuration/PyReleaseValidation/python/relval_2026.py b/Configuration/PyReleaseValidation/python/relval_2026.py index 7dc42987a84b3..244d2d2de6735 100644 --- a/Configuration/PyReleaseValidation/python/relval_2026.py +++ b/Configuration/PyReleaseValidation/python/relval_2026.py @@ -16,7 +16,6 @@ numWFIB = [] numWFIB.extend([20034.0]) #2026D86 numWFIB.extend([20834.0]) #2026D88 -numWFIB.extend([20834.501,20834.502]) #2026D88 Patatrack local reconstruction on CPU, Patatrack local reconstruction on GPU (to remove when available in D98) numWFIB.extend([22034.0]) #2026D91 numWFIB.extend([22434.0]) #2026D92 numWFIB.extend([22834.0]) #2026D93 @@ -27,6 +26,7 @@ numWFIB.extend([24834.0,24834.911,24834.103]) #2026D98 DDD XML, DD4hep XML, aging numWFIB.extend([25061.97]) #2026D98 premixing stage1 (NuGun+PU) numWFIB.extend([24834.5,24834.9]) #2026D98 pixelTrackingOnly, vector hits +numWFIB.extend([24834.501,24834.502]) #2026D98 Patatrack local reconstruction on CPU, Patatrack local reconstruction on GPU numWFIB.extend([25034.99,25034.999]) #2026D98 premixing combined stage1+stage2 (ttbar+PU200, ttbar+PU50 for PR test) numWFIB.extend([24834.21,25034.21,25034.9921]) #2026D98 prodlike, prodlike PU, prodlike premix stage1+stage2 numWFIB.extend([25034.114]) #2026D98 PU, with 10% OT ineffiency From 331ed1820f7fef0df38e01fdc50a899f73f5506a Mon Sep 17 00:00:00 2001 From: pallabidas Date: Thu, 18 Jan 2024 15:01:08 +0100 Subject: [PATCH 275/281] calibrated GCT calo jets and taus --- .../interface/Phase2L1CaloEGammaUtils.h | 108 +++- .../interface/Phase2L1CaloJetEmulator.h | 2 +- .../L1CaloTrigger/interface/Phase2L1GCT.h | 5 +- .../L1CaloTrigger/interface/Phase2L1RCT.h | 33 +- .../plugins/Phase2L1CaloEGammaEmulator.cc | 13 +- .../plugins/Phase2L1CaloJetEmulator.cc | 488 +++++++++++++++++- .../python/l1tPhase2CaloJetEmulator_cfi.py | 122 ++++- 7 files changed, 702 insertions(+), 69 deletions(-) diff --git a/L1Trigger/L1CaloTrigger/interface/Phase2L1CaloEGammaUtils.h b/L1Trigger/L1CaloTrigger/interface/Phase2L1CaloEGammaUtils.h index b7cc986694ee8..97c2eeb25c446 100644 --- a/L1Trigger/L1CaloTrigger/interface/Phase2L1CaloEGammaUtils.h +++ b/L1Trigger/L1CaloTrigger/interface/Phase2L1CaloEGammaUtils.h @@ -60,7 +60,7 @@ namespace p2eg { static constexpr float e0_looseTkss = 0.944, e1_looseTkss = 0.65, e2_looseTkss = 0.4; // passes_looseTkss static constexpr float cut_500_MeV = 0.5; - static constexpr float ECAL_LSB = 0.125; // to convert from int to float (GeV) multiply by LSB + static constexpr float ECAL_LSB = 0.5; // to convert from int to float (GeV) multiply by LSB static constexpr float HCAL_LSB = 0.5; static constexpr int N_CLUSTERS_PER_REGION = 4; // number of clusters per ECAL region @@ -434,10 +434,22 @@ namespace p2eg { class towerHCAL { private: - ap_uint<10> et = 0; - ap_uint<6> fb = 0; + ap_uint<10> et; + ap_uint<6> fb; public: + // constructor + towerHCAL() { + et = 0; + fb = 0; + }; + + // copy constructor + towerHCAL(const towerHCAL& other) { + et = other.et; + fb = other.fb; + }; + // set members inline void zeroOut() { et = 0; @@ -474,12 +486,6 @@ namespace p2eg { }; }; - // overload operator= to use copy constructor - towers3x4 operator=(const towers3x4& other) { - const towers3x4& newRegion(other); - return newRegion; - }; - // set members inline void zeroOut() { for (int i = 0; i < TOWER_IN_ETA; i++) { @@ -591,9 +597,22 @@ namespace p2eg { */ class crystalMax { public: - ap_uint<10> energy = 0; - uint8_t phiMax = 0; - uint8_t etaMax = 0; + ap_uint<10> energy; + uint8_t phiMax; + uint8_t etaMax; + + crystalMax() { + energy = 0; + phiMax = 0; + etaMax = 0; + } + + crystalMax& operator=(const crystalMax& rhs) { + energy = rhs.energy; + phiMax = rhs.phiMax; + etaMax = rhs.etaMax; + return *this; + } }; class ecaltp_t { @@ -667,9 +686,14 @@ namespace p2eg { class tower_t { public: - ap_uint<16> data = 0; + ap_uint<16> data; + + tower_t() { data = 0; } + tower_t& operator=(const tower_t& rhs) { + data = rhs.data; + return *this; + } - tower_t() = default; tower_t(ap_uint<12> et, ap_uint<4> hoe) { data = (et) | (((ap_uint<16>)hoe) << 12); } ap_uint<12> et() { return (data & 0xFFF); } @@ -685,7 +709,7 @@ namespace p2eg { float newEt = getEt() * factor; // Convert the new pT to an unsigned int (16 bits so we can take the logical OR with the bit mask later) - ap_uint<16> newEt_uint = (ap_uint<16>)(int)(newEt * 8.0); + ap_uint<16> newEt_uint = (ap_uint<16>)(int)(newEt / ECAL_LSB); // Make sure the first four bits are zero newEt_uint = (newEt_uint & 0x0FFF); @@ -697,9 +721,7 @@ namespace p2eg { /* * For towers: Calculate H/E ratio given the ECAL and HCAL energies and modify the hoe() value. */ - void getHoverE(ap_uint<12> ECAL, ap_uint<12> HCAL_inHcalConvention) { - // Convert HCAL ET to ECAL ET convention - ap_uint<12> HCAL = convertHcalETtoEcalET(HCAL_inHcalConvention); + void addHoverEToTower(ap_uint<12> ECAL, ap_uint<12> HCAL) { ap_uint<4> hoeOut; ap_uint<1> hoeLSB = 0; ap_uint<4> hoe = 0; @@ -741,13 +763,34 @@ namespace p2eg { class clusterInfo { public: - ap_uint<10> seedEnergy = 0; - ap_uint<15> energy = 0; - ap_uint<15> et5x5 = 0; - ap_uint<15> et2x5 = 0; - ap_uint<5> phiMax = 0; - ap_uint<5> etaMax = 0; - ap_uint<2> brems = 0; + ap_uint<10> seedEnergy; + ap_uint<15> energy; + ap_uint<15> et5x5; + ap_uint<15> et2x5; + ap_uint<5> phiMax; + ap_uint<5> etaMax; + ap_uint<2> brems; + + clusterInfo() { + seedEnergy = 0; + energy = 0; + et5x5 = 0; + et2x5 = 0; + phiMax = 0; + etaMax = 0; + brems = 0; + } + + clusterInfo& operator=(const clusterInfo& rhs) { + seedEnergy = rhs.seedEnergy; + energy = rhs.energy; + et5x5 = rhs.et5x5; + et2x5 = rhs.et2x5; + phiMax = rhs.phiMax; + etaMax = rhs.etaMax; + brems = rhs.brems; + return *this; + } }; //--------------------------------------------------------// @@ -808,6 +851,20 @@ namespace p2eg { is_looseTkiso = cluster_is_looseTkiso; } + Cluster& operator=(const Cluster& rhs) { + data = rhs.data; + regionIdx = rhs.regionIdx; + calib = rhs.calib; + brems = rhs.brems; + et5x5 = rhs.et5x5; + et2x5 = rhs.et2x5; + is_ss = rhs.is_ss; + is_looseTkss = rhs.is_looseTkss; + is_iso = rhs.is_iso; + is_looseTkiso = rhs.is_looseTkiso; + return *this; + } + void setRegionIdx(int regIdx) { regionIdx = regIdx; } // Newly added ap_uint<12> clusterEnergy() const { return (data & 0xFFF); } @@ -1438,6 +1495,7 @@ namespace p2eg { l1tp2::CaloTower l1CaloTower; // Store total Et (HCAL+ECAL) in the ECAL Et member l1CaloTower.setEcalTowerEt(totalEtFloat()); + l1CaloTower.setHcalTowerEt(ecalEtFloat()); int global_tower_iEta = globalToweriEtaFromGCTcardiEta(gctCard_tower_iEta); int global_tower_iPhi = globalToweriPhiFromGCTcardiPhi(nGCTCard, gctCard_tower_iPhi); l1CaloTower.setTowerIEta(global_tower_iEta); diff --git a/L1Trigger/L1CaloTrigger/interface/Phase2L1CaloJetEmulator.h b/L1Trigger/L1CaloTrigger/interface/Phase2L1CaloJetEmulator.h index 4ccf93df4efec..202c7dfc8c297 100644 --- a/L1Trigger/L1CaloTrigger/interface/Phase2L1CaloJetEmulator.h +++ b/L1Trigger/L1CaloTrigger/interface/Phase2L1CaloJetEmulator.h @@ -482,7 +482,7 @@ namespace gctobj { jet_tmp.tauEt = 0.; } jet_tmp.etaCenter = jet.etaCenter; // this is the ET weighted eta centre of the ST - jet_tmp.phiCenter = jet.phiCenter; // this is the ET weighted eta centre of the ST + jet_tmp.phiCenter = jet.phiCenter; // this is the ET weighted phi centre of the ST jet_tmp.etaMax = jet.etaMax; // this is the leading tower eta in the ST jet_tmp.phiMax = jet.phiMax; // this is the leading tower phi in the ST return jet_tmp; diff --git a/L1Trigger/L1CaloTrigger/interface/Phase2L1GCT.h b/L1Trigger/L1CaloTrigger/interface/Phase2L1GCT.h index 7751a9e3c0c81..2f28a4cf35566 100644 --- a/L1Trigger/L1CaloTrigger/interface/Phase2L1GCT.h +++ b/L1Trigger/L1CaloTrigger/interface/Phase2L1GCT.h @@ -240,7 +240,6 @@ inline p2eg::GCTinternal_t p2eg::getClustersTowers(const p2eg::GCTcard_t& GCTcar */ inline p2eg::GCTintTowers_t p2eg::getFullTowers(const p2eg::GCTinternal_t& GCTinternal) { p2eg::GCTintTowers_t GCTintTowers; - // Positive eta for (int i = 0; i < p2eg::N_GCTPOSITIVE_FIBERS; i = i + 4) { for (int i1 = 0; i1 < 4; i1++) { @@ -249,6 +248,8 @@ inline p2eg::GCTintTowers_t p2eg::getFullTowers(const p2eg::GCTinternal_t& GCTin ap_uint<15> eta = p2eg::N_GCTETA / 2 + k; GCTintTowers.GCTtower[eta][phi].et = GCTinternal.GCTCorrfiber[phi].GCTtowers[k].et; GCTintTowers.GCTtower[eta][phi].hoe = GCTinternal.GCTCorrfiber[phi].GCTtowers[k].hoe; + GCTintTowers.GCTtower[eta][phi].ecalEt = GCTinternal.GCTCorrfiber[phi].GCTtowers[k].ecalEt; + GCTintTowers.GCTtower[eta][phi].hcalEt = GCTinternal.GCTCorrfiber[phi].GCTtowers[k].hcalEt; for (int ic1 = 0; ic1 < 4; ic1++) { for (int jc = 0; jc < p2eg::N_GCTCLUSTERS_FIBER; jc++) { ap_uint<15> eta1 = p2eg::N_GCTETA / 2 + GCTinternal.GCTCorrfiber[i + ic1].GCTclusters[jc].towEta; @@ -271,6 +272,8 @@ inline p2eg::GCTintTowers_t p2eg::getFullTowers(const p2eg::GCTinternal_t& GCTin ap_uint<15> phi = i + i1 - p2eg::N_GCTPOSITIVE_FIBERS; GCTintTowers.GCTtower[eta][phi].et = GCTinternal.GCTCorrfiber[i + i1].GCTtowers[k].et; GCTintTowers.GCTtower[eta][phi].hoe = GCTinternal.GCTCorrfiber[i + i1].GCTtowers[k].hoe; + GCTintTowers.GCTtower[eta][phi].ecalEt = GCTinternal.GCTCorrfiber[i + i1].GCTtowers[k].ecalEt; + GCTintTowers.GCTtower[eta][phi].hcalEt = GCTinternal.GCTCorrfiber[i + i1].GCTtowers[k].hcalEt; for (int ic1 = 0; ic1 < 4; ic1++) { for (int jc = 0; jc < p2eg::N_GCTCLUSTERS_FIBER; jc++) { ap_uint<15> eta1 = p2eg::N_GCTETA / 2 - 1 - GCTinternal.GCTCorrfiber[i + ic1].GCTclusters[jc].towEta; diff --git a/L1Trigger/L1CaloTrigger/interface/Phase2L1RCT.h b/L1Trigger/L1CaloTrigger/interface/Phase2L1RCT.h index 43547af9d0bd8..02a3fb47e375f 100644 --- a/L1Trigger/L1CaloTrigger/interface/Phase2L1RCT.h +++ b/L1Trigger/L1CaloTrigger/interface/Phase2L1RCT.h @@ -1036,18 +1036,15 @@ inline void p2eg::getECALTowersEt(p2eg::crystal tempX[p2eg::CRYSTAL_IN_ETA][p2eg } } - towerEt[0] = towerEtN[0][0][0] + towerEtN[0][0][1] + towerEtN[0][0][2] + towerEtN[0][0][3] + towerEtN[0][0][4]; - towerEt[1] = towerEtN[0][1][0] + towerEtN[0][1][1] + towerEtN[0][1][2] + towerEtN[0][1][3] + towerEtN[0][1][4]; - towerEt[2] = towerEtN[0][2][0] + towerEtN[0][2][1] + towerEtN[0][2][2] + towerEtN[0][2][3] + towerEtN[0][2][4]; - towerEt[3] = towerEtN[0][3][0] + towerEtN[0][3][1] + towerEtN[0][3][2] + towerEtN[0][3][3] + towerEtN[0][3][4]; - towerEt[4] = towerEtN[1][0][0] + towerEtN[1][0][1] + towerEtN[1][0][2] + towerEtN[1][0][3] + towerEtN[1][0][4]; - towerEt[5] = towerEtN[1][1][0] + towerEtN[1][1][1] + towerEtN[1][1][2] + towerEtN[1][1][3] + towerEtN[1][1][4]; - towerEt[6] = towerEtN[1][2][0] + towerEtN[1][2][1] + towerEtN[1][2][2] + towerEtN[1][2][3] + towerEtN[1][2][4]; - towerEt[7] = towerEtN[1][3][0] + towerEtN[1][3][1] + towerEtN[1][3][2] + towerEtN[1][3][3] + towerEtN[1][3][4]; - towerEt[8] = towerEtN[2][0][0] + towerEtN[2][0][1] + towerEtN[2][0][2] + towerEtN[2][0][3] + towerEtN[2][0][4]; - towerEt[9] = towerEtN[2][1][0] + towerEtN[2][1][1] + towerEtN[2][1][2] + towerEtN[2][1][3] + towerEtN[2][1][4]; - towerEt[10] = towerEtN[2][2][0] + towerEtN[2][2][1] + towerEtN[2][2][2] + towerEtN[2][2][3] + towerEtN[2][2][4]; - towerEt[11] = towerEtN[2][3][0] + towerEtN[2][3][1] + towerEtN[2][3][2] + towerEtN[2][3][3] + towerEtN[2][3][4]; + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 4; j++) { + int index = j + 4 * i; + towerEt[index] = 0; + for (int k = 0; k < 5; k++) { + towerEt[index] += (towerEtN[i][j][k] >> 2); + } + } + } ap_uint<12> totalEt; for (int i = 0; i < 12; i++) { @@ -1226,7 +1223,7 @@ inline p2eg::clusterInfo p2eg::getBremsValuesPos(p2eg::crystal tempX[p2eg::CRYST for (int i = 0; i < 3; i++) { eta_slice[i] = phi0eta[i] + phi1eta[i] + phi2eta[i] + phi3eta[i] + phi4eta[i]; } - cluster_tmp.energy = (eta_slice[0] + eta_slice[1] + eta_slice[2]); + cluster_tmp.energy = (eta_slice[0] + eta_slice[1] + eta_slice[2]) >> 2; return cluster_tmp; } @@ -1301,7 +1298,7 @@ inline p2eg::clusterInfo p2eg::getBremsValuesNeg(p2eg::crystal tempX[p2eg::CRYST for (int i = 0; i < 3; i++) { eta_slice[i] = phi0eta[i] + phi1eta[i] + phi2eta[i] + phi3eta[i] + phi4eta[i]; } - cluster_tmp.energy = (eta_slice[0] + eta_slice[1] + eta_slice[2]); + cluster_tmp.energy = (eta_slice[0] + eta_slice[1] + eta_slice[2]) >> 2; return cluster_tmp; } @@ -1392,7 +1389,7 @@ inline p2eg::clusterInfo p2eg::getClusterValues(p2eg::crystal tempX[p2eg::CRYSTA eta_slice[i] = phi0eta[i] + phi1eta[i] + phi2eta[i] + phi3eta[i] + phi4eta[i]; } - cluster_tmp.energy = (eta_slice[1] + eta_slice[2] + eta_slice[3]); + cluster_tmp.energy = (eta_slice[1] + eta_slice[2] + eta_slice[3]) >> 2; // Get the energy totals in the 5x5 and also in two 2x5 et5x5Tot = (eta_slice[0] + eta_slice[1] + eta_slice[2] + eta_slice[3] + eta_slice[4]); @@ -1404,8 +1401,8 @@ inline p2eg::clusterInfo p2eg::getClusterValues(p2eg::crystal tempX[p2eg::CRYSTA else etSum2x5 = et2x5_2Tot; - cluster_tmp.et5x5 = et5x5Tot; - cluster_tmp.et2x5 = etSum2x5; + cluster_tmp.et5x5 = et5x5Tot >> 2; + cluster_tmp.et2x5 = etSum2x5 >> 2; return cluster_tmp; } @@ -1427,7 +1424,7 @@ inline p2eg::Cluster p2eg::getClusterFromRegion3x4(p2eg::crystal temp[p2eg::CRYS cluster_tmp = p2eg::getClusterPosition(ecalRegion); - float seedEnergyFloat = cluster_tmp.seedEnergy / 8.0; + float seedEnergyFloat = cluster_tmp.seedEnergy * ECAL_LSB; // Do not make cluster if seed is less than 1.0 GeV if (seedEnergyFloat < 1.0) { diff --git a/L1Trigger/L1CaloTrigger/plugins/Phase2L1CaloEGammaEmulator.cc b/L1Trigger/L1CaloTrigger/plugins/Phase2L1CaloEGammaEmulator.cc index 209b285f3fb29..999b208da8cde 100644 --- a/L1Trigger/L1CaloTrigger/plugins/Phase2L1CaloEGammaEmulator.cc +++ b/L1Trigger/L1CaloTrigger/plugins/Phase2L1CaloEGammaEmulator.cc @@ -134,8 +134,8 @@ void Phase2L1CaloEGammaEmulator::produce(edm::Event& iEvent, const edm::EventSet for (const auto& hit : *pcalohits.product()) { if (hit.encodedEt() > 0) // hit.encodedEt() returns an int corresponding to 2x the crystal Et { - // Et is 10 bit, by keeping the ADC saturation Et at 120 GeV it means that you have to divide by 8 - float et = hit.encodedEt() * p2eg::ECAL_LSB; + // Et is 10 bit, by keeping the ADC saturation Et at 120 GeV it means that you have to multiply by 0.125 (input LSB) + float et = hit.encodedEt() * 0.125; if (et < p2eg::cut_500_MeV) { continue; // Reject hits with < 500 MeV ET } @@ -332,8 +332,9 @@ void Phase2L1CaloEGammaEmulator::produce(edm::Event& iEvent, const edm::EventSet // Iteratively find four clusters and remove them from 'temporary' as we go, and fill cluster_list for (int c = 0; c < p2eg::N_CLUSTERS_PER_REGION; c++) { - p2eg::Cluster newCluster = p2eg::getClusterFromRegion3x4(temporary); // remove cluster from 'temporary' - newCluster.setRegionIdx(idxRegion); // add the region number + p2eg::Cluster newCluster = p2eg::getClusterFromRegion3x4( + temporary); // remove cluster from 'temporary', adjust for LSB 0.5 at GCT in getClusterValues + newCluster.setRegionIdx(idxRegion); // add the region number if (newCluster.clusterEnergy() > 0) { // do not push back 0-energy clusters cluster_list[cc].push_back(newCluster); @@ -342,7 +343,7 @@ void Phase2L1CaloEGammaEmulator::produce(edm::Event& iEvent, const edm::EventSet // Create towers using remaining ECAL energy, and the HCAL towers were already calculated in towersEtHCAL[12] ap_uint<12> towerEtECAL[12]; - p2eg::getECALTowersEt(temporary, towerEtECAL); + p2eg::getECALTowersEt(temporary, towerEtECAL); // adjust for LSB 0.5 at GCT // Fill towerHCALCard and towerECALCard arrays for (int i = 0; i < 12; i++) { @@ -440,7 +441,7 @@ void Phase2L1CaloEGammaEmulator::produce(edm::Event& iEvent, const edm::EventSet for (int jj = 0; jj < p2eg::n_towers_cardPhi; ++jj) { // 4 towers per card in phi ap_uint<12> ecalEt = towerECALCard[ii][jj][cc].et(); ap_uint<12> hcalEt = towerHCALCard[ii][jj][cc].et(); - towerECALCard[ii][jj][cc].getHoverE(ecalEt, hcalEt); + towerECALCard[ii][jj][cc].addHoverEToTower(ecalEt, hcalEt); } } diff --git a/L1Trigger/L1CaloTrigger/plugins/Phase2L1CaloJetEmulator.cc b/L1Trigger/L1CaloTrigger/plugins/Phase2L1CaloJetEmulator.cc index 1da6563b31ebe..089d630fa6fc3 100644 --- a/L1Trigger/L1CaloTrigger/plugins/Phase2L1CaloJetEmulator.cc +++ b/L1Trigger/L1CaloTrigger/plugins/Phase2L1CaloJetEmulator.cc @@ -47,6 +47,7 @@ #include #include #include +#include "TF1.h" // // class declaration @@ -61,12 +62,46 @@ class Phase2L1CaloJetEmulator : public edm::stream::EDProducer<> { private: void produce(edm::Event&, const edm::EventSetup&) override; + float get_jet_pt_calibration(const float& jet_pt, const float& jet_eta) const; + float get_tau_pt_calibration(const float& tau_pt, const float& tau_eta) const; // ----------member data --------------------------- edm::EDGetTokenT caloTowerToken_; edm::EDGetTokenT hgcalTowerToken_; edm::EDGetTokenT hfToken_; edm::ESGetToken decoderTag_; + std::vector nHits_to_nvtx_params; + std::vector nvtx_to_PU_sub_params; + std::map nHits_to_nvtx_funcs; + std::map hgcalEM_nvtx_to_PU_sub_funcs; + std::map hgcalHad_nvtx_to_PU_sub_funcs; + std::map hf_nvtx_to_PU_sub_funcs; + std::map> all_nvtx_to_PU_sub_funcs; + + // For fetching jet pt calibrations + std::vector jetPtBins; + std::vector absEtaBinsBarrel; + std::vector jetCalibrationsBarrel; + std::vector absEtaBinsHGCal; + std::vector jetCalibrationsHGCal; + std::vector absEtaBinsHF; + std::vector jetCalibrationsHF; + + // For fetching tau pt calibrations + std::vector tauPtBins; + std::vector tauAbsEtaBinsBarrel; + std::vector tauCalibrationsBarrel; + std::vector tauAbsEtaBinsHGCal; + std::vector tauCalibrationsHGCal; + + // For storing jet calibrations + std::vector> calibrationsBarrel; + std::vector> calibrationsHGCal; + std::vector> calibrationsHF; + + // For storing tau calibrations + std::vector> tauPtCalibrationsBarrel; + std::vector> tauPtCalibrationsHGCal; }; // @@ -76,7 +111,106 @@ Phase2L1CaloJetEmulator::Phase2L1CaloJetEmulator(const edm::ParameterSet& iConfi : caloTowerToken_(consumes(iConfig.getParameter("gctFullTowers"))), hgcalTowerToken_(consumes(iConfig.getParameter("hgcalTowers"))), hfToken_(consumes(iConfig.getParameter("hcalDigis"))), - decoderTag_(esConsumes(edm::ESInputTag("", ""))) { + decoderTag_(esConsumes(edm::ESInputTag("", ""))), + nHits_to_nvtx_params(iConfig.getParameter>("nHits_to_nvtx_params")), + nvtx_to_PU_sub_params(iConfig.getParameter>("nvtx_to_PU_sub_params")), + jetPtBins(iConfig.getParameter>("jetPtBins")), + absEtaBinsBarrel(iConfig.getParameter>("absEtaBinsBarrel")), + jetCalibrationsBarrel(iConfig.getParameter>("jetCalibrationsBarrel")), + absEtaBinsHGCal(iConfig.getParameter>("absEtaBinsHGCal")), + jetCalibrationsHGCal(iConfig.getParameter>("jetCalibrationsHGCal")), + absEtaBinsHF(iConfig.getParameter>("absEtaBinsHF")), + jetCalibrationsHF(iConfig.getParameter>("jetCalibrationsHF")), + tauPtBins(iConfig.getParameter>("tauPtBins")), + tauAbsEtaBinsBarrel(iConfig.getParameter>("tauAbsEtaBinsBarrel")), + tauCalibrationsBarrel(iConfig.getParameter>("tauCalibrationsBarrel")), + tauAbsEtaBinsHGCal(iConfig.getParameter>("tauAbsEtaBinsHGCal")), + tauCalibrationsHGCal(iConfig.getParameter>("tauCalibrationsHGCal")) { + for (uint i = 0; i < nHits_to_nvtx_params.size(); i++) { + edm::ParameterSet* pset = &nHits_to_nvtx_params.at(i); + std::string calo = pset->getParameter("fit"); + nHits_to_nvtx_funcs[calo.c_str()] = TF1(calo.c_str(), "[0] + [1] * x"); + nHits_to_nvtx_funcs[calo.c_str()].SetParameter(0, pset->getParameter>("nHits_params").at(0)); + nHits_to_nvtx_funcs[calo.c_str()].SetParameter(1, pset->getParameter>("nHits_params").at(1)); + } + all_nvtx_to_PU_sub_funcs["hgcalEM"] = hgcalEM_nvtx_to_PU_sub_funcs; + all_nvtx_to_PU_sub_funcs["hgcalHad"] = hgcalHad_nvtx_to_PU_sub_funcs; + all_nvtx_to_PU_sub_funcs["hf"] = hf_nvtx_to_PU_sub_funcs; + for (uint i = 0; i < nvtx_to_PU_sub_params.size(); i++) { + edm::ParameterSet* pset = &nvtx_to_PU_sub_params.at(i); + std::string calo = pset->getParameter("calo"); + std::string iEta = pset->getParameter("iEta"); + double p1 = pset->getParameter>("nvtx_params").at(0); + double p2 = pset->getParameter>("nvtx_params").at(1); + + all_nvtx_to_PU_sub_funcs[calo.c_str()][iEta.c_str()] = TF1(calo.c_str(), "[0] + [1] * x"); + all_nvtx_to_PU_sub_funcs[calo.c_str()][iEta.c_str()].SetParameter(0, p1); + all_nvtx_to_PU_sub_funcs[calo.c_str()][iEta.c_str()].SetParameter(1, p2); + } + + // Fill the jet pt calibration 2D vector + // Dimension 1 is AbsEta bin + // Dimension 2 is jet pT bin which is filled with the actual callibration value + // size()-1 b/c the inputs have lower and upper bounds + // Do Barrel, then HGCal, then HF + int index = 0; + for (unsigned int abs_eta = 0; abs_eta < absEtaBinsBarrel.size() - 1; abs_eta++) { + std::vector pt_bin_calibs; + for (unsigned int pt = 0; pt < jetPtBins.size() - 1; pt++) { + pt_bin_calibs.push_back(jetCalibrationsBarrel.at(index)); + index++; + } + calibrationsBarrel.push_back(pt_bin_calibs); + } + + index = 0; + for (unsigned int abs_eta = 0; abs_eta < absEtaBinsHGCal.size() - 1; abs_eta++) { + std::vector pt_bin_calibs; + for (unsigned int pt = 0; pt < jetPtBins.size() - 1; pt++) { + pt_bin_calibs.push_back(jetCalibrationsHGCal.at(index)); + index++; + } + calibrationsHGCal.push_back(pt_bin_calibs); + } + + index = 0; + for (unsigned int abs_eta = 0; abs_eta < absEtaBinsHF.size() - 1; abs_eta++) { + std::vector pt_bin_calibs; + for (unsigned int pt = 0; pt < jetPtBins.size() - 1; pt++) { + pt_bin_calibs.push_back(jetCalibrationsHF.at(index)); + index++; + } + calibrationsHF.push_back(pt_bin_calibs); + } + + // Fill the tau pt calibration 2D vector + // Dimension 1 is AbsEta bin + // Dimension 2 is tau pT bin which is filled with the actual calibration value + // Do Barrel, then HGCal + // + // Note to future developers: be very concious of the order in which the calibrations are printed + // out in tool which makse the cfg files. You need to match that exactly when loading them and + // using the calibrations below. + index = 0; + for (unsigned int abs_eta = 0; abs_eta < tauAbsEtaBinsBarrel.size() - 1; abs_eta++) { + std::vector pt_bin_calibs; + for (unsigned int pt = 0; pt < tauPtBins.size() - 1; pt++) { + pt_bin_calibs.push_back(tauCalibrationsBarrel.at(index)); + index++; + } + tauPtCalibrationsBarrel.push_back(pt_bin_calibs); + } + + index = 0; + for (unsigned int abs_eta = 0; abs_eta < tauAbsEtaBinsHGCal.size() - 1; abs_eta++) { + std::vector pt_bin_calibs; + for (unsigned int pt = 0; pt < tauPtBins.size() - 1; pt++) { + pt_bin_calibs.push_back(tauCalibrationsHGCal.at(index)); + index++; + } + tauPtCalibrationsHGCal.push_back(pt_bin_calibs); + } + produces("GCTJet"); } @@ -113,13 +247,53 @@ void Phase2L1CaloJetEmulator::produce(edm::Event& iEvent, const edm::EventSetup& float temporary[nBarrelEta / 2][nBarrelPhi]; - // Assign ETs to each eta-half of the endcap region (18x72) + // HGCal and HF info used for nvtx estimation edm::Handle hgcalTowerCollection; if (!iEvent.getByToken(hgcalTowerToken_, hgcalTowerCollection)) edm::LogError("Phase2L1CaloJetEmulator") << "Failed to get towers from hgcalTowerCollection!"; l1t::HGCalTowerBxCollection hgcalTowerColl; iEvent.getByToken(hgcalTowerToken_, hgcalTowerCollection); hgcalTowerColl = (*hgcalTowerCollection.product()); + + edm::Handle hfHandle; + if (!iEvent.getByToken(hfToken_, hfHandle)) + edm::LogError("Phase2L1CaloJetEmulator") << "Failed to get HcalTrigPrimDigi for HF!"; + iEvent.getByToken(hfToken_, hfHandle); + + int i_hgcalEM_hits_leq_threshold = 0; + int i_hgcalHad_hits_leq_threshold = 0; + int i_hf_hits_leq_threshold = 0; + for (auto it = hgcalTowerColl.begin(0); it != hgcalTowerColl.end(0); it++) { + if (it->etEm() <= 1.75 && it->etEm() >= 1.25) { + i_hgcalEM_hits_leq_threshold++; + } + if (it->etHad() <= 1.25 && it->etHad() >= 0.75) { + i_hgcalHad_hits_leq_threshold++; + } + } + const auto& decoder = iSetup.getData(decoderTag_); + for (const auto& hit : *hfHandle.product()) { + double et = decoder.hcaletValue(hit.id(), hit.t0()); + if (abs(hit.id().ieta()) < l1t::CaloTools::kHFBegin) + continue; + if (abs(hit.id().ieta()) > l1t::CaloTools::kHFEnd) + continue; + if (et <= 15.0 && et >= 10.0) + i_hf_hits_leq_threshold++; + } + + double hgcalEM_nvtx = nHits_to_nvtx_funcs["hgcalEM"].Eval(i_hgcalEM_hits_leq_threshold); + if (hgcalEM_nvtx < 0) + hgcalEM_nvtx = 0; + double hgcalHad_nvtx = nHits_to_nvtx_funcs["hgcalHad"].Eval(i_hgcalHad_hits_leq_threshold); + if (hgcalHad_nvtx < 0) + hgcalHad_nvtx = 0; + double hf_nvtx = nHits_to_nvtx_funcs["hf"].Eval(i_hf_hits_leq_threshold); + if (hf_nvtx < 0) + hf_nvtx = 0; + double EstimatedNvtx = (hgcalEM_nvtx + hgcalHad_nvtx + hf_nvtx) / 3.; + + // Assign ETs to each eta-half of the endcap region (18x72) float hgcalTowers[nHgcalEta][nHgcalPhi]; float hgcalEta[nHgcalEta][nHgcalPhi]; float hgcalPhi[nHgcalEta][nHgcalPhi]; @@ -145,21 +319,39 @@ void Phase2L1CaloJetEmulator::produce(edm::Event& iEvent, const edm::EventSetup& if (eta > 1.479) ieta = ieta - 4; int iphi = it->id().iPhi(); + + float hgcal_etEm = it->etEm(); + float hgcal_etHad = it->etHad(); + std::string etaKey = ""; + if (abs(eta) <= 1.8) + etaKey = "er1p4to1p8"; + else if (abs(eta) <= 2.1 && abs(eta) > 1.8) + etaKey = "er1p8to2p1"; + else if (abs(eta) <= 2.4 && abs(eta) > 2.1) + etaKey = "er2p1to2p4"; + else if (abs(eta) <= 2.7 && abs(eta) > 2.4) + etaKey = "er2p4to2p7"; + else if (abs(eta) <= 3.1 && abs(eta) > 2.7) + etaKey = "er2p7to3p1"; + if (!etaKey.empty()) { + hgcal_etEm = it->etEm() - all_nvtx_to_PU_sub_funcs["hgcalEM"][etaKey].Eval(EstimatedNvtx); + hgcal_etHad = it->etHad() - all_nvtx_to_PU_sub_funcs["hgcalHad"][etaKey].Eval(EstimatedNvtx); + } + + if (hgcal_etEm < 0) + hgcal_etEm = 0; + if (hgcal_etHad < 0) + hgcal_etHad = 0; if ((it->etEm() + it->etHad() > 1.) && abs(eta) > 1.479) - hgcalTowers[ieta][iphi] = it->etEm() + it->etHad(); // suppress <= 1 GeV towers + hgcalTowers[ieta][iphi] = hgcal_etEm + hgcal_etHad; // suppress <= 1 GeV towers } float temporary_hgcal[nHgcalEta / 2][nHgcalPhi]; // Assign ETs to each eta-half of the forward region (12x72) - edm::Handle hfHandle; - if (!iEvent.getByToken(hfToken_, hfHandle)) - edm::LogError("Phase2L1CaloJetEmulator") << "Failed to get HcalTrigPrimDigi for HF!"; - iEvent.getByToken(hfToken_, hfHandle); float hfTowers[nHfEta][nHfPhi]; float hfEta[nHfEta][nHfPhi]; float hfPhi[nHfEta][nHfPhi]; - for (int iphi = 0; iphi < nHfPhi; iphi++) { for (int ieta = 0; ieta < nHfEta; ieta++) { hfTowers[ieta][iphi] = 0; @@ -173,7 +365,6 @@ void Phase2L1CaloJetEmulator::produce(edm::Event& iEvent, const edm::EventSetup& } } - const auto& decoder = iSetup.getData(decoderTag_); for (const auto& hit : *hfHandle.product()) { double et = decoder.hcaletValue(hit.id(), hit.t0()); int ieta = 0; @@ -191,6 +382,14 @@ void Phase2L1CaloJetEmulator::produce(edm::Event& iEvent, const edm::EventSetup& iphi = hit.id().iphi() + (nHfPhi / 2 - 1); else if (hit.id().iphi() > nHfPhi / 2) iphi = hit.id().iphi() - (nHfPhi / 2 + 1); + if (abs(hit.id().ieta()) <= 33 && abs(hit.id().ieta()) >= 29) + et = et - all_nvtx_to_PU_sub_funcs["hf"]["er29to33"].Eval(EstimatedNvtx); + if (abs(hit.id().ieta()) <= 37 && abs(hit.id().ieta()) >= 34) + et = et - all_nvtx_to_PU_sub_funcs["hf"]["er34to37"].Eval(EstimatedNvtx); + if (abs(hit.id().ieta()) <= 41 && abs(hit.id().ieta()) >= 38) + et = et - all_nvtx_to_PU_sub_funcs["hf"]["er38to41"].Eval(EstimatedNvtx); + if (et < 0) + et = 0; if (et > 1.) hfTowers[ieta][iphi] = et; // suppress <= 1 GeV towers } @@ -230,8 +429,6 @@ void Phase2L1CaloJetEmulator::produce(edm::Event& iEvent, const edm::EventSetup& for (int i = 0; i < nJets; i++) { jet[i] = gctobj::getRegion(tempST); l1tp2::Phase2L1CaloJet tempJet; - tempJet.setJetEt(jet[i].energy); - tempJet.setTauEt(jet[i].tauEt); int gctjeteta = jet[i].etaCenter; int gctjetphi = jet[i].phiCenter; tempJet.setJetIEta(gctjeteta + k * nBarrelEta / 2); @@ -240,6 +437,8 @@ void Phase2L1CaloJetEmulator::produce(edm::Event& iEvent, const edm::EventSetup& float jetphi = realPhi[gctjeteta + k * nBarrelEta / 2][gctjetphi]; tempJet.setJetEta(jeteta); tempJet.setJetPhi(jetphi); + tempJet.setJetEt(get_jet_pt_calibration(jet[i].energy, jeteta)); + tempJet.setTauEt(get_tau_pt_calibration(jet[i].tauEt, jeteta)); tempJet.setTowerEt(jet[i].energyMax); int gcttowereta = jet[i].etaMax; int gcttowerphi = jet[i].phiMax; @@ -275,8 +474,6 @@ void Phase2L1CaloJetEmulator::produce(edm::Event& iEvent, const edm::EventSetup& for (int i = nJets; i < 2 * nJets; i++) { jet[i] = gctobj::getRegion(tempST_hgcal); l1tp2::Phase2L1CaloJet tempJet; - tempJet.setJetEt(jet[i].energy); - tempJet.setTauEt(jet[i].tauEt); int hgcaljeteta = jet[i].etaCenter; int hgcaljetphi = jet[i].phiCenter; tempJet.setJetIEta(hgcaljeteta + k * nHgcalEta / 2); @@ -285,6 +482,8 @@ void Phase2L1CaloJetEmulator::produce(edm::Event& iEvent, const edm::EventSetup& float jetphi = hgcalPhi[hgcaljeteta + k * nHgcalEta / 2][hgcaljetphi]; tempJet.setJetEta(jeteta); tempJet.setJetPhi(jetphi); + tempJet.setJetEt(get_jet_pt_calibration(jet[i].energy, jeteta)); + tempJet.setTauEt(get_tau_pt_calibration(jet[i].tauEt, jeteta)); tempJet.setTowerEt(jet[i].energyMax); int hgcaltowereta = jet[i].etaMax; int hgcaltowerphi = jet[i].phiMax; @@ -320,8 +519,6 @@ void Phase2L1CaloJetEmulator::produce(edm::Event& iEvent, const edm::EventSetup& for (int i = 2 * nJets; i < 3 * nJets; i++) { jet[i] = gctobj::getRegion(tempST_hf); l1tp2::Phase2L1CaloJet tempJet; - tempJet.setJetEt(jet[i].energy); - tempJet.setTauEt(jet[i].tauEt); int hfjeteta = jet[i].etaCenter; int hfjetphi = jet[i].phiCenter; tempJet.setJetIEta(hfjeteta + k * nHfEta / 2); @@ -330,6 +527,8 @@ void Phase2L1CaloJetEmulator::produce(edm::Event& iEvent, const edm::EventSetup& float jetphi = hfPhi[hfjeteta + k * nHfEta / 2][hfjetphi]; tempJet.setJetEta(jeteta); tempJet.setJetPhi(jetphi); + tempJet.setJetEt(get_jet_pt_calibration(jet[i].energy, jeteta)); + tempJet.setTauEt(get_tau_pt_calibration(jet[i].tauEt, jeteta)); tempJet.setTowerEt(jet[i].energyMax); int hftowereta = jet[i].etaMax; int hftowerphi = jet[i].phiMax; @@ -453,12 +652,271 @@ void Phase2L1CaloJetEmulator::produce(edm::Event& iEvent, const edm::EventSetup& iEvent.put(std::move(jetCands), "GCTJet"); } +// Apply calibrations to HCAL energy based on Jet Eta, Jet pT +float Phase2L1CaloJetEmulator::get_jet_pt_calibration(const float& jet_pt, const float& jet_eta) const { + float abs_eta = std::abs(jet_eta); + float tmp_jet_pt = jet_pt; + if (tmp_jet_pt > 499) + tmp_jet_pt = 499; + + // Different indices sizes in different calo regions. + // Barrel... + size_t eta_index = 0; + size_t pt_index = 0; + float calib = 1.0; + if (abs_eta <= 1.5) { + // Start loop checking 2nd value + for (unsigned int i = 1; i < absEtaBinsBarrel.size(); i++) { + if (abs_eta <= absEtaBinsBarrel.at(i)) + break; + eta_index++; + } + // Start loop checking 2nd value + for (unsigned int i = 1; i < jetPtBins.size(); i++) { + if (tmp_jet_pt <= jetPtBins.at(i)) + break; + pt_index++; + } + calib = calibrationsBarrel[eta_index][pt_index]; + } // end Barrel + else if (abs_eta <= 3.0) // HGCal + { + // Start loop checking 2nd value + for (unsigned int i = 1; i < absEtaBinsHGCal.size(); i++) { + if (abs_eta <= absEtaBinsHGCal.at(i)) + break; + eta_index++; + } + // Start loop checking 2nd value + for (unsigned int i = 1; i < jetPtBins.size(); i++) { + if (tmp_jet_pt <= jetPtBins.at(i)) + break; + pt_index++; + } + calib = calibrationsHGCal[eta_index][pt_index]; + } // end HGCal + else // HF + { + // Start loop checking 2nd value + for (unsigned int i = 1; i < absEtaBinsHF.size(); i++) { + if (abs_eta <= absEtaBinsHF.at(i)) + break; + eta_index++; + } + // Start loop checking 2nd value + for (unsigned int i = 1; i < jetPtBins.size(); i++) { + if (tmp_jet_pt <= jetPtBins.at(i)) + break; + pt_index++; + } + calib = calibrationsHF[eta_index][pt_index]; + } // end HF + + return jet_pt * calib; +} + +// Apply calibrations to tau pT based on L1EG info, EM Fraction, Tau Eta, Tau pT +float Phase2L1CaloJetEmulator::get_tau_pt_calibration(const float& tau_pt, const float& tau_eta) const { + float abs_eta = std::abs(tau_eta); + float tmp_tau_pt = tau_pt; + if (tmp_tau_pt > 199) + tmp_tau_pt = 199; + + // Different indices sizes in different calo regions. + // Barrel... + size_t eta_index = 0; + size_t pt_index = 0; + float calib = 1.0; + if (abs_eta <= 1.5) { + // Start loop checking 2nd value + for (unsigned int i = 1; i < tauAbsEtaBinsBarrel.size(); i++) { + if (abs_eta <= tauAbsEtaBinsBarrel.at(i)) + break; + eta_index++; + } + // Start loop checking 2nd value + for (unsigned int i = 1; i < tauPtBins.size(); i++) { + if (tmp_tau_pt <= tauPtBins.at(i)) + break; + pt_index++; + } + calib = tauPtCalibrationsBarrel[eta_index][pt_index]; + } // end Barrel + else if (abs_eta <= 3.0) // HGCal + { + // Start loop checking 2nd value + for (unsigned int i = 1; i < tauAbsEtaBinsHGCal.size(); i++) { + if (abs_eta <= tauAbsEtaBinsHGCal.at(i)) + break; + eta_index++; + } + // Start loop checking 2nd value + for (unsigned int i = 1; i < tauPtBins.size(); i++) { + if (tmp_tau_pt <= tauPtBins.at(i)) + break; + pt_index++; + } + calib = tauPtCalibrationsHGCal[eta_index][pt_index]; + } // end HGCal + else + return calib; + + return tau_pt * calib; +} + // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void Phase2L1CaloJetEmulator::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { edm::ParameterSetDescription desc; desc.add("gctFullTowers", edm::InputTag("l1tPhase2L1CaloEGammaEmulator", "GCTFullTowers")); desc.add("hgcalTowers", edm::InputTag("l1tHGCalTowerProducer", "HGCalTowerProcessor")); desc.add("hcalDigis", edm::InputTag("simHcalTriggerPrimitiveDigis")); + + edm::ParameterSetDescription nHits_params_validator; + nHits_params_validator.add("fit", "type"); + nHits_params_validator.add>("nHits_params", {1., 1.}); + std::vector nHits_params_default; + edm::ParameterSet nHits_params1; + nHits_params1.addParameter("fit", "hgcalEM"); + nHits_params1.addParameter>("nHits_params", {157.522, 0.090}); + nHits_params_default.push_back(nHits_params1); + edm::ParameterSet nHits_params2; + nHits_params2.addParameter("fit", "hgcalHad"); + nHits_params2.addParameter>("nHits_params", {159.295, 0.178}); + nHits_params_default.push_back(nHits_params2); + edm::ParameterSet nHits_params3; + nHits_params3.addParameter("fit", "hf"); + nHits_params3.addParameter>("nHits_params", {165.706, 0.153}); + nHits_params_default.push_back(nHits_params3); + desc.addVPSet("nHits_to_nvtx_params", nHits_params_validator, nHits_params_default); + + edm::ParameterSetDescription nvtx_params_validator; + nvtx_params_validator.add("calo", "type"); + nvtx_params_validator.add("iEta", "etaregion"); + nvtx_params_validator.add>("nvtx_params", {1., 1.}); + std::vector nvtx_params_default; + edm::ParameterSet nvtx_params1; + nvtx_params1.addParameter("calo", "hgcalEM"); + nvtx_params1.addParameter("iEta", "er1p4to1p8"); + nvtx_params1.addParameter>("nvtx_params", {-0.011772, 0.004142}); + nvtx_params_default.push_back(nvtx_params1); + edm::ParameterSet nvtx_params2; + nvtx_params2.addParameter("calo", "hgcalEM"); + nvtx_params2.addParameter("iEta", "er1p8to2p1"); + nvtx_params2.addParameter>("nvtx_params", {-0.015488, 0.005410}); + nvtx_params_default.push_back(nvtx_params2); + edm::ParameterSet nvtx_params3; + nvtx_params3.addParameter("calo", "hgcalEM"); + nvtx_params3.addParameter("iEta", "er2p1to2p4"); + nvtx_params3.addParameter>("nvtx_params", {-0.021150, 0.006078}); + nvtx_params_default.push_back(nvtx_params3); + edm::ParameterSet nvtx_params4; + nvtx_params4.addParameter("calo", "hgcalEM"); + nvtx_params4.addParameter("iEta", "er2p4to2p7"); + nvtx_params4.addParameter>("nvtx_params", {-0.015705, 0.005339}); + nvtx_params_default.push_back(nvtx_params4); + edm::ParameterSet nvtx_params5; + nvtx_params5.addParameter("calo", "hgcalEM"); + nvtx_params5.addParameter("iEta", "er2p7to3p1"); + nvtx_params5.addParameter>("nvtx_params", {-0.018492, 0.005620}); + nvtx_params_default.push_back(nvtx_params5); + edm::ParameterSet nvtx_params6; + nvtx_params6.addParameter("calo", "hgcalHad"); + nvtx_params6.addParameter("iEta", "er1p4to1p8"); + nvtx_params6.addParameter>("nvtx_params", {0.005675, 0.000615}); + nvtx_params_default.push_back(nvtx_params6); + edm::ParameterSet nvtx_params7; + nvtx_params7.addParameter("calo", "hgcalHad"); + nvtx_params7.addParameter("iEta", "er1p8to2p1"); + nvtx_params7.addParameter>("nvtx_params", {0.004560, 0.001099}); + nvtx_params_default.push_back(nvtx_params7); + edm::ParameterSet nvtx_params8; + nvtx_params8.addParameter("calo", "hgcalHad"); + nvtx_params8.addParameter("iEta", "er2p1to2p4"); + nvtx_params8.addParameter>("nvtx_params", {0.000036, 0.001608}); + nvtx_params_default.push_back(nvtx_params8); + edm::ParameterSet nvtx_params9; + nvtx_params9.addParameter("calo", "hgcalHad"); + nvtx_params9.addParameter("iEta", "er2p4to2p7"); + nvtx_params9.addParameter>("nvtx_params", {0.000869, 0.001754}); + nvtx_params_default.push_back(nvtx_params9); + edm::ParameterSet nvtx_params10; + nvtx_params10.addParameter("calo", "hgcalHad"); + nvtx_params10.addParameter("iEta", "er2p7to3p1"); + nvtx_params10.addParameter>("nvtx_params", {-0.006574, 0.003134}); + nvtx_params_default.push_back(nvtx_params10); + edm::ParameterSet nvtx_params11; + nvtx_params11.addParameter("calo", "hf"); + nvtx_params11.addParameter("iEta", "er29to33"); + nvtx_params11.addParameter>("nvtx_params", {-0.203291, 0.044096}); + nvtx_params_default.push_back(nvtx_params11); + edm::ParameterSet nvtx_params12; + nvtx_params12.addParameter("calo", "hf"); + nvtx_params12.addParameter("iEta", "er34to37"); + nvtx_params12.addParameter>("nvtx_params", {-0.210922, 0.045628}); + nvtx_params_default.push_back(nvtx_params12); + edm::ParameterSet nvtx_params13; + nvtx_params13.addParameter("calo", "hf"); + nvtx_params13.addParameter("iEta", "er38to41"); + nvtx_params13.addParameter>("nvtx_params", {-0.229562, 0.050560}); + nvtx_params_default.push_back(nvtx_params13); + desc.addVPSet("nvtx_to_PU_sub_params", nvtx_params_validator, nvtx_params_default); + + desc.add>("jetPtBins", {0.0, 5.0, 7.5, 10.0, 12.5, 15.0, 17.5, 20.0, 22.5, 25.0, 27.5, + 30.0, 35.0, 40.0, 45.0, 50.0, 55.0, 60.0, 65.0, 70.0, 75.0, 80.0, + 85.0, 90.0, 95.0, 100.0, 110.0, 120.0, 130.0, 140.0, 150.0, 160.0, 170.0, + 180.0, 190.0, 200.0, 225.0, 250.0, 275.0, 300.0, 325.0, 400.0, 500.0}); + desc.add>("absEtaBinsBarrel", {0.00, 0.30, 0.60, 1.00, 1.50}); + desc.add>( + "jetCalibrationsBarrel", + {2.459, 2.320, 2.239, 2.166, 2.100, 2.040, 1.986, 1.937, 1.892, 1.852, 1.816, 1.768, 1.714, 1.670, 1.633, 1.603, + 1.578, 1.557, 1.540, 1.525, 1.513, 1.502, 1.493, 1.486, 1.479, 1.470, 1.460, 1.452, 1.445, 1.439, 1.433, 1.427, + 1.422, 1.417, 1.411, 1.403, 1.390, 1.377, 1.365, 1.352, 1.327, 1.284, 4.695, 3.320, 2.751, 2.361, 2.093, 1.908, + 1.781, 1.694, 1.633, 1.591, 1.562, 1.533, 1.511, 1.499, 1.492, 1.486, 1.482, 1.478, 1.474, 1.470, 1.467, 1.463, + 1.459, 1.456, 1.452, 1.447, 1.440, 1.433, 1.425, 1.418, 1.411, 1.404, 1.397, 1.390, 1.382, 1.370, 1.352, 1.334, + 1.316, 1.298, 1.262, 1.200, 5.100, 3.538, 2.892, 2.448, 2.143, 1.933, 1.789, 1.689, 1.620, 1.572, 1.539, 1.506, + 1.482, 1.469, 1.460, 1.455, 1.450, 1.446, 1.442, 1.438, 1.434, 1.431, 1.427, 1.423, 1.420, 1.414, 1.407, 1.400, + 1.392, 1.385, 1.378, 1.370, 1.363, 1.356, 1.348, 1.336, 1.317, 1.299, 1.281, 1.263, 1.226, 1.162, 3.850, 3.438, + 3.211, 3.017, 2.851, 2.708, 2.585, 2.479, 2.388, 2.310, 2.243, 2.159, 2.072, 2.006, 1.956, 1.917, 1.887, 1.863, + 1.844, 1.828, 1.814, 1.802, 1.791, 1.782, 1.773, 1.760, 1.744, 1.729, 1.714, 1.699, 1.685, 1.670, 1.656, 1.641, + 1.627, 1.602, 1.566, 1.530, 1.494, 1.458, 1.386, 1.260}); + desc.add>("absEtaBinsHGCal", {1.50, 1.90, 2.40, 3.00}); + desc.add>( + "jetCalibrationsHGCal", + {5.604, 4.578, 4.061, 3.647, 3.314, 3.047, 2.832, 2.660, 2.521, 2.410, 2.320, 2.216, 2.120, 2.056, + 2.013, 1.983, 1.961, 1.945, 1.932, 1.922, 1.913, 1.905, 1.898, 1.891, 1.884, 1.874, 1.861, 1.848, + 1.835, 1.822, 1.810, 1.797, 1.784, 1.771, 1.759, 1.736, 1.704, 1.673, 1.641, 1.609, 1.545, 1.434, + 4.385, 3.584, 3.177, 2.849, 2.584, 2.370, 2.197, 2.057, 1.944, 1.853, 1.780, 1.695, 1.616, 1.564, + 1.530, 1.507, 1.491, 1.480, 1.472, 1.466, 1.462, 1.459, 1.456, 1.453, 1.451, 1.447, 1.443, 1.439, + 1.435, 1.431, 1.427, 1.423, 1.419, 1.416, 1.412, 1.405, 1.395, 1.385, 1.376, 1.366, 1.346, 1.312, + 562.891, 68.647, 17.648, 5.241, 2.223, 1.490, 1.312, 1.270, 1.260, 1.259, 1.259, 1.260, 1.263, 1.265, + 1.267, 1.269, 1.271, 1.273, 1.275, 1.277, 1.279, 1.281, 1.283, 1.285, 1.287, 1.290, 1.295, 1.299, + 1.303, 1.307, 1.311, 1.315, 1.319, 1.323, 1.328, 1.335, 1.345, 1.355, 1.366, 1.376, 1.397, 1.433}); + desc.add>("absEtaBinsHF", {3.00, 3.60, 6.00}); + desc.add>( + "jetCalibrationsHF", + {8.169, 6.873, 6.155, 5.535, 5.001, 4.539, 4.141, 3.798, 3.501, 3.245, 3.024, 2.748, 2.463, 2.249, + 2.090, 1.971, 1.881, 1.814, 1.763, 1.725, 1.695, 1.673, 1.655, 1.642, 1.631, 1.618, 1.605, 1.596, + 1.588, 1.581, 1.575, 1.569, 1.563, 1.557, 1.551, 1.541, 1.527, 1.513, 1.498, 1.484, 1.456, 1.406, + 2.788, 2.534, 2.388, 2.258, 2.141, 2.037, 1.945, 1.862, 1.788, 1.722, 1.664, 1.587, 1.503, 1.436, + 1.382, 1.339, 1.305, 1.277, 1.255, 1.237, 1.223, 1.211, 1.201, 1.193, 1.186, 1.178, 1.170, 1.164, + 1.159, 1.154, 1.151, 1.147, 1.144, 1.141, 1.138, 1.133, 1.126, 1.118, 1.111, 1.104, 1.090, 1.064}); + desc.add>("tauPtBins", {0.0, 5.0, 7.5, 10.0, 12.5, 15.0, 20.0, 25.0, 30.0, 35.0, + 40.0, 45.0, 50.0, 55.0, 60.0, 70.0, 80.0, 100.0, 150.0, 200.0}); + desc.add>("tauAbsEtaBinsBarrel", {0.00, 0.30, 0.60, 1.00, 1.50}); + desc.add>("tauCalibrationsBarrel", + {1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, + 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, + 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.102, + 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, + 1.102, 1.102, 1.102, 1.102, 1.102, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139}); + desc.add>("tauAbsEtaBinsHGCal", {1.50, 1.90, 2.40, 3.00}); + desc.add>( + "tauCalibrationsHGCal", + {1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, + 1.384, 1.384, 1.384, 1.384, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, + 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, + 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133}); + descriptions.addWithDefaultLabel(desc); } diff --git a/L1Trigger/L1CaloTrigger/python/l1tPhase2CaloJetEmulator_cfi.py b/L1Trigger/L1CaloTrigger/python/l1tPhase2CaloJetEmulator_cfi.py index 44cda2b527e55..fd0ba87e750ee 100644 --- a/L1Trigger/L1CaloTrigger/python/l1tPhase2CaloJetEmulator_cfi.py +++ b/L1Trigger/L1CaloTrigger/python/l1tPhase2CaloJetEmulator_cfi.py @@ -1,7 +1,123 @@ import FWCore.ParameterSet.Config as cms l1tPhase2CaloJetEmulator = cms.EDProducer("Phase2L1CaloJetEmulator", - gctFullTowers = cms.InputTag("l1tPhase2L1CaloEGammaEmulator","GCTFullTowers"), - hgcalTowers = cms.InputTag("l1tHGCalTowerProducer","HGCalTowerProcessor"), - hcalDigis = cms.InputTag("simHcalTriggerPrimitiveDigis"), + gctFullTowers = cms.InputTag("l1tPhase2L1CaloEGammaEmulator","GCTFullTowers"), + hgcalTowers = cms.InputTag("l1tHGCalTowerProducer","HGCalTowerProcessor"), + hcalDigis = cms.InputTag("simHcalTriggerPrimitiveDigis"), + nHits_to_nvtx_params = cms.VPSet( + cms.PSet( + fit = cms.string( "hgcalEM" ), + nHits_params = cms.vdouble( 157.522, 0.090 ) + ), + cms.PSet( + fit = cms.string( "hgcalHad" ), + nHits_params = cms.vdouble( 159.295, 0.178 ) + ), + cms.PSet( + fit = cms.string( "hf" ), + nHits_params = cms.vdouble( 165.706, 0.153 ) + ), + ), + nvtx_to_PU_sub_params = cms.VPSet( + cms.PSet( + calo = cms.string( "hgcalEM" ), + iEta = cms.string( "er1p4to1p8" ), + nvtx_params = cms.vdouble( -0.011772, 0.004142 ) + ), + cms.PSet( + calo = cms.string( "hgcalEM" ), + iEta = cms.string( "er1p8to2p1" ), + nvtx_params = cms.vdouble( -0.015488, 0.005410 ) + ), + cms.PSet( + calo = cms.string( "hgcalEM" ), + iEta = cms.string( "er2p1to2p4" ), + nvtx_params = cms.vdouble( -0.021150, 0.006078 ) + ), + cms.PSet( + calo = cms.string( "hgcalEM" ), + iEta = cms.string( "er2p4to2p7" ), + nvtx_params = cms.vdouble( -0.015705, 0.005339 ) + ), + cms.PSet( + calo = cms.string( "hgcalEM" ), + iEta = cms.string( "er2p7to3p1" ), + nvtx_params = cms.vdouble( -0.018492, 0.005620 ) + ), + cms.PSet( + calo = cms.string( "hgcalHad" ), + iEta = cms.string( "er1p4to1p8" ), + nvtx_params = cms.vdouble( 0.005675, 0.000615 ) + ), + cms.PSet( + calo = cms.string( "hgcalHad" ), + iEta = cms.string( "er1p8to2p1" ), + nvtx_params = cms.vdouble( 0.004560, 0.001099 ) + ), + cms.PSet( + calo = cms.string( "hgcalHad" ), + iEta = cms.string( "er2p1to2p4" ), + nvtx_params = cms.vdouble( 0.000036, 0.001608 ) + ), + cms.PSet( + calo = cms.string( "hgcalHad" ), + iEta = cms.string( "er2p4to2p7" ), + nvtx_params = cms.vdouble( 0.000869, 0.001754 ) + ), + cms.PSet( + calo = cms.string( "hgcalHad" ), + iEta = cms.string( "er2p7to3p1" ), + nvtx_params = cms.vdouble( -0.006574, 0.003134 ) + ), + cms.PSet( + calo = cms.string( "hf" ), + iEta = cms.string( "er29to33" ), + nvtx_params = cms.vdouble( -0.203291, 0.044096 ) + ), + cms.PSet( + calo = cms.string( "hf" ), + iEta = cms.string( "er34to37" ), + nvtx_params = cms.vdouble( -0.210922, 0.045628 ) + ), + cms.PSet( + calo = cms.string( "hf" ), + iEta = cms.string( "er38to41" ), + nvtx_params = cms.vdouble( -0.229562, 0.050560 ) + ), + ), + # Calibrations derived 7 December 2023 on 13_2_0 Phase2Fall22DRMiniAOD QCD sample + jetPtBins = cms.vdouble([ 0.0,5.0,7.5,10.0,12.5,15.0,17.5,20.0,22.5,25.0,27.5,30.0,35.0,40.0,45.0,50.0,55.0,60.0,65.0,70.0,75.0,80.0,85.0,90.0,95.0,100.0,110.0,120.0,130.0,140.0,150.0,160.0,170.0,180.0,190.0,200.0,225.0,250.0,275.0,300.0,325.0,400.0,500.0]), + absEtaBinsBarrel = cms.vdouble([ 0.00,0.30,0.60,1.00,1.50]), + jetCalibrationsBarrel = cms.vdouble([ + 2.459, 2.320, 2.239, 2.166, 2.100, 2.040, 1.986, 1.937, 1.892, 1.852, 1.816, 1.768, 1.714, 1.670, 1.633, 1.603, 1.578, 1.557, 1.540, 1.525, 1.513, 1.502, 1.493, 1.486, 1.479, 1.470, 1.460, 1.452, 1.445, 1.439, 1.433, 1.427, 1.422, 1.417, 1.411, 1.403, 1.390, 1.377, 1.365, 1.352, 1.327, 1.284, + 4.695, 3.320, 2.751, 2.361, 2.093, 1.908, 1.781, 1.694, 1.633, 1.591, 1.562, 1.533, 1.511, 1.499, 1.492, 1.486, 1.482, 1.478, 1.474, 1.470, 1.467, 1.463, 1.459, 1.456, 1.452, 1.447, 1.440, 1.433, 1.425, 1.418, 1.411, 1.404, 1.397, 1.390, 1.382, 1.370, 1.352, 1.334, 1.316, 1.298, 1.262, 1.200, + 5.100, 3.538, 2.892, 2.448, 2.143, 1.933, 1.789, 1.689, 1.620, 1.572, 1.539, 1.506, 1.482, 1.469, 1.460, 1.455, 1.450, 1.446, 1.442, 1.438, 1.434, 1.431, 1.427, 1.423, 1.420, 1.414, 1.407, 1.400, 1.392, 1.385, 1.378, 1.370, 1.363, 1.356, 1.348, 1.336, 1.317, 1.299, 1.281, 1.263, 1.226, 1.162, + 3.850, 3.438, 3.211, 3.017, 2.851, 2.708, 2.585, 2.479, 2.388, 2.310, 2.243, 2.159, 2.072, 2.006, 1.956, 1.917, 1.887, 1.863, 1.844, 1.828, 1.814, 1.802, 1.791, 1.782, 1.773, 1.760, 1.744, 1.729, 1.714, 1.699, 1.685, 1.670, 1.656, 1.641, 1.627, 1.602, 1.566, 1.530, 1.494, 1.458, 1.386, 1.260, + ]), + absEtaBinsHGCal = cms.vdouble([ 1.50,1.90,2.40,3.00]), + jetCalibrationsHGCal = cms.vdouble([ + 5.604, 4.578, 4.061, 3.647, 3.314, 3.047, 2.832, 2.660, 2.521, 2.410, 2.320, 2.216, 2.120, 2.056, 2.013, 1.983, 1.961, 1.945, 1.932, 1.922, 1.913, 1.905, 1.898, 1.891, 1.884, 1.874, 1.861, 1.848, 1.835, 1.822, 1.810, 1.797, 1.784, 1.771, 1.759, 1.736, 1.704, 1.673, 1.641, 1.609, 1.545, 1.434, + 4.385, 3.584, 3.177, 2.849, 2.584, 2.370, 2.197, 2.057, 1.944, 1.853, 1.780, 1.695, 1.616, 1.564, 1.530, 1.507, 1.491, 1.480, 1.472, 1.466, 1.462, 1.459, 1.456, 1.453, 1.451, 1.447, 1.443, 1.439, 1.435, 1.431, 1.427, 1.423, 1.419, 1.416, 1.412, 1.405, 1.395, 1.385, 1.376, 1.366, 1.346, 1.312, + 562.891, 68.647, 17.648, 5.241, 2.223, 1.490, 1.312, 1.270, 1.260, 1.259, 1.259, 1.260, 1.263, 1.265, 1.267, 1.269, 1.271, 1.273, 1.275, 1.277, 1.279, 1.281, 1.283, 1.285, 1.287, 1.290, 1.295, 1.299, 1.303, 1.307, 1.311, 1.315, 1.319, 1.323, 1.328, 1.335, 1.345, 1.355, 1.366, 1.376, 1.397, 1.433, + ]), + absEtaBinsHF = cms.vdouble([ 3.00,3.60,6.00]), + jetCalibrationsHF = cms.vdouble([ + 8.169, 6.873, 6.155, 5.535, 5.001, 4.539, 4.141, 3.798, 3.501, 3.245, 3.024, 2.748, 2.463, 2.249, 2.090, 1.971, 1.881, 1.814, 1.763, 1.725, 1.695, 1.673, 1.655, 1.642, 1.631, 1.618, 1.605, 1.596, 1.588, 1.581, 1.575, 1.569, 1.563, 1.557, 1.551, 1.541, 1.527, 1.513, 1.498, 1.484, 1.456, 1.406, + 2.788, 2.534, 2.388, 2.258, 2.141, 2.037, 1.945, 1.862, 1.788, 1.722, 1.664, 1.587, 1.503, 1.436, 1.382, 1.339, 1.305, 1.277, 1.255, 1.237, 1.223, 1.211, 1.201, 1.193, 1.186, 1.178, 1.170, 1.164, 1.159, 1.154, 1.151, 1.147, 1.144, 1.141, 1.138, 1.133, 1.126, 1.118, 1.111, 1.104, 1.090, 1.064, + ]), + # Calibrations derived 7 December 2023 on 13_2_0 Phase2Fall22DRMiniAOD VBFHiggsTauTau sample + tauPtBins = cms.vdouble([ 0.0,5.0,7.5,10.0,12.5,15.0,20.0,25.0,30.0,35.0,40.0,45.0,50.0,55.0,60.0,70.0,80.0,100.0,150.0,200.0]), + tauAbsEtaBinsBarrel = cms.vdouble([ 0.00,0.30,0.60,1.00,1.50]), + tauCalibrationsBarrel = cms.vdouble([ + 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, + 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, + 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, + 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, + ]), + tauAbsEtaBinsHGCal = cms.vdouble([ 1.50,1.90,2.40,3.00]), + tauCalibrationsHGCal = cms.vdouble([ + 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, + 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, + 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, + ]), ) From 58dade5aaa552aa247caa3a83469f7149512e105 Mon Sep 17 00:00:00 2001 From: mmusich Date: Thu, 18 Jan 2024 09:13:37 +0100 Subject: [PATCH 276/281] decrease the value of minPrec in ReferenceTrajectory to allow measurements for the Phase2 SiStrip modules to be accepted by GBL Co-authored-by: ckleinw --- .../src/ReferenceTrajectory.cc | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/Alignment/ReferenceTrajectories/src/ReferenceTrajectory.cc b/Alignment/ReferenceTrajectories/src/ReferenceTrajectory.cc index 6fe8cc45ab15d..cd55c5564ae84 100644 --- a/Alignment/ReferenceTrajectories/src/ReferenceTrajectory.cc +++ b/Alignment/ReferenceTrajectories/src/ReferenceTrajectory.cc @@ -956,7 +956,14 @@ bool ReferenceTrajectory::addMaterialEffectsLocalGbl(const std::vector rejected + // - for the Phase 2 Strips in PS modules (Length ~ 2.4 cm) is 2.08 => accepted + // - for the Phase 2 Strips in 2S modules (Length ~ 5 cm) is 0.48 => accepted + const double minPrec = 0.3; AlgebraicMatrix OffsetToLocal(5, 2); // dLocal/dU OffsetToLocal[3][0] = 1.; @@ -1038,7 +1045,14 @@ bool ReferenceTrajectory::addMaterialEffectsCurvlinGbl(const std::vector rejected + // - for the Phase 2 Strips in PS modules (Length ~ 2.4 cm) is 2.08 => accepted + // - for the Phase 2 Strips in 2S modules (Length ~ 5 cm) is 0.48 => accepted + const double minPrec = 0.3; int ierr = 0; AlgebraicMatrix OffsetToCurv(5, 2); // dCurv/dU From ba8f7a271fafa39585fc8595568daa8251c841e6 Mon Sep 17 00:00:00 2001 From: "A.R.Sahasransu" Date: Thu, 18 Jan 2024 14:34:18 +0100 Subject: [PATCH 277/281] Commit for data format update of 2024 scouting electrons and photons and associated tests --- .../Scouting/interface/Run3ScoutingElectron.h | 50 ++++++++++ .../Scouting/interface/Run3ScoutingPhoton.h | 25 +++++ DataFormats/Scouting/src/classes_def.xml | 6 +- .../Scouting/test/TestReadRun3Scouting.cc | 98 +++++++++++++++++-- .../Scouting/test/TestRun3ScoutingFormats.sh | 4 +- .../Scouting/test/TestWriteRun3Scouting.cc | 45 +++++++-- .../test/create_Run3Scouting_test_file_cfg.py | 11 ++- .../test/test_readRun3Scouting_cfg.py | 15 ++- .../plugins/HLTScoutingEgammaProducer.cc | 27 +++++ 9 files changed, 250 insertions(+), 31 deletions(-) diff --git a/DataFormats/Scouting/interface/Run3ScoutingElectron.h b/DataFormats/Scouting/interface/Run3ScoutingElectron.h index 6076b09882f8d..2216438adf077 100644 --- a/DataFormats/Scouting/interface/Run3ScoutingElectron.h +++ b/DataFormats/Scouting/interface/Run3ScoutingElectron.h @@ -13,11 +13,18 @@ class Run3ScoutingElectron { float eta, float phi, float m, + float rawEnergy, + float preshowerEnergy, + float corrEcalEnergyError, std::vector trkd0, std::vector trkdz, std::vector trkpt, std::vector trketa, std::vector trkphi, + std::vector trkpMode, + std::vector trketaMode, + std::vector trkphiMode, + std::vector trkqoverpModeError, std::vector trkchi2overndf, float dEtaIn, float dPhiIn, @@ -26,6 +33,7 @@ class Run3ScoutingElectron { float ooEMOop, int missingHits, std::vector trkcharge, + float trackfbrem, float ecalIso, float hcalIso, float trackIso, @@ -33,6 +41,8 @@ class Run3ScoutingElectron { float sMin, float sMaj, uint32_t seedId, + uint32_t nClusters, + uint32_t nCrystals, std::vector energyMatrix, std::vector detIds, std::vector timingMatrix, @@ -41,11 +51,18 @@ class Run3ScoutingElectron { eta_(eta), phi_(phi), m_(m), + rawEnergy_(rawEnergy), + preshowerEnergy_(preshowerEnergy), + corrEcalEnergyError_(corrEcalEnergyError), trkd0_(std::move(trkd0)), trkdz_(std::move(trkdz)), trkpt_(std::move(trkpt)), trketa_(std::move(trketa)), trkphi_(std::move(trkphi)), + trkpMode_(std::move(trkpMode)), + trketaMode_(std::move(trketaMode)), + trkphiMode_(std::move(trkphiMode)), + trkqoverpModeError_(std::move(trkqoverpModeError)), trkchi2overndf_(std::move(trkchi2overndf)), dEtaIn_(dEtaIn), dPhiIn_(dPhiIn), @@ -54,6 +71,7 @@ class Run3ScoutingElectron { ooEMOop_(ooEMOop), missingHits_(missingHits), trkcharge_(std::move(trkcharge)), + trackfbrem_(trackfbrem), ecalIso_(ecalIso), hcalIso_(hcalIso), trackIso_(trackIso), @@ -61,6 +79,8 @@ class Run3ScoutingElectron { sMin_(sMin), sMaj_(sMaj), seedId_(seedId), + nClusters_(nClusters), + nCrystals_(nCrystals), energyMatrix_(std::move(energyMatrix)), detIds_(std::move(detIds)), timingMatrix_(std::move(timingMatrix)), @@ -71,11 +91,18 @@ class Run3ScoutingElectron { eta_(0), phi_(0), m_(0), + rawEnergy_(0), + preshowerEnergy_(0), + corrEcalEnergyError_(0), trkd0_(0), trkdz_(0), trkpt_(0), trketa_(0), trkphi_(0), + trkpMode_(0), + trketaMode_(0), + trkphiMode_(0), + trkqoverpModeError_(0), trkchi2overndf_(0), dEtaIn_(0), dPhiIn_(0), @@ -84,6 +111,7 @@ class Run3ScoutingElectron { ooEMOop_(0), missingHits_(0), trkcharge_(0), + trackfbrem_(0), ecalIso_(0), hcalIso_(0), trackIso_(0), @@ -91,6 +119,8 @@ class Run3ScoutingElectron { sMin_(0), sMaj_(0), seedId_(0), + nClusters_(0), + nCrystals_(0), rechitZeroSuppression_(false) {} //accessor functions @@ -98,11 +128,18 @@ class Run3ScoutingElectron { float eta() const { return eta_; } float phi() const { return phi_; } float m() const { return m_; } + float rawEnergy() const { return rawEnergy_; } + float preshowerEnergy() const { return preshowerEnergy_; } + float corrEcalEnergyError() const { return corrEcalEnergyError_; } std::vector const& trkd0() const { return trkd0_; } std::vector const& trkdz() const { return trkdz_; } std::vector const& trkpt() const { return trkpt_; } std::vector const& trketa() const { return trketa_; } std::vector const& trkphi() const { return trkphi_; } + std::vector const& trkpMode() const { return trkpMode_; } + std::vector const& trketaMode() const { return trketaMode_; } + std::vector const& trkphiMode() const { return trkphiMode_; } + std::vector const& trkqoverpModeError() const { return trkqoverpModeError_; } std::vector const& trkchi2overndf() const { return trkchi2overndf_; } float dEtaIn() const { return dEtaIn_; } float dPhiIn() const { return dPhiIn_; } @@ -111,6 +148,7 @@ class Run3ScoutingElectron { float ooEMOop() const { return ooEMOop_; } int missingHits() const { return missingHits_; } std::vector const& trkcharge() const { return trkcharge_; } + float trackfbrem() const { return trackfbrem_; } float ecalIso() const { return ecalIso_; } float hcalIso() const { return hcalIso_; } float trackIso() const { return trackIso_; } @@ -118,6 +156,8 @@ class Run3ScoutingElectron { float sMin() const { return sMin_; } float sMaj() const { return sMaj_; } uint32_t seedId() const { return seedId_; } + uint32_t nClusters() const { return nClusters_; } + uint32_t nCrystals() const { return nCrystals_; } std::vector const& energyMatrix() const { return energyMatrix_; } std::vector const& detIds() const { return detIds_; } std::vector const& timingMatrix() const { return timingMatrix_; } @@ -128,11 +168,18 @@ class Run3ScoutingElectron { float eta_; float phi_; float m_; + float rawEnergy_; + float preshowerEnergy_; + float corrEcalEnergyError_; std::vector trkd0_; std::vector trkdz_; std::vector trkpt_; std::vector trketa_; std::vector trkphi_; + std::vector trkpMode_; + std::vector trketaMode_; + std::vector trkphiMode_; + std::vector trkqoverpModeError_; std::vector trkchi2overndf_; float dEtaIn_; float dPhiIn_; @@ -141,6 +188,7 @@ class Run3ScoutingElectron { float ooEMOop_; int missingHits_; std::vector trkcharge_; + float trackfbrem_; float ecalIso_; float hcalIso_; float trackIso_; @@ -148,6 +196,8 @@ class Run3ScoutingElectron { float sMin_; float sMaj_; uint32_t seedId_; + uint32_t nClusters_; + uint32_t nCrystals_; std::vector energyMatrix_; std::vector detIds_; std::vector timingMatrix_; diff --git a/DataFormats/Scouting/interface/Run3ScoutingPhoton.h b/DataFormats/Scouting/interface/Run3ScoutingPhoton.h index 44399ef32a907..b0ccc3ef6530c 100644 --- a/DataFormats/Scouting/interface/Run3ScoutingPhoton.h +++ b/DataFormats/Scouting/interface/Run3ScoutingPhoton.h @@ -13,6 +13,9 @@ class Run3ScoutingPhoton { float eta, float phi, float m, + float rawEnergy, + float preshowerEnergy, + float corrEcalEnergyError, float sigmaIetaIeta, float hOverE, float ecalIso, @@ -22,6 +25,8 @@ class Run3ScoutingPhoton { float sMin, float sMaj, uint32_t seedId, + uint32_t nClusters, + uint32_t nCrystals, std::vector energyMatrix, std::vector detIds, std::vector timingMatrix, @@ -30,6 +35,9 @@ class Run3ScoutingPhoton { eta_(eta), phi_(phi), m_(m), + rawEnergy_(rawEnergy), + preshowerEnergy_(preshowerEnergy), + corrEcalEnergyError_(corrEcalEnergyError), sigmaIetaIeta_(sigmaIetaIeta), hOverE_(hOverE), ecalIso_(ecalIso), @@ -39,6 +47,8 @@ class Run3ScoutingPhoton { sMin_(sMin), sMaj_(sMaj), seedId_(seedId), + nClusters_(nClusters), + nCrystals_(nCrystals), energyMatrix_(std::move(energyMatrix)), detIds_(std::move(detIds)), timingMatrix_(std::move(timingMatrix)), @@ -49,6 +59,9 @@ class Run3ScoutingPhoton { eta_(0), phi_(0), m_(0), + rawEnergy_(0), + preshowerEnergy_(0), + corrEcalEnergyError_(0), sigmaIetaIeta_(0), hOverE_(0), ecalIso_(0), @@ -58,6 +71,8 @@ class Run3ScoutingPhoton { sMin_(0), sMaj_(0), seedId_(0), + nClusters_(0), + nCrystals_(0), energyMatrix_(0), timingMatrix_(0), rechitZeroSuppression_(false) {} @@ -67,6 +82,9 @@ class Run3ScoutingPhoton { float eta() const { return eta_; } float phi() const { return phi_; } float m() const { return m_; } + float rawEnergy() const { return rawEnergy_; } + float preshowerEnergy() const { return preshowerEnergy_; } + float corrEcalEnergyError() const { return corrEcalEnergyError_; } float sigmaIetaIeta() const { return sigmaIetaIeta_; } float hOverE() const { return hOverE_; } float ecalIso() const { return ecalIso_; } @@ -76,6 +94,8 @@ class Run3ScoutingPhoton { float sMin() const { return sMin_; } float sMaj() const { return sMaj_; } uint32_t seedId() const { return seedId_; } + uint32_t nClusters() const { return nClusters_; } + uint32_t nCrystals() const { return nCrystals_; } std::vector const& energyMatrix() const { return energyMatrix_; } std::vector const& detIds() const { return detIds_; } std::vector const& timingMatrix() const { return timingMatrix_; } @@ -86,6 +106,9 @@ class Run3ScoutingPhoton { float eta_; float phi_; float m_; + float rawEnergy_; + float preshowerEnergy_; + float corrEcalEnergyError_; float sigmaIetaIeta_; float hOverE_; float ecalIso_; @@ -95,6 +118,8 @@ class Run3ScoutingPhoton { float sMin_; float sMaj_; uint32_t seedId_; + uint32_t nClusters_; + uint32_t nCrystals_; std::vector energyMatrix_; std::vector detIds_; std::vector timingMatrix_; diff --git a/DataFormats/Scouting/src/classes_def.xml b/DataFormats/Scouting/src/classes_def.xml index abeb9b6f534b3..fd6965bf7072f 100644 --- a/DataFormats/Scouting/src/classes_def.xml +++ b/DataFormats/Scouting/src/classes_def.xml @@ -2,11 +2,12 @@ - + + @@ -50,10 +51,11 @@ - + + diff --git a/DataFormats/Scouting/test/TestReadRun3Scouting.cc b/DataFormats/Scouting/test/TestReadRun3Scouting.cc index 2e092860cae62..5ccd4bab61993 100644 --- a/DataFormats/Scouting/test/TestReadRun3Scouting.cc +++ b/DataFormats/Scouting/test/TestReadRun3Scouting.cc @@ -83,6 +83,7 @@ namespace edmtest { const std::vector expectedPFJetIntegralValues_; const edm::EDGetTokenT> pfJetsToken_; + const int inputPhotonClassVersion_; const std::vector expectedPhotonFloatingPointValues_; const std::vector expectedPhotonIntegralValues_; const edm::EDGetTokenT> photonsToken_; @@ -114,6 +115,7 @@ namespace edmtest { expectedPFJetFloatingPointValues_(iPSet.getParameter>("expectedPFJetFloatingPointValues")), expectedPFJetIntegralValues_(iPSet.getParameter>("expectedPFJetIntegralValues")), pfJetsToken_(consumes(iPSet.getParameter("pfJetsTag"))), + inputPhotonClassVersion_(iPSet.getParameter("photonClassVersion")), expectedPhotonFloatingPointValues_( iPSet.getParameter>("expectedPhotonFloatingPointValues")), expectedPhotonIntegralValues_(iPSet.getParameter>("expectedPhotonIntegralValues")), @@ -128,12 +130,12 @@ namespace edmtest { if (expectedCaloJetsValues_.size() != 16) { throwWithMessageFromConstructor("test configuration error, expectedCaloJetsValues must have size 16"); } - if (expectedElectronFloatingPointValues_.size() != 25) { + if (expectedElectronFloatingPointValues_.size() != 33) { throwWithMessageFromConstructor( - "test configuration error, expectedElectronFloatingPointValues must have size 25"); + "test configuration error, expectedElectronFloatingPointValues must have size 33"); } - if (expectedElectronIntegralValues_.size() != 6) { - throwWithMessageFromConstructor("test configuration error, expectedElectronIntegralValues must have size 6"); + if (expectedElectronIntegralValues_.size() != 8) { + throwWithMessageFromConstructor("test configuration error, expectedElectronIntegralValues must have size 8"); } if (expectedMuonFloatingPointValues_.size() != 37) { throwWithMessageFromConstructor("test configuration error, expectedMuonFloatingPointValues must have size 37"); @@ -154,11 +156,11 @@ namespace edmtest { if (expectedPFJetIntegralValues_.size() != 8) { throwWithMessageFromConstructor("test configuration error, expectedPFJetIntegralValues must have size 8"); } - if (expectedPhotonFloatingPointValues_.size() != 14) { - throwWithMessageFromConstructor("test configuration error, expectedPhotonFloatingPointValues must have size 14"); + if (expectedPhotonFloatingPointValues_.size() != 17) { + throwWithMessageFromConstructor("test configuration error, expectedPhotonFloatingPointValues must have size 17"); } - if (expectedPhotonIntegralValues_.size() != 3) { - throwWithMessageFromConstructor("test configuration error, expectedPhotonIntegralValues must have size 3"); + if (expectedPhotonIntegralValues_.size() != 5) { + throwWithMessageFromConstructor("test configuration error, expectedPhotonIntegralValues must have size 5"); } if (expectedTrackFloatingPointValues_.size() != 29) { throwWithMessageFromConstructor("test configuration error, expectedTrackFloatingPointValues must have size 29"); @@ -202,6 +204,7 @@ namespace edmtest { desc.add>("expectedPFJetFloatingPointValues"); desc.add>("expectedPFJetIntegralValues"); desc.add("pfJetsTag"); + desc.add("photonClassVersion"); desc.add>("expectedPhotonFloatingPointValues"); desc.add>("expectedPhotonIntegralValues"); desc.add("photonsTag"); @@ -393,7 +396,7 @@ namespace edmtest { if (electron.rechitZeroSuppression() != static_cast((expectedElectronIntegralValues_[4] + iOffset) % 2)) { throwWithMessage("analyzeElectrons, rechitZeroSuppression does not equal expected value"); } - if (inputElectronClassVersion_ == 6) { + if (inputElectronClassVersion_ == 6 || inputElectronClassVersion_ == 7) { if (electron.trkd0().size() != vectorSize) { throwWithMessage("analyzeElectrons, trkd0 does not have expected size"); } @@ -465,6 +468,66 @@ namespace edmtest { ++j; } } + if (inputElectronClassVersion_ == 7) { + if (electron.rawEnergy() != expectedElectronFloatingPointValues_[25] + offset) { + throwWithMessage("analyzeElectrons, rawEnergy does not equal expected value"); + } + if (electron.preshowerEnergy() != expectedElectronFloatingPointValues_[26] + offset) { + throwWithMessage("analyzeElectrons, preshowerEnergy does not equal expected value"); + } + if (electron.corrEcalEnergyError() != expectedElectronFloatingPointValues_[27] + offset) { + throwWithMessage("analyzeElectrons, corrEcalEnergyError does not equal expected value"); + } + if (electron.trkpMode().size() != vectorSize) { + throwWithMessage("analyzeElectrons, trkpMode does not have expected size"); + } + j = 0; + for (auto const& val : electron.trkpMode()) { + if (val != expectedElectronFloatingPointValues_[28] + offset + 10 * j) { + throwWithMessage("analyzeElectrons, trkpMode does not contain expected value"); + } + ++j; + } + if (electron.trketaMode().size() != vectorSize) { + throwWithMessage("analyzeElectrons, trketaMode does not have expected size"); + } + j = 0; + for (auto const& val : electron.trketaMode()) { + if (val != expectedElectronFloatingPointValues_[29] + offset + 10 * j) { + throwWithMessage("analyzeElectrons, trketaMode does not contain expected value"); + } + ++j; + } + if (electron.trkphiMode().size() != vectorSize) { + throwWithMessage("analyzeElectrons, trkphiMode does not have expected size"); + } + j = 0; + for (auto const& val : electron.trkphiMode()) { + if (val != expectedElectronFloatingPointValues_[30] + offset + 10 * j) { + throwWithMessage("analyzeElectrons, trkphiMode does not contain expected value"); + } + ++j; + } + if (electron.trkqoverpModeError().size() != vectorSize) { + throwWithMessage("analyzeElectrons, trkqoverpModeError does not have expected size"); + } + j = 0; + for (auto const& val : electron.trkqoverpModeError()) { + if (val != expectedElectronFloatingPointValues_[31] + offset + 10 * j) { + throwWithMessage("analyzeElectrons, trkqoverpModeError does not contain expected value"); + } + ++j; + } + if (electron.trackfbrem() != expectedElectronFloatingPointValues_[32] + offset) { + throwWithMessage("analyzeElectrons, trackfbrem does not equal expected value"); + } + if (electron.nClusters() != static_cast(expectedElectronIntegralValues_[6] + iOffset)) { + throwWithMessage("analyzeElectrons, nClusters does not equal expected value"); + } + if (electron.nCrystals() != static_cast(expectedElectronIntegralValues_[7] + iOffset)) { + throwWithMessage("analyzeElectrons, nCrystals does not equal expected value"); + } + } ++i; } } @@ -917,6 +980,23 @@ namespace edmtest { if (photon.rechitZeroSuppression() != static_cast((expectedPhotonIntegralValues_[2] + iOffset) % 2)) { throwWithMessage("analyzePhotons, rechitZeroSuppression does not equal expected value"); } + if (inputPhotonClassVersion_ == 6) { + if (photon.rawEnergy() != expectedPhotonFloatingPointValues_[14] + offset) { + throwWithMessage("analyzePhotons, rawEnergy does not equal expected value"); + } + if (photon.preshowerEnergy() != expectedPhotonFloatingPointValues_[15] + offset) { + throwWithMessage("analyzePhotons, preshowerEnergy does not equal expected value"); + } + if (photon.corrEcalEnergyError() != expectedPhotonFloatingPointValues_[16] + offset) { + throwWithMessage("analyzePhotons, corrEcalEnergyError does not equal expected value"); + } + if (photon.nClusters() != static_cast(expectedPhotonIntegralValues_[3] + iOffset)) { + throwWithMessage("analyzePhotons, nClusters does not equal expected value"); + } + if (photon.nCrystals() != static_cast(expectedPhotonIntegralValues_[4] + iOffset)) { + throwWithMessage("analyzePhotons, nCrystals does not equal expected value"); + } + } ++i; } } diff --git a/DataFormats/Scouting/test/TestRun3ScoutingFormats.sh b/DataFormats/Scouting/test/TestRun3ScoutingFormats.sh index b6a773b528929..0efba27c14406 100755 --- a/DataFormats/Scouting/test/TestRun3ScoutingFormats.sh +++ b/DataFormats/Scouting/test/TestRun3ScoutingFormats.sh @@ -48,12 +48,12 @@ cmsRun ${LOCAL_TEST_DIR}/test_readRun3Scouting_cfg.py || die "Failure using test file=testRun3Scouting_v3_v5_v3_v4_v5_v3_v5_v3_v3_CMSSW_12_4_0.root inputfile=$(edmFileInPath DataFormats/Scouting/data/$file) || die "Failure edmFileInPath DataFormats/Scouting/data/$file" $? -argsPassedToPython="--inputFile $inputfile --outputFileName testRun3Scouting2_CMSSW_12_4_0.root --electronVersion 5" +argsPassedToPython="--inputFile $inputfile --outputFileName testRun3Scouting2_CMSSW_12_4_0.root --electronVersion 5 --photonVersion 5" cmsRun ${LOCAL_TEST_DIR}/test_readRun3Scouting_cfg.py $argsPassedToPython || die "Failed to read old file $file" $? file=testRun3Scouting_v3_v6_v3_v4_v5_v3_v5_v3_v3_CMSSW_13_0_3.root inputfile=$(edmFileInPath DataFormats/Scouting/data/$file) || die "Failure edmFileInPath DataFormats/Scouting/data/$file" $? -argsPassedToPython="--inputFile $inputfile --outputFileName testRun3Scouting2_CMSSW_13_0_3.root --electronVersion 6" +argsPassedToPython="--inputFile $inputfile --outputFileName testRun3Scouting2_CMSSW_13_0_3.root --electronVersion 6 --photonVersion 5" cmsRun ${LOCAL_TEST_DIR}/test_readRun3Scouting_cfg.py $argsPassedToPython || die "Failed to read old file $file" $? exit 0 diff --git a/DataFormats/Scouting/test/TestWriteRun3Scouting.cc b/DataFormats/Scouting/test/TestWriteRun3Scouting.cc index ae3f07be99cb6..a6fc0867c1848 100644 --- a/DataFormats/Scouting/test/TestWriteRun3Scouting.cc +++ b/DataFormats/Scouting/test/TestWriteRun3Scouting.cc @@ -118,11 +118,11 @@ namespace edmtest { if (caloJetsValues_.size() != 16) { throwWithMessage("caloJetsValues must have 16 elements and it does not"); } - if (electronsFloatingPointValues_.size() != 25) { - throwWithMessage("electronsFloatingPointValues must have 25 elements and it does not"); + if (electronsFloatingPointValues_.size() != 33) { + throwWithMessage("electronsFloatingPointValues must have 33 elements and it does not"); } - if (electronsIntegralValues_.size() != 6) { - throwWithMessage("electronsIntegralValues must have 6 elements and it does not"); + if (electronsIntegralValues_.size() != 8) { + throwWithMessage("electronsIntegralValues must have 8 elements and it does not"); } if (muonsFloatingPointValues_.size() != 37) { throwWithMessage("muonsFloatingPointValues must have 37 elements and it does not"); @@ -142,11 +142,11 @@ namespace edmtest { if (pfJetsIntegralValues_.size() != 8) { throwWithMessage("pfJetsIntegralValues must have 8 elements and it does not"); } - if (photonsFloatingPointValues_.size() != 14) { - throwWithMessage("photonsFloatingPointValues must have 14 elements and it does not"); + if (photonsFloatingPointValues_.size() != 17) { + throwWithMessage("photonsFloatingPointValues must have 17 elements and it does not"); } - if (photonsIntegralValues_.size() != 3) { - throwWithMessage("photonsIntegralValues must have 3 elements and it does not"); + if (photonsIntegralValues_.size() != 5) { + throwWithMessage("photonsIntegralValues must have 5 elements and it does not"); } if (tracksFloatingPointValues_.size() != 29) { throwWithMessage("tracksFloatingPointValues must have 29 elements and it does not"); @@ -233,7 +233,7 @@ namespace edmtest { double offset = static_cast(iEvent.id().event() + i); int iOffset = static_cast(iEvent.id().event() + i); - // Note the first seven of these vectors use an out of sequence index + // Note the first eleven of these vectors use an out of sequence index // (starting at 19 or 5) because they are data members added in a format // change. In the CMSSW_12_4_0 version, they didn't exist. // Also the index values 4 and 5 in electronsFloatingPointValues_ @@ -244,6 +244,10 @@ namespace edmtest { std::vector trkpt; std::vector trketa; std::vector trkphi; + std::vector trkpMode; + std::vector trketaMode; + std::vector trkphiMode; + std::vector trkqoverpModeError; std::vector trkchi2overndf; std::vector trkcharge; std::vector energyMatrix; @@ -254,6 +258,10 @@ namespace edmtest { trkpt.reserve(vectorSize); trketa.reserve(vectorSize); trkphi.reserve(vectorSize); + trkpMode.reserve(vectorSize); + trketaMode.reserve(vectorSize); + trkphiMode.reserve(vectorSize); + trkqoverpModeError.reserve(vectorSize); trkchi2overndf.reserve(vectorSize); trkcharge.reserve(vectorSize); energyMatrix.reserve(vectorSize); @@ -265,6 +273,10 @@ namespace edmtest { trkpt.push_back(static_cast(electronsFloatingPointValues_[21] + offset + j * 10)); trketa.push_back(static_cast(electronsFloatingPointValues_[22] + offset + j * 10)); trkphi.push_back(static_cast(electronsFloatingPointValues_[23] + offset + j * 10)); + trkpMode.push_back(static_cast(electronsFloatingPointValues_[28] + offset + j * 10)); + trketaMode.push_back(static_cast(electronsFloatingPointValues_[29] + offset + j * 10)); + trkphiMode.push_back(static_cast(electronsFloatingPointValues_[30] + offset + j * 10)); + trkqoverpModeError.push_back(static_cast(electronsFloatingPointValues_[31] + offset + j * 10)); trkchi2overndf.push_back(static_cast(electronsFloatingPointValues_[24] + offset + j * 10)); trkcharge.push_back(static_cast(electronsIntegralValues_[5] + offset + j * 10)); energyMatrix.push_back(static_cast(electronsFloatingPointValues_[17] + offset + j * 10)); @@ -275,11 +287,18 @@ namespace edmtest { static_cast(electronsFloatingPointValues_[1] + offset), static_cast(electronsFloatingPointValues_[2] + offset), static_cast(electronsFloatingPointValues_[3] + offset), + static_cast(electronsFloatingPointValues_[25] + offset), + static_cast(electronsFloatingPointValues_[26] + offset), + static_cast(electronsFloatingPointValues_[27] + offset), std::move(trkd0), std::move(trkdz), std::move(trkpt), std::move(trketa), std::move(trkphi), + std::move(trkpMode), + std::move(trketaMode), + std::move(trkphiMode), + std::move(trkqoverpModeError), std::move(trkchi2overndf), static_cast(electronsFloatingPointValues_[6] + offset), static_cast(electronsFloatingPointValues_[7] + offset), @@ -288,6 +307,7 @@ namespace edmtest { static_cast(electronsFloatingPointValues_[10] + offset), electronsIntegralValues_[0] + iOffset, std::move(trkcharge), + static_cast(electronsFloatingPointValues_[32] + offset), static_cast(electronsFloatingPointValues_[11] + offset), static_cast(electronsFloatingPointValues_[12] + offset), static_cast(electronsFloatingPointValues_[13] + offset), @@ -295,6 +315,8 @@ namespace edmtest { static_cast(electronsFloatingPointValues_[15] + offset), static_cast(electronsFloatingPointValues_[16] + offset), static_cast(electronsIntegralValues_[2] + iOffset), + static_cast(electronsIntegralValues_[6] + iOffset), + static_cast(electronsIntegralValues_[7] + iOffset), std::move(energyMatrix), std::move(detIds), std::move(timingMatrix), @@ -482,6 +504,9 @@ namespace edmtest { static_cast(photonsFloatingPointValues_[1] + offset), static_cast(photonsFloatingPointValues_[2] + offset), static_cast(photonsFloatingPointValues_[3] + offset), + static_cast(photonsFloatingPointValues_[14] + offset), + static_cast(photonsFloatingPointValues_[15] + offset), + static_cast(photonsFloatingPointValues_[16] + offset), static_cast(photonsFloatingPointValues_[4] + offset), static_cast(photonsFloatingPointValues_[5] + offset), static_cast(photonsFloatingPointValues_[6] + offset), @@ -491,6 +516,8 @@ namespace edmtest { static_cast(photonsFloatingPointValues_[10] + offset), static_cast(photonsFloatingPointValues_[11] + offset), static_cast(photonsIntegralValues_[0] + iOffset), + static_cast(photonsIntegralValues_[3] + iOffset), + static_cast(photonsIntegralValues_[4] + iOffset), std::move(energyMatrix), std::move(detIds), std::move(timingMatrix), diff --git a/DataFormats/Scouting/test/create_Run3Scouting_test_file_cfg.py b/DataFormats/Scouting/test/create_Run3Scouting_test_file_cfg.py index 64863ed18059b..5314acfe0324c 100644 --- a/DataFormats/Scouting/test/create_Run3Scouting_test_file_cfg.py +++ b/DataFormats/Scouting/test/create_Run3Scouting_test_file_cfg.py @@ -23,10 +23,12 @@ 60.0, 70.0, 80.0, 90.0, 100.0, 110.0, 120.0, 130.0, 140.0, 150.0, 160.0, 170.0, 180.0, 190.0, 200.0, - 210.0, 220.0, 230.0, 240.0, 250.0 + 210.0, 220.0, 230.0, 240.0, 250.0, + 260.0, 270.0, 280.0, 290.0, 300.0, + 310.0, 320.0, 330.0 ), electronsIntegralValues = cms.vint32( - 10, 20, 30, 40, 50, 60 + 10, 20, 30, 40, 50, 60, 70, 80 ), muonsFloatingPointValues = cms.vdouble( 10.0, 20.0, 30.0, 40.0, 50.0, @@ -66,10 +68,11 @@ photonsFloatingPointValues = cms.vdouble( 14.0, 23.0, 33.0, 43.0, 53.0, 63.0, 73.0, 83.0, 93.0, 103.0, - 113.0, 123.0, 133.0, 143.0 + 113.0, 123.0, 133.0, 143.0, 153.0, + 163.0, 173.0 ), photonsIntegralValues = cms.vint32( - 14, 23, 33 + 14, 23, 33, 43, 53 ), tracksFloatingPointValues = cms.vdouble( 14.0, 24.0, 34.0, 44.0, 54.0, diff --git a/DataFormats/Scouting/test/test_readRun3Scouting_cfg.py b/DataFormats/Scouting/test/test_readRun3Scouting_cfg.py index bee221a1c4c8b..01ee20dc64fb2 100644 --- a/DataFormats/Scouting/test/test_readRun3Scouting_cfg.py +++ b/DataFormats/Scouting/test/test_readRun3Scouting_cfg.py @@ -4,7 +4,8 @@ parser = argparse.ArgumentParser(prog=sys.argv[0], description='Test Run 3 Scouting data formats') -parser.add_argument("--electronVersion", type=int, help="electron data format version (default: 6)", default=6) +parser.add_argument("--electronVersion", type=int, help="electron data format version (default: 7)", default=7) +parser.add_argument("--photonVersion", type=int, help="photon data format version (default: 6)", default=6) parser.add_argument("--inputFile", type=str, help="Input file name (default: testRun3Scouting.root)", default="testRun3Scouting.root") parser.add_argument("--outputFileName", type=str, help="Output file name (default: testRun3Scouting2.root)", default="testRun3Scouting2.root") args = parser.parse_args() @@ -28,8 +29,10 @@ 60.0, 70.0, 80.0, 90.0, 100.0, 110.0, 120.0, 130.0, 140.0, 150.0, 160.0, 170.0, 180.0, 190.0, 200.0, - 210.0, 220.0, 230.0, 240.0, 250.0), - expectedElectronIntegralValues = cms.vint32(10, 20, 30, 40, 50, 60), + 210.0, 220.0, 230.0, 240.0, 250.0, + 260.0, 270.0, 280.0, 290.0, 300.0, + 310.0, 320.0, 330.0), + expectedElectronIntegralValues = cms.vint32(10, 20, 30, 40, 50, 60, 70, 80), electronsTag = cms.InputTag("run3ScoutingProducer", "", "PROD"), expectedMuonFloatingPointValues = cms.vdouble( 10.0, 20.0, 30.0, 40.0, 50.0, @@ -69,13 +72,15 @@ 62, 72, 82 ), pfJetsTag = cms.InputTag("run3ScoutingProducer", "", "PROD"), + photonClassVersion = cms.int32(args.photonVersion), expectedPhotonFloatingPointValues = cms.vdouble( 14.0, 23.0, 33.0, 43.0, 53.0, 63.0, 73.0, 83.0, 93.0, 103.0, - 113.0, 123.0, 133.0, 143.0 + 113.0, 123.0, 133.0, 143.0, 153.0, + 163.0, 173.0 ), expectedPhotonIntegralValues = cms.vint32( - 14, 23, 33 + 14, 23, 33, 43, 53 ), photonsTag = cms.InputTag("run3ScoutingProducer", "", "PROD"), expectedTrackFloatingPointValues = cms.vdouble( diff --git a/HLTrigger/Egamma/plugins/HLTScoutingEgammaProducer.cc b/HLTrigger/Egamma/plugins/HLTScoutingEgammaProducer.cc index 63562e2f99f2c..2f6dde279b85f 100644 --- a/HLTrigger/Egamma/plugins/HLTScoutingEgammaProducer.cc +++ b/HLTrigger/Egamma/plugins/HLTScoutingEgammaProducer.cc @@ -279,6 +279,10 @@ void HLTScoutingEgammaProducer::produce(edm::StreamID sid, edm::Event& iEvent, e std::vector trkpt; std::vector trketa; std::vector trkphi; + std::vector trkpMode; + std::vector trketaMode; + std::vector trkphiMode; + std::vector trkqoverpModeError; std::vector trkchi2overndf; std::vector trkcharge; trkd0.reserve(maxTrkSize); @@ -286,6 +290,10 @@ void HLTScoutingEgammaProducer::produce(edm::StreamID sid, edm::Event& iEvent, e trkpt.reserve(maxTrkSize); trketa.reserve(maxTrkSize); trkphi.reserve(maxTrkSize); + trkpMode.reserve(maxTrkSize); + trketaMode.reserve(maxTrkSize); + trkphiMode.reserve(maxTrkSize); + trkqoverpModeError.reserve(maxTrkSize); trkchi2overndf.reserve(maxTrkSize); trkcharge.reserve(maxTrkSize); @@ -300,6 +308,10 @@ void HLTScoutingEgammaProducer::produce(edm::StreamID sid, edm::Event& iEvent, e trkpt.push_back(track.pt()); trketa.push_back(track.eta()); trkphi.push_back(track.phi()); + trkpMode.push_back(track.pMode()); + trketaMode.push_back(track.etaMode()); + trkphiMode.push_back(track.phiMode()); + trkqoverpModeError.push_back(track.qoverpModeError()); auto const trackndof = track.ndof(); trkchi2overndf.push_back(((trackndof == 0) ? -1 : (track.chi2() / trackndof))); trkcharge.push_back(track.charge()); @@ -310,6 +322,9 @@ void HLTScoutingEgammaProducer::produce(edm::StreamID sid, edm::Event& iEvent, e candidate.eta(), candidate.phi(), candidate.mass(), + scRef->rawEnergy(), + scRef->preshowerEnergy(), + scRef->correctedEnergyUncertainty(), (*SigmaIEtaIEtaMap)[candidateRef], HoE, (*EcalPFClusterIsoMap)[candidateRef], @@ -319,6 +334,8 @@ void HLTScoutingEgammaProducer::produce(edm::StreamID sid, edm::Event& iEvent, e sMin, sMaj, seedId, + scRef->clustersSize(), + scRef->size(), mEnergies, mDetIdIds, mTimes, @@ -328,11 +345,18 @@ void HLTScoutingEgammaProducer::produce(edm::StreamID sid, edm::Event& iEvent, e candidate.eta(), candidate.phi(), candidate.mass(), + scRef->rawEnergy(), + scRef->preshowerEnergy(), + scRef->correctedEnergyUncertainty(), trkd0, trkdz, trkpt, trketa, trkphi, + trkpMode, + trketaMode, + trkphiMode, + trkqoverpModeError, trkchi2overndf, (*DetaMap)[candidateRef], (*DphiMap)[candidateRef], @@ -341,6 +365,7 @@ void HLTScoutingEgammaProducer::produce(edm::StreamID sid, edm::Event& iEvent, e (*OneOEMinusOneOPMap)[candidateRef], (*MissingHitsMap)[candidateRef], trkcharge, + 0.0 /* waiting implementation of the track fbrem producer*/, (*EcalPFClusterIsoMap)[candidateRef], (*HcalPFClusterIsoMap)[candidateRef], (*EleGsfTrackIsoMap)[candidateRef], @@ -348,6 +373,8 @@ void HLTScoutingEgammaProducer::produce(edm::StreamID sid, edm::Event& iEvent, e sMin, sMaj, seedId, + scRef->clustersSize(), + scRef->size(), mEnergies, mDetIdIds, mTimes, From dd81d6385fb7aa0c152cbd95bdce34313123dfae Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Thu, 18 Jan 2024 09:39:31 -0600 Subject: [PATCH 278/281] Handle empty branch index lists from input Fixes a bug where an empty branch index list from the Source would cause the branch index list to not be updated at all. --- FWCore/Framework/src/EventPrincipal.cc | 4 ++-- FWCore/Integration/test/BuildFile.xml | 1 + FWCore/Integration/test/makeEmptyRootFile.py | 13 +++++++++++++ FWCore/Integration/test/run_TestEmptyRootFile.sh | 13 +++++++++++++ FWCore/Integration/test/useEmptyRootFile.py | 11 +++++++++++ 5 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 FWCore/Integration/test/makeEmptyRootFile.py create mode 100755 FWCore/Integration/test/run_TestEmptyRootFile.sh create mode 100644 FWCore/Integration/test/useEmptyRootFile.py diff --git a/FWCore/Framework/src/EventPrincipal.cc b/FWCore/Framework/src/EventPrincipal.cc index 8e25e00bd5063..4919d9b821151 100644 --- a/FWCore/Framework/src/EventPrincipal.cc +++ b/FWCore/Framework/src/EventPrincipal.cc @@ -81,7 +81,7 @@ namespace edm { } else { provRetrieverPtr_->mergeParentProcessRetriever(provRetriever); } - if (wasBranchListIndexesChangedFromInput(branchListIndexes)) { + if (wasBranchListIndexesChangedFromInput(branchListIndexes) or branchListIndexes_.empty()) { if (branchIDListHelper_->hasProducedProducts()) { // Add index into BranchIDListRegistry for products produced this process branchListIndexes.push_back(branchIDListHelper_->producedBranchListIndex()); @@ -99,7 +99,7 @@ namespace edm { DelayedReader* reader) { eventSelectionIDs_ = std::move(eventSelectionIDs); - if (wasBranchListIndexesChangedFromInput(branchListIndexes)) { + if (wasBranchListIndexesChangedFromInput(branchListIndexes) or branchListIndexes_.empty()) { if (branchIDListHelper_->hasProducedProducts()) { // Add index into BranchIDListRegistry for products produced this process branchListIndexes.push_back(branchIDListHelper_->producedBranchListIndex()); diff --git a/FWCore/Integration/test/BuildFile.xml b/FWCore/Integration/test/BuildFile.xml index 311b05c92f470..9a56a76ce0497 100644 --- a/FWCore/Integration/test/BuildFile.xml +++ b/FWCore/Integration/test/BuildFile.xml @@ -40,6 +40,7 @@ + diff --git a/FWCore/Integration/test/makeEmptyRootFile.py b/FWCore/Integration/test/makeEmptyRootFile.py new file mode 100644 index 0000000000000..21e395362cb1d --- /dev/null +++ b/FWCore/Integration/test/makeEmptyRootFile.py @@ -0,0 +1,13 @@ +import FWCore.ParameterSet.Config as cms + +process = cms.Process("WRITE") + +process.source = cms.Source("EmptySource") + +process.maxEvents.input = 10 + +process.out = cms.OutputModule("PoolOutputModule", + outputCommands = cms.untracked.vstring("drop *"), + fileName = cms.untracked.string("empty.root")) + +process.o = cms.EndPath(process.out) diff --git a/FWCore/Integration/test/run_TestEmptyRootFile.sh b/FWCore/Integration/test/run_TestEmptyRootFile.sh new file mode 100755 index 0000000000000..a5c4ec3e9bcdf --- /dev/null +++ b/FWCore/Integration/test/run_TestEmptyRootFile.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +function die { echo Failure $1: status $2 ; exit $2 ; } + +LOCAL_TEST_DIR=${SCRAM_TEST_PATH} + +echo "write empty file" +cmsRun ${LOCAL_TEST_DIR}/makeEmptyRootFile.py || die "cmsRun makeEmptyRootFile.py" $? + +echo "read empty file" +cmsRun ${LOCAL_TEST_DIR}/useEmptyRootFile.py || die "cmsRun useEmptyRootFile.py" $? + +exit 0 diff --git a/FWCore/Integration/test/useEmptyRootFile.py b/FWCore/Integration/test/useEmptyRootFile.py new file mode 100644 index 0000000000000..849358efa7926 --- /dev/null +++ b/FWCore/Integration/test/useEmptyRootFile.py @@ -0,0 +1,11 @@ +import FWCore.ParameterSet.Config as cms + +process = cms.Process("READ") + +process.source = cms.Source("PoolSource", fileNames = cms.untracked.vstring("file:empty.root")) + +process.Thing = cms.EDProducer("ThingProducer") + +process.OtherThing = cms.EDProducer("OtherThingProducer") + +process.p = cms.Path(process.Thing * process.OtherThing) From 5c8d4a04370e2d5d43bf811f9737814ff75b237b Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Thu, 18 Jan 2024 16:21:06 -0600 Subject: [PATCH 279/281] Fixed UBSAN warning in FieldHandler The report was most likely false but the code changes were useful. --- .../GMTConfigProducers/interface/RecordHelper.h | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/L1TriggerConfig/GMTConfigProducers/interface/RecordHelper.h b/L1TriggerConfig/GMTConfigProducers/interface/RecordHelper.h index 8732a7a4486fa..a2ac622ca74ef 100644 --- a/L1TriggerConfig/GMTConfigProducers/interface/RecordHelper.h +++ b/L1TriggerConfig/GMTConfigProducers/interface/RecordHelper.h @@ -13,7 +13,7 @@ */ -#include +#include #include "RelationalAccess/ICursor.h" #include "CoralBase/AttributeList.h" @@ -30,6 +30,7 @@ class FieldHandlerBase { typedef coral::AttributeList AttributeList; /** Construct a new field handler with the C++ field name as its argument */ FieldHandlerBase(const std::string& name) : name_(name) {} + FieldHandlerBase() = delete; /** Return the name of the field handled by this object. */ const std::string& getName() { return name_; } @@ -64,14 +65,16 @@ class FieldHandler : public FieldHandlerBase { FieldHandler(const std::string& fieldName, TSetMethod setter) : FieldHandlerBase(fieldName), setter_(setter) {} + FieldHandler() = delete; + /** Actual data extraction. */ void extractValue(const AttributeList& src, TOutput& dest) override { #ifdef RECORDHELPER_DEBUG std::cout << "Parsing field " << this->getName() << " with type " << typeid(TCField).name(); #endif - typedef typename boost::remove_cv::type>::type TDBFieldT; + typedef typename std::remove_cv::type>::type TDBFieldT; const TDBFieldT& value = src[this->getColumnName()].template data(); - ((dest).*setter_)(TCField(value)); + call(dest, TCField(value)); #ifdef RECORDHELPER_DEBUG std::cout << "=" << TCField(value) << std::endl; @@ -79,9 +82,10 @@ class FieldHandler : public FieldHandlerBase { } protected: + void call(TOutput& dest, const TCField value) { ((dest).*setter_)(value); } /** Points to the setter method used to stuff the field's value into the destination object. */ - TSetMethod setter_; + TSetMethod setter_ = nullptr; }; /** A special handler for bool fields in the GT/GMT DBs. These can't be imported @@ -96,13 +100,15 @@ class ASCIIBoolFieldHandler : public FieldHandler { ASCIIBoolFieldHandler(const std::string& fieldName, typename FieldHandler::TSetMethod setter) : FieldHandler(fieldName, setter) {} + ASCIIBoolFieldHandler() = delete; + /** Extract value as char, then see compare it to '0' to get its truth value. */ void extractValue(const AttributeList& src, TOutput& dest) override { char value = src[this->getColumnName()].template data(); #ifdef RECORDHELPER_DEBUG std::cout << " .. and " << this->getColumnName() << " is (in integers) " << (int)value << std::endl; #endif - ((dest).*(this->setter_))(value != FalseCharacter); + this->call(dest, value != FalseCharacter); } }; From 6b1b07abad1fa72d4edf8c035479597f94cd7e1b Mon Sep 17 00:00:00 2001 From: mmusich Date: Fri, 19 Jan 2024 14:57:49 +0100 Subject: [PATCH 280/281] fix missing piece in test_payload_sanity and don't remove output file of test_pede --- .../test/test_payload_sanity.sh | 5 +++-- Alignment/MillePedeAlignmentAlgorithm/test/test_pede.sh | 7 +++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Alignment/MillePedeAlignmentAlgorithm/test/test_payload_sanity.sh b/Alignment/MillePedeAlignmentAlgorithm/test/test_payload_sanity.sh index 55191e29e75cc..9ee58beaa1475 100755 --- a/Alignment/MillePedeAlignmentAlgorithm/test/test_payload_sanity.sh +++ b/Alignment/MillePedeAlignmentAlgorithm/test/test_payload_sanity.sh @@ -1,6 +1,7 @@ #!/bin/bash function die { echo $1: status $2; exit $2; } -INPUTFILE=${SCRAM_TEST_PATH}/alignments_MP.db -(cmsRun ${SCRAM_TEST_PATH}/AlignmentRcdChecker_cfg.py inputSqliteFile=${INPUTFILE}) || die 'failed running AlignmentRcdChecker' +echo -e "Content of the current directory is: "`ls .` +INPUTFILE=alignments_MP.db +(cmsRun ${SCRAM_TEST_PATH}/AlignmentRcdChecker_cfg.py inputSqliteFile=${INPUTFILE}) || die 'failed running AlignmentRcdChecker' $? rm $INPUTFILE diff --git a/Alignment/MillePedeAlignmentAlgorithm/test/test_pede.sh b/Alignment/MillePedeAlignmentAlgorithm/test/test_pede.sh index 137c4df7cfde6..339ce9792e472 100755 --- a/Alignment/MillePedeAlignmentAlgorithm/test/test_pede.sh +++ b/Alignment/MillePedeAlignmentAlgorithm/test/test_pede.sh @@ -4,7 +4,7 @@ function die { echo $1: status $2; exit $2; } LOCAL_TEST_DIR=${SCRAM_TEST_PATH} clean_up(){ - echo "cleaning the local test area" + echo -e "\nCleaning the local test area" rm -fr milleBinary00* rm -fr pedeSteer* rm -fr millepede.* @@ -13,7 +13,7 @@ clean_up(){ rm -fr *.dat rm -fr *.tar rm -fr *.gz - rm -fr *.db + rm -fr *.dump } if test -f "milleBinary*"; then @@ -39,10 +39,9 @@ if [ $STATUS -eq 0 ]; then echo -e "\n @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@" echo -e " @ MillePede Exit Status: "`cat millepede.end` echo -e " @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@" - ## mv the output file to the local test directory for the subsequent payload sanity check - mv alignments_MP.db ${LOCAL_TEST_DIR} ## clean the house now... clean_up + echo -e "\nContent of the current directory is: "`ls .` else die "SKIPPING test, file ${TESTPACKAGE}.tar not found" 0 fi From c5a672edaec28438e3dcb179b3595a34c47e3666 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Fri, 19 Jan 2024 12:48:10 -0600 Subject: [PATCH 281/281] Changed to constexpr in reco::Vertex This appears to help RNTuple migration. --- DataFormats/VertexReco/interface/Vertex.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/DataFormats/VertexReco/interface/Vertex.h b/DataFormats/VertexReco/interface/Vertex.h index 7d7a119961eac..cec37f5b52205 100644 --- a/DataFormats/VertexReco/interface/Vertex.h +++ b/DataFormats/VertexReco/interface/Vertex.h @@ -39,7 +39,8 @@ namespace reco { /// point in the space typedef math::XYZPoint Point; /// error matrix dimension - enum { dimension = 3, dimension4D = 4 }; + constexpr static int dimension = 3; + constexpr static int dimension4D = 4; /// covariance error matrix (3x3) typedef math::Error::type Error; /// covariance error matrix (3x3) @@ -49,7 +50,7 @@ namespace reco { /// covariance error matrix (4x4) typedef math::Error::type CovarianceMatrix4D; /// matix size - enum { size = dimension * (dimension + 1) / 2, size4D = (dimension4D) * (dimension4D + 1) / 2 }; + constexpr static int size = dimension * (dimension + 1) / 2, size4D = (dimension4D) * (dimension4D + 1) / 2; /// index type typedef unsigned int index; /// default constructor - The vertex will not be valid. Position, error,