From 3de32532b2fa24dadd90257167a67de0de7aeb37 Mon Sep 17 00:00:00 2001
From: Sylvester Joosten <sylvester.joosten@gmail.com>
Date: Mon, 2 Aug 2021 17:35:25 +0000
Subject: [PATCH] Resolve "Beampipe needs updating to be consistent with IP6
 repo"

---
 athena.xml              | 122 ++++++++++++++++++++++++++++++++++------
 compact/definitions.xml |   8 +--
 compact/materials.xml   |   6 ++
 3 files changed, 116 insertions(+), 20 deletions(-)

diff --git a/athena.xml b/athena.xml
index ee4c3b06..eca68980 100644
--- a/athena.xml
+++ b/athena.xml
@@ -80,9 +80,25 @@
      - and more...
   </documentation>
 
+  <comment>
+      Beamline elements
+      -----------------
+  </comment>
   <include ref="ip6/forward_ion_beamline.xml"/>
-  <include ref="ip6/beampipe.xml"/>
+  <include ref="ip6/beampipe_hadron_B0.xml" />
+  <include ref="ip6/beampipe.xml" />
 
+  <comment>
+      Main magnet
+      -----------
+      Note: When changing magnet, also select dimensions in definitions.xml.
+  </comment>
+  <include ref="compact/solenoid.xml"/>
+
+  <comment>
+      Tracker subassemblies for ACTS
+      ------------------------------
+  </comment>
   <detectors>
     <detector id="VertexBarrelSubAssembly_ID"
       name="VertexBarrelSubAssembly"
@@ -132,20 +148,34 @@
 
   </detectors>
 
+  <comment>
+      Central tracking detectors
+      --------------------------
+  </comment>
   <include ref="compact/vertex_tracker.xml"/>
-
   <include ref="compact/central_tracker.xml"/>
 
   <include ref="compact/tof_barrel.xml"/>
   <include ref="compact/tof_endcap.xml"/>
-
   <!--include ref="compact/rwell_tracker_barrel.xml"-->
+  <!--include ref="compact/ce_GEM.xml"/-->
+  <!--include ref="compact/mm_tracker_barrel.xml"/-->
+  <!--include ref="compact/cb_VTX_Barrel.xml"/-->
+  <!--include ref="compact/gem_tracker_endcap.xml"/-->
 
+  <comment>
+      PID detectors
+      -------------
+  </comment>
   <!--include ref="compact/dirc.xml"/-->
+  <!--include ref="compact/mrich.xml"/-->
+  <include ref="compact/forward_trd.xml"/>
+  <include ref="compact/gaseous_rich.xml"/>
 
-  <!-- When changing magnet, also select dimensions in definitions.xml. -->
-  <include ref="compact/solenoid.xml"/>
-
+  <comment>
+      Central calorimetry
+      -------------------
+  </comment>
   <include ref="compact/ci_ecal.xml"/>
   <!--<include ref="compact/ci_ecal_shashlik.xml"/>-->
   <!--<include ref="compact/ce_ecal.xml"/>-->
@@ -156,21 +186,81 @@
 
   <include ref="compact/hcal.xml"/>
 
-  <!--include ref="compact/ce_GEM.xml"/-->
-  <!--include ref="compact/gem_tracker_endcap.xml"/-->
-  <!--include ref="compact/mrich.xml"/-->
-  <include ref="compact/forward_trd.xml"/>
-  <include ref="compact/gaseous_rich.xml"/>
 
+  <comment>
+      FF elements
+      -----------
+  </comment>
   <include ref="ip6/B0_tracker.xml"/>
+  <include ref="ip6/B0_preshower.xml"/>
   <include ref="ip6/far_forward_offM_tracker.xml"/>
-  <include ref="ip6/far_forward_romanpots.xml"/>
   <include ref="ip6/far_forward_detectors.xml"/>
+  <include ref="ip6/roman_pots_eRD24_design.xml"/>
+
+  <fields>
+    <field name="B0PF_Magnet" type="MultipoleMagnet">
+      <position x="B0PF_XPosition" y="0" z="B0PF_CenterPosition"/>
+      <rotation x="0" y="B0PF_RotationAngle" z="0"/>
+      <shape type="Tube" rmin="0.0" rmax="B0PF_InnerRadius" dz="B0PF_Length*0.5"/>
+      <coefficient coefficient="B0PF_Bmax" skew="0.0*tesla"/>
+      <!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
+    </field>
+    <field name="B0APF_Magnet" type="MultipoleMagnet">
+      <position x="B0APF_XPosition" y="0" z="B0APF_CenterPosition"/>
+      <rotation x="0" y="B0APF_RotationAngle" z="0"/>
+      <shape type="Tube" rmin="0.0" rmax="B0APF_InnerRadius" dz="B0APF_Length*0.5"/>
+      <coefficient coefficient="B0APF_Bmax" skew="0.0*tesla"/>
+      <!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
+    </field>
+    <field name="Q1APF_Magnet" type="MultipoleMagnet">
+      <position x="Q1APF_XPosition" y="0" z="Q1APF_CenterPosition"/>
+      <rotation x="0" y="Q1APF_RotationAngle" z="0"/>
+      <shape type="Tube" rmin="0.0" rmax="Q1APF_InnerRadius" dz="Q1APF_Length*0.5"/>
+      <coefficient coefficient="Q1APF_Bmax" skew="0.0*tesla"/>
+      <coefficient coefficient="Q1APF_GradientMax" skew="0.0*tesla/cm"/>
+    </field>
+    <field name="Q1BPF_Magnet" type="MultipoleMagnet">
+      <position x="Q1BPF_XPosition" y="0" z="Q1BPF_CenterPosition"/>
+      <rotation x="0" y="Q1BPF_RotationAngle" z="0"/>
+      <shape type="Tube" rmin="0.0" rmax="Q1BPF_InnerRadius" dz="Q1BPF_Length*0.5"/>
+      <coefficient coefficient="Q1BPF_Bmax" skew="0.0*tesla"/>
+      <coefficient coefficient="Q1BPF_GradientMax" skew="0.0*tesla/cm"/>
+    </field>
+    <field name="Q2PF_Magnet" type="MultipoleMagnet">
+      <position x="Q2PF_XPosition" y="0" z="Q2PF_CenterPosition"/>
+      <rotation x="0" y="Q2PF_RotationAngle" z="pi/2.0"/>
+      <shape type="Tube" rmin="0.0" rmax="Q2PF_InnerRadius" dz="Q2PF_Length*0.5"/>
+      <coefficient coefficient="Q2PF_Bmax" skew="0.0*tesla"/>
+      <coefficient coefficient="Q2PF_GradientMax" skew="0.0*tesla/cm"/>
+    </field>
+    <field name="B1PF_Magnet" type="MultipoleMagnet">
+      <position x="B1PF_XPosition" y="0" z="B1PF_CenterPosition"/>
+      <rotation x="0" y="B1PF_RotationAngle" z="0"/>
+      <shape type="Tube" rmin="0.0" rmax="B1PF_InnerRadius" dz="B1PF_Length*0.5"/>
+      <coefficient coefficient="B1PF_Bmax" skew="0.0*tesla"/>
+      <coefficient coefficient="B1PF_GradientMax" skew="0.0*tesla/cm"/>
+    </field>
+    <field name="B1APF_Magnet" type="MultipoleMagnet">
+      <position x="B1APF_XPosition" y="0" z="B1APF_CenterPosition"/>
+      <rotation x="0" y="B1APF_RotationAngle" z="0"/>
+      <shape type="Tube" rmin="0.0" rmax="B1APF_InnerRadius" dz="B1APF_Length*0.5"/>
+      <coefficient coefficient="B1APF_Bmax" skew="0.0*tesla"/>
+      <coefficient coefficient="B1APF_GradientMax" skew="0.0*tesla/cm"/>
+    </field>
+    <field name="B2PF_Magnet" type="MultipoleMagnet">
+      <position x="B2PF_XPosition" y="0" z="B2PF_CenterPosition"/>
+      <rotation x="0" y="B2PF_RotationAngle" z="0"/>
+      <shape type="Tube" rmin="0.0" rmax="B2PF_InnerRadius" dz="B2PF_Length*0.5"/>
+      <coefficient coefficient="B2PF_Bmax" skew="0.0*tesla"/>
+      <coefficient coefficient="B2PF_GradientMax" skew="0.0*tesla/cm"/>
+    </field>
+  </fields>
 
-  <!--
-  <include ref="compact/mm_tracker_barrel.xml"/>
-  <include ref="compact/cb_VTX_Barrel.xml"/>
-  -->
+  <comment>
+      FB elements
+      -----------
+      None (TODO)
+  </comment>
 
   <readouts>
   </readouts>
diff --git a/compact/definitions.xml b/compact/definitions.xml
index f1aa6ac6..fad5786d 100644
--- a/compact/definitions.xml
+++ b/compact/definitions.xml
@@ -49,6 +49,7 @@
 
     </comment> 
     <constant name="BeamPipe_ID" value="10"/>
+    <constant name="BeamPipeB0_ID" value="11"/>
 
 
     <comment> 
@@ -267,11 +268,10 @@
     <constant name="B0Tracker_Station_2_ID"          value="151"/>
     <constant name="B0Tracker_Station_3_ID"          value="152"/>
     <constant name="B0Tracker_Station_4_ID"          value="153"/>
-    <constant name="ForwardRomanPot_Station_1_ID"    value="155"/>
+    <constant name="B0Preshower_Station_1_ID"        value="154"/>
+	  <constant name="ForwardRomanPot_Station_1_ID"    value="155"/>
     <constant name="ForwardRomanPot_Station_2_ID"    value="156"/>
-    <constant name="ForwardRomanPotB_ID"             value="157"/>
-    <constant name="ForwardRomanPotC_ID"             value="158"/>
-    <constant name="ForwardOffMTracker_station_1_ID" value="159"/>
+	  <constant name="ForwardOffMTracker_station_1_ID" value="159"/>
     <constant name="ForwardOffMTracker_station_2_ID" value="160"/>
     <constant name="ForwardOffMTracker_station_3_ID" value="161"/>
     <constant name="ForwardOffMTracker_station_4_ID" value="162"/>
diff --git a/compact/materials.xml b/compact/materials.xml
index b627fc7d..e305c5fa 100644
--- a/compact/materials.xml
+++ b/compact/materials.xml
@@ -258,6 +258,12 @@
     <D type="density" value="2.21" unit="g/cm3"/>
     <composite n="1" ref="C"/>
   </material>
+  <material name="StainlessSteel">
+    <D type="density" value="8.3" unit="g / cm3"/>
+    <fraction n="0.74" ref="Fe"/>
+    <fraction n="0.18" ref="Cr"/>
+    <fraction n="0.08" ref="Ni"/>
+  </material>
   <material name="ZDC_Tungsten">
     <D type="density" value="18.73" unit="g / cm3"/>
     <fraction n="0.943" ref="W"/>
-- 
GitLab