From 96cbc904342132df8f3343105012d76b1124b0bb Mon Sep 17 00:00:00 2001
From: Whitney Armstrong <warmstrong@anl.gov>
Date: Wed, 24 Mar 2021 21:32:42 +0000
Subject: [PATCH] Added simple hcal (like ecal).

	modified:   reference_detector.xml
---
 .gitlab-ci.yml         |   1 +
 compact/hcal.xml       | 104 +++++++++++++++++++++++++++++++++++++++++
 reference_detector.xml |   5 +-
 3 files changed, 107 insertions(+), 3 deletions(-)
 create mode 100644 compact/hcal.xml

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index caf2e6a4..b0fff8df 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -12,6 +12,7 @@ default:
   before_script:
     - mkdir -p images && mkdir -p doc/
     - git clone https://eicweb.phy.anl.gov/EIC/detectors/accelerator.git && ln -s accelerator/eic 
+    - git clone https://eicweb.phy.anl.gov/EIC/detectors/ip6.git && mkdir ip6_build && cd ip6_build && cmake ../ip6/. -DCMAKE_INSTALL_PREFIX=/usr/local && make -j20 && make install  && cd .. && ln -s ip6/ip6 
     - mkdir build && cd build && cmake ../. -DCMAKE_INSTALL_PREFIX=/usr/local && make -j20 && make install  && cd ..
   artifacts:
     paths:
diff --git a/compact/hcal.xml b/compact/hcal.xml
new file mode 100644
index 00000000..3edc03e2
--- /dev/null
+++ b/compact/hcal.xml
@@ -0,0 +1,104 @@
+<lccdd>
+
+  <define>
+  </define>
+
+  <limits>
+  </limits>
+
+  <regions>
+  </regions>
+
+  <display>
+  </display>
+
+  <!-- Define detector -->
+  <detectors>
+
+    <detector 
+      id="HCalBarrel_ID" 
+      name="HcalBarrel"
+      type="DD4hep_PolyhedraBarrelCalorimeter2"
+      readout="HcalBarrelHits"
+      calorimeterType="HAD_BARREL"
+      gap="0.*cm"
+      material="Steel235">
+      <dimensions 
+        numsides="CaloSides" 
+        rmin="HcalBarrel_rmin" 
+        z="HcalBarrelLength"/>
+      <staves vis="HcalBarrelVis"/>
+      <layer repeat="HcalBarrelLayers">
+        <slice material="Steel235" thickness="HcalSteelThickness"/>
+        <slice material="PyrexGlass" thickness="HcalPyrexThickness"/>
+        <slice material="RPCGasDefault" thickness="HcalRPCGasThickness" sensitive="yes" limits="cal_limits"/>
+        <slice material="PyrexGlass" thickness="HcalPyrexThickness"/>
+        <slice material="G10" thickness="HcalG10Thickness"/>
+        <slice material="Air" thickness="HcalAirThickness"/>
+      </layer>
+    </detector>
+
+    <detector 
+      id="HCalEndcapP_ID" 
+      name="HcalEndcapP" 
+      type="refdet_PolyhedraEndcapCalorimeter2" 
+      readout="HcalEndcapHits" 
+      vis="HcalEndcapVis" 
+      calorimeterType="HAD_ENDCAP"
+      reflect="false">
+      <dimensions 
+        numsides="CaloSides" 
+        zmin="HcalEndcap_zmin" 
+        rmin="HcalEndcapP_rmin"
+        rmax="HcalBarrel_rmax"/>
+      <layer repeat="HcalEndcapLayers" vis="HcalEndcapVis" >
+        <slice material="Steel235" thickness="HcalSteelThickness"/>
+        <slice material="PyrexGlass" thickness="HcalPyrexThickness"/>
+        <slice material="RPCGasDefault" thickness="HcalRPCGasThickness" sensitive="yes" limits="cal_limits"/>
+        <slice material="PyrexGlass" thickness="HcalPyrexThickness"/>
+        <slice material="G10" thickness="HcalG10Thickness"/>
+        <slice material="Air" thickness="HcalAirThickness"/>
+      </layer>
+    </detector>
+
+    <detector 
+      id="HCalEndcapN_ID" 
+      name="HcalEndcapN" 
+      type="refdet_PolyhedraEndcapCalorimeter2" 
+      readout="HcalEndcapHits" 
+      vis="HcalEndcapVis" 
+      calorimeterType="HAD_ENDCAP" reflect="true">
+      <dimensions 
+        numsides="CaloSides" 
+        zmin="HcalEndcap_zmin" 
+        rmin="HcalEndcapN_rmin" 
+        rmax="HcalBarrel_rmax"/>
+      <layer repeat="HcalEndcapLayers" vis="HcalEndcapVis" >
+        <slice material="Steel235" thickness="HcalSteelThickness"/>
+        <slice material="PyrexGlass" thickness="HcalPyrexThickness"/>
+        <slice material="RPCGasDefault" thickness="HcalRPCGasThickness" sensitive="yes" limits="cal_limits"/>
+        <slice material="PyrexGlass" thickness="HcalPyrexThickness"/>
+        <slice material="G10" thickness="HcalG10Thickness"/>
+        <slice material="Air" thickness="HcalAirThickness"/>
+      </layer>
+    </detector>
+
+  </detectors>
+  <!--  Definition of the readout segmentation/definition  -->
+  <readouts>
+    <readout name="HcalBarrelHits">
+      <segmentation type="CartesianGridXY" grid_size_x="10 * mm" grid_size_y="10 * mm"/>
+      <id>system:6,barrel:3,module:4,layer:8,slice:5,x:32:-16,y:-16</id>
+    </readout>
+    <readout name="HcalEndcapHits">
+      <segmentation type="CartesianGridXY" grid_size_x="10 * mm" grid_size_y="10 * mm"/>
+      <id>system:6,barrel:3,module:4,layer:8,slice:5,x:32:-16,y:-16</id>
+    </readout>
+  </readouts>
+
+  <plugins>
+  </plugins>
+
+  <fields>
+  </fields>
+</lccdd>
diff --git a/reference_detector.xml b/reference_detector.xml
index c4d74d09..2b2aa0a1 100644
--- a/reference_detector.xml
+++ b/reference_detector.xml
@@ -110,15 +110,14 @@
   </display>
 
   <!--
+  <include ref="ip6/beampipe.xml"/>
   <include ref="reference_detector/vertex_tracker.xml"/>
-  <include ref="compact/beampipe.xml"/>
   <include ref="compact/silicon_tracker.xml"/>
   -->
   <include ref="compact/solenoid.xml"/>
   <include ref="compact/ecal.xml"/>
-  <!--
-  <include ref="compact/solenoid.xml"/>
   <include ref="compact/hcal.xml"/>
+  <!--
   <include ref="compact/reference_detector_rich.xml"/>
   <include ref="compact/roman_pots.xml"/>
   -->
-- 
GitLab