From 96f698064f435dddc2b6f1290bf81aab5b492c9d Mon Sep 17 00:00:00 2001 From: Sanjit <68086841+SanjitMasanam@users.noreply.github.com> Date: Thu, 17 Oct 2024 11:35:11 -0700 Subject: [PATCH] Introduce `ldmx-reduced-v2` (#1489) Implemented reduced ldmx v2 geometry + modified dependent scripts --- DetDescr/python/EcalGeometry.py | 19 +- DetDescr/python/HcalGeometry.py | 2 +- Detectors/data/ldmx-reduced-v2/constants.gdml | 471 ++++++ Detectors/data/ldmx-reduced-v2/detector.gdml | 215 +++ Detectors/data/ldmx-reduced-v2/ecal.gdml | 1297 ++++++++++++++ .../ecal_motherboard5_assembly.gdml | 286 ++++ .../ecal_motherboard6_assembly.gdml | 372 ++++ .../ldmx-reduced-v2/ecal_support_box.gdml | 1491 +++++++++++++++++ Detectors/data/ldmx-reduced-v2/hcal.gdml | 448 +++++ Detectors/data/ldmx-reduced-v2/materials.gdml | 45 + Detectors/data/ldmx-reduced-v2/recoil.gdml | 140 ++ .../data/ldmx-reduced-v2/scoring_planes.gdml | 363 ++++ Detectors/data/ldmx-reduced-v2/tagger.gdml | 89 + Detectors/data/ldmx-reduced-v2/target.gdml | 112 ++ .../data/ldmx-reduced-v2/trig_scint.gdml | 109 ++ Ecal/python/digi.py | 12 + 16 files changed, 5467 insertions(+), 4 deletions(-) create mode 100644 Detectors/data/ldmx-reduced-v2/constants.gdml create mode 100644 Detectors/data/ldmx-reduced-v2/detector.gdml create mode 100644 Detectors/data/ldmx-reduced-v2/ecal.gdml create mode 100644 Detectors/data/ldmx-reduced-v2/ecal_motherboard5_assembly.gdml create mode 100644 Detectors/data/ldmx-reduced-v2/ecal_motherboard6_assembly.gdml create mode 100644 Detectors/data/ldmx-reduced-v2/ecal_support_box.gdml create mode 100644 Detectors/data/ldmx-reduced-v2/hcal.gdml create mode 100644 Detectors/data/ldmx-reduced-v2/materials.gdml create mode 100644 Detectors/data/ldmx-reduced-v2/recoil.gdml create mode 100644 Detectors/data/ldmx-reduced-v2/scoring_planes.gdml create mode 100644 Detectors/data/ldmx-reduced-v2/tagger.gdml create mode 100644 Detectors/data/ldmx-reduced-v2/target.gdml create mode 100644 Detectors/data/ldmx-reduced-v2/trig_scint.gdml diff --git a/DetDescr/python/EcalGeometry.py b/DetDescr/python/EcalGeometry.py index 589e434f1..ddddcb0ba 100644 --- a/DetDescr/python/EcalGeometry.py +++ b/DetDescr/python/EcalGeometry.py @@ -124,9 +124,8 @@ def v14() : eg.layer_shift_x = 2*eg.moduleMinR / eg.nCellRHeight return eg - def reduced() : - eg = EcalGeometry(detectors_valid = ["ldmx-reduced","ldmx-reduced[.].*"], + eg = EcalGeometry(detectors_valid = ["ldmx-reduced"], gap = 1.5, layerZPositions = [ 7.932, 14.532, 32.146, 40.746, 58.110, 67.710 @@ -139,5 +138,19 @@ def reduced() : eg.layer_shift_x = 2*eg.moduleMinR / eg.nCellRHeight return eg + def reduced_v2() : + eg = EcalGeometry(detectors_valid = ["ldmx-reduced-v2"], + gap = 1.5, + layerZPositions = [ + 9.932, 22.412, 40.81, 54.556, 71.954, 85.67 + ], + ecalFrontZ = 240.0, + cornersSideUp = True, + layer_shift_odd = True, + ) + # shift by a single cell diameter + eg.layer_shift_x = 2*eg.moduleMinR / eg.nCellRHeight + return eg + def geometries() : - return [EcalGeometry.v9(), EcalGeometry.v12(), EcalGeometry.v13(), EcalGeometry.v14(), EcalGeometry.reduced()] + return [EcalGeometry.v9(), EcalGeometry.v12(), EcalGeometry.v13(), EcalGeometry.v14(), EcalGeometry.reduced(), EcalGeometry.reduced_v2()] diff --git a/DetDescr/python/HcalGeometry.py b/DetDescr/python/HcalGeometry.py index 59aff9f7d..51c4b8c7a 100644 --- a/DetDescr/python/HcalGeometry.py +++ b/DetDescr/python/HcalGeometry.py @@ -487,5 +487,5 @@ def make_v14(self): ] # added the reduced geometry temporarily, for the final geometry # we should have a new function "reduced()" with the prototype geom - self.v14.detectors_valid = ["ldmx-det-v14", "ldmx-det-v14.*", "ldmx-reduced","ldmx-lyso-r1-v14", "ldmx-lyso-r1-v14.*"] + self.v14.detectors_valid = ["ldmx-det-v14", "ldmx-det-v14.*", "ldmx-reduced", "ldmx-reduced-v2","ldmx-lyso-r1-v14", "ldmx-lyso-r1-v14.*"] self.v14.y_offset = 19.05 diff --git a/Detectors/data/ldmx-reduced-v2/constants.gdml b/Detectors/data/ldmx-reduced-v2/constants.gdml new file mode 100644 index 000000000..ce4ced272 --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/constants.gdml @@ -0,0 +1,471 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detectors/data/ldmx-reduced-v2/detector.gdml b/Detectors/data/ldmx-reduced-v2/detector.gdml new file mode 100644 index 000000000..558557180 --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/detector.gdml @@ -0,0 +1,215 @@ + + + +]> + + + + + &constants; + + + + + + + + + + + + + + + + + + + + + + + + + &materials; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detectors/data/ldmx-reduced-v2/ecal.gdml b/Detectors/data/ldmx-reduced-v2/ecal.gdml new file mode 100644 index 000000000..93b9276c3 --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/ecal.gdml @@ -0,0 +1,1297 @@ + + +]> + + + + + + + &constants; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detectors/data/ldmx-reduced-v2/ecal_motherboard5_assembly.gdml b/Detectors/data/ldmx-reduced-v2/ecal_motherboard5_assembly.gdml new file mode 100644 index 000000000..f06730b67 --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/ecal_motherboard5_assembly.gdml @@ -0,0 +1,286 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detectors/data/ldmx-reduced-v2/ecal_motherboard6_assembly.gdml b/Detectors/data/ldmx-reduced-v2/ecal_motherboard6_assembly.gdml new file mode 100644 index 000000000..edde53477 --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/ecal_motherboard6_assembly.gdml @@ -0,0 +1,372 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detectors/data/ldmx-reduced-v2/ecal_support_box.gdml b/Detectors/data/ldmx-reduced-v2/ecal_support_box.gdml new file mode 100644 index 000000000..c8a4d7c1f --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/ecal_support_box.gdml @@ -0,0 +1,1491 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detectors/data/ldmx-reduced-v2/hcal.gdml b/Detectors/data/ldmx-reduced-v2/hcal.gdml new file mode 100644 index 000000000..a5e565aa9 --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/hcal.gdml @@ -0,0 +1,448 @@ + + +]> + + + + + &constants; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detectors/data/ldmx-reduced-v2/materials.gdml b/Detectors/data/ldmx-reduced-v2/materials.gdml new file mode 100644 index 000000000..2403d69f1 --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/materials.gdml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detectors/data/ldmx-reduced-v2/recoil.gdml b/Detectors/data/ldmx-reduced-v2/recoil.gdml new file mode 100644 index 000000000..4afc3a90f --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/recoil.gdml @@ -0,0 +1,140 @@ + + + +]> + + + &constants; + + + + + + + + + + + + + + + + + + + + + + &materials; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detectors/data/ldmx-reduced-v2/scoring_planes.gdml b/Detectors/data/ldmx-reduced-v2/scoring_planes.gdml new file mode 100644 index 000000000..3acac00b0 --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/scoring_planes.gdml @@ -0,0 +1,363 @@ + + +]> + + + + + &constants; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detectors/data/ldmx-reduced-v2/tagger.gdml b/Detectors/data/ldmx-reduced-v2/tagger.gdml new file mode 100644 index 000000000..1ae8f801b --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/tagger.gdml @@ -0,0 +1,89 @@ + + + + +]> + + + &constants; + + + + + + + + + + + + + + + + + + + + + &materials; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detectors/data/ldmx-reduced-v2/target.gdml b/Detectors/data/ldmx-reduced-v2/target.gdml new file mode 100644 index 000000000..f6a86d6cb --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/target.gdml @@ -0,0 +1,112 @@ + + +]> + + + + + &constants; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detectors/data/ldmx-reduced-v2/trig_scint.gdml b/Detectors/data/ldmx-reduced-v2/trig_scint.gdml new file mode 100644 index 000000000..1c1baf4c6 --- /dev/null +++ b/Detectors/data/ldmx-reduced-v2/trig_scint.gdml @@ -0,0 +1,109 @@ + + +]> + + + + + &constants; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Ecal/python/digi.py b/Ecal/python/digi.py index c0b9bb72c..bc41dd461 100644 --- a/Ecal/python/digi.py +++ b/Ecal/python/digi.py @@ -211,3 +211,15 @@ def v14(self) : 10.915, 10.915, 14.783, 18.539, 18.539, 18.539, 18.539, 18.539, 18.539, 18.539, 18.539, 18.539, 9.938 ] + + def reduced_v2(self) : + """Generated for the reduced v2 geometry + + TODO: The secondOrderEnergyCorrection for this geometry has yet to be calculated, + so the v14 secondOrderEnergyCorrection is being used as a placeholder. + """ + + self.secondOrderEnergyCorrection = 4000. / 3940.5; + self.layerWeights = [ + 2.312, 5.417, 9.837, 11.910, 11.910, 11.910 + ]