Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • EIC/detectors/athena
  • zwzhao/athena
  • FernandoTA/athena
  • palspeic/athena
4 results
Show changes
Showing
with 1370 additions and 777 deletions
<display>
<comment>
A coherent color scheme. Pick from these colors and (in theory) it should look pretty good.
<comment>
Colors tweaked to be displayable by geoViewer
</comment>
<vis name="AnlGreen" alpha="1" r="119/255" g="179/255" b="0"/>
<vis name="AnlViolet" alpha="1" r="91/256" g="0" b="145/256"/>
<vis name="AnlProcess_Blue" alpha="1" r="0/256" g="130/256" b="202/256"/>
<vis name="AnlGreen" alpha="1" r="100/256" g="200/256" b="0/256"/>
<vis name="AnlViolet" alpha="1" r="100/256" g="0/256" b="150/256"/>
<vis name="AnlProcess_Blue" alpha="1" r="0/256" g="100/256" b="202/256"/>
<vis name="AnlOrange" alpha="1" r="255/256" g="121/256" b="0"/>
<vis name="AnlRed" alpha="1" r="205/256" g="32/256 " b="44/256"/>
<vis name="AnlGold" alpha="1" r="248/256" g="178/256" b="0/256"/>
<vis name="AnlRed" alpha="1" r="205/256" g="45/256 " b="45/256"/>
<vis name="AnlGold" alpha="1" r="248/256" g="188/256" b="0/256"/>
<vis name="AnlBlue" alpha="1" r="0/256" g="96/256" b="156/256"/>
<vis name="AnlTeal" alpha="1" r="0/256" g="161/256" b="156/256"/>
<vis name="AnlGray" alpha="1" r="102/256" g="102/256" b="102/256"/>
<vis name="AnlLight_Gray" alpha="1" r="209/256" g="209/256" b="209/256"/>
<vis name="AnlOff_White" alpha="1" r="242/256" g="242/256" b="242/256"/>
<vis name="AnlDelta_Red" alpha="1" r="161/256" g="43/256" b="47/256"/>
<vis name="AnlDelta_Green" alpha="1" r="0" g="120/256" b="54/256"/>
<vis name="AnlDelta_Blue" alpha="1" r="11/256" g="31/256" b="143/256"/>
<vis name="AnlLightGray" ref="AnlLight_Gray" />
<!-- off-white (or white) don't work! -->
<!--vis name="AnlOff_White" alpha="1" r="242/256" g="242/256" b="242/256"/-->
<vis name="AnlDarkRed" alpha="1" r="161/256" g="45/256" b="45/256"/>
<vis name="AnlDarkGreen" alpha="1" r="0" g="110/256" b="50/256"/>
<vis name="AnlDarkBlue" alpha="1" r="45/256" g="45/256" b="110/256"/>
<vis name="AnlDelta_Red" ref="AnlDarkRed"/>
<vis name="AnlDelta_Green" ref="AnlDarkGreen"/>
<vis name="AnlDelta_Blue" ref="AnlDarkBlue"/>
</display>
<display>
<comment>
This is where another color scheme can be developed.
Note this is currently just a copy of colors.xml
</comment>
<vis name="AnlGreen" alpha="1" r="119/255" g="179/255" b="0"/>
<vis name="AnlViolet" alpha="1" r="91/256" g="0" b="145/256"/>
<vis name="AnlProcess_Blue" alpha="1" r="0/256" g="130/256" b="202/256"/>
<vis name="AnlOrange" alpha="1" r="255/256" g="121/256" b="0"/>
<vis name="AnlRed" alpha="1" r="205/256" g="32/256 " b="44/256"/>
<vis name="AnlGold" alpha="1" r="248/256" g="178/256" b="0/256"/>
<vis name="AnlBlue" alpha="1" r="0/256" g="96/256" b="156/256"/>
<vis name="AnlTeal" alpha="1" r="0/256" g="161/256" b="156/256"/>
<vis name="AnlGray" alpha="1" r="102/256" g="102/256" b="102/256"/>
<vis name="AnlLight_Gray" alpha="1" r="209/256" g="209/256" b="209/256"/>
<vis name="AnlOff_White" alpha="1" r="242/256" g="242/256" b="242/256"/>
<vis name="AnlDelta_Red" alpha="1" r="161/256" g="43/256" b="47/256"/>
<vis name="AnlDelta_Green" alpha="1" r="0" g="120/256" b="54/256"/>
<vis name="AnlDelta_Blue" alpha="1" r="11/256" g="31/256" b="143/256"/>
</display>
<display>
<comment>
Similar color to regular scheme but with values that can be displayed by geoviewer
</comment>
<vis name="AnlGreen" alpha="1" r="100/256" g="200/256" b="0/256"/>
<vis name="AnlViolet" alpha="1" r="100/256" g="0/256" b="150/256"/>
<vis name="AnlProcess_Blue" alpha="1" r="0/256" g="100/256" b="202/256"/>
<vis name="AnlOrange" alpha="1" r="255/256" g="121/256" b="0"/>
<vis name="AnlRed" alpha="1" r="205/256" g="45/256 " b="45/256"/>
<vis name="AnlGold" alpha="1" r="248/256" g="188/256" b="0/256"/>
<vis name="AnlBlue" alpha="1" r="0/256" g="96/256" b="156/256"/>
<vis name="AnlTeal" alpha="1" r="0/256" g="161/256" b="156/256"/>
<vis name="AnlGray" alpha="1" r="102/256" g="102/256" b="102/256"/>
<vis name="AnlLight_Gray" alpha="1" r="209/256" g="209/256" b="209/256"/>
<!-- off-white (or white) don't work! -->
<!--vis name="AnlOff_White" alpha="1" r="242/256" g="242/256" b="242/256"/-->
<vis name="AnlDelta_Red" alpha="1" r="161/256" g="45/256" b="45/256"/>
<vis name="AnlDelta_Green" alpha="1" r="0" g="110/256" b="50/256"/>
<vis name="AnlDelta_Blue" alpha="1" r="45/256" g="45/256" b="110/256"/>
</display>
......@@ -50,79 +50,92 @@ The unused IDs below are saved for future use.
<documentation>
#### (25-49) Silicon Vertex Tracker
- SiVertex subsystem ID: 25
- Layer 1 subassembly ID: 26
- Layer 2 subassembly ID: 27
- Layer 3 subassembly ID: 28
- Layer 4 subassembly ID: 29
- Layer 5 subassembly ID: 30
</documentation>
<constant name="VertexBarrel_ID" value="25"/>
<constant name="VertexBarrelSubAssembly_ID" value="26"/>
<constant name="VertexEndcapSubAssembly_ID" value="27"/>
<constant name="VertexEndcapP_ID" value="30"/>
<constant name="VertexEndcapN_ID" value="40"/>
#### (25-39) Silicon Vertex Tracker
- Vertex subassemblies: 25-27
- Vertex barrel and endcaps: 28-30
- Unused: 28-30
</documentation>
<constant name="VertexSubAssembly_0_ID" value="25"/>
<constant name="VertexSubAssembly_1_ID" value="26"/>
<constant name="VertexSubAssembly_2_ID" value="27"/>
<constant name="VertexBarrel_0_ID" value="31"/>
<constant name="VertexBarrel_1_ID" value="32"/>
<constant name="VertexBarrel_2_ID" value="33"/>
<constant name="VertexEndcapN_0_ID" value="34"/>
<constant name="VertexEndcapN_1_ID" value="35"/>
<constant name="VertexEndcapN_2_ID" value="36"/>
<constant name="VertexEndcapP_0_ID" value="37"/>
<constant name="VertexEndcapP_1_ID" value="38"/>
<constant name="VertexEndcapP_2_ID" value="39"/>
<documentation>
- Unused IDs: 31-49
- Unused IDs: 31-39
</documentation>
<documentation>
#### (50-74) Silicon Tracker System
#### (40-84) Tracker System
SiTracker subsystem ID: 50
Layer 1 subassembly ID: 51
Layer 2 subassembly ID: 52
Layer 3 subassembly ID: 53
Layer 4 subassembly ID: 54
Layer 5 subassembly ID: 55
(56-70) etc...
Unused IDs: 71-74
- Tracker subassemblies: 40-45
- Composite tracker systems: 46-57
- Tracker detectors: 56-84
Unused IDs: (77-79)
</documentation>
<constant name="TrackerBarrelSubAssembly_Inner_ID" value="50"/>
<constant name="TrackerEndcapSubAssembly_Inner_ID" value="51"/>
<constant name="TrackerBarrelSubAssembly_Outer_ID" value="52"/>
<constant name="TrackerEndcapSubAssembly_Outer_ID" value="53"/>
<constant name="OuterTrackingSubAssembly_ID" value="54"/>
<!--constant name="TrackerSubAssemblyLayer4_ID" value="54"/-->
<!--constant name="TrackerSubAssemblyLayer5_ID" value="55"/-->
<constant name="TrackerBarrel_Inner_ID" value="56"/>
<constant name="TrackerEndcapP_Inner_ID" value="57"/>
<constant name="TrackerEndcapN_Inner_ID" value="58"/>
<constant name="TrackerBarrel_Outer_ID" value="59"/>
<constant name="TrackerEndcapP_Outer_ID" value="60"/>
<constant name="TrackerEndcapN_Outer_ID" value="61"/>
<constant name="TrackerBarrel_Layer3_ID" value="62"/>
<constant name="TrackerEndcapP_Layer3_ID" value="63"/>
<constant name="TrackerEndcapN_Layer3_ID" value="64"/>
<constant name="TrackerBarrel_Layer4_ID" value="65"/>
<constant name="TrackerEndcapP_Layer4_ID" value="66"/>
<constant name="TrackerEndcapN_Layer4_ID" value="67"/>
<constant name="TrackerBarrel_Layer5_ID" value="68"/>
<constant name="TrackerEndcapP_Layer5_ID" value="69"/>
<constant name="TrackerEndcapN_Layer5_ID" value="70"/>
<documentation>
#### (75-84) Barrel Tracker IDs
- MMTrackerBarrel ID: 75
- RWellTrackerBarrel ID: 76
- Unused IDs: 77-89
</documentation>
<constant name="MMTrackerBarrel_ID" value="75"/>
<constant name="RWellTrackerBarrel_ID" value="76"/>
<comment>
SubAssembly IDs should increment from inner to outer
(it's not the definition order but rather the ID order that's used
for construction order in the ACTS geometry conversion)
</comment>
<constant name="TrackerSubAssembly_0_ID" value="40"/>
<constant name="TrackerSubAssembly_1_ID" value="41"/>
<constant name="TrackerSubAssembly_2_ID" value="42"/>
<constant name="TrackerSubAssembly_3_ID" value="43"/>
<constant name="TrackerSubAssembly_4_ID" value="44"/>
<constant name="TrackerSubAssembly_5_ID" value="45"/>
<constant name="TrackerCompositeBarrel_0_ID" value="46"/>
<constant name="TrackerCompositeBarrel_1_ID" value="47"/>
<constant name="TrackerCompositeBarrel_2_ID" value="48"/>
<constant name="TrackerCompositeBarrel_3_ID" value="49"/>
<constant name="TrackerCompositeEndcapN_0_ID" value="50"/>
<constant name="TrackerCompositeEndcapN_1_ID" value="51"/>
<constant name="TrackerCompositeEndcapN_2_ID" value="52"/>
<constant name="TrackerCompositeEndcapN_3_ID" value="53"/>
<constant name="TrackerCompositeEndcapP_0_ID" value="54"/>
<constant name="TrackerCompositeEndcapP_1_ID" value="55"/>
<constant name="TrackerCompositeEndcapP_2_ID" value="56"/>
<constant name="TrackerCompositeEndcapP_3_ID" value="57"/>
<constant name="TrackerBarrel_0_ID" value="58"/>
<constant name="TrackerBarrel_1_ID" value="59"/>
<constant name="TrackerBarrel_2_ID" value="60"/>
<constant name="TrackerBarrel_3_ID" value="61"/>
<constant name="TrackerBarrel_4_ID" value="62"/>
<constant name="TrackerBarrel_5_ID" value="63"/>
<constant name="TrackerBarrel_6_ID" value="64"/>
<constant name="TrackerBarrel_7_ID" value="65"/>
<constant name="TrackerBarrel_8_ID" value="66"/>
<constant name="TrackerEndcapN_0_ID" value="67"/>
<constant name="TrackerEndcapN_1_ID" value="68"/>
<constant name="TrackerEndcapN_2_ID" value="69"/>
<constant name="TrackerEndcapN_3_ID" value="70"/>
<constant name="TrackerEndcapN_4_ID" value="71"/>
<constant name="TrackerEndcapN_5_ID" value="72"/>
<constant name="TrackerEndcapN_6_ID" value="73"/>
<constant name="TrackerEndcapN_7_ID" value="74"/>
<constant name="TrackerEndcapN_8_ID" value="75"/>
<constant name="TrackerEndcapP_0_ID" value="76"/>
<constant name="TrackerEndcapP_1_ID" value="77"/>
<constant name="TrackerEndcapP_2_ID" value="78"/>
<constant name="TrackerEndcapP_3_ID" value="79"/>
<constant name="TrackerEndcapP_4_ID" value="80"/>
<constant name="TrackerEndcapP_5_ID" value="81"/>
<constant name="TrackerEndcapP_6_ID" value="82"/>
<constant name="TrackerEndcapP_7_ID" value="83"/>
<constant name="TrackerEndcapP_8_ID" value="84"/>
<documentation>
#### (85-99) Reserved IDs
......@@ -177,34 +190,31 @@ The unused IDs below are saved for future use.
<constant name="HCalBarrel_ID" value="111"/>
<constant name="HCalEndcapP_ID" value="112"/>
<constant name="HCalEndcapN_ID" value="113"/>
<!--constant name="ci_HCAL_id" value="200"/-->
<constant name="PassiveSteelRingEndcapP_ID" value="114"/>
<documentation>
#### (120-129) (near) Forward reserved
- Forwardtracking ID: 120
- Forward RICH ID: 121
- Forward RICH ID: 120
- Forward TRD ID: 121
- Forward TOF ID: 122
- Unused IDs: 124-129
</documentation>
<constant name="ForwardTracking_ID" value="120"/>
<constant name="ForwardRICH_ID" value="121"/>
<!--constant name="ci_GEM_id" value="122"/-->
<constant name="ForwardTRD_ID" value="123"/>
<constant name="GEMTrackerEndcapP_ID" value="124"/>
<constant name="GEMTrackerEndcapN_ID" value="125"/>
<constant name="ForwardTOF_ID" value="126"/>
<constant name="BackwardTOF_ID" value="127"/>
<constant name="ForwardRICH_ID" value="120"/>
<constant name="ForwardTRD_ID" value="121"/>
<constant name="ForwardTOF_ID" value="122"/>
<documentation>
#### (130-139) Backward reserved
- Modular RICH ID: 130
- Electron Endcap GEM tracking ID: 131
- Unused IDs: 132-139
- Backward RICH ID: 131
- Backward TOD ID: 132
- Unused IDs: 133-139
</documentation>
<constant name="MRICH_ID" value="130"/>
<!--constant name="ce_GEM_ID" value="131"/-->
<constant name="MRICH_ID" value="130"/>
<constant name="BackwardRICH_ID" value="131"/>
<constant name="BackwardTOF_ID" value="132"/>
<documentation>
#### (140-149) Central Magnet
......@@ -221,37 +231,78 @@ The unused IDs below are saved for future use.
<constant name="SolenoidYoke_ID" value="142"/>
<documentation>
#### (150-169) Far Forward Detectors
#### (150-169) Far Forward Detectors
- Forward Roman Pot ID: 150
- Forward B0 Tracker ID: 151
- Zero Degree Cal. Ecal ID: 160
- Zero Degree Cal. Hcal ID: 161
TODO: A lot of the repeated ID's below should be pushed into a single detector
TODO: A lot of the repeated ID's below should be pushed into a single detector
</documentation>
<constant name="B0Tracker_Station_1_ID" value="150"/>
<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="B0Preshower_Station_1_ID" value="154"/>
<constant name="ForwardRomanPot_Station_1_ID" value="155"/>
<constant name="ForwardRomanPot_Station_1_ID" value="155"/>
<constant name="ForwardRomanPot_Station_2_ID" value="156"/>
<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"/>
<comment> TODO naming consistency </comment>
<constant name="ffi_ZDC_ECAL_ID" value="163"/>
<constant name="ffi_ZDC_HCAL_ID" value="164"/>
<constant name="ZDCEcal_ID" value="163"/>
<constant name="ZDCHcal_ID" value="164"/>
<constant name="VacuumMagnetElement_1_ID" value="165"/>
<documentation>
#### (170-189) Forward Beamline Magnets
</documentation>
#### (170-189) Far Forward Beamline Magnets
</documentation>
<constant name="B0PF_ID" value="170"/>
<constant name="B0APF_ID" value="171"/>
<constant name="Q1APF_ID" value="172"/>
<constant name="Q1BPF_ID" value="173"/>
<constant name="Q2PF_ID" value="174"/>
<constant name="B1PF_ID" value="175"/>
<constant name="B1APF_ID" value="176"/>
<constant name="B2PF_ID" value="177"/>
<constant name="Q0EF_ID" value="180"/>
<constant name="Q1EF_ID" value="181"/>
<documentation>
#### (190-199) Backward Beamline Magnets
#### (190-199) Far Backward Beamline Magnets
- Low-Q2 Tagger 1 Tracker ID: 195
- Low-Q2 Tagger 1 Calorimeter ID: 196
- Low-Q2 Tagger 2 Tracker ID: 198
- Low-Q2 Tagger 2 Calorimeter ID: 199
TODO: A lot of the repeated ID's below should be pushed into a single detector
</documentation>
<constant name="LumiCollimator_ID" value="190"/>
<constant name="LumiDipole_ID" value="191"/>
<constant name="TaggerTracker_1_ID" value="195"/>
<constant name="TaggerCalorimeter_1_ID" value="196"/>
<constant name="TaggerTracker_2_ID" value="198"/>
<constant name="TaggerCalorimeter_2_ID" value="199"/>
<documentation>
#### (200-219) Far Backward Beamline Magnets
</documentation>
<constant name="Pipe_to_Q1eR_ID" value="200"/>
<constant name="Magnet_Q1eR_ID" value="201"/>
<constant name="Pipe_in_Q1eR_ID" value="202"/>
<constant name="Pipe_Q1eR_to_Q2eR_ID" value="203"/>
<constant name="Magnet_Q2eR_ID" value="204"/>
<constant name="Pipe_in_Q2eR_ID" value="205"/>
<constant name="Pipe_Q2eR_to_B2AeR_ID" value="206"/>
<constant name="Magnet_B2AeR_ID" value="207"/>
<constant name="Pipe_in_B2AeR_ID" value="208"/>
<constant name="Pipe_B2AeR_to_B2BeR_ID" value="209"/>
<constant name="Magnet_B2BeR_ID" value="210"/>
<constant name="Pipe_in_B2BeR_ID" value="211"/>
<constant name="Magnet_Q3eR_ID" value="212"/>
<constant name="Vacuum_in_Q3eR_ID" value="213"/>
<documentation>
## Detector Definition Parameters
......@@ -288,6 +339,28 @@ Examples:
</documentation>
<documentation>
## Rapidity constants
</documentation>
<constant name="Eta1_1_tan" value="tan(2*atan(exp(-1.1)))" />
<constant name="Eta1_4_tan" value="tan(2*atan(exp(-1.4)))" />
<constant name="Eta3_5_tan" value="tan(2*atan(exp(-3.5)))" />
<constant name="Eta3_6_tan" value="tan(2*atan(exp(-3.6)))" />
<constant name="Eta3_7_tan" value="tan(2*atan(exp(-3.7)))" />
<constant name="Eta3_8_tan" value="tan(2*atan(exp(-3.8)))" />
<constant name="Eta3_9_tan" value="tan(2*atan(exp(-3.9)))" />
<constant name="Eta4_0_tan" value="tan(2*atan(exp(-4.0)))" />
<constant name="Eta4_1_tan" value="tan(2*atan(exp(-4.1)))" />
<constant name="Eta4_2_tan" value="tan(2*atan(exp(-4.2)))" />
<constant name="Eta4_3_tan" value="tan(2*atan(exp(-4.3)))" />
<constant name="Eta4_4_tan" value="tan(2*atan(exp(-4.4)))" />
<constant name="Eta4_5_tan" value="tan(2*atan(exp(-4.5)))" />
<constant name="Eta4_6_tan" value="tan(2*atan(exp(-4.6)))" />
<constant name="Eta4_7_tan" value="tan(2*atan(exp(-4.7)))" />
<constant name="Eta4_8_tan" value="tan(2*atan(exp(-4.8)))" />
<comment>Solenoid option</comment>
<documentation>
## Solenoid Magnet Parameters
......@@ -297,337 +370,189 @@ Examples:
<comment>Solenoid option</comment>
<constant name="Solenoid_length" value="3840.0*mm"/>
<constant name="Solenoid_rmin" value="1600.0*mm"/>
<constant name="Solenoid_thickness" value="640*mm"/>
<constant name="Solenoid_offset" value="10*mm"/>
<constant name="Solenoid_thickness" value="455*mm"/>
<constant name="Solenoid_offset" value="-240*mm"/>
<!--
<comment>Helmholtz option</comment>
<comment>
<constant name="Solenoid_length" value="3840.0*mm"/>
<constant name="Solenoid_rmin" value="1655.0*mm"/> <!-- Larger inner bore radius -->
<constant name="Solenoid_rmin" value="1655.0*mm"/> <comment> Larger inner bore radius </comment>
<constant name="Solenoid_thickness" value="640*mm"/>
<constant name="Solenoid_offset" value="10*mm"/>
</comment>
-->
<constant name="Solenoid_rmax" value="Solenoid_rmin + Solenoid_thickness"/>
<constant name="SolenoidForward_zmax" value="Solenoid_length/2. + Solenoid_offset"/>
<constant name="SolenoidBackward_zmax" value="Solenoid_length/2. - Solenoid_offset"/>
<constant name="SolenoidBarrel_rmin" value="Solenoid_rmin"/>
<constant name="SolenoidBarrel_length" value="Solenoid_length"/>
<constant name="SolenoidBarrel_zmax" value="Solenoid_length/2.0"/>
<documentation level="0">
## Key Central Detector Parameters
These are needed here to compute the dependent parameters.
<documentation>
## Tracking Detector Parameters
### PID Detector Region Parameters
</documentation>
<constant name="ForwardPID_length" value="180.0*cm"/>
<constant name="ForwardTracking_length" value="5.0*cm"/>
<constant name="ForwardPID_rmin1" value="Beampipe_rmax + 80*mm"/>
<constant name="ForwardPID_rmin2" value="19.0*cm"/>
<!--constant name="BackwardPID_rmax" value="83.65*cm"/-->
<constant name="BackwardPID_rmax" value="95.*cm"/>
<constant name="BackwardPID_length" value="40.0*cm"/>
<constant name="BackwardTracking_length" value="8.0*cm"/>
<constant name="BackwardTOF_length" value="0.0*cm"/>
<comment> Note: PID has space for DIRC, ExtraSpace has room for other detectors past the PID</comment>
<constant name="BarrelPIDThickness" value="10.0 * cm"/>
<constant name="BarrelExtraSpaceThickness" value="7.0 * cm"/>
<documentation>
Service gaps in FW direction (before endcapP ECAL) and BW direction (before endcapN HCAL)
### Vertex Tracking Region
</documentation>
<constant name="ForwardServiceGap_length" value="10.0*cm"/>
<constant name="BackwardServiceGap_length" value="10.0*cm"/>
<constant name="VertexTrackingRegion_rmin" value="Beampipe_rmax + 1.0*mm" />
<constant name="VertexTrackingRegion_rmax" value="100.0*mm" />
<constant name="VertexTrackingRegionP_zmax" value="240.0*mm" />
<constant name="VertexTrackingRegionN_zmax" value="240.0*mm" />
<constant name="VertexTrackingRegion_length" value="VertexTrackingRegionP_zmax + VertexTrackingRegionN_zmax" />
<documentation>
## Tracking Detector Parameters
### Central Tracking Region
TrackerBarrel_rmax: also the rmin for the barrel PID system (DIRC)
Note: The barrel rmax and endcap lengths are the maximum extent allowed for
the barrel and endcap layers, not the position of the final layer.
Generic tracking space allocations
</documentation>
<documentation>
## Vertex Tracker Parameters
</documentation>
<constant name="VertexTrackerBarrel_rmin" value="Beampipe_rmax + 1.0*mm"/>
<constant name="VertexTrackerBarrel_rmax" value="200.0*mm"/>
<constant name="VertexTrackerBarrel_length" value="300.0*mm"/>
<constant name="VertexTrackerBarrel_zmax" value="VertexTrackerBarrel_length/2.0"/>
<constant name="VertexTrackerEndcapP_rmax" value="VertexTrackerBarrel_rmax"/>
<constant name="VertexTrackerEndcapN_rmax" value="VertexTrackerBarrel_rmax"/>
<constant name="CentralTrackingRegion_rmax" value="950.0*mm" />
<constant name="CentralTrackingRegionP_zmax" value="1700.0*mm" />
<constant name="CentralTrackingRegionN_zmax" value="1500.0*mm" />
<constant name="CentralTrackingRegion_length" value="CentralTrackingRegionP_zmax + CentralTrackingRegionN_zmax" />
<comment>
tan(theta) to determine rmin in the outer tracking region (due to tapered beampipe)
</comment>
<constant name="CentralTrackingBarrel_tan" value="Eta1_1_tan" />
<constant name="CentralTrackingRegionP_tan" value="Eta3_7_tan * 1.00" />
<constant name="CentralTrackingRegionN_tan" value="Eta4_0_tan * 0.99" />
<constant name="VertexTrackerEndcapP_rmin" value="Beampipe_rmax + 5.0*mm"/>
<constant name="VertexTrackerEndcapN_rmin" value="Beampipe_rmax + 5.0*mm"/>
<documentation level="0">
### PID Detector Region Parameters
</documentation>
<constant name="VertexTrackerEndcapP_zmax" value="300.0*mm"/>
<constant name="VertexTrackerEndcapN_zmax" value="300.0*mm"/>
<comment> Global PID regions with suballocations for TOF and RICH detectors </comment>
<constant name="ForwardPIDRegion_zmin" value="CentralTrackingRegionP_zmax" />
<constant name="ForwardPIDRegion_length" value="160.0*cm" />
<documentation>
### Vertex Tracking Region
</documentation>
<constant name="VertexTrackingRegion_length" value="VertexTrackerEndcapP_zmax + VertexTrackerEndcapN_zmax "/>
<constant name="VertexTrackingRegion_zmax" value="VertexTrackerEndcapP_zmax"/>
<constant name="VertexTrackingRegion_rmax" value="VertexTrackerBarrel_rmax"/>
<comment> Forward TOF region currenlty empty for future upgrades </comment>
<constant name="ForwardTOFRegion_zmin" value="ForwardPIDRegion_zmin" />
<constant name="ForwardTOFRegion_length" value="20.0*cm" />
<constant name="ForwardTOFRegion_rmax" value="CentralTrackingRegion_rmax" />
<constant name="ForwardTOFRegion_tan" value="CentralTrackingRegionP_tan" />
<comment> Forward RICH region </comment>
<constant name="ForwardRICHRegion_zmin" value="ForwardTOFRegion_zmin + ForwardTOFRegion_length" />
<constant name="ForwardRICHRegion_length" value="ForwardPIDRegion_length - ForwardTOFRegion_length" />
<comment> tangent of the opening angle at the front and back of the RICH </comment>
<constant name="ForwardRICHRegion_tan1" value="CentralTrackingRegionP_tan * 0.88" />
<constant name="ForwardRICHRegion_tan2" value="Eta3_6_tan * 0.89" />
<constant name="BackwardPIDRegion_zmin" value="CentralTrackingRegionN_zmax" />
<constant name="BackwardPIDRegion_length" value="60.0*cm" />
<constant name="BackwardPIDRegion_rmax" value="CentralTrackingRegion_rmax" />
<constant name="BackwardPIDRegion_tan" value="CentralTrackingRegionN_tan * 0.92" />
<comment> Backward RICH region </comment>
<constant name="BackwardRICHRegion_zmin" value="BackwardPIDRegion_zmin" />
<constant name="BackwardRICHRegion_length" value="58.0*cm" />
<comment> Backward TOF region, currently empty for upgrades </comment>
<constant name="BackwardTOFRegion_zmin" value="BackwardRICHRegion_zmin + BackwardRICHRegion_length" />
<constant name="BackwardTOFRegion_length" value="BackwardPIDRegion_length - BackwardRICHRegion_length" />
<comment> Note: PID has space for DIRC, ExtraSpace sits past the PID</comment>
<constant name="BarrelPIDRegion_thickness" value="8.0 * cm" />
<constant name="BarrelExtraSpace_thickness" value="0.0 * cm" />
<documentation>
### Tracker Detector Parameters
TrackerBarrel_rmax: also the rmin for the barrel PID system (DIRC)
## Forward/backward tracking region behind the PID detectors
</documentation>
<constant name="TrackerBarrel_rmin" value="VertexTrackingRegion_rmax"/>
<constant name="TrackerBarrel_rmax" value="BackwardPID_rmax"/>
<constant name="TrackerBarrel_thickness" value="TrackerBarrel_rmax-TrackerBarrel_rmin"/>
<constant name="BackwardTrackingRegion_tan" value="CentralTrackingRegionN_tan" />
<constant name="BackwardTrackingRegion_zmin" value="BackwardPIDRegion_zmin + BackwardPIDRegion_length" />
<constant name="ForwardTrackingRegion_tan" value="ForwardRICHRegion_tan2" />
<constant name="ForwardTrackingRegion_zmin" value="ForwardPIDRegion_zmin + ForwardPIDRegion_length" />
<constant name="ForwardTrackingRegion_length" value="10.0*cm" />
<constant name="BackwardTrackingRegion_length" value="0.0*cm" />
<constant name="TrackerBarrel_length" value="VertexTrackingRegion_length + 2000.0*mm"/>
<constant name="TrackerBarrelInside_length" value="VertexTrackingRegion_length"/>
<constant name="TrackerBarrelInside_zmax" value="TrackerBarrelInside_length/2.0"/>
<constant name="TrackerBarrel_zmax" value="TrackerBarrel_length/2.0"/>
<comment> Total length of the endcap detectors in front of the calorimeter</comment>
<constant name="BackwardInnerEndcapRegion_length" value="BackwardPIDRegion_length + BackwardTrackingRegion_length"/>
<constant name="ForwardInnerEndcapRegion_length" value="ForwardPIDRegion_length + ForwardTrackingRegion_length"/>
<documentation>
`TrackerBarrelForwardPadding` and `TrackerBarrelBackwardPadding` compensate for the asymmetry of the setup
</documentation>
<constant name="TrackerBarrelForwardPadding" value="25.0*cm"/>
<constant name="TrackerBarrelBackwardPadding" value="7.0*cm"/>
<documentation>
## Central tracking and PID detector boundaries
## Service gaps
The central tracking detectors are assumed to be symmtric about the origin.
Service gaps in FW direction (before endcapP ECAL) and BW direction (before endcapN HCAL)
</documentation>
<constant name="BarrelTracking_length" value="TrackerBarrel_length"/>
<constant name="BarrelTracking_rmax" value="TrackerBarrel_rmax"/>
<constant name="BarrelTracking_zmax" value="BarrelTracking_length/2.0"/>
<constant name="BarrelTrackingAndPID_length" value="BarrelTracking_length"/>
<constant name="BarrelTrackingAndPID_rmax" value="BarrelTracking_rmax + BarrelPIDThickness"/>
<constant name="CentralTracking_length" value="BarrelTracking_length + TrackerBarrelForwardPadding + TrackerBarrelBackwardPadding"/>
<constant name="CentralTracking_rmax" value="TrackerBarrel_rmax"/>
<constant name="CentralTrackingHalfN_length" value="BarrelTracking_length/2. + TrackerBarrelBackwardPadding"/>
<constant name="CentralTrackingHalfP_length" value="BarrelTracking_length/2. + TrackerBarrelForwardPadding"/>
<comment> These are used by ddsim </comment>
<constant name="tracker_region_rmax" value="CentralTracking_rmax"/>
<constant name="tracker_region_zmax" value="CentralTracking_length/2.0"/>
<comment> Total length of the endcap detectors</comment>
<constant name="BackwardInnerEndcap_length" value="BackwardPID_length + BackwardTracking_length"/>
<constant name="ForwardInnerEndcap_length" value="ForwardPID_length + ForwardTracking_length"/>
<constant name="ForwardServiceGap_length" value="10.0*cm"/>
<constant name="BackwardServiceGap_length" value="10.0*cm"/>
<documentation level="3">
## Calorimeter Parameters
### Note on paramaeterization
The HCal Barrel is outside of the solenoid magnet. However,
there is an option to add some HCal barrel inside the magnet but this
is turned off below.
The space for the calorimeters inside the solenoid is assumed to be fixed by
the solenoid inner diameter/length and by the central tracking and PID outer diameter/length.
### Endcaps
The extra endcap lengths are for offsetting the outside endcap surface (zmax) from the
end of the solenoid coils.
</documentation>
<constant name="CaloSides" value="12"/>
<comment> these offesets could be implemented differently for clarity. </comment>
<constant name="EcalEndcapPSolenoid_offset" value="800.0*mm" />
<constant name="EcalEndcapNSolenoid_offset" value="-100.0*mm" />
<constant name="EndcapPExtra_length" value="40.0*cm"/>
<constant name="EndcapNExtra_length" value="0.0*cm"/>
<constant name="SolenoidYokeEndcapP_zmin" value="Solenoid_length/2.0 + Solenoid_offset + EndcapPExtra_length"/>
<constant name="SolenoidYokeEndcapN_zmin" value="Solenoid_length/2.0 - Solenoid_offset + EndcapNExtra_length"/>
<constant name="EcalBarrel_rmin" value="BarrelTrackingAndPID_rmax + BarrelExtraSpaceThickness"/>
<constant name="Barrel_rmax" value="Solenoid_rmin - 1.0 *cm "/>
<constant name="Barrel_TotalCalThickness" value="Barrel_rmax - EcalBarrel_rmin"/>
<constant name="EcalBarrel_TotalThickness" value="40.0*cm"/>
<constant name="EcalEndcapP_zmin" value="CentralTrackingHalfP_length + ForwardInnerEndcap_length + ForwardServiceGap_length"/>
<constant name="EcalEndcapN_zmin" value="max(CentralTrackingHalfN_length+ BackwardInnerEndcap_length, SolenoidYokeEndcapN_zmin)"/>
<constant name="BarrelLength" value="BarrelTrackingAndPID_length" />
<constant name="Barrel_offset" value="(EcalEndcapP_zmin-EcalEndcapN_zmin)/2.0" />
<documentation>
### Ecal Endcaps
</documentation>
<constant name="EcalEndcapP_zmin" value="ForwardPIDRegion_zmin + ForwardInnerEndcapRegion_length + ForwardServiceGap_length" />
<constant name="EcalEndcapP_length" value="30*cm" />
<constant name="EcalEndcapP_rmin" value="200.0*mm" />
<comment> extra 50cm rmax that "protrudes" into the HCAL</comment>
<constant name="EcalEndcapP_rmax" value="floor(Eta1_1_tan * EcalEndcapP_zmin)"/>
<constant name="EcalEndcapN_zmin" value="BackwardPIDRegion_zmin + BackwardInnerEndcapRegion_length"/>
<constant name="EcalEndcapN_length" value="60*cm" />
<comment>
Unused, TBD
rmin1: rmin round electron pipe (ignoring the hadron pipe)
rmin2: rmin around both beam pipes
</comment>
<constant name="EndcapPTotalCal_length" value="(SolenoidYokeEndcapP_zmin + EcalEndcapPSolenoid_offset) - (EcalEndcapP_zmin)"/>
<constant name="EndcapNTotalCal_length" value="(SolenoidYokeEndcapN_zmin + EcalEndcapNSolenoid_offset) - (EcalEndcapN_zmin)"/>
<!--constant name="EndcapP_CalDivide" value="0.8"/> <comment> 0.5 means Ecal and Hcal have the same thickness </comment-->
<!--constant name="EndcapN_CalDivide" value="1.0"/> <comment> 0.5 means Ecal and Hcal have the same thickness </comment-->
<!--constant name="EcalEndcapP_length" value="EndcapPTotalCal_length * EndcapP_CalDivide"/-->
<constant name="EcalEndcapP_length" value="40*cm"/>
<!--constant name="EcalEndcapN_length" value="EndcapNTotalCal_length * EndcapN_CalDivide"/-->
<constant name="EcalEndcapN_length" value="60*cm"/>
<documentation>
EcalEndcapP_rmin and EcalEndcapN_rmin need to be set in sync with the forward and backward detectors.
</documentation>
<constant name="EcalEndcapP_rmin" value="200.0*mm"/>
<constant name="EcalEndcapN_rmin" value="max((EcalEndcapN_zmin + EcalEndcapN_length) * tan(abs(CrossingAngle)) + 12.5 * mm, 5*cm)"/>
<constant name="EcalEndcapN_rmax" value="BarrelTracking_rmax"/>
<documentation>
## EM Calorimeter Parameters
### Note about Calormieter parameterization.
The logic goes like this:
1. The space for the calorimeter is fixed via parameterization above.
2. The layer thicknesses are fixed (first parameters below)
3. From the space/thickness the number of layers is computed.
</documentation>
<constant name="CaloSides" value="12"/>
<documentation>
Calorimeter slice material thicknesses
</documentation>
<constant name="EcalSiliconThickness" value="9.00 * mm" />
<constant name="EcalCopperThickness" value="0.05 * mm" />
<constant name="EcalKaptonThickness" value="0.30 * mm" />
<constant name="EcalAir1Thickness" value="0.33 * mm" />
<constant name="EcalAir2Thickness" value="0.25 * mm" />
<constant name="EcalThinTungstenThickness" value="2.50 * mm" />
<constant name="EcalThickTungstenThickness" value="5.00 * mm" />
<comment> Layer Thickness </comment>
<constant name="EcalLayer1_thickness"
value="EcalSiliconThickness + EcalCopperThickness + EcalKaptonThickness + EcalAir1Thickness"/>
<constant name="EcalLayer2_thickness"
value="EcalThinTungstenThickness + EcalAir2Thickness + EcalSiliconThickness + EcalCopperThickness + EcalKaptonThickness + EcalAir1Thickness"/>
<constant name="EcalLayer3_thickness"
value="EcalThickTungstenThickness + EcalAir2Thickness + EcalSiliconThickness + EcalCopperThickness + EcalKaptonThickness + EcalAir1Thickness"/>
<comment> EM Barrel N Layer; same number of layers for EcalThin and EcalThick</comment>
<constant name="EcalBarrelLayers"
value="floor((EcalBarrel_TotalThickness - EcalLayer1_thickness) / (EcalLayer2_thickness + EcalLayer3_thickness))"/>
<constant name="EcalBarrelLayer1_NRepeat" value="1"/>
<constant name="EcalBarrelLayer2_NRepeat" value="EcalBarrelLayers"/>
<constant name="EcalBarrelLayer3_NRepeat" value="EcalBarrelLayers"/>
<comment> EM Barrel Thickness </comment>
<constant name="EcalBarrelThickness"
value="EcalBarrelLayer1_NRepeat*EcalLayer1_thickness + EcalBarrelLayer2_NRepeat * EcalLayer2_thickness + EcalBarrelLayer3_NRepeat * EcalLayer3_thickness"/>
<constant name="EcalBarrel_rmax" value="EcalBarrel_rmin + EcalBarrelThickness"/>
<comment> EM Endcap N Layer; same number of layers for EcalThin and EcalThick </comment>
<constant name="EcalEndcapPLayers"
value="floor((EcalEndcapP_length - EcalLayer1_thickness) / (EcalLayer2_thickness + EcalLayer3_thickness))"/>
<constant name="EcalEndcapNLayers"
value="floor((EcalEndcapN_length - EcalLayer1_thickness) / (EcalLayer2_thickness + EcalLayer3_thickness))"/>
<constant name="EcalEndcapPLayer1_NRepeat" value="1"/>
<constant name="EcalEndcapNLayer1_NRepeat" value="1"/>
<constant name="EcalEndcapPLayer2_NRepeat" value="EcalEndcapPLayers"/>
<constant name="EcalEndcapPLayer3_NRepeat" value="EcalEndcapPLayers"/>
<constant name="EcalEndcapNLayer2_NRepeat" value="EcalEndcapNLayers"/>
<constant name="EcalEndcapNLayer3_NRepeat" value="EcalEndcapNLayers"/>
<comment> EM Endcap Thickness </comment>
<!--constant name="EcalEndcapPThickness"
value="EcalEndcapPLayer1_NRepeat*EcalLayer1_thickness + EcalEndcapPLayer2_NRepeat*EcalLayer2_thickness + EcalEndcapPLayer3_NRepeat*EcalLayer3_thickness "/-->
<!--constant name="EcalEndcapNThickness"
value="EcalEndcapNLayer1_NRepeat*EcalLayer1_thickness + EcalEndcapNLayer2_NRepeat*EcalLayer2_thickness + EcalEndcapNLayer3_NRepeat*EcalLayer3_thickness"/-->
<constant name="EcalBarrelForward_length" value="4*cm"/>
<constant name="EcalBarrelForward_zmax" value="CentralTrackingHalfP_length + EcalBarrelForward_length"/>
<constant name="EcalBarrelBackward_zmax" value="CentralTrackingHalfN_length + BackwardInnerEndcap_length + EcalEndcapN_length"/>
<constant name="EcalEndcapN_rmin1" value="Eta4_6_tan * EcalEndcapN_zmin" />
<constant name="EcalEndcapN_rmin2" value="Eta4_1_tan * EcalEndcapN_zmin" />
<constant name="EcalEndcapN_rmax" value="CentralTrackingRegion_rmax" />
<constant name="EcalBarrelRegion_thickness" value="45.0*cm"/>
<constant name="EcalBarrel_rmin" value="CentralTrackingRegion_rmax + BarrelPIDRegion_thickness + BarrelExtraSpace_thickness"/>
<constant name="EcalBarrelForward_zmax" value="SolenoidForward_zmax"/>
<constant name="EcalBarrelBackward_zmax" value="EcalEndcapN_zmin + 30*cm"/>
<constant name="EcalBarrel_length" value="EcalBarrelForward_zmax + EcalBarrelBackward_zmax"/>
<constant name="EcalBarrel_offset" value="(EcalBarrelForward_zmax - EcalBarrelBackward_zmax)/2.0"/>
<constant name="EcalBarrelReadout_length" value="20*cm"/>
<comment> Special DIRC parameters (depend on the ECAL setup) </comment>
<documentation level="3">
## Special DIRC parameters (depend on the ECAL setup)
</documentation>
<constant name="DIRCReadout_length" value="30*cm"/>
<constant name="DIRCForward_length" value="0*cm"/>
<constant name="DIRCForward_zmax" value="CentralTrackingHalfP_length + DIRCForward_length"/>
<constant name="DIRCBackward_zmax" value="CentralTrackingHalfN_length + BackwardInnerEndcap_length + EcalEndcapN_length + DIRCReadout_length"/>
<constant name="DIRCForward_zmax" value="EcalBarrelForward_zmax "/>
<constant name="DIRCBackward_zmax" value="EcalBarrelBackward_zmax + EcalBarrelReadout_length +DIRCReadout_length "/>
<constant name="DIRC_length" value="DIRCForward_zmax + DIRCBackward_zmax"/>
<constant name="DIRC_offset" value="(DIRCForward_zmax - DIRCBackward_zmax)/2"/>
<constant name="DIRC_rmin" value="BarrelTracking_rmax"/>
<constant name="DIRC_rmax" value="DIRC_rmin + BarrelPIDThickness"/>
<constant name="DIRC_rmin" value="CentralTrackingRegion_rmax"/>
<constant name="DIRC_rmax" value="DIRC_rmin + BarrelPIDRegion_thickness"/>
<documentation>
## Hadronic Calorimeter Parameters
</documentation>
<constant name="HcalEndcapP_zmin" value="max(EcalEndcapP_zmin + EcalEndcapP_length, Solenoid_length / 2.0 + Solenoid_offset) "/>
<!--constant name="HcalEndcapN_zmin" value="max(EcalEndcapN_zmin + EcalEndcapN_length, Solenoid_length / 2.0 - Solenoid_offset) "/-->
<comment> Hard coded for now, but we really need to fix the parametrization...</comment>
<comment> Note: we can go up to 350cm here for 1m thick hcal</comment>
<constant name="HcalEndcapN_zmin" value="DIRCBackward_zmax + BackwardServiceGap_length"/>
<constant name="HcalEndcapP_zmin" value="EcalEndcapP_zmin + EcalEndcapP_length"/>
<constant name="HcalEndcapP_length" value="120.0*cm"/>
<constant name="HcalEndcapN_length" value="105.0*cm"/>
<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)"/>
<comment> HcalEndcapP needs to clear the straight beampipe with 1 * crossing angle + its radius of 22.25 mm </comment>
<constant name="HcalEndcapN_zmin" value="max(DIRCBackward_zmax + BackwardServiceGap_length, 355*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>
<constant name="HcalEndcapN_rmin" value="max((HcalEndcapN_zmin + HcalEndcapN_length) * tan(abs(CrossingAngle)) + 22.25 * mm, 11 * cm)"/>
<constant name="HcalBarrel_thickness" value="100.0*cm "/>
<constant name="HcalBarrel_rmin" value="Solenoid_rmax"/>
<constant name="HcalBarrel_rmin" value="max(Solenoid_rmax, 230*cm)"/>
<constant name="HcalBarrel_rmax" value="HcalBarrel_rmin + HcalBarrel_thickness"/>
<constant name="HcalBarrelForward_zmax" value="HcalEndcapP_zmin - ForwardServiceGap_length - EcalEndcapP_length"/>
<constant name="HcalBarrelBackward_zmax" value="HcalEndcapN_zmin - BackwardServiceGap_length"/>
<constant name="HcalBarrelAvailThickness" value="HcalBarrel_thickness"/>
<comment>
These are used by ddsim, the region where we store all secondaries
<constant name="HcalBarrelLength" value="HcalEndcapP_zmin + HcalEndcapN_zmin "/>
<documentation>
#### Material Thickness
</documentation>
<constant name="HcalBarrelSteelThickness" value="2.0 * cm"/>
<constant name="HcalBarrelPolystyreneThickness" value="0.5 * cm"/>
<constant name="HcalEndcapNSteelThickness" value="HcalBarrelSteelThickness"/>
<constant name="HcalEndcapNPolystyreneThickness" value="HcalBarrelPolystyreneThickness"/>
<constant name="HcalEndcapPSteelThickness" value="HcalBarrelSteelThickness"/>
<constant name="HcalEndcapPPolystyreneThickness" value="0.3 * cm"/>
<documentation>
- Hcal Barrel Layers and computed Thickness
</documentation>
<constant name="HcalBarrelSingleLayerThickness"
value="HcalBarrelSteelThickness + HcalBarrelPolystyreneThickness"/>
<constant name="HcalBarrelLayer_NRepeat" value="floor(HcalBarrelAvailThickness / HcalBarrelSingleLayerThickness)"/>
<constant name="HcalBarrelThickness" value="HcalBarrelLayer_NRepeat * HcalBarrelSingleLayerThickness"/>
<documentation>
- Hcal Endcap P Layers and computed Thickness
</documentation>
<constant name="HcalEndcapNSingleLayerThickness"
value="HcalEndcapNSteelThickness + HcalEndcapNPolystyreneThickness"/>
<constant name="HcalEndcapNLayer_NRepeat" value="floor(HcalEndcapN_length / HcalEndcapNSingleLayerThickness)"/>
<constant name="HcalEndcapN_thickness" value="HcalEndcapNLayer_NRepeat * HcalEndcapNSingleLayerThickness"/>
<documentation>
- Hcal Endcap P Layers and computed Thickness
</documentation>
<constant name="HcalEndcapPSingleLayerThickness"
value="HcalEndcapPSteelThickness + HcalEndcapPPolystyreneThickness"/>
<constant name="HcalEndcapPLayer_NRepeat" value="floor(HcalEndcapP_length / HcalEndcapPSingleLayerThickness)"/>
<constant name="HcalEndcapP_thickness" value="HcalEndcapPLayer_NRepeat * HcalEndcapPSingleLayerThickness"/>
For now they are forced to be symmetric, and we cover up to the start of the backward ECAL.
(this means in the forward region we stop in the middle of the RICH).
</comment>
<constant name="tracker_region_rmax" value="EcalBarrel_rmin"/>
<constant name="tracker_region_zmax" value="EcalEndcapN_zmin"/>
</define>
......@@ -10,16 +10,46 @@
<comment>
Tracking Visualizations
</comment>
<vis name="TrackerVis" ref="AnlRed" />
<vis name="TrackerVis" ref="AnlRed" />
<vis name="TrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="true" />
<vis name="TrackerServiceVis" ref="AnlGold" showDaughters="false" />
<vis name="TrackerLayerVis" ref="AnlGray" visible="true" showDaughters="true" />
<vis name="TrackerModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="false" />
<vis name="TrackerMPGDVis" ref="AnlRed" visible="true" showDaughters="false" />
<comment> Visualization for Barrel MMGAS (apply to layers) and GEM endcap (apply to modules) </comment>
<vis name="TrackerGEMModuleVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="TrackerMMGASLayerVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="VertexSupportVis" ref="AnlBlue" showDaughters="false" />
<vis name="VertexSupportLayerVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="VertexSupportVis" ref="VertexSupportLayerVis" visible="true" showDaughters="true" />
<vis name="VertexLayerVis" ref="AnlGray" visible="true" showDaughters="true" />
<vis name="VertexModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="false" />
<vis name="TOFVis" ref="AnlGreen" showDaughters="true" />
<vis name="TOFVis" ref="AnlTeal" visible="true" showDaughters="true"/>
<vis name="TOFLayerVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFModuleVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFSupportVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFSensorVis" ref="TOFVis" visible="true" showDaughters="true"/>
<comment> By default don't display the barrel module details </comment>
<vis name="TOFBarrelModuleVis" ref="TOFVis" visible="true" showdaughters="true"/>
<comment> extra detailed vizualizations for the barrel </comment>
<vis name="TOFHybridVis" ref="AnlGold" visible="true" showDaughters="true"/>
<vis name="TOFCoolingTube" ref="AnlRed" visible="true" showDaughters="true"/>
<vis name="TOFCoolant" ref="TrackerServiceVis" visible="true" showDaughters="true"/>
<vis name="TOFCSkinVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFCFoamVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFCHoneycombVis" ref="TrackerServiceVis" visible="true" showDaughters="true"/>
<vis name="FFTrackerVis" ref="AnlRed" />
<vis name="FFTrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="FFTrackerShieldingVis" ref="AnlGray" visible="true" showDaughters="false" />
<vis name="FFTrackerServiceVis" ref="AnlGold" visible="true" showDaughters="false" />
<vis name="FFTrackerLayerVis" ref="TrackerVis" visible="true" showDaughters="true" />
<vis name="FFTrackerModuleVis" ref="FFTrackerLayerVis" visible="true" showDaughters="true" />
<vis name="FFTrackerSurfaceVis" ref="FFTrackerLayerVis" visible="true" showDaughters="true" />
<comment> For shielded modules by default just display to module instead of 6 layers </comment>
<vis name="FFTrackerShieldedModuleVis" ref="FFTrackerModuleVis" visible="true" showDaughters="false" />
<comment>
ECal Vis
......@@ -33,11 +63,18 @@
<vis name="EcalBarrelSliceVis" ref="AnlGray" showDaughters="false" visible="true"/>
<vis name="EcalBarrelFiberLayerVis" ref="AnlGold" showDaughters="false" visible="true" />
<vis name="EcalEndcapVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapVis" ref="AnlGold" showDaughters="true" visible="false"/>
<vis name="EcalEndcapLayerVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapBlockVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapNModuleVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="FFPreVis" ref="AnlGold" showDaughters="true" visible="true"/>
<vis name="FFPreLayerVis" ref="FFPreVis" showDaughters="true" visible="true"/>
<vis name="FFPreModuleVis" ref="FFPreLayerVis" showDaughters="true" visible="true"/>
<vis name="FFPreRadiatorVis" ref="FFPreModuleVis" showDaughters="true" visible="true"/>
<vis name="FFPreReadoutVis" ref="FFTrackerSurfaceVis" showDaughters="true" visible="true"/>
<comment>
HCal Vis
</comment>
......@@ -50,10 +87,15 @@
<vis name="HcalSensorVis" ref="AnlBlue" 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>
Solenoid
</comment>
<vis name="SolenoidCoilVis" ref="AnlLight_Gray" showDaughters="true" visible="true" lineStyle="solid" drawingStyle="solid" />
<vis name="SolenoidCoilVis" ref="AnlLightGray" showDaughters="true" visible="true" lineStyle="solid" drawingStyle="solid" />
<vis name="SolenoidCryostatVis" ref="AnlGray" showDaughters="true" visible="true" lineStyle="solid" drawingStyle="solid" />
<vis name="SolenoidYokeVis" ref="AnlLight_Gray" showDaughters="false" visible="true" lineStyle="solid" drawingStyle="solid" />
......@@ -66,41 +108,44 @@
<vis name="DIRCVis" ref="AnlTeal" showDaughters="true" visible="false"/>
<vis name="DIRCLayerVis" ref="AnlTeal" showDaughters="true" visible="false"/>
<vis name="DIRCModuleVis" ref="AnlTeal" showDaughters="true" visible="false"/>
<vis name="DIRCSupportVis" ref="AnlGray" showDaughters="true" visible="true"/>
<vis name="DIRCSupportVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<vis name="DIRCFrameVis" ref="AnlOrange" showDaughters="true" visible="true"/>
<vis name="DIRCBarVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<comment>
Beam line
Beam line with magnets
</comment>
<vis name="BeamPipeVis" ref="AnlLightGray" showDaughters="true" visible="true"/>
<vis name="FFMagnetVis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="FFMagnetCoilVis" ref="AnlRed" showDaughters="true" visible="true"/>
<comment>
ZDC visualization
</comment>
<vis name="ffi_ZDC_ECAL_Vis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_module_Vis" ref="AnlRed" showDaughters="false" visible="true"/>
<vis name="ffi_ZDC_HCAL_Vis" ref="AnlBlue" showDaughters="true" visible="true"/>
<comment>
PID visualization
</comment>
<vis name="BeamPipeVis" ref="AnlLight_Gray" showDaughters="true" visible="true"/>
<vis name="cb_SolenoidVis" alpha="0.4" r= "0.1" g="0.0" b="0.1" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_Vis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_module_Vis" alpha="1.0" r= "0.1" g="1.0" b="0.9" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_HCAL_Vis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_CTDVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_CTD_Si_layerVis" alpha="1.0" r= "0.9" g="1.0" b="0.1" showDaughters="true" visible="true"/>
<vis name="ce_GEMVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_GEM_layerVis" alpha="0.8" r= "0.8" g="0.4" b="0.3" showDaughters="true" visible="true"/>
<vis name="cb_VTX_BarrelVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_VTX_Barrel_layerVis" alpha="2.0" r= "0.0" g="0.2" b="0.8" showDaughters="true" visible="true"/>
<vis name="ci_GEMVis" r= "0.8" g="0.4" b="0.3" alpha="0.8" showDaughters="true" visible="true"/>
<vis name="ci_HCALVis" r= "0.6" g="0" b="0.6" alpha="1.0" showDaughters="true" visible="true"/>
<vis name="DRICH_vessel_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="DRICH_gas_vis" ref="AnlGreen" alpha="0.5" showDaughters="true" visible="true" />
<vis name="DRICH_aerogel_vis" ref="AnlTeal" showDaughters="true" visible="true" />
<vis name="DRICH_filter_vis" alpha="1.0" r="1.0" g="1.0" b="0.0" showDaughters="true" visible="true" />
<vis name="DRICH_mirror_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="DRICH_sensor_vis" ref="AnlGreen" showDaughters="true" visible="true" />
<vis name="DRICH_sensor_vis" ref="AnlBlue" showDaughters="true" visible="true" />
<vis name="PFRICH_sensor_vis" ref="AnlBlue" showDaughters="true" visible="true" />
<vis name="MRICH_aerogel_vis" ref="AnlTeal" showDaughters="true" visible="true" />
<vis name="MRICH_frame_vis" ref="AnlGold" showDaughters="true" visible="true" />
<vis name="MRICH_lens_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="MRICH_mirror_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="RICHServiceVis" ref="AnlGray" showDaughters="true" visible="true" />
</display>
<comment>
......
......@@ -11,42 +11,83 @@
<comment>
Tracking Visualizations
</comment>
<vis name="TrackerSupportVis" ref="AnlBlue" showDaughters="false" />
<vis name="TrackerLayerVis" ref="AnlTeal" visible="true" showDaughters="true" />
<vis name="TrackerModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="false" />
<vis name="VertexSupportVis" ref="AnlBlue" showDaughters="false" />
<vis name="VertexLayerVis" ref="AnlTeal" visible="true" showDaughters="true" />
<vis name="VertexModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="false" />
<vis name="TOFVis" ref="AnlGreen" showDaughters="true" />
<vis name="TrackerVis" ref="AnlRed" />
<vis name="TrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="TrackerServiceVis" ref="AnlGold" showDaughters="false" />
<vis name="TrackerLayerVis" ref="AnlGray" visible="true" showDaughters="true" />
<vis name="TrackerModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="true" />
<vis name="TrackerMPGDVis" ref="AnlRed" visible="true" showDaughters="true" />
<comment> Layer-based visualization for MPGD detectors as it looks better </comment>
<vis name="TrackerGEMModuleVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="TrackerMMGASLayerVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="VertexLayerVis" ref="AnlGray" visible="true" showDaughters="false" />
<vis name="VertexSupportLayerVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="VertexSupportVis" ref="VertexSupportLayerVis" visible="true" showDaughters="true" />
<vis name="VertexModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="true" />
<vis name="TOFVis" ref="AnlTeal" visible="true" showDaughters="true"/>
<vis name="TOFLayerVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFModuleVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFSupportVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFSensorVis" ref="TOFVis" visible="true" showDaughters="true"/>
<vis name="TOFBarrelModuleVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFHybridVis" ref="AnlGold" visible="true" showDaughters="true"/>
<vis name="TOFCoolingTube" ref="AnlRed" visible="true" showDaughters="true"/>
<vis name="TOFCoolant" ref="TrackerServiceVis" visible="true" showDaughters="true"/>
<vis name="TOFCSkinVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFCFoamVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFCHoneycombVis" ref="TrackerServiceVis" visible="true" showDaughters="true"/>
<vis name="FFTrackerVis" ref="AnlRed" />
<vis name="FFTrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="FFTrackerShieldingVis" ref="AnlGray" visible="true" showDaughters="false" />
<vis name="FFTrackerServiceVis" ref="AnlGold" visible="true" showDaughters="false" />
<vis name="FFTrackerLayerVis" ref="TrackerVis" visible="true" showDaughters="true" />
<vis name="FFTrackerModuleVis" ref="FFTrackerLayerVis" visible="true" showDaughters="true" />
<vis name="FFTrackerSurfaceVis" ref="FFTrackerLayerVis" visible="true" showDaughters="true" />
<comment> Display shielded modules in all their glory </comment>
<vis name="FFTrackerShieldedModuleVis" ref="FFTrackerModuleVis" visible="true" showDaughters="true" />
<comment>
ECal Vis
</comment>
<vis name="EcalVis" ref="AnlGold" showDaughters="true" visible="true"/>
<vis name="EcalEndcapVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalBarrelVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalBarrelStaveVis" ref="AnlViolet" showDaughters="false" visible="true" />
<vis name="EcalBarrelEnvelopeVis" ref="AnlViolet" showDaughters="false" visible="true" />
<vis name="EcalBarrelSupportVis" ref="AnlOrange" showDaughters="false" visible="true"/>
<vis name="EcalBarrelLayerVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="EcalBarrelSliceVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="EcalBarrelLayerVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalBarrelEnvelopeVis" ref="AnlGold" showDaughters="true" visible="false" />
<vis name="EcalBarrelStaveVis" ref="AnlGold" showDaughters="true" visible="true" />
<vis name="EcalBarrelFiberLayerVis" ref="AnlGold" showDaughters="false" visible="true" />
<vis name="EcalBarrelSliceVis" ref="AnlGray"/>
<vis name="EcalBarrelSupportVis" ref="AnlOrange"/>
<vis name="EcalVis" ref="AnlGold" showDaughters="true" visible="false"/>
<vis name="EcalEndcapVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapLayerVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapBlockVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapNModuleVis" ref="AnlTeal" showDaughters="false" visible="true"/>
<vis name="EcalEndcapNModuleVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="FFPreVis" ref="AnlGold" showDaughters="true" visible="true"/>
<vis name="FFPreLayerVis" ref="FFPreVis" showDaughters="true" visible="true"/>
<vis name="FFPreModuleVis" ref="FFPreLayerVis" showDaughters="true" visible="true"/>
<vis name="FFPreRadiatorVis" ref="FFPreModuleVis" showDaughters="true" visible="true"/>
<vis name="FFPreReadoutVis" ref="FFTrackerSurfaceVis" showDaughters="true" visible="true"/>
<comment>
HCal Vis
</comment>
<vis name="HcalVis" ref="AnlViolet" showDaughters="true" visible="true"/>
<vis name="HcalBarrelVis" ref="AnlViolet" showDaughters="true" visible="true"/>
<vis name="HcalBarrelStaveVis" ref="AnlViolet" showDaughters="true" visible="true"/>
<vis name="HcalBarrelLayerVis" ref="AnlViolet" showDaughters="false" visible="true"/>
<vis name="HcalEndcapVis" ref="AnlViolet" showDaughters="true" visible="true"/>
<vis name="HcalEndcapLayerVis" ref="AnlViolet" showDaughters="false" visible="true"/>
<vis name="HcalSensorVis" ref="AnlBlue" showDaughters="false" visible="false"/>
<vis name="HcalAbsorberVis" ref="AnlViolet" showDaughters="false" visible="false"/>
<vis name="HcalVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalBarrelVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalBarrelStaveVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="HcalBarrelLayerVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalEndcapVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="HcalEndcapLayerVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalSensorVis" ref="AnlBlue" 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>
Solenoid
......@@ -59,43 +100,65 @@
<comment>
PID Detectors
</comment>
<vis name="RICHVis" ref="AnlViolet" showDaughters="true"/>
<vis name="RICHVis" ref="AnlTeal" showDaughters="true"/>
<vis name="DIRCVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<vis name="DIRCLayerVis" ref="AnlTeal" showDaughters="false" visible="true"/>
<vis name="DIRCModuleVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<vis name="DIRCSupportVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<vis name="DIRCFrameVis" ref="AnlOrange" showDaughters="true" visible="true"/>
<vis name="DIRCBarVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<comment>
Beam line with magnets
</comment>
<vis name="BeamPipeVis" ref="AnlLightGray" showDaughters="true" visible="true"/>
<vis name="FFMagnetVis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="FFMagnetCoilVis" ref="AnlRed" showDaughters="true" visible="true"/>
<comment>
ZDC visualization
</comment>
<vis name="ffi_ZDC_ECAL_Vis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_module_Vis" ref="AnlRed" showDaughters="false" visible="true"/>
<vis name="ffi_ZDC_HCAL_Vis" ref="AnlBlue" showDaughters="true" visible="true"/>
<comment>
Beam line
PID visualization
</comment>
<vis name="BeamPipeVis" ref="AnlLight_Gray" showDaughters="true" visible="true"/>
<vis name="cb_SolenoidVis" alpha="0.4" r= "0.1" g="0.0" b="0.1" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_Vis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_module_Vis" alpha="1.0" r= "0.1" g="1.0" b="0.9" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_HCAL_Vis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_CTDVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_CTD_Si_layerVis" alpha="1.0" r= "0.9" g="1.0" b="0.1" showDaughters="true" visible="true"/>
<vis name="ce_GEMVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_GEM_layerVis" alpha="0.8" r= "0.8" g="0.4" b="0.3" showDaughters="true" visible="true"/>
<vis name="cb_VTX_BarrelVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_VTX_Barrel_layerVis" alpha="2.0" r= "0.0" g="0.2" b="0.8" showDaughters="true" visible="true"/>
<vis name="ci_GEMVis" r= "0.8" g="0.4" b="0.3" alpha="0.8" showDaughters="true" visible="true"/>
<vis name="ci_HCALVis" r= "0.6" g="0" b="0.6" alpha="1.0" showDaughters="true" visible="true"/>
<vis name="DRICH_vessel_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="DRICH_gas_vis" ref="AnlLightGray" alpha="0.2" showDaughters="true" visible="true" />
<vis name="DRICH_aerogel_vis" ref="AnlTeal" showDaughters="true" visible="true" />
<vis name="DRICH_filter_vis" alpha="1.0" r="1.0" g="1.0" b="0.0" showDaughters="true" visible="true" />
<vis name="DRICH_mirror_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="DRICH_sensor_vis" ref="AnlGreen" showDaughters="true" visible="true" />
<vis name="PFRICH_sensor_vis" ref="AnlGreen" showDaughters="true" visible="true" />
<vis name="MRICH_aerogel_vis" ref="AnlTeal" showDaughters="true" visible="true" />
<vis name="MRICH_frame_vis" ref="AnlGold" showDaughters="true" visible="true" />
<vis name="MRICH_lens_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="MRICH_mirror_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="RICHServiceVis" ref="AnlGray" showDaughters="true" visible="true" />
<comment>
Deprecated colors.
vis name="GreenVis" alpha="1.0" r= "0.0" g="1.0" b="0.0" showDaughters="true" visible="true"/
vis name="RedVis" alpha="0.2" r= "1.0" g="0.0" b="0.0" showDaughters="true" visible="true"/
vis name="RPVis" alpha="0.99" r= "1.0" g="0.0" b="0.0" showDaughters="true" visible="true"/
vis name="RPLayerVis" alpha="0.99" r= "0.0" g="0.7" b="0.3" showDaughters="true" visible="true" lineStyle="solid" drawingStyle="solid" /
vis name="BlueVis" alpha="1.0" r= "0.0" g="0.0" b="1.0" showDaughters="true" visible="true"/
vis name="OrangeVis" alpha="1.0" r= "1.0" g="0.45" b="0.0" showDaughters="true" visible="true"/
vis name="RedGreenVis" alpha="0.5" r= "1.0" g="1.0" b="0.0" showDaughters="true" visible="true"/
vis name="BlueGreenVis" alpha="0.5" r= "0.0" g="1.0" b="1.0" showDaughters="true" visible="true"/
vis name="PurpleVis" alpha="1.0" r= "1.0" g="0.0" b="1.0" showDaughters="true" visible="true"/
vis name="DoubleRedG" alpha="0.5" r= "2.0" g=".10" b="0.0" showDaughters="true" visible="true"/
vis name="RBG015" alpha="0.5" r= "0.0" g=".2" b="1.0" showDaughters="true" visible="true"/
vis name="RBG510" alpha="0.5" r= "1.0" g=".2" b="0.0" showDaughters="true" visible="true"/
vis name="RBG" alpha="0.5" r= "1.0" g="1.0" b="1.0" showDaughters="true" visible="true"/
vis name="GrayVis" alpha="1.0" r= "0.75" g="0.75" b="0.75" showDaughters="true" visible="true"/
Deprecated values used for IP6 vis
</comment>
<vis name="GreenVis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="RedVis" ref="AnlRed" showDaughters="true" visible="true"/>
<vis name="RPVis" ref="AnlDelta_Red" showDaughters="true" visible="true"/>
<vis name="RPLayerVis" ref="AnlTeal" showDaughters="true" visible="true" lineStyle="solid" drawingStyle="solid" />
<vis name="BlueVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="OrangeVis" ref="AnlOrange" showDaughters="true" visible="true"/>
<vis name="BlueGreenVis" alpha="0.5" r= "0.0" g="1.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="PurpleVis" alpha="1.0" r= "1.0" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="DoubleRedG" alpha="0.5" r= "2.0" g=".10" b="0.0" showDaughters="true" visible="true"/>
<vis name="RBG015" alpha="0.5" r= "0.0" g=".2" b="1.0" showDaughters="true" visible="true"/>
<vis name="RBG510" alpha="0.5" r= "1.0" g=".2" b="0.0" showDaughters="true" visible="true"/>
<vis name="RBG" alpha="0.5" r= "1.0" g="1.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="GrayVis" alpha="1.0" r= "0.75" g="0.75" b="0.75" showDaughters="true" visible="true"/>
<vis name="AnlRed_1" alpha="0.5" r="205/256" g="32/256" b="44/256"/>
</display>
......@@ -11,33 +11,66 @@
Tracking Visualizations
</comment>
<vis name="TrackerVis" ref="AnlRed" />
<vis name="TrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="true" />
<vis name="TrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="TrackerServiceVis" ref="AnlGold" showDaughters="false" />
<vis name="TrackerLayerVis" ref="AnlGray" visible="true" showDaughters="true" />
<vis name="TrackerSubassemblyVis" ref="TrackerLayerVis"/>
<vis name="TrackerModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="true" />
<vis name="VertexSupportVis" ref="AnlBlue" visible="true" showDaughters="true" />
<vis name="VertexLayerVis" ref="AnlGray" visible="true" showDaughters="true" />
<vis name="VertexModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="true" />
<vis name="TOFVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<vis name="TrackerMPGDVis" ref="AnlRed" visible="true" showDaughters="true" />
<comment> Simple visualization for Barrel MMGAS (apply to layers) and GEM endcap (apply to modules) for better performance </comment>
<vis name="TrackerGEMModuleVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="TrackerMMGASLayerVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="VertexLayerVis" ref="AnlGray" visible="true" showDaughters="false" />
<vis name="VertexSupportLayerVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="VertexSupportVis" ref="VertexSupportLayerVis" visible="true" showDaughters="true" />
<vis name="VertexModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="true" />
<vis name="TOFVis" ref="AnlTeal" visible="true" showDaughters="true"/>
<vis name="TOFLayerVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFModuleVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFSupportVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFSensorVis" ref="TOFVis" visible="true" showDaughters="true"/>
<vis name="TOFBarrelModuleVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFHybridVis" ref="AnlGold" visible="true" showDaughters="true"/>
<vis name="TOFCoolingTube" ref="AnlRed" visible="true" showDaughters="true"/>
<vis name="TOFCoolant" ref="TrackerServiceVis" visible="true" showDaughters="true"/>
<vis name="TOFCSkinVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFCFoamVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFCHoneycombVis" ref="TrackerServiceVis" visible="true" showDaughters="true"/>
<vis name="FFTrackerVis" ref="AnlRed" />
<vis name="FFTrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="FFTrackerShieldingVis" ref="AnlGray" visible="true" showDaughters="false" />
<vis name="FFTrackerServiceVis" ref="AnlGold" visible="true" showDaughters="false" />
<vis name="FFTrackerLayerVis" ref="TrackerVis" visible="true" showDaughters="true" />
<vis name="FFTrackerModuleVis" ref="FFTrackerLayerVis" visible="true" showDaughters="true" />
<vis name="FFTrackerSurfaceVis" ref="FFTrackerLayerVis" visible="true" showDaughters="true" />
<comment> For shielded modules by default just display to module instead of 6 layers </comment>
<vis name="FFTrackerShieldedModuleVis" ref="FFTrackerModuleVis" visible="true" showDaughters="false" />
<comment>
ECal Vis
</comment>
<vis name="EcalBarrelLayerVis" ref="AnlGold"/>
<vis name="EcalBarrelLayerVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalBarrelEnvelopeVis" ref="AnlGold" showDaughters="true" visible="false" />
<vis name="EcalBarrelStaveVis" ref="AnlOrange" showDaughters="true" visible="false" />
<vis name="EcalBarrelStaveVis" ref="AnlGold" showDaughters="true" visible="true" />
<vis name="EcalBarrelFiberLayerVis" ref="AnlGold" showDaughters="false" visible="true" />
<vis name="EcalBarrelSliceVis" ref="AnlGray"/>
<vis name="EcalBarrelSupportVis" ref="AnlOrange"/>
<vis name="EcalVis" ref="AnlGold" showDaughters="true" visible="false"/>
<vis name="EcalEndcapVis" ref="AnlGold" showDaughters="true" visible="true"/>
<vis name="EcalEndcapLayerVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapLayerVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapBlockVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapNModuleVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="FFPreVis" ref="AnlGold" showDaughters="true" visible="true"/>
<vis name="FFPreLayerVis" ref="FFPreVis" showDaughters="true" visible="true"/>
<vis name="FFPreModuleVis" ref="FFPreLayerVis" showDaughters="true" visible="true"/>
<vis name="FFPreRadiatorVis" ref="FFPreModuleVis" showDaughters="true" visible="true"/>
<vis name="FFPreReadoutVis" ref="FFTrackerSurfaceVis" showDaughters="true" visible="true"/>
<comment>
HCal Vis
</comment>
......@@ -47,9 +80,14 @@
<vis name="HcalBarrelLayerVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalEndcapVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="HcalEndcapLayerVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<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"/>
<comment>
Passive steel for flux return
</comment>
<vis name="PassiveSteelVis" ref="AnlViolet" showDaughters="false" visible="true"/>
<comment>
Solenoid
</comment>
......@@ -61,36 +99,48 @@
<comment>
PID Detectors
</comment>
<vis name="RICHVis" ref="AnlTeal" showDaughters="true"/>
<vis name="RICHVis" ref="AnlTeal" showDaughters="true"/>
<vis name="DIRCVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<vis name="DIRCLayerVis" ref="AnlTeal" showDaughters="false" visible="true"/>
<vis name="DIRCModuleVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<vis name="DIRCSupportVis" ref="AnlGray" showDaughters="true" visible="true"/>
<vis name="DIRCSupportVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<vis name="DIRCFrameVis" ref="AnlOrange" showDaughters="true" visible="true"/>
<vis name="DIRCBarVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<comment>
Beam line
Beam line with magnets
</comment>
<vis name="BeamPipeVis" ref="AnlLight_Gray" showDaughters="true" visible="true"/>
<vis name="BeamPipeVis" ref="AnlLightGray" showDaughters="true" visible="true"/>
<vis name="FFMagnetVis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="FFMagnetCoilVis" ref="AnlRed" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_Vis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_module_Vis" alpha="1.0" r= "0.1" g="1.0" b="0.9" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_HCAL_Vis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<comment>
ZDC visualization
</comment>
<vis name="ffi_ZDC_ECAL_Vis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_module_Vis" ref="AnlRed" showDaughters="false" visible="true"/>
<vis name="ffi_ZDC_HCAL_Vis" ref="AnlBlue" showDaughters="true" visible="true"/>
<comment>
PID visualization
</comment>
<vis name="DRICH_vessel_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="DRICH_gas_vis" ref="AnlGreen" alpha="0.5" showDaughters="true" visible="true" />
<vis name="DRICH_gas_vis" ref="AnlLightGray" alpha="0.2" showDaughters="true" visible="true" />
<vis name="DRICH_aerogel_vis" ref="AnlTeal" showDaughters="true" visible="true" />
<vis name="DRICH_filter_vis" alpha="1.0" r="1.0" g="1.0" b="0.0" showDaughters="true" visible="true" />
<vis name="DRICH_mirror_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="DRICH_sensor_vis" ref="AnlGreen" showDaughters="true" visible="true" />
<vis name="PFRICH_sensor_vis" ref="AnlGreen" showDaughters="true" visible="true" /> <!-- invisible, to speedup graphics -->
<vis name="MRICH_aerogel_vis" ref="AnlTeal" showDaughters="true" visible="true" />
<vis name="MRICH_frame_vis" ref="AnlGold" showDaughters="true" visible="true" />
<vis name="MRICH_lens_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="MRICH_mirror_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="RICHServiceVis" ref="AnlGray" showDaughters="true" visible="true" />
<comment>
Deprecated values used for IP6 vis
......
<?xml version="1.0" encoding="UTF-8"?>
<lccdd>
<define>
<!-- TODO [low priority]: some of these, viz. radii, could be parameterized
with respect to other variables; for now they are hard coded in case
other detectors' parameters are changing -->
<!-- parameters for re-scaling fun4all design to ATHENA -->
<constant name="DRICH_scale" value="0.963"/> <!-- overall scale factor from fun4all to ATHENA -->
<constant name="DRICH_f4a_length" value="161.0*cm"/> <!-- z-length of fun4all design -->
<!-- vessel (=snout+tank) geometry -->
<constant name="DRICH_zmin" value="CentralTrackingHalfP_length"/> <!-- vessel front -->
<constant name="DRICH_Length" value="ForwardPID_length"/> <!-- overall vessel length (including snout) -->
<constant name="DRICH_rmin0" value="ForwardPID_rmin1"/> <!-- bore radius at dRICh vessel frontplane -->
<constant name="DRICH_rmin1" value="19.0*cm"/> <!-- bore radius at dRICh vessel backplane -->
<constant name="DRICH_wall_thickness" value="0.5*cm"/> <!-- thickness of radial walls -->
<constant name="DRICH_window_thickness" value="0.1*cm"/> <!-- thickness of entrance and exit walls -->
<!-- tank geometry: cylinder, holding the majority of detector components -->
<constant name="DRICH_rmax2" value="200*cm"/> <!-- cylinder radius; 20 cm gap between dRICh and HCalBarrel -->
<!-- snout geometry: cone with front radius rmax0 and back radius of rmax1 -->
<constant name="DRICH_SnoutLength" value="50.0*cm"/>
<constant name="DRICH_SnoutSlope" value="DRICH_rmax2 / (DRICH_zmin + DRICH_Length)"/>
<constant name="DRICH_rmax0" value="DRICH_SnoutSlope * DRICH_zmin"/>
<constant name="DRICH_rmax1" value="DRICH_SnoutSlope * ( DRICH_zmin + DRICH_SnoutLength)"/>
<!-- additional parameters -->
<constant name="DRICH_aerogel_thickness" value="4.0*cm"/> <!-- aerogel thickness -->
<constant name="DRICH_sensor_size" value="48.0*mm"/> <!-- sensor side length -->
<constant name="DRICH_sensor_thickness" value="35.0*mm"/> <!-- sensor thickness -->
<constant name="DRICH_num_px" value="16"/> <!-- number of pixels along one side of the sensor -->
</define>
<detectors>
<detector
id="ForwardRICH_ID"
name="DRICH"
type="athena_DRICH"
readout="DRICHHits"
gas="C2F6_DRICH"
material="Aluminum"
vis_vessel="DRICH_vessel_vis"
vis_gas="DRICH_gas_vis"
>
<!-- envelope dimensions (see above)
- `wall_thickness`: thickness of radial walls
- `window_thickness`: thickness of entrance and exit disks
-->
<dimensions
z0="DRICH_zmin"
length="DRICH_Length"
snout_length="DRICH_SnoutLength"
rmin0="DRICH_rmin0"
rmin1="DRICH_rmin1"
rmax0="DRICH_rmax0"
rmax1="DRICH_rmax1"
rmax2="DRICH_rmax2"
nsectors="6"
wall_thickness="DRICH_wall_thickness"
window_thickness="DRICH_window_thickness"
/>
<!-- radiator defined in a wedge of azimuthal space
- `phiw` is phi width of wedge
- `thickness` defined separately for aerogel and filter
- `frontplane` is the front of the aerogel, w.r.t. front plane of vessel envelope
- `pitch` controls the angle of the radiator (0=vertical)
- filter is applied to backplane of aerogel
-->
<radiator
rmin="DRICH_rmin0 + DRICH_wall_thickness + 2.0*cm"
rmax="DRICH_rmax0 - DRICH_wall_thickness - 2.0*cm"
phiw="56*degree"
frontplane="DRICH_window_thickness + 0.5*DRICH_aerogel_thickness"
pitch="0*degree"
>
<aerogel
material="Aerogel_DRICH"
vis="DRICH_aerogel_vis"
thickness="DRICH_aerogel_thickness"
/>
<filter
material="Acrylic_DRICH"
vis="DRICH_filter_vis"
thickness="0.3*mm"
/>
</radiator>
<!-- spherical mirror is part of a sphere
- `rmin` and `rmax` provide polar angle boundaries
- `phiw` is the azimuthal width
- `radius` is the radius of the sphere
- `centerx` is the transverse position of the center
of the sphere, for the sector on the +x axis
- the back of the mirror will pass through `backplane`
- set `debug` to 1 so draw reference sphere instead, view with y-clipping
-->
<mirror
material="Acrylic_DRICH"
surface="MirrorSurface_DRICH"
vis="DRICH_mirror_vis"
backplane="DRICH_Length-2.0*cm"
thickness="0.2*cm"
radius="290*DRICH_scale*cm"
centerx="145*DRICH_scale*cm"
rmin="DRICH_rmin1 + DRICH_wall_thickness + 0.0*cm"
rmax="DRICH_rmax2 - DRICH_wall_thickness - 2.0*cm"
phiw="54*degree"
debug="0"
/>
<sensors>
<!-- geometry for a single square sensor
- based on Hamamatsu H13700 MAPMT
(https://www.hamamatsu.com/us/en/product/type/H13700/index.html)
- N.B. not ideal for a magnetic field, SiPM matrix would be better
- effective area: 48.5x48.5mm
- enclosure size: 52x52mm
- 16x16 channel matrix (see readout segmentation below)
- pixel size: 3x3mm
- `side` is the side length of the square
- `thickness` is the depth of the sensor
- `gap` provides room between the squares, to help
prevent them from overlapping
- the value of `side` will determine how many sensors there are,
since the sensor placement algorithm will try to place as many
as it can in the specified patch below
-->
<module
material="Silicon"
surface="SensorSurface_DRICH"
vis="DRICH_sensor_vis"
side="DRICH_sensor_size"
thickness="DRICH_sensor_thickness"
gap="0.5*(52-48)*mm + 2*mm"
/>
<!-- sensors will be tiled on this sphere
- `center{x,y,z} is defined for sector on +x axis, defined w.r.t. snout frontplane,
and `radius` is the sphere radius; the first term of each of these comes from
the fun4all design
- these attributes were determined from a spherical fit to the
sensor placement in the fun4all port
- set `debug` to 1 so draw reference sphere instead, view with y-clipping
-->
<sphere
radius="159.76*DRICH_scale*cm"
centerx="144.91*DRICH_scale*cm"
centery="0*DRICH_scale*cm"
centerz="-197.25*DRICH_scale*cm + DRICH_Length - 0.5*DRICH_scale*DRICH_f4a_length"
debug="0"
/>
<!-- sensors will be limited to a patch of the sphere
- `thetamin` and `thetamax` define pseudorapidity coverage
- `widthfactor` controls the azimuthal coverage, where lower=wider
- `taper` defines half the angle between the azimuthal boundaries
- the size of the sensor controls how many sensors are placed
-->
<sphericalpatch
thetamin="-10*degree"
thetamax="22*degree"
widthfactor="1.8"
taper="56*degree"
/>
</sensors>
</detector>
</detectors>
<readouts>
<readout name="DRICHHits">
<!-- segmentation: square matrix of pixels
- note: for `grid_size`, divide sensor size by 1 less than the
number of pixels, to account for fenceposting
-->
<segmentation
type="CartesianGridXY"
grid_size_x="DRICH_sensor_size/(DRICH_num_px-1)"
grid_size_y="DRICH_sensor_size/(DRICH_num_px-1)"
offset_x="-DRICH_sensor_size/2.0"
offset_y="-DRICH_sensor_size/2.0"
/>
<!-- cellID: 64bits
- offset 0, length 8: dRICh ID
- offset 8, length 3: sector number
- offset 11, length 12: photosensor number
- offset 23, length 16: x pixel
- offset 39, length 16: y pixel
-->
<id>system:8,sector:3,module:12,x:23:16,y:16</id>
</readout>
</readouts>
<define>
<!-- vessel (=snout+tank) geometry -->
<constant name="DRICH_zmin" value="ForwardRICHRegion_zmin"/> <!-- vessel front -->
<constant name="DRICH_Length" value="ForwardRICHRegion_length"/> <!-- overall vessel length (including snout) -->
<constant name="DRICH_rmin0" value="ForwardRICHRegion_zmin * ForwardRICHRegion_tan1"/> <!-- bore radius at dRICh vessel frontplane -->
<constant name="DRICH_rmin1" value="(ForwardRICHRegion_zmin + ForwardRICHRegion_length) * ForwardRICHRegion_tan2"/> <!-- bore radius at dRICh vessel backplane -->
<constant name="DRICH_wall_thickness" value="0.5*cm"/> <!-- thickness of radial walls -->
<constant name="DRICH_window_thickness" value="0.1*cm"/> <!-- thickness of entrance and exit walls -->
<!-- tank geometry: cylinder, holding the majority of detector components -->
<constant name="DRICH_rmax2" value="HcalBarrel_rmin-10*cm"/> <!-- cylinder radius, near maximal to fit HCal barrel inner polygon -->
<!-- snout geometry: cone with front radius rmax0 and back radius of rmax1 -->
<constant name="DRICH_SnoutLength" value="4.0*cm"/>
<constant name="DRICH_SnoutSlope" value="DRICH_rmax2 / (DRICH_zmin + DRICH_Length)"/>
<constant name="DRICH_rmax0" value="DRICH_SnoutSlope * DRICH_zmin"/>
<constant name="DRICH_rmax1" value="DRICH_SnoutSlope * ( DRICH_zmin + DRICH_SnoutLength)"/>
<!-- additional parameters -->
<constant name="DRICH_aerogel_thickness" value="4.0*cm"/> <!-- aerogel thickness -->
<constant name="DRICH_sensor_size" value="48.0*mm"/> <!-- sensor side length -->
<constant name="DRICH_sensor_thickness" value="35.0*mm"/> <!-- sensor thickness -->
<constant name="DRICH_num_px" value="16"/> <!-- number of pixels along one side of the sensor -->
<!-- debugging switches -->
<comment>
- `DRICH_debug_optics`: 1 = all components become vacuum, except for mirrors; test opticalphotons from IP
2 = all components become vacuum, except for mirrors and `gasvol`, test charged particles from IP
0 = off
- `DRICH_debug_mirror`: 1 = draw full mirror shape for single sector; 0 = off
- `DRICH_debug_sensors`: 1 = draw full sensor sphere for a single sector; 0 = off
</comment>
<constant name="DRICH_debug_optics" value="0"/>
<constant name="DRICH_debug_mirror" value="0"/>
<constant name="DRICH_debug_sensors" value="0"/>
</define>
<detectors>
<!-- /detectors/detector -->
<documentation level="10">
### dRICh: ***d***ual ***R***ing ***I***maging ***Ch***erenkov detector
</documentation>
<detector
id="ForwardRICH_ID"
name="DRICH"
type="athena_DRICH"
readout="DRICHHits"
gas="C2F6_DRICH"
material="Aluminum"
vis_vessel="DRICH_vessel_vis"
vis_gas="DRICH_gas_vis"
debug_optics="DRICH_debug_optics"
>
<!-- /detectors/detector/dimensions -->
<documentation level="10">
#### Vessel
- the dRICh vessel is composed of two parts:
- tank: cylindrical region containing most of the detector components
- snout: conical region at the front of the vessel, containing the aerogel
- dimensions:
- `zmin`: z-position of vessel front plane
- `length`: overall z-length of the full vessel
- `snout_length`: length of cone-shaped snout region, housing aerogel
- `rmin0` and `rmin1`: bore radius at front plane and back plane, respectively
- `rmax0` and `rmax1`: outer radius of snout at front plane and snout-back (tank-front) plane, respectively
- `rmax2`: outer radius of tank, the main cylindrical vessel volume
- `nsectors`: number of azimuthal sectors
- `wall_thickness`: thickness of radial walls
- `window_thickness`: thickness of entrance and exit disks
</documentation>
<dimensions
zmin="DRICH_zmin"
length="DRICH_Length"
snout_length="DRICH_SnoutLength"
rmin0="DRICH_rmin0"
rmin1="DRICH_rmin1"
rmax0="DRICH_rmax0"
rmax1="DRICH_rmax1"
rmax2="DRICH_rmax2"
nsectors="6"
wall_thickness="DRICH_wall_thickness"
window_thickness="DRICH_window_thickness"
/>
<!-- /detectors/detector/radiator -->
<documentation level="10">
#### Radiator
- radiator is defined in a wedge of azimuthal space, composed of aerogel and a
filter; the filter is applied to the back of the aerogel, so that it separates
the aerogel and gas radiators
- dimensions:
- `frontplane`: front of the aerogel, w.r.t. front plane of the vessel envelope
- `rmin` and `rmax`: inner and outer radius (at the front plane; radial bounds are conical)
- `phiw`: azimuthal width of wedge
- `thickness`: radiator thickness, defined separately for aerogel and filter
- `pitch`: controls the angle of the radiator (0=vertical)
</documentation>
<radiator
rmin="DRICH_rmin0 + DRICH_wall_thickness + 0.2*cm"
rmax="DRICH_rmax0 - DRICH_wall_thickness - 0.2*cm"
phiw="60*degree"
frontplane="DRICH_window_thickness + 0.5*DRICH_aerogel_thickness"
pitch="0*degree"
>
<aerogel
material="Aerogel_DRICH"
vis="DRICH_aerogel_vis"
thickness="DRICH_aerogel_thickness"
/>
<filter
material="Acrylic_DRICH"
vis="DRICH_filter_vis"
thickness="0.3*mm"
/>
</radiator>
<!-- /detectors/detector/mirror -->
<documentation level="10">
#### Spherical mirror
- spherical mirrors are built from spherical patches, and positioned near the
vessel back plane, separately for each sector
- dimensions:
- `backplane`: the position of the maximum z-plane intersected by the sphere,
w.r.t. the back plane of vessel envelope
- `rmin` and `rmax`: polar angle boundaries
- `phiw`: azimuthal width of one sector
- `thickness` is the radial thickness of the mirror; note that `backplane` is given for the
reflective mirror surface, the inner radius of the sphere
- `focus_tune*` are tuning parameters for the focal region:
- `focus_tune_z` and `focus_tune_x` will move the focal region, with respect
to the sensor sphere center (i.e., set both to zero for focus at the sensor sphere center
(ignoring spherical aberrations effects))
- other settings:
- `debug`: set to 1 so draw reference sphere instead, view with y-clipping
</documentation>
<mirror
material="Acrylic_DRICH"
surface="MirrorSurface_DRICH"
vis="DRICH_mirror_vis"
backplane="DRICH_window_thickness + 1.0*cm"
rmin="DRICH_rmin1 + DRICH_wall_thickness - 1.0*cm"
rmax="DRICH_rmax2 - DRICH_wall_thickness - 1.0*cm"
phiw="59.5*degree"
thickness="0.2*cm"
focus_tune_x="30.0*cm"
focus_tune_z="-40.0*cm"
debug="DRICH_debug_mirror"
/>
<!-- /detectors/detector/sensors -->
<documentation level="10">
#### Sensors
</documentation>
<sensors>
<!-- /detectors/detector/sensors/module -->
<documentation level="10">
##### Sensor module
- based on [Hamamatsu H13700 MAPMT](https://www.hamamatsu.com/us/en/product/type/H13700/index.html):
- not ideal for a magnetic field, SiPM matrix would be better
- effective area: 48.5x48.5 mm
- enclosure size: 52x52 mm
- 16x16 channel matrix (cf. readout segmentation below)
- pixel size: 3x3 mm
- dimensions:
- `side`: side length of the square module
- `thickness`: thickness of the sensor module
- `gap`: provides room between the squares, to help prevent them from overlapping
- note: the value of `side` will determine how many sensors there are, since the
sensor placement algorithm will try to place as many as it can in the specified
spherical patch below
</documentation>
<module
material="Silicon"
surface="SensorSurface_DRICH"
vis="DRICH_sensor_vis"
side="DRICH_sensor_size"
thickness="DRICH_sensor_thickness"
gap="0.5*(52-48)*mm + 2*mm"
/>
<!-- /detectors/detector/sensors/{sphere,sphericalpatch} -->
<documentation level="10">
##### Sensor sphere
- sensors will be placed on a sphere, using a "disco ball" tiling algorithm; each
sector has its own sensor sphere
- sphere dimensions:
- `centerx` and `centerz`: sphere center, defined w.r.t. vessel front plane,
for the sector on +x axis
- `radius`: radius of the sensor sphere
- other settings:
- `debug`: set to 1 so draw reference sphere instead, view with y-clipping
- sensors will be limited to a patch of the sphere
- patch dimensions:
- `phiw`: defines half the angle between the azimuthal boundaries
- `rmin` and `rmax`: radial cut boundaries
- `zmin`: z-plane cut
</documentation>
<sphere
centerz="-55.0 * cm"
centerx="DRICH_rmax2 - 35.0*cm"
radius="85.0 * cm"
debug="DRICH_debug_sensors"
/>
<sphericalpatch
phiw="18*degree"
rmin="DRICH_rmax1 + 5.0*cm"
rmax="DRICH_rmax2 - 5.0*cm"
zmin="DRICH_SnoutLength + 5.0*cm"
/>
</sensors>
</detector>
</detectors>
<documentation level="10">
#### Readout
- segmentation: square matrix of pixels
- `grid_size_x,y`: size of each sensor, but note we must divide sensor size
by 1 less than the number of pixels, to account for fenceposting
- `offset_x,y`: specified such that the `x` and `y` indicators are unsigned
- indicators and `cellID` bits:
| indicator | offset | length |
|-----------|--------|--------|
| dRICh ID | 0 | 8 |
| sector | 8 | 3 |
| sensor | 11 | 12 |
| x pixel | 23 | 16 |
| y pixel | 39 | 16 |
</documentation>
<readouts>
<readout name="DRICHHits">
<segmentation
type="CartesianGridXY"
grid_size_x="DRICH_sensor_size/(DRICH_num_px-1)"
grid_size_y="DRICH_sensor_size/(DRICH_num_px-1)"
offset_x="-DRICH_sensor_size/2.0"
offset_y="-DRICH_sensor_size/2.0"
/>
<id>system:8,sector:3,module:12,x:23:16,y:16</id>
</readout>
</readouts>
</lccdd>
......@@ -8,13 +8,11 @@
<documentation level="10">
### Ecal configuration
</documentation>
<include ref="ci_ecal.xml"/>
<!--<include ref="compact/ci_ecal_shashlik.xml"/>-->
<!--<include ref="compact/ce_ecal.xml"/>-->
<!-- <include ref="ce_ecal_crystal_glass.xml"/>-->
<include ref="hybrid_ecal.xml"/>
<!-- <include ref="compact/ecal_barrel.xml"/> -->
<!-- <include ref="compact/ecal_barrel_hybrid.xml"/> -->
<!--include ref="ecal_forward_scfi.xml"/-->
<include ref="ecal_forward_homogenous.xml"/>
<include ref="ecal_backward_hybrid.xml"/>
<include ref="ecal_barrel_interlayers.xml"/>
</lccdd>
......
......@@ -27,13 +27,15 @@
<constant name="CrystalModule_width" value="20.00*mm"/>
<constant name="CrystalModule_length" value="200.00*mm"/>
<constant name="CrystalModule_wrap" value="0.50*mm"/>
<constant name="CrystalModule_z0" value="10.*cm"/>
<constant name="CrystalModule_z0" value="0.0*cm"/>
<constant name="GlassModule_width" value="2*CrystalModule_width"/>
<constant name="GlassModule_length" value="40.00*cm"/>
<constant name="GlassModule_length" value="55.00*cm"/>
<constant name="GlassModule_wrap" value="2*CrystalModule_wrap"/>
<constant name="GlassModule_z0" value="0.0*cm"/>
<constant name="EcalEndcapNIonCutout_dphi" value="30*degree"/>
<constant name="EcalEndcapN_thickness" value="GlassModule_length"/>
<constant name="EcalEndcapN_z0" value="-EcalEndcapN_zmin - EcalEndcapN_thickness/2"/>
<constant name="EcalEndcapNCrystal_rmax" value="40*cm"/>
......
......@@ -21,7 +21,7 @@
<constant name="EcalBarrel_ModRepeat" value="CaloSides"/>
<constant name="EcalBarrel_ModLength" value="0.5*m"/>
<constant name="EcalBarrel_ModWidth" value="0.5*m"/>
<constant name="EcalBarrel_AvailThickness" value="EcalBarrel_TotalThickness-EcalBarrel_Support_thickness"/>
<constant name="EcalBarrel_AvailThickness" value="EcalBarrelRegion_thickness-EcalBarrel_Support_thickness"/>
<constant name="EcalBarrel_ReadoutLayerThickness"
value="EcalBarrel_SiliconThickness
+ EcalBarrel_ElectronicsThickness
......
......@@ -8,6 +8,12 @@
EM Calorimeter Parameters with AstroPix
---------------------------------------
</comment>
<comment>
To change the number of imaging layers from, e.g., 9 to 6,
change EcalBarrelImagingLayers_nMax variable
</comment>
<constant name="EcalBarrelImagingLayers_nMax" value="6"/>
<constant name="EcalBarrel_Support_thickness" value="5*cm"/>
<constant name="EcalBarrel_SiliconThickness" value="500*um"/>
<constant name="EcalBarrel_ElectronicsThickness" value="150*um"/>
......@@ -21,7 +27,6 @@
<constant name="EcalBarrel_FiberXSpacing" value="1.34*mm"/>
<constant name="EcalBarrel_FiberZSpacing" value="1.22*mm"/>
<constant name="EcalBarrel_SpaceBetween" value="0.1*mm"/>
<constant name="EcalBarrel_FiberChunkLayers_num" value = "15"/>
<comment>
For Pb/SiFi (GlueX): X0 ~ 1.45 cm
For W/SiFi (sPHENIX): X0 ~ 0.7 cm (but different fiber orientation)
......@@ -30,7 +35,8 @@
<constant name="EcalBarrel_ModRepeat" value="CaloSides"/>
<constant name="EcalBarrel_ModLength" value="0.5*m"/>
<constant name="EcalBarrel_ModWidth" value="0.5*m"/>
<constant name="EcalBarrel_AvailThickness" value="EcalBarrel_TotalThickness-EcalBarrel_Support_thickness"/>
<constant name="EcalBarrel_AvailThickness" value="EcalBarrelRegion_thickness-EcalBarrel_Support_thickness"/>
<constant name="EcalBarrel_ImagingLayerThickness"
value="EcalBarrel_SiliconThickness
+ EcalBarrel_ElectronicsThickness
......@@ -43,16 +49,27 @@
+ EcalBarrel_CarbonThickness
+ EcalBarrel_LayerSpacing"/>
<constant name="EcalBarrelImagingLayers_nMax" value="6"/>
<constant name="EcalBarrelImagingLayers_num"
value="min(EcalBarrelImagingLayers_nMax,
floor(EcalBarrel_AvailThickness/
(EcalBarrel_ImagingLayerThickness+EcalBarrel_RadiatorThickness+EcalBarrel_SpaceBetween)))"/>
<constant name="EcalBarrel_FiberLayerThickness_max"
value="max(0, EcalBarrel_AvailThickness-
(EcalBarrelImagingLayers_num*EcalBarrel_ImagingLayerThickness))"/>
<constant name="EcalBarrel_FiberLayerThickness"
value="min(EcalBarrel_FiberLayerThickness_max, EcalBarrel_FiberZSpacing*13*15)"/>
floor((EcalBarrel_AvailThickness-EcalBarrel_ImagingLayerThickness)/
(EcalBarrel_ImagingLayerThickness + EcalBarrel_ScFiLayerThickness +
EcalBarrel_SpaceBetween)))"/>
<comment>
Adjusting size of the ScFi back chunk to match number of imiaging layers
and 20 radiation lengths in total
</comment>
<constant name="EcalBarrel_FiberChunkLayers_num" value = "20-EcalBarrelImagingLayers_num+1"/>
<constant name="EcalBarrel_ImagingPartThickness"
value="(EcalBarrelImagingLayers_num-1)*(EcalBarrel_ImagingLayerThickness + EcalBarrel_ScFiLayerThickness + EcalBarrel_SpaceBetween)
+ EcalBarrel_ImagingLayerThickness + EcalBarrel_SpaceBetween"/>
<constant name="EcalBarrel_ScFiPartThickness_max"
value="max(0, EcalBarrel_AvailThickness-EcalBarrel_ImagingPartThickness)"/>
<constant name="EcalBarrel_ScFiPartThickness"
value="min(EcalBarrel_ScFiPartThickness_max,
EcalBarrel_FiberZSpacing*13*EcalBarrel_FiberChunkLayers_num)"/>
<constant name="EcalBarrel_SensitiveLayers_rmax"
value="EcalBarrel_rmin + EcalBarrel_ImagingPartThickness + EcalBarrel_ScFiPartThickness"/>
</define>
<limits>
......@@ -134,7 +151,7 @@
<layer repeat="EcalBarrel_FiberChunkLayers_num" vis="EcalBarrelLayerVis"
space_before="EcalBarrel_ImagingLayerThickness + EcalBarrel_SpaceBetween">
<slice material="Lead"
thickness="EcalBarrel_FiberLayerThickness/EcalBarrel_FiberChunkLayers_num"
thickness="EcalBarrel_ScFiPartThickness/EcalBarrel_FiberChunkLayers_num"
vis="EcalBarrelFiberLayerVis">
<fiber material="PlasticScint"
sensitive="yes"
......
<lccdd>
<comment>
Simplified homogenous implementation of the forward ScFi calorimeter
</comment>
<define>
<constant name="EcalEndcapP_FiberRadius" value="0.235*cm"/>
<constant name="EcalEndcapP_FiberOffset" value="0.5*mm"/>
<constant name="EcalEndcapP_FiberSpaceX" value="0.265*mm"/>
<constant name="EcalEndcapP_FiberSpaceY" value="0.425*mm"/>
</define>
<limits>
</limits>
<regions>
</regions>
<!-- Common Generic visualization attributes -->
<comment>Common Generic visualization attributes</comment>
<display>
</display>
<detectors>
<comment>
------------------------------------------
Forward (Positive Z) Endcap EM Calorimeter
------------------------------------------
An EM calorimeter with ScFi modules
</comment>
<detector id="ECalEndcapP_ID"
name="EcalEndcapP"
type="ScFiCalorimeter"
vis="EcalEndcapVis"
readout="EcalEndcapPHits">
<position x="0" y="0" z="EcalEndcapP_zmin + EcalEndcapP_length/2."/>
<dimensions rmin="EcalEndcapP_rmin" rmax="EcalEndcapP_rmax" length="EcalEndcapP_length"/>
<module sizex="25*mm" sizey="25*mm" sizez="170*mm" material="AvgTungstenScFi" vis="EcalEndcapBlockVis">
</module>
</detector>
</detectors>
<!-- Definition of the readout segmentation/definition -->
<readouts>
<readout name="EcalEndcapPHits">
<segmentation type="NoSegmentation"/>
<id>system:8,ring:8,module:20,fiber_x:8,fiber_y:8</id>
</readout>
</readouts>
<plugins>
</plugins>
</lccdd>
<lccdd>
<define>
<constant name="EcalEndcapP_FiberRadius" value="0.235*cm"/>
<constant name="EcalEndcapP_FiberOffset" value="0.5*mm"/>
<constant name="EcalEndcapP_FiberSpaceX" value="0.265*mm"/>
<constant name="EcalEndcapP_FiberSpaceY" value="0.425*mm"/>
</define>
<limits>
</limits>
<regions>
</regions>
<!-- Common Generic visualization attributes -->
<comment>Common Generic visualization attributes</comment>
<display>
</display>
<detectors>
<comment>
------------------------------------------
Forward (Positive Z) Endcap EM Calorimeter
------------------------------------------
An EM calorimeter with ScFi modules
</comment>
<detector id="ECalEndcapP_ID"
name="EcalEndcapP"
type="ScFiCalorimeter"
vis="EcalEndcapVis"
readout="EcalEndcapPHits">
<position x="0" y="0" z="EcalEndcapP_zmin + EcalEndcapP_length/2."/>
<dimensions rmin="EcalEndcapP_rmin" rmax="EcalEndcapP_rmax" length="EcalEndcapP_length"/>
<module sizex="25*mm" sizey="25*mm" sizez="170*mm" material="TungstenDens24" vis="EcalEndcapBlockVis">
<fiber material="Polystyrene"
radius="EcalEndcapP_FiberRadius"
offset="EcalEndcapP_FiberOffset"
spacex="EcalEndcapP_FiberSpaceX"
spacey="EcalEndcapP_FiberSpaceY"/>
</module>
</detector>
</detectors>
<!-- Definition of the readout segmentation/definition -->
<readouts>
<readout name="EcalEndcapPHits">
<segmentation type="NoSegmentation"/>
<id>system:8,ring:8,module:20,fiber_x:8,fiber_y:8</id>
</readout>
</readouts>
<plugins>
</plugins>
</lccdd>
<lccdd>
<comment>
DIRC consists of 16 (default) identical modules making a barrel.
</comment>
<define>
<constant name="DIRCModule_count" value="16" comment="Number of DIRC boxes per... DIRC. 16 - default"/>
<constant name="DIRCModule_count" value="CaloSides" />
<constant name="DIRCBar_thickness" value="17*mm" />
<constant name="DIRCBar_length" value="DIRC_length-8*cm" />
......@@ -21,7 +17,7 @@
<constant name="DIRCModule_thickness" value="DIRCModule_rmax - DIRC_rmin" />
<constant name="DIRCFrame_rmax" value="DIRC_rmin + DIRCFrame_thickness" />
<constant name="DIRCModule_halfangle" value="180*degree/DIRCModule_count" />
<constant name="DIRCModule_halfangle" value="180*degree/DIRCModule_count" />
<constant name="DIRCModule_width" value="2*DIRC_rmin * tan(DIRCModule_halfangle)"/>
<constant name="DIRCModule_rmin" value="DIRC_rmin + 1*cm"/>
......@@ -97,7 +93,7 @@
<readouts>
<readout name="DIRCBarHits">
<segmentation type="CartesianGridXY" grid_size_x="3.0*mm" grid_size_y="3.0*mm" />
<id>system:8,barrel:2,layer:4,module:8,section:4,x:32:-16,y:-16</id>
<id>system:8,layer:4,module:8,section:4,x:32:-16,y:-16</id>
</readout>
</readouts>
......
<lccdd>
<comment> Endcap Tracker </comment>
<comment> Endcap Tracker for Acadia </comment>
<define>
<constant name="GEMTrackerEndcapP_thickness" value="min(10.0*cm,ForwardTracking_length)" />
<constant name="GEMTrackerEndcapN_thickness" value="min(10.0*cm,BackwardTracking_length)" />
<constant name="GEMTrackerEndcapP_zmin" value="CentralTrackingHalfP_length + ForwardPID_length"/>
<constant name="GEMTrackerEndcapN_zmin" value="CentralTrackingHalfN_length + BackwardPID_length"/>
<constant name="GEMTrackerEndcapP_thickness" value="min(10.0*cm,ForwardTrackingRegion_length)" />
<constant name="GEMTrackerEndcapN_thickness" value="min(10.0*cm,BackwardTrackingRegion_length)" />
<constant name="GEMTrackerEndcapP_zmin" value="ForwardTrackingRegion_zmin"/>
<constant name="GEMTrackerEndcapN_zmin" value="BackwardTrackingRegion_zmin"/>
<constant name="GEMTrackerEndcapP_rmin" value="19*cm" />
<constant name="GEMTrackerEndcapN_rmin" value="10*cm" />
<constant name="GEMTrackerEndcapP_rmax" value="200*cm" />
<constant name="GEMTrackerEndcapN_rmax" value="BackwardPID_rmax" />
<constant name="GEMTrackerEndcapN_rmax" value="BackwardPIDRegion_rmax" />
<constant name="GEMTrackerEndcapOpeningAngle" value="30.4*degree"/>
<constant name="GEMTrackerEndcap_dz" value="15*mm" />
<comment>
......@@ -87,7 +87,7 @@
<detectors>
<detector
id="GEMTrackerEndcapP_ID"
id="TrackerEndcapP_3_ID"
name="GEMTrackerEndcapP"
type="athena_GEMTrackerEndcap"
readout="GEMTrackerEndcapHits"
......@@ -138,6 +138,7 @@
rmax = "GEMTrackerEndcapP_rmax"
length="GEMTrackerEndcapP_thickness"
zstart="GEMTrackerEndcapP_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="40*12" bins1="1024"/>
<ring vis="TrackerVis" module="GEMModule1"
r="GEMTrackerEndcapP_rmin+GEMTrackerEndcapP_y/2.0"
zstart="0"
......@@ -150,7 +151,7 @@
</detector>
<detector
id="GEMTrackerEndcapN_ID"
id="TrackerEndcapN_3_ID"
name="GEMTrackerEndcapN"
type="athena_GEMTrackerEndcap"
readout="GEMTrackerEndcapHits"
......@@ -201,6 +202,7 @@
rmax = "GEMTrackerEndcapN_rmax"
length="GEMTrackerEndcapN_thickness"
zstart="GEMTrackerEndcapN_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="40*12" bins1="1024"/>
<ring vis="TrackerVis" module="GEMModule1"
r="GEMTrackerEndcapN_rmin+GEMTrackerEndcapN_y/2.0"
zstart="0.1"
......@@ -216,7 +218,7 @@
<readouts>
<readout name="GEMTrackerEndcapHits">
<segmentation type="CartesianGridXZ" grid_size_x="50*um" grid_size_z="250*um" />
<id>system:8,barrel:2,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
</readout>
</readouts>
......
<lccdd>
<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"/>
<documentation>
#### Material Thickness
</documentation>
<constant name="HcalBarrelSteelThickness" value="2.0 * cm"/>
<constant name="HcalBarrelPolystyreneThickness" value="0.5 * cm"/>
<constant name="HcalEndcapNSteelThickness" value="HcalBarrelSteelThickness"/>
<constant name="HcalEndcapNPolystyreneThickness" value="HcalBarrelPolystyreneThickness"/>
<constant name="HcalEndcapPSteelThickness" value="HcalBarrelSteelThickness"/>
<constant name="HcalEndcapPPolystyreneThickness" value="0.3 * cm"/>
<documentation>
- Hcal Barrel Layers and computed Thickness
</documentation>
<constant name="HcalBarrelSingleLayerThickness"
value="HcalBarrelSteelThickness + HcalBarrelPolystyreneThickness"/>
<constant name="HcalBarrelLayer_NRepeat" value="floor(HcalBarrelAvailThickness / HcalBarrelSingleLayerThickness)"/>
<constant name="HcalBarrelThickness" value="HcalBarrelLayer_NRepeat * HcalBarrelSingleLayerThickness"/>
<documentation>
- Hcal Endcap N Layers and computed Thickness
</documentation>
<constant name="HcalEndcapNSingleLayerThickness"
value="HcalEndcapNSteelThickness + HcalEndcapNPolystyreneThickness"/>
<constant name="HcalEndcapNLayer_NRepeat" value="floor(HcalEndcapN_length / HcalEndcapNSingleLayerThickness)"/>
<constant name="HcalEndcapN_thickness" value="HcalEndcapNLayer_NRepeat * HcalEndcapNSingleLayerThickness"/>
<documentation>
- Hcal Endcap P Layers and computed Thickness
</documentation>
<constant name="HcalEndcapPSingleLayerThickness"
value="HcalEndcapPSteelThickness + HcalEndcapPPolystyreneThickness"/>
<constant name="HcalEndcapPLayer_NRepeat" value="floor(HcalEndcapP_length / HcalEndcapPSingleLayerThickness)"/>
<constant name="HcalEndcapP_thickness" value="HcalEndcapPLayer_NRepeat * HcalEndcapPSingleLayerThickness"/>
</define>
<limits>
......@@ -29,7 +66,7 @@
<dimensions
numsides="CaloSides"
rmin="HcalBarrel_rmin"
z="HcalBarrelLength"/>
z="HcalBarrel_length"/>
<staves vis="HcalBarrelStaveVis"/>
<layer repeat="HcalBarrelLayer_NRepeat" vis="HcalBarrelLayerVis">
<slice material="Steel235" thickness="HcalBarrelSteelThickness" vis="HcalAbsorberVis"/>
......@@ -57,6 +94,24 @@
</layer>
</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
id="HCalEndcapN_ID"
name="HcalEndcapN"
......
......@@ -97,6 +97,13 @@
<fraction n="0.040" ref="SodiumOxide"/>
<fraction n="0.023" ref="AluminumOxide"/>
</material>
<material name="PyrexGlass25">
<D type="density" value="0.5575" unit="g/cm3"/>
<fraction n="0.806" ref="SiliconOxide"/>
<fraction n="0.130" ref="BoronOxide"/>
<fraction n="0.040" ref="SodiumOxide"/>
<fraction n="0.023" ref="AluminumOxide"/>
</material>
<material name="PbGlass">
<D type="density" value="3.86" unit="g / cm3"/>
<fraction n="0.5080" ref="LeadOxide"/>
......@@ -105,6 +112,42 @@
<fraction n="0.0278" ref="SodiumOxide"/>
<fraction n="0.0050" ref="ArsenicOxide"/>
</material>
<material name="SciGlass">
<D type="density" value="4.22" unit="g / cm3"/>
<fraction n="0.3875" ref="Ba"/>
<fraction n="0.2146" ref="Gd"/>
<fraction n="0.1369" ref="Si"/>
<fraction n="0.2610" ref="O"/>
</material>
<documentation level="3">
#### Material for TOF
a level 3 doc
</documentation>
<material name="CarbonFoam">
<D type="density" value="0.09" unit="g/cm3"/>
<fraction n="1.00" ref="C"/>
</material>
<material name="CFRPMix">
<D type="density" value="0.03" unit="g/cm3"/>
<fraction n="0.074" ref="O"/>
<fraction n="0.870" ref="C"/>
<fraction n="0.023" ref="H"/>
<fraction n="0.033" ref="Cl"/>
</material>
<material name="CFRPMix2">
<D type="density" value="1.60" unit="g/cm3"/>
<fraction n="0.074" ref="O"/>
<fraction n="0.870" ref="C"/>
<fraction n="0.023" ref="H"/>
<fraction n="0.033" ref="Cl"/>
</material>
<material name="NOVEC7200">
<D type="density" value="1.44" unit="g/cm3"/>
<fraction n="0.061" ref="O"/>
<fraction n="0.019" ref="H"/>
<fraction n="0.272" ref="C"/>
<fraction n="0.648" ref="F"/>
</material>
<documentation level="3">
#### Carbon fiber
a level 3 doc
......@@ -180,6 +223,12 @@
<fraction n="0.044" ref="Ni"/>
<fraction n="0.006" ref="Fe"/>
</material>
<material name="AvgTungstenScFi">
<D value="10.15" unit="g / cm3"/>
<fraction n="0.948" ref="W"/>
<fraction n="0.052*19./40" ref="C"/>
<fraction n="0.052*21./40" ref="H"/>
</material>
<material name="CarbonFiber_25percent">
<D type="density" value="0.375" unit="g / cm3"/>
<fraction n="1.0" ref="CarbonFiber"/>
......@@ -236,6 +285,12 @@
<fraction n="0.041960452" ref="H"/>
<fraction n="0.33301847" ref="O"/>
</material>
<material name="MylarMLI">
<D type="density" value="0.08" unit="g/cm3" />
<fraction n="0.62502108" ref="C"/>
<fraction n="0.041960452" ref="H"/>
<fraction n="0.33301847" ref="O"/>
</material>
<material name="Nomex">
<D type="density" value="0.029" unit="g/cm3" />
<composite n="14" ref="C"/>
......@@ -298,4 +353,33 @@
<composite n="8" ref="C"/>
<composite n="8" ref="H"/>
</material>
<material name="MMGAS_ResistivePaste">
<D type="density" unit="g/cm3" value="0.77906"/>
<composite n="1" ref="C"/>
</material>
<material name="MMGAS_InoxForMesh" state="solid">
<D type="density" unit="g/cm3" value="2.8548"/>
<fraction n="0.19" ref="Cr"/>
<fraction n="0.68" ref="Fe"/>
<fraction n="0.02" ref="Mn"/>
<fraction n="0.10" ref="Ni"/>
<fraction n="0.01" ref="Si"/>
</material>
<material name="Ar90IsoButane" state="gas">
<D type="density" unit="g/cm3" value="0.00170335"/>
<fraction n="0.90" ref="Ar"/>
<fraction n="0.0826586" ref="C"/>
<fraction n="0.0173414" ref="H"/>
</material>
<material name="ZDC_WSciFiMixture">
<D type="density" value="10.17" unit="g/cm3"/>
<composite n="0.950" ref="W"/>
<composite n="0.009" ref="H"/>
<composite n="0.041" ref="C"/>
</material>
<material name="WSciFi_UCLA_Abs">
<D type="density" value="12.4" unit="g / cm3"/>
<fraction n="0.96" ref="W"/>
<fraction n="0.04" ref="Polystyrene"/>
</material>
</materials>
......@@ -2,9 +2,9 @@
<comment> MRICH </comment>
<define>
<constant name="MRICH_rmin" value="10*cm"/>
<constant name="MRICH_rmax" value="BackwardPID_rmax"/>
<constant name="MRICH_length" value="BackwardPID_length"/>
<constant name="MRICH_zmin" value="CentralTrackingHalfN_length"/>
<constant name="MRICH_rmax" value="BackwardPIDRegion_rmax"/>
<constant name="MRICH_length" value="BackwardPIDRegion_length"/>
<constant name="MRICH_zmin" value="BackwardPIDRegion_zmin"/>
<constant name="MRICHAerogel_thickness" value="30.0*mm"/>
<constant name="MRICHAerogel_width" value="126.5*mm"/>
......@@ -15,10 +15,13 @@
<constant name="MRICHPhotoDet_thickness" value="1.5*mm"/>
<constant name="MRICHPhotoDet_length" value="48.5*mm"/>
<constant name="MRICHGlassWindow_width" value="103.5*mm"/>
<constant name="MRICHGlassPhotoDet_thickness" value="2.0*mm"/>
<constant name="MRICHGlassPhotoDet_thickness" value="5.0*mm"/>
<constant name="MRICHPhotoDetMCPlate_thickness" value="0.3*mm"/> <!-- FIXME: should be 1.2*mm with PyrexGlass25 -->
<constant name="MRICHPhotoDetAnode_thickness" value="3.8*mm"/>
<constant name="MRICHPhotoDetPCB_thickness" value="2.0*mm"/>
<constant name="MRICHPhotoDetCopper_thickness" value="0.1*mm"/>
<constant name="MRICHPhotoDetKapton_thickness" value="0.2*mm"/>
<constant name="MRICHRearExtraSpace_thickness" value="9.7*mm"/>
<constant name="MRICHRearExtraSpace_thickness" value="0.3*mm"/>
<constant name="MRICHLensPhotoDet_length" value="136.4*mm"/>
<constant name="MRICHMirror_thickness" value="2.0*mm"/>
<constant name="MRICHMirror_length" value="MRICHLensPhotoDet_length - MRICHLensMirrorGap_thickness"/>
......@@ -42,6 +45,9 @@
+ MRICHFresnelLens_thickness
+ MRICHLensPhotoDet_length
+ MRICHGlassPhotoDet_thickness
+ 2.0*MRICHPhotoDetMCPlate_thickness
+ MRICHPhotoDetAnode_thickness
+ MRICHPhotoDetPCB_thickness
+ MRICHPhotoDetCopper_thickness
+ MRICHPhotoDetKapton_thickness
+ MRICHRearExtraSpace_thickness "/>
......@@ -71,7 +77,8 @@
length="MRICHCarbonFrame_length">
<frame vis="AnlGray" thickness="MRICHCarbonFrame_thickness" material="CarbonFiber"/>
<aerogel vis="MRICH_aerogel_vis"
length="MRICHAerogel_thickness" width="MRICHAerogel_width"
length="MRICHAerogel_thickness"
width="MRICHAerogel_width"
material="AerogelOptical">
<frame vis="MRICH_frame_vis" thickness="MRICHFoam_thickness" material="PolystyreneFoam" />
</aerogel>
......@@ -86,24 +93,29 @@
material="AluminumOxide"/>
<photodet width="MRICHGlassWindow_width" thickness="MRICHGlassPhotoDet_thickness" material="PyrexGlassOptical">
<sensor nx="2" ny="2" thickness="MRICHPhotoDet_thickness" width="MRICHPhotoDet_length" material="SiliconOxide"/>
<!--layer thickness="MRICHPhotoDetCopper_thickness" material="Copper"/-->
<!--layer thickness="MRICHPhotoDetKapton_thickness" material="Kapton"/-->
<layer thickness="MRICHPhotoDetMCPlate_thickness" material="PyrexGlass"/> <!-- FIXME: should be PyrexGlass25 with 1.2*mm thickness -->
<layer thickness="MRICHPhotoDetMCPlate_thickness" material="PyrexGlass"/> <!-- FIXME: should be PyrexGlass25 with 1.2*mm thickness -->
<layer thickness="MRICHPhotoDetAnode_thickness" material="AluminumOxide"/>
<layer thickness="MRICHPhotoDetPCB_thickness" material="Fr4"/>
<layer thickness="MRICHPhotoDetCopper_thickness" material="Copper"/>
<layer thickness="MRICHPhotoDetKapton_thickness" material="Kapton"/>
</photodet>
</module>
<comment>
Modules are only listed here for one quadrant
Modules are only listed here for one quadrant. The modules point back to the
z0 position (should be their actual position, but breaks parametrization).
</comment>
<positions scale="1.03">
<positions scale="1.03" z0="157.5*cm">
<position x="-41.3250000000" y="178.6750000000"/>
<position x=" 96.0250000001" y="178.6750000000"/>
</positions>
<positions scale="1.036">
<positions scale="1.036" z0="157.5*cm">
<position x="-41.3250000000" y="316.0250000001"/>
<position x=" 96.0250000001" y="316.0250000001"/>
<position x="233.3750000002" y="178.6750000000"/>
<position x="233.3750000002" y="316.0250000001"/>
</positions>
<positions scale="1.052">
<positions scale="1.052" z0="157.5*cm">
<position x="-41.3250000000" y="453.3750000002"/>
<position x=" 96.0250000001" y="453.3750000002"/>
<position x="233.3750000002" y="453.3750000002"/>
......@@ -111,7 +123,7 @@
<position x="370.7250000003" y="316.0250000001"/>
<position x="370.7250000003" y="178.6750000000"/>
</positions>
<positions scale="1.078">
<positions scale="1.078" z0="157.5*cm">
<position x="-41.3250000000" y="590.7250000003"/>
<position x=" 96.0250000001" y="590.7250000003"/>
<position x="233.3750000002" y="590.7250000003"/>
......@@ -121,7 +133,7 @@
<position x="508.0750000004" y="316.0250000001"/>
<position x="508.0750000004" y="453.3750000002"/>
</positions>
<positions scale="1.09">
<positions scale="1.09" z0="157.5*cm">
<position x="-41.3250000000" y="728.0750000004"/>
<position x=" 96.0250000001" y="728.0750000004"/>
<!--position x="233.3750000002" y="728.0750000004"/-->
......@@ -132,7 +144,7 @@
<position x="645.4250000005" y="316.0250000001"/>
<position x="645.4250000005" y="178.6750000000"/>
</positions>
<positions scale="1.095">
<positions scale="1.095" z0="157.5*cm">
<!--position x="-41.3250000000" y="865.4250000005"/-->
<!--position x=" 96.0250000001" y="865.4250000005"/-->
<!--position x="233.3750000002" y="865.4250000005"/-->
......@@ -140,6 +152,7 @@
<!--position x="782.7750000006" y="316.0250000001"/-->
<!--position x="782.7750000006" y="453.3750000002"/-->
</positions>
<layer thickness="MRICHCarbonFrame_thickness" material="CarbonFiber"/>
</detector>
</detectors>
......
......@@ -373,7 +373,7 @@
1240*eV/210 10*mm
1240*eV/200 0*mm
"/>
<!-- BEGIN dRICh material properties
<!-- BEGIN dRICh and pfRICh material properties
- dumped from fun4all implementation
- see https://github.com/cisbani/dRICh/blob/main/share/source/g4dRIChOptics.hh
-->
......@@ -391,19 +391,44 @@
6.19921*eV 1.00084
"/>
<matrix name="ABSLENGTH__C2F6_DRICH" coldim="2" values="
1.7712*eV 1000*mm
1.92389*eV 1000*mm
2.10539*eV 1000*mm
2.3247*eV 1000*mm
2.59502*eV 1000*mm
2.93647*eV 1000*mm
3.38139*eV 1000*mm
3.98521*eV 1000*mm
4.85156*eV 1000*mm
6.19921*eV 1000*mm
1.7712*eV 10.0*m
1.92389*eV 10.0*m
2.10539*eV 10.0*m
2.3247*eV 10.0*m
2.59502*eV 10.0*m
2.93647*eV 10.0*m
3.38139*eV 10.0*m
3.98521*eV 10.0*m
4.85156*eV 10.0*m
6.19921*eV 10.0*m
"/>
<!-- dRICh aerogel -->
<matrix name="RINDEX__Aerogel_DRICH" coldim="2" values="
<!-- pfRICh gas -->
<matrix name="RINDEX__C4F10_PFRICH" coldim="2" values="
1.7712*eV 1.0013
1.92389*eV 1.0013
2.10539*eV 1.00131
2.3247*eV 1.00131
2.59502*eV 1.00132
2.93647*eV 1.00133
3.38139*eV 1.00134
3.98521*eV 1.00136
4.85156*eV 1.0014
6.19921*eV 1.00149
"/>
<matrix name="ABSLENGTH__C4F10_PFRICH" coldim="2" values="
1.7712*eV 6.0*m
1.92389*eV 6.0*m
2.10539*eV 6.0*m
2.3247*eV 6.0*m
2.59502*eV 6.0*m
2.93647*eV 6.0*m
3.38139*eV 6.0*m
3.98521*eV 6.0*m
4.85156*eV 6.0*m
6.19921*eV 6.0*m
"/>
<!-- dRICh aerogel, for density=0.11 g/cm3 (OLD versions are for 0.1g/cm3) -->
<matrix name="RINDEX__Aerogel_DRICH_OLD" coldim="2" values="
1.87855*eV 1.01638
1.96673*eV 1.01642
2.0549*eV 1.01647
......@@ -455,7 +480,59 @@
6.11103*eV 1.02147
6.19921*eV 1.02167
"/>
<matrix name="ABSLENGTH__Aerogel_DRICH" coldim="2" values="
<matrix name="RINDEX__Aerogel_DRICH" coldim="2" values="
1.87855*eV 1.01852
1.96673*eV 1.01856
2.05490*eV 1.01861
2.14308*eV 1.01866
2.23126*eV 1.01871
2.31943*eV 1.01876
2.40761*eV 1.01881
2.49579*eV 1.01887
2.58396*eV 1.01893
2.67214*eV 1.01899
2.76032*eV 1.01905
2.84849*eV 1.01912
2.93667*eV 1.01919
3.02485*eV 1.01926
3.11302*eV 1.01933
3.20120*eV 1.01941
3.28938*eV 1.01948
3.37755*eV 1.01956
3.46573*eV 1.01965
3.55391*eV 1.01973
3.64208*eV 1.01982
3.73026*eV 1.01991
3.81844*eV 1.02001
3.90661*eV 1.02010
3.99479*eV 1.02020
4.08297*eV 1.02030
4.17114*eV 1.02041
4.25932*eV 1.02052
4.34750*eV 1.02063
4.43567*eV 1.02074
4.52385*eV 1.02086
4.61203*eV 1.02098
4.70020*eV 1.02111
4.78838*eV 1.02123
4.87656*eV 1.02136
4.96473*eV 1.02150
5.05291*eV 1.02164
5.14109*eV 1.02178
5.22927*eV 1.02193
5.31744*eV 1.02208
5.40562*eV 1.02223
5.49380*eV 1.02239
5.58197*eV 1.02255
5.67015*eV 1.02271
5.75833*eV 1.02288
5.84650*eV 1.02306
5.93468*eV 1.02324
6.02286*eV 1.02342
6.11103*eV 1.02361
6.19921*eV 1.02381
"/>
<matrix name="ABSLENGTH__Aerogel_DRICH_OLD" coldim="2" values="
1.87855*eV 154*mm
1.96673*eV 156.17*mm
2.0549*eV 158.154*mm
......@@ -507,7 +584,59 @@
6.11103*eV 7.29168*mm
6.19921*eV 6.69064*mm
"/>
<matrix name="RAYLEIGH__Aerogel_DRICH" coldim="2" values="
<matrix name="ABSLENGTH__Aerogel_DRICH" coldim="2" values="
1.87855*eV 140.000*mm
1.96673*eV 141.973*mm
2.05490*eV 143.776*mm
2.14308*eV 145.431*mm
2.23126*eV 146.955*mm
2.31943*eV 148.364*mm
2.40761*eV 149.669*mm
2.49579*eV 150.882*mm
2.58396*eV 152.012*mm
2.67214*eV 153.067*mm
2.76032*eV 154.055*mm
2.84849*eV 154.982*mm
2.93667*eV 155.854*mm
3.02485*eV 156.674*mm
3.11302*eV 157.448*mm
3.20120*eV 158.180*mm
3.28938*eV 158.872*mm
3.37755*eV 159.528*mm
3.46573*eV 160.150*mm
3.55391*eV 160.742*mm
3.64208*eV 147.916*mm
3.73026*eV 128.139*mm
3.81844*eV 111.378*mm
3.90661*eV 97.121*mm
3.99479*eV 84.948*mm
4.08297*eV 74.518*mm
4.17114*eV 65.552*mm
4.25932*eV 57.819*mm
4.34750*eV 51.130*mm
4.43567*eV 45.327*mm
4.52385*eV 40.278*mm
4.61203*eV 35.873*mm
4.70020*eV 32.019*mm
4.78838*eV 28.641*mm
4.87656*eV 25.670*mm
4.96473*eV 23.054*mm
5.05291*eV 20.742*mm
5.14109*eV 18.698*mm
5.22927*eV 16.884*mm
5.31744*eV 15.272*mm
5.40562*eV 13.837*mm
5.49380*eV 12.557*mm
5.58197*eV 11.413*mm
5.67015*eV 10.389*mm
5.75833*eV 9.470*mm
5.84650*eV 8.645*mm
5.93468*eV 7.902*mm
6.02286*eV 7.233*mm
6.11103*eV 6.629*mm
6.19921*eV 6.082*mm
"/>
<matrix name="RAYLEIGH__Aerogel_DRICH_OLD" coldim="2" values="
1.87855*eV 309.218*mm
1.96673*eV 257.383*mm
2.0549*eV 215.968*mm
......@@ -559,6 +688,58 @@
6.11103*eV 2.76144*mm
6.19921*eV 2.607*mm
"/>
<matrix name="RAYLEIGH__Aerogel_DRICH" coldim="2" values="
1.87855*eV 281.107*mm
1.96673*eV 233.984*mm
2.05490*eV 196.334*mm
2.14308*eV 165.962*mm
2.23126*eV 141.242*mm
2.31943*eV 120.958*mm
2.40761*eV 104.188*mm
2.49579*eV 90.226*mm
2.58396*eV 78.527*mm
2.67214*eV 68.663*mm
2.76032*eV 60.301*mm
2.84849*eV 53.174*mm
2.93667*eV 47.070*mm
3.02485*eV 41.816*mm
3.11302*eV 37.277*mm
3.20120*eV 33.336*mm
3.28938*eV 29.903*mm
3.37755*eV 26.900*mm
3.46573*eV 24.265*mm
3.55391*eV 21.946*mm
3.64208*eV 19.896*mm
3.73026*eV 18.080*mm
3.81844*eV 16.468*mm
3.90661*eV 15.030*mm
3.99479*eV 13.746*mm
4.08297*eV 12.596*mm
4.17114*eV 11.564*mm
4.25932*eV 10.637*mm
4.34750*eV 9.799*mm
4.43567*eV 9.043*mm
4.52385*eV 8.358*mm
4.61203*eV 7.738*mm
4.70020*eV 7.172*mm
4.78838*eV 6.659*mm
4.87656*eV 6.191*mm
4.96473*eV 5.762*mm
5.05291*eV 5.370*mm
5.14109*eV 5.011*mm
5.22927*eV 4.681*mm
5.31744*eV 4.379*mm
5.40562*eV 4.100*mm
5.49380*eV 3.844*mm
5.58197*eV 3.606*mm
5.67015*eV 3.386*mm
5.75833*eV 3.184*mm
5.84650*eV 2.996*mm
5.93468*eV 2.822*mm
6.02286*eV 2.660*mm
6.11103*eV 2.510*mm
6.19921*eV 2.370*mm
"/>
<!-- dRICh acrylic -->
<matrix name="RINDEX__Acrylic_DRICH" coldim="2" values="
4.13281*eV 1.5017
......@@ -675,6 +856,14 @@
<property name="RINDEX" ref="RINDEX__Air"/>
<property name="ABSLENGTH" coldim="2" values="1*eV 200*m 5*eV 200*m"/>
</material>
<material name="VacuumOptical">
<D type="density" unit="g/cm3" value="0.0000000001"/>
<fraction n="0.754" ref="N"/>
<fraction n="0.234" ref="O"/>
<fraction n="0.012" ref="Ar"/>
<property name="RINDEX" ref="RINDEX__Vacuum"/>
<property name="ABSLENGTH" coldim="2" values="1*eV 2000*m 5*eV 2000*m"/>
</material>
<material name="N2cherenkov">
<D type="density" value="0.00125" unit="g/cm3"/>
<composite n="1" ref="N"/>
......@@ -705,7 +894,7 @@
<property name="RINDEX" ref="RINDEX__Acrylic"/>
<property name="ABSLENGTH" ref="ABSLENGTH__Acrylic"/>
</material>
<!-- BEGIN dRICh material definitions -->
<!-- BEGIN dRICh and pfRICh material definitions -->
<material name="C2F6_DRICH">
<D type="density" value="0.005734" unit="g/cm3"/>
<composite n="2" ref="C"/>
......@@ -713,11 +902,27 @@
<property name="RINDEX" ref="RINDEX__C2F6_DRICH"/>
<property name="ABSLENGTH" ref="ABSLENGTH__C2F6_DRICH"/>
</material>
<material name="Aerogel_DRICH">
<D type="density" value="0.1" unit="g/cm3"/>
<material name="C4F10_PFRICH">
<D type="density" value="0.009935" unit="g/cm3"/>
<composite n="4" ref="C"/>
<composite n="10" ref="F"/>
<property name="RINDEX" ref="RINDEX__C4F10_PFRICH"/>
<property name="ABSLENGTH" ref="ABSLENGTH__C4F10_PFRICH"/>
</material>
<material name="Aerogel_DRICH_OLD">
<D type="density" value="0.100" unit="g/cm3"/>
<comment> n_air = [dens(Si02)-dens(aerogel)] / [dens(Si02)-dens(Air) ] </comment>
<fraction n=" (2.32-0.1) / (2.32-0.0012)" ref="Air"/>
<fraction n="1 - (2.32-0.1) / (2.32-0.0012)" ref="SiliconDioxide"/>
<property name="RINDEX" ref="RINDEX__Aerogel_DRICH_OLD"/>
<property name="ABSLENGTH" ref="ABSLENGTH__Aerogel_DRICH_OLD"/>
<property name="RAYLEIGH" ref="RAYLEIGH__Aerogel_DRICH_OLD"/>
</material>
<material name="Aerogel_DRICH">
<D type="density" value="0.110" unit="g/cm3"/>
<comment> n_air = [dens(Si02)-dens(aerogel)] / [dens(Si02)-dens(Air) ] </comment>
<fraction n=" (2.32-0.11) / (2.32-0.0012)" ref="Air"/>
<fraction n="1 - (2.32-0.11) / (2.32-0.0012)" ref="SiliconDioxide"/>
<property name="RINDEX" ref="RINDEX__Aerogel_DRICH"/>
<property name="ABSLENGTH" ref="ABSLENGTH__Aerogel_DRICH"/>
<property name="RAYLEIGH" ref="RAYLEIGH__Aerogel_DRICH"/>
......