Skip to content
Snippets Groups Projects
Commit f2821b0b authored by Sylvester Joosten's avatar Sylvester Joosten
Browse files

Resolve "Negative endcap (HCAL) geometry"

parent 8e8feb61
No related branches found
No related tags found
No related merge requests found
...@@ -190,6 +190,7 @@ The unused IDs below are saved for future use. ...@@ -190,6 +190,7 @@ The unused IDs below are saved for future use.
<constant name="HCalBarrel_ID" value="111"/> <constant name="HCalBarrel_ID" value="111"/>
<constant name="HCalEndcapP_ID" value="112"/> <constant name="HCalEndcapP_ID" value="112"/>
<constant name="HCalEndcapN_ID" value="113"/> <constant name="HCalEndcapN_ID" value="113"/>
<constant name="PassiveSteelRingEndcapP_ID" value="114"/>
<documentation> <documentation>
#### (120-129) (near) Forward reserved #### (120-129) (near) Forward reserved
...@@ -423,9 +424,10 @@ Service gaps in FW direction (before endcapP ECAL) and BW direction (before endc ...@@ -423,9 +424,10 @@ Service gaps in FW direction (before endcapP ECAL) and BW direction (before endc
<constant name="EcalEndcapP_zmin" value="ForwardPIDRegion_zmin + ForwardInnerEndcapRegion_length + ForwardServiceGap_length" /> <constant name="EcalEndcapP_zmin" value="ForwardPIDRegion_zmin + ForwardInnerEndcapRegion_length + ForwardServiceGap_length" />
<constant name="EcalEndcapP_length" value="30*cm" /> <constant name="EcalEndcapP_length" value="30*cm" />
<constant name="EcalEndcapP_rmin" value="200.0*mm" /> <constant name="EcalEndcapP_rmin" value="200.0*mm" />
<constant name="EcalEndcapP_rmax" value="Solenoid_rmax "/> <comment> extra 50cm rmax that "protrudes" into the HCAL</comment>
<constant name="EcalEndcapP_rmax" value="Solenoid_rmax + 50*cm"/>
<constant name="EcalEndcapN_zmin" value="max(BackwardPIDRegion_zmin + BackwardInnerEndcapRegion_length, SolenoidBackward_zmax)"/> <constant name="EcalEndcapN_zmin" value="BackwardPIDRegion_zmin + BackwardInnerEndcapRegion_length"/>
<constant name="EcalEndcapN_length" value="60*cm" /> <constant name="EcalEndcapN_length" value="60*cm" />
<constant name="EcalEndcapN_rmin" value="max((EcalEndcapN_zmin + EcalEndcapN_length) * tan(abs(CrossingAngle)) + 15.5 * mm, 5*cm)" /> <constant name="EcalEndcapN_rmin" value="max((EcalEndcapN_zmin + EcalEndcapN_length) * tan(abs(CrossingAngle)) + 15.5 * mm, 5*cm)" />
<constant name="EcalEndcapN_rmax" value="CentralTrackingRegion_rmax" /> <constant name="EcalEndcapN_rmax" value="CentralTrackingRegion_rmax" />
...@@ -436,6 +438,7 @@ Service gaps in FW direction (before endcapP ECAL) and BW direction (before endc ...@@ -436,6 +438,7 @@ Service gaps in FW direction (before endcapP ECAL) and BW direction (before endc
<constant name="EcalBarrelBackward_zmax" value="EcalEndcapN_zmin + 30*cm"/> <constant name="EcalBarrelBackward_zmax" value="EcalEndcapN_zmin + 30*cm"/>
<constant name="EcalBarrel_length" value="EcalBarrelForward_zmax + EcalBarrelBackward_zmax"/> <constant name="EcalBarrel_length" value="EcalBarrelForward_zmax + EcalBarrelBackward_zmax"/>
<constant name="EcalBarrel_offset" value="(EcalBarrelForward_zmax - EcalBarrelBackward_zmax)/2.0"/> <constant name="EcalBarrel_offset" value="(EcalBarrelForward_zmax - EcalBarrelBackward_zmax)/2.0"/>
<constant name="EcalBarrelReadout_length" value="20*cm"/>
<documentation level="3"> <documentation level="3">
...@@ -443,8 +446,8 @@ Service gaps in FW direction (before endcapP ECAL) and BW direction (before endc ...@@ -443,8 +446,8 @@ Service gaps in FW direction (before endcapP ECAL) and BW direction (before endc
</documentation> </documentation>
<constant name="DIRCReadout_length" value="30*cm"/> <constant name="DIRCReadout_length" value="30*cm"/>
<constant name="DIRCForward_length" value="0*cm"/> <constant name="DIRCForward_length" value="0*cm"/>
<constant name="DIRCForward_zmax" value="ForwardPIDRegion_zmin + DIRCForward_length"/> <constant name="DIRCForward_zmax" value="EcalBarrelForward_zmax "/>
<constant name="DIRCBackward_zmax" value="BackwardPIDRegion_zmin + BackwardInnerEndcapRegion_length + EcalEndcapN_length + DIRCReadout_length"/> <constant name="DIRCBackward_zmax" value="EcalBarrelBackward_zmax + EcalBarrelReadout_length +DIRCReadout_length "/>
<constant name="DIRC_length" value="DIRCForward_zmax + DIRCBackward_zmax"/> <constant name="DIRC_length" value="DIRCForward_zmax + DIRCBackward_zmax"/>
<constant name="DIRC_offset" value="(DIRCForward_zmax - DIRCBackward_zmax)/2"/> <constant name="DIRC_offset" value="(DIRCForward_zmax - DIRCBackward_zmax)/2"/>
<constant name="DIRC_rmin" value="CentralTrackingRegion_rmax"/> <constant name="DIRC_rmin" value="CentralTrackingRegion_rmax"/>
...@@ -459,7 +462,7 @@ Service gaps in FW direction (before endcapP ECAL) and BW direction (before endc ...@@ -459,7 +462,7 @@ Service gaps in FW direction (before endcapP ECAL) and BW direction (before endc
<comment> HcalEndcapP needs to clear the expanding beampipe with 2 * crossing angle + its radius of BeampipeOD / 2</comment> <comment> HcalEndcapP needs to clear the expanding beampipe with 2 * crossing angle + its radius of BeampipeOD / 2</comment>
<constant name="HcalEndcapP_rmin" value="max((HcalEndcapP_zmin + HcalEndcapP_length) * tan(2.0 * abs(CrossingAngle)) + BeampipeOD / 2.0, 15 * cm)"/> <constant name="HcalEndcapP_rmin" value="max((HcalEndcapP_zmin + HcalEndcapP_length) * tan(2.0 * abs(CrossingAngle)) + BeampipeOD / 2.0, 15 * cm)"/>
<constant name="HcalEndcapN_zmin" value="DIRCBackward_zmax + BackwardServiceGap_length"/> <constant name="HcalEndcapN_zmin" value="max(DIRCBackward_zmax + BackwardServiceGap_length, 335*cm)"/>
<constant name="HcalEndcapN_length" value="105.0*cm"/> <constant name="HcalEndcapN_length" value="105.0*cm"/>
<comment> HcalEndcapN needs to clear the straight beampipe with 1 * crossing angle + its radius of 22.25 mm </comment> <comment> HcalEndcapN needs to clear the straight beampipe with 1 * crossing angle + its radius of 22.25 mm </comment>
<constant name="HcalEndcapN_rmin" value="max((HcalEndcapN_zmin + HcalEndcapN_length) * tan(abs(CrossingAngle)) + 22.25 * mm, 11 * cm)"/> <constant name="HcalEndcapN_rmin" value="max((HcalEndcapN_zmin + HcalEndcapN_length) * tan(abs(CrossingAngle)) + 22.25 * mm, 11 * cm)"/>
...@@ -467,7 +470,8 @@ Service gaps in FW direction (before endcapP ECAL) and BW direction (before endc ...@@ -467,7 +470,8 @@ Service gaps in FW direction (before endcapP ECAL) and BW direction (before endc
<constant name="HcalBarrel_thickness" value="100.0*cm "/> <constant name="HcalBarrel_thickness" value="100.0*cm "/>
<constant name="HcalBarrel_rmin" value="Solenoid_rmax"/> <constant name="HcalBarrel_rmin" value="Solenoid_rmax"/>
<constant name="HcalBarrel_rmax" value="HcalBarrel_rmin + HcalBarrel_thickness"/> <constant name="HcalBarrel_rmax" value="HcalBarrel_rmin + HcalBarrel_thickness"/>
<constant name="HcalBarrel_length" value="HcalEndcapP_zmin + HcalEndcapN_zmin "/> <constant name="HcalBarrelForward_zmax" value="HcalEndcapP_zmin - ForwardServiceGap_length - EcalEndcapP_length"/>
<constant name="HcalBarrelBackward_zmax" value="HcalEndcapN_zmin - BackwardServiceGap_length"/>
<comment> <comment>
These are used by ddsim, the region where we store all secondaries These are used by ddsim, the region where we store all secondaries
......
...@@ -57,6 +57,11 @@ ...@@ -57,6 +57,11 @@
<vis name="HcalSensorVis" ref="AnlBlue" showDaughters="false" visible="false"/> <vis name="HcalSensorVis" ref="AnlBlue" showDaughters="false" visible="false"/>
<vis name="HcalAbsorberVis" ref="AnlGray" showDaughters="false" visible="false"/> <vis name="HcalAbsorberVis" ref="AnlGray" showDaughters="false" visible="false"/>
<comment>
Passive steel for flux return
</comment>
<vis name="PassiveSteelVis" ref="AnlViolet" showDaughters="false" visible="true"/>
<comment> <comment>
Solenoid Solenoid
</comment> </comment>
......
...@@ -56,6 +56,11 @@ ...@@ -56,6 +56,11 @@
<vis name="HcalSensorVis" ref="AnlBlue" showDaughters="true" visible="true"/> <vis name="HcalSensorVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalAbsorberVis" ref="AnlGray" showDaughters="true" visible="true"/> <vis name="HcalAbsorberVis" ref="AnlGray" showDaughters="true" visible="true"/>
<comment>
Passive steel for flux return
</comment>
<vis name="PassiveSteelVis" ref="AnlViolet" showDaughters="false" visible="true"/>
<comment> <comment>
Solenoid Solenoid
</comment> </comment>
......
<lccdd> <lccdd>
<define> <define>
<constant name="HcalBarrel_offset" value="(HcalEndcapP_zmin-HcalEndcapN_zmin)/2.0" /> <constant name="HcalBarrel_length" value="HcalBarrelForward_zmax + HcalBarrelBackward_zmax"/>
<constant name="HcalBarrel_offset" value="(HcalBarrelForward_zmax - HcalBarrelBackward_zmax)/2"/>
<constant name="HcalBarrelAvailThickness" value="HcalBarrel_thickness"/> <constant name="HcalBarrelAvailThickness" value="HcalBarrel_thickness"/>
<documentation> <documentation>
#### Material Thickness #### Material Thickness
</documentation> </documentation>
...@@ -93,6 +94,24 @@ ...@@ -93,6 +94,24 @@
</layer> </layer>
</detector> </detector>
<detector
id="PassiveSteelRingEndcapP_ID"
name="PassiveSteelRingEndcapP"
type="athena_PolyhedraEndcapCalorimeter2"
vis="PassiveSteelVis"
calorimeterType="HAD_ENDCAP"
reflect="false">
<position x="0" y="0" z="0"/>
<dimensions
numsides="CaloSides"
zmin="EcalEndcapP_zmin"
rmin="EcalEndcapP_rmax"
rmax="HcalBarrel_rmax"/>
<layer repeat="1">
<slice material="Steel235" thickness="EcalEndcapP_length" vis="HcalAbsorberVis"/>
</layer>
</detector>
<detector <detector
id="HCalEndcapN_ID" id="HCalEndcapN_ID"
name="HcalEndcapN" name="HcalEndcapN"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment