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
Select Git revision
  • 101-north-ecal-add-modules-around-beampipe
  • 104-add-realistic-cooling-for-gridpix
  • 116-fix-the-detector-views
  • 12-job-failed-106994
  • 126-improved-gem-rings
  • 131-update-tof-for-canyonlands
  • 134-make-new-3d-views-of-ff-region-and-detectors
  • 144-irt-geometry
  • 144-test-small-sensor-overlap
  • 147-fix-dirc-overlaps-and-make-it-great-again
  • 148-hcal-geometry-development
  • 148-hcal-geometry-development-wdconinc-suggestion
  • 149-dump-geometry-ci-job-should-also-produce-ff-geometry-separately
  • 21-electron-endcap-ecal-glass-outer-ring-implementation-needed-2
  • 23-add-barrel-tof
  • 24-tweak-zdc-longitudinal-size
  • 37-place-sifi-fibers-in-the-assembly-in-ecal-barrel
  • 38-mm-tracker-implementation
  • 40-quick-viz
  • 42-grid-pix-pid-detector
  • 53-acts-geometry-bug-outer-tracker-barrel
  • 54-dirc-better-parametrization
  • 56-astropix-sampling-fraction-test-2
  • 59-detailed-forward-gem-trd
  • 59-detailed-forward-gem-trd-2
  • 7-central-tracker-endcap-detail
  • 81-add-barrel-ecal-projection-at-positive-eta
  • 9-detector-plugin-for-w-scfi-calorimeter-layers
  • 98-update-barrel-and-endcap-tof
  • AllieWeary-master-patch-33350
  • WorkingGemTrd_MLmodel_andAnalysis
  • acadia
  • acts_surface_binning
  • acts_vertex_barrel
  • add_segmentation
  • adjust-barrel-emcalo-geometry
  • b0_acts
  • backward_ecal_cleanup
  • barrel-tracker-simplified
  • baseline-dimensions-rich-thickness
  • calibrations-ecal-hcal
  • calo-digitization-json
  • canyonlands
  • canyonlands-acts-dd4hep-plugin
  • cherry-pick-85aaf29d
  • cherry-pick-ee231e50
  • deathvalley
  • deathvalley-1.5T
  • deathvalley-acts-dd4hep-plugin
  • debug-vis
  • default_visibilities
  • documentation_tag
  • drich-optics-tests
  • drich-space-update
  • drich-two-mirrors
  • ecal-hcal-endcap-bore-and-length
  • hcal
  • hcal-klm
  • irt-erich
  • irt-init-v01
  • lengthen_ecalbarrel
  • line_drawing
  • lkosarzew-master-patch-25029
  • master
  • mlavinsky-master-patch-10431
  • module_frame
  • mriganka-branch02
  • niveditharam-master-patch-05822
  • optional_full_overlap_check
  • outer_tracker_fix
  • overlap_child_pipeline
  • remove_comment
  • rich-photos
  • shyam.kumar-master-patch-48113
  • sly2j-master-patch-62318
  • sphere-issue
  • sphere_tests
  • swapneshkhade-master-patch-16755
  • test
  • test-drich-tracker
  • testBranchRobin
  • test_tof_zy
  • tmp_view
  • tmp_viz
  • update_becal_nlayers
  • vanekjan-master-patch-74522
  • vdesai-master-patch-09582
  • vis_check
  • vis_dirc
  • vis_ref
  • wdconinc-master-patch-02076
  • weibin-master-patch-37475
  • zdc_prim_fix
  • zdemirog-master-patch-64142
  • zji-ScFiCal
  • acadia-v1.0
  • acadia-v1.0-alpha
  • acadia-v1.1
  • acadia-v2.0
  • acadia-v2.1
  • canyonlands-v1.0
  • canyonlands-v1.1
  • canyonlands-v1.2
  • canyonlands-v2.0
  • canyonlands-v2.1
  • canyonlands-v2.2
  • deathvalley-v1.0
  • deathvalley-v1.0-1.5T
  • deathvalley-v1.1
  • v0.1.0
  • v0.2.0
111 results

Target

Select target project
  • EIC/detectors/athena
  • zwzhao/athena
  • FernandoTA/athena
  • palspeic/athena
4 results
Select Git revision
  • 101-north-ecal-add-modules-around-beampipe
  • 104-add-realistic-cooling-for-gridpix
  • 116-fix-the-detector-views
  • 12-job-failed-106994
  • 126-improved-gem-rings
  • 131-update-tof-for-canyonlands
  • 134-make-new-3d-views-of-ff-region-and-detectors
  • 144-irt-geometry
  • 144-test-small-sensor-overlap
  • 147-fix-dirc-overlaps-and-make-it-great-again
  • 148-hcal-geometry-development
  • 148-hcal-geometry-development-wdconinc-suggestion
  • 149-dump-geometry-ci-job-should-also-produce-ff-geometry-separately
  • 21-electron-endcap-ecal-glass-outer-ring-implementation-needed-2
  • 23-add-barrel-tof
  • 24-tweak-zdc-longitudinal-size
  • 37-place-sifi-fibers-in-the-assembly-in-ecal-barrel
  • 38-mm-tracker-implementation
  • 40-quick-viz
  • 42-grid-pix-pid-detector
  • 53-acts-geometry-bug-outer-tracker-barrel
  • 54-dirc-better-parametrization
  • 56-astropix-sampling-fraction-test-2
  • 59-detailed-forward-gem-trd
  • 59-detailed-forward-gem-trd-2
  • 7-central-tracker-endcap-detail
  • 81-add-barrel-ecal-projection-at-positive-eta
  • 9-detector-plugin-for-w-scfi-calorimeter-layers
  • 98-update-barrel-and-endcap-tof
  • AllieWeary-master-patch-33350
  • WorkingGemTrd_MLmodel_andAnalysis
  • acadia
  • acts_surface_binning
  • acts_vertex_barrel
  • add_segmentation
  • adjust-barrel-emcalo-geometry
  • b0_acts
  • backward_ecal_cleanup
  • barrel-tracker-simplified
  • baseline-dimensions-rich-thickness
  • calibrations-ecal-hcal
  • calo-digitization-json
  • canyonlands
  • canyonlands-acts-dd4hep-plugin
  • cherry-pick-85aaf29d
  • cherry-pick-ee231e50
  • deathvalley
  • deathvalley-1.5T
  • deathvalley-acts-dd4hep-plugin
  • debug-vis
  • default_visibilities
  • documentation_tag
  • drich-optics-tests
  • drich-space-update
  • drich-two-mirrors
  • ecal-hcal-endcap-bore-and-length
  • hcal
  • hcal-klm
  • irt-erich
  • irt-init-v01
  • lengthen_ecalbarrel
  • line_drawing
  • lkosarzew-master-patch-25029
  • master
  • mlavinsky-master-patch-10431
  • module_frame
  • mriganka-branch02
  • niveditharam-master-patch-05822
  • optional_full_overlap_check
  • outer_tracker_fix
  • overlap_child_pipeline
  • palspeic-master-patch-91700
  • remove_comment
  • rich-photos
  • shyam.kumar-master-patch-48113
  • sly2j-master-patch-62318
  • sphere-issue
  • sphere_tests
  • swapneshkhade-master-patch-16755
  • test
  • test-drich-tracker
  • testBranchRobin
  • test_tof_zy
  • tmp_view
  • tmp_viz
  • update_becal_nlayers
  • vanekjan-master-patch-74522
  • vdesai-master-patch-09582
  • vis_check
  • vis_dirc
  • vis_ref
  • wdconinc-master-patch-02076
  • weibin-master-patch-37475
  • zdc_prim_fix
  • zdemirog-master-patch-64142
  • zji-ScFiCal
  • acadia-v1.0
  • acadia-v1.0-alpha
  • acadia-v1.1
  • acadia-v2.0
  • acadia-v2.1
  • canyonlands-v1.0
  • canyonlands-v1.1
  • canyonlands-v1.2
  • canyonlands-v2.0
  • canyonlands-v2.1
  • canyonlands-v2.2
  • deathvalley-v1.0
  • deathvalley-v1.0-1.5T
  • deathvalley-v1.1
  • v0.1.0
  • v0.2.0
112 results
Show changes
Showing
with 1423 additions and 834 deletions
<lccdd>
<define>
<constant name="EcalEndcapP_rmax" value="Solenoid_rmax "/>
</define>
<limits>
</limits>
<regions>
</regions>
<display>
</display>
<detectors>
<documentation level="10">
#### Forward (Positive Z) Endcap EM Calorimeter
A layered EM calorimeter with tungsten and silicon (or scintillator) strips
</documentation>
<detector id="ECalEndcapP_ID"
name="EcalEndcapP"
reflect="false"
type="athena_PolyhedraEndcapCalorimeter2"
readout="EcalEndcapPHits"
vis="EcalEndcapVis"
calorimeterType="EM_ENDCAP" >
<position x="0" y="0" z="-0"/>
<dimensions
numsides="CaloSides"
zmin="EcalEndcapP_zmin"
rmin="EcalEndcapP_rmin"
rmax="EcalEndcapP_rmax " />
<layer repeat="EcalEndcapPLayer1_NRepeat">
<slice material="Silicon" thickness="EcalSiliconThickness" sensitive="yes" limits="cal_limits"/>
<slice material="Copper" thickness="EcalCopperThickness"/>
<slice material="Kapton" thickness="EcalKaptonThickness"/>
<slice material="Air" thickness="EcalAir1Thickness"/>
</layer>
<layer repeat="EcalEndcapPLayer2_NRepeat">
<slice material="TungstenDens24" thickness="EcalThinTungstenThickness"/>
<slice material="Air" thickness="EcalAir2Thickness"/>
<slice material="Silicon" thickness="EcalSiliconThickness" sensitive="yes" limits="cal_limits"/>
<slice material="Copper" thickness="EcalCopperThickness"/>
<slice material="Kapton" thickness="EcalKaptonThickness"/>
<slice material="Air" thickness="EcalAir1Thickness"/>
</layer>
<layer repeat="EcalEndcapPLayer3_NRepeat">
<slice material="TungstenDens24" thickness="EcalThickTungstenThickness"/>
<slice material="Air" thickness="EcalAir2Thickness"/>
<slice material="Silicon" thickness="EcalSiliconThickness" sensitive="yes" limits="cal_limits"/>
<slice material="Copper" thickness="EcalCopperThickness"/>
<slice material="Kapton" thickness="EcalKaptonThickness"/>
<slice material="Air" thickness="EcalAir1Thickness"/>
</layer>
</detector>
</detectors>
<!-- Definition of the readout segmentation/definition -->
<readouts>
<readout name="EcalEndcapPHits">
<segmentation type="CartesianGridXY" grid_size_x="3.5 * mm" grid_size_y="3.5 * mm"/>
<id>system:8,barrel:3,module:4,layer:6,slice:5,x:32:-16,y:-16</id>
</readout>
</readouts>
<plugins>
</plugins>
</lccdd>
<display> <display>
<comment> <comment>
A coherent color scheme. Pick from these colors and (in theory) it should look pretty good. Colors tweaked to be displayable by geoViewer
</comment> </comment>
<vis name="AnlGreen" alpha="1" r="119/255" g="179/255" b="0"/> <vis name="AnlGreen" alpha="1" r="100/256" g="200/256" b="0/256"/>
<vis name="AnlViolet" alpha="1" r="91/256" g="0" b="145/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="130/256" b="202/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="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="AnlRed" alpha="1" r="205/256" g="45/256 " b="45/256"/>
<vis name="AnlGold" alpha="1" r="248/256" g="178/256" b="0/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="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="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="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="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="AnlLightGray" ref="AnlLight_Gray" />
<vis name="AnlDelta_Red" alpha="1" r="161/256" g="43/256" b="47/256"/> <!-- off-white (or white) don't work! -->
<vis name="AnlDelta_Green" alpha="1" r="0" g="120/256" b="54/256"/> <!--vis name="AnlOff_White" alpha="1" r="242/256" g="242/256" b="242/256"/-->
<vis name="AnlDelta_Blue" alpha="1" r="11/256" g="31/256" b="143/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>
<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>
...@@ -50,79 +50,92 @@ The unused IDs below are saved for future use. ...@@ -50,79 +50,92 @@ The unused IDs below are saved for future use.
<documentation> <documentation>
#### (25-49) Silicon Vertex Tracker #### (25-39) Silicon Vertex Tracker
- SiVertex subsystem ID: 25 - Vertex subassemblies: 25-27
- Layer 1 subassembly ID: 26 - Vertex barrel and endcaps: 28-30
- Layer 2 subassembly ID: 27 - Unused: 28-30
- Layer 3 subassembly ID: 28 </documentation>
- Layer 4 subassembly ID: 29 <constant name="VertexSubAssembly_0_ID" value="25"/>
- Layer 5 subassembly ID: 30 <constant name="VertexSubAssembly_1_ID" value="26"/>
</documentation> <constant name="VertexSubAssembly_2_ID" value="27"/>
<constant name="VertexBarrel_ID" value="25"/>
<constant name="VertexBarrelSubAssembly_ID" value="26"/> <constant name="VertexBarrel_0_ID" value="31"/>
<constant name="VertexEndcapSubAssembly_ID" value="27"/> <constant name="VertexBarrel_1_ID" value="32"/>
<constant name="VertexEndcapP_ID" value="30"/> <constant name="VertexBarrel_2_ID" value="33"/>
<constant name="VertexEndcapN_ID" value="40"/> <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> <documentation>
- Unused IDs: 31-49 - Unused IDs: 31-39
</documentation> </documentation>
<documentation> <documentation>
#### (50-74) Silicon Tracker System #### (40-84) Tracker System
SiTracker subsystem ID: 50 - Tracker subassemblies: 40-45
Layer 1 subassembly ID: 51 - Composite tracker systems: 46-57
Layer 2 subassembly ID: 52 - Tracker detectors: 56-84
Layer 3 subassembly ID: 53 Unused IDs: (77-79)
Layer 4 subassembly ID: 54
Layer 5 subassembly ID: 55
(56-70) etc...
Unused IDs: 71-74
</documentation> </documentation>
<constant name="TrackerBarrelSubAssembly_Inner_ID" value="50"/> <comment>
<constant name="TrackerEndcapSubAssembly_Inner_ID" value="51"/> SubAssembly IDs should increment from inner to outer
(it's not the definition order but rather the ID order that's used
<constant name="TrackerBarrelSubAssembly_Outer_ID" value="52"/> for construction order in the ACTS geometry conversion)
<constant name="TrackerEndcapSubAssembly_Outer_ID" value="53"/> </comment>
<constant name="OuterTrackingSubAssembly_ID" value="54"/> <constant name="TrackerSubAssembly_0_ID" value="40"/>
<constant name="TrackerSubAssembly_1_ID" value="41"/>
<!--constant name="TrackerSubAssemblyLayer4_ID" value="54"/--> <constant name="TrackerSubAssembly_2_ID" value="42"/>
<!--constant name="TrackerSubAssemblyLayer5_ID" value="55"/--> <constant name="TrackerSubAssembly_3_ID" value="43"/>
<constant name="TrackerSubAssembly_4_ID" value="44"/>
<constant name="TrackerBarrel_Inner_ID" value="56"/> <constant name="TrackerSubAssembly_5_ID" value="45"/>
<constant name="TrackerEndcapP_Inner_ID" value="57"/>
<constant name="TrackerEndcapN_Inner_ID" value="58"/> <constant name="TrackerCompositeBarrel_0_ID" value="46"/>
<constant name="TrackerCompositeBarrel_1_ID" value="47"/>
<constant name="TrackerBarrel_Outer_ID" value="59"/> <constant name="TrackerCompositeBarrel_2_ID" value="48"/>
<constant name="TrackerEndcapP_Outer_ID" value="60"/> <constant name="TrackerCompositeBarrel_3_ID" value="49"/>
<constant name="TrackerEndcapN_Outer_ID" value="61"/> <constant name="TrackerCompositeEndcapN_0_ID" value="50"/>
<constant name="TrackerCompositeEndcapN_1_ID" value="51"/>
<constant name="TrackerBarrel_Layer3_ID" value="62"/> <constant name="TrackerCompositeEndcapN_2_ID" value="52"/>
<constant name="TrackerEndcapP_Layer3_ID" value="63"/> <constant name="TrackerCompositeEndcapN_3_ID" value="53"/>
<constant name="TrackerEndcapN_Layer3_ID" value="64"/> <constant name="TrackerCompositeEndcapP_0_ID" value="54"/>
<constant name="TrackerCompositeEndcapP_1_ID" value="55"/>
<constant name="TrackerBarrel_Layer4_ID" value="65"/> <constant name="TrackerCompositeEndcapP_2_ID" value="56"/>
<constant name="TrackerEndcapP_Layer4_ID" value="66"/> <constant name="TrackerCompositeEndcapP_3_ID" value="57"/>
<constant name="TrackerEndcapN_Layer4_ID" value="67"/>
<constant name="TrackerBarrel_0_ID" value="58"/>
<constant name="TrackerBarrel_Layer5_ID" value="68"/> <constant name="TrackerBarrel_1_ID" value="59"/>
<constant name="TrackerEndcapP_Layer5_ID" value="69"/> <constant name="TrackerBarrel_2_ID" value="60"/>
<constant name="TrackerEndcapN_Layer5_ID" value="70"/> <constant name="TrackerBarrel_3_ID" value="61"/>
<constant name="TrackerBarrel_4_ID" value="62"/>
<documentation> <constant name="TrackerBarrel_5_ID" value="63"/>
#### (75-84) Barrel Tracker IDs <constant name="TrackerBarrel_6_ID" value="64"/>
<constant name="TrackerBarrel_7_ID" value="65"/>
- MMTrackerBarrel ID: 75 <constant name="TrackerBarrel_8_ID" value="66"/>
- RWellTrackerBarrel ID: 76 <constant name="TrackerEndcapN_0_ID" value="67"/>
- Unused IDs: 77-89 <constant name="TrackerEndcapN_1_ID" value="68"/>
<constant name="TrackerEndcapN_2_ID" value="69"/>
</documentation> <constant name="TrackerEndcapN_3_ID" value="70"/>
<constant name="MMTrackerBarrel_ID" value="75"/> <constant name="TrackerEndcapN_4_ID" value="71"/>
<constant name="RWellTrackerBarrel_ID" value="76"/> <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> <documentation>
#### (85-99) Reserved IDs #### (85-99) Reserved IDs
...@@ -177,34 +190,31 @@ The unused IDs below are saved for future use. ...@@ -177,34 +190,31 @@ The unused IDs below are saved for future use.
<constant name="HCalBarrel_ID" value="111"/> <constant name="HCalBarrel_ID" value="111"/>
<constant name="HCalEndcapP_ID" value="112"/> <constant name="HCalEndcapP_ID" value="112"/>
<constant name="HCalEndcapN_ID" value="113"/> <constant name="HCalEndcapN_ID" value="113"/>
<!--constant name="ci_HCAL_id" value="200"/--> <constant name="PassiveSteelRingEndcapP_ID" value="114"/>
<documentation> <documentation>
#### (120-129) (near) Forward reserved #### (120-129) (near) Forward reserved
- Forwardtracking ID: 120 - Forward RICH ID: 120
- Forward RICH ID: 121 - Forward TRD ID: 121
- Forward TOF ID: 122
- Unused IDs: 124-129 - Unused IDs: 124-129
</documentation> </documentation>
<constant name="ForwardTracking_ID" value="120"/> <constant name="ForwardRICH_ID" value="120"/>
<constant name="ForwardRICH_ID" value="121"/> <constant name="ForwardTRD_ID" value="121"/>
<!--constant name="ci_GEM_id" value="122"/--> <constant name="ForwardTOF_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"/>
<documentation> <documentation>
#### (130-139) Backward reserved #### (130-139) Backward reserved
- Modular RICH ID: 130 - Modular RICH ID: 130
- Electron Endcap GEM tracking ID: 131 - Backward RICH ID: 131
- Unused IDs: 132-139 - Backward TOD ID: 132
- Unused IDs: 133-139
</documentation> </documentation>
<constant name="MRICH_ID" value="130"/> <constant name="MRICH_ID" value="130"/>
<!--constant name="ce_GEM_ID" value="131"/--> <constant name="BackwardRICH_ID" value="131"/>
<constant name="BackwardTOF_ID" value="132"/>
<documentation> <documentation>
#### (140-149) Central Magnet #### (140-149) Central Magnet
...@@ -221,37 +231,78 @@ The unused IDs below are saved for future use. ...@@ -221,37 +231,78 @@ The unused IDs below are saved for future use.
<constant name="SolenoidYoke_ID" value="142"/> <constant name="SolenoidYoke_ID" value="142"/>
<documentation> <documentation>
#### (150-169) Far Forward Detectors #### (150-169) Far Forward Detectors
- Forward Roman Pot ID: 150 - Forward Roman Pot ID: 150
- Forward B0 Tracker ID: 151 - Forward B0 Tracker ID: 151
- Zero Degree Cal. Ecal ID: 160 - Zero Degree Cal. Ecal ID: 160
- Zero Degree Cal. Hcal ID: 161 - 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> </documentation>
<constant name="B0Tracker_Station_1_ID" value="150"/> <constant name="B0Tracker_Station_1_ID" value="150"/>
<constant name="B0Tracker_Station_2_ID" value="151"/> <constant name="B0Tracker_Station_2_ID" value="151"/>
<constant name="B0Tracker_Station_3_ID" value="152"/> <constant name="B0Tracker_Station_3_ID" value="152"/>
<constant name="B0Tracker_Station_4_ID" value="153"/> <constant name="B0Tracker_Station_4_ID" value="153"/>
<constant name="B0Preshower_Station_1_ID" value="154"/> <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="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_2_ID" value="160"/>
<constant name="ForwardOffMTracker_station_3_ID" value="161"/> <constant name="ForwardOffMTracker_station_3_ID" value="161"/>
<constant name="ForwardOffMTracker_station_4_ID" value="162"/> <constant name="ForwardOffMTracker_station_4_ID" value="162"/>
<comment> TODO naming consistency </comment> <constant name="ZDCEcal_ID" value="163"/>
<constant name="ffi_ZDC_ECAL_ID" value="163"/> <constant name="ZDCHcal_ID" value="164"/>
<constant name="ffi_ZDC_HCAL_ID" value="164"/> <constant name="VacuumMagnetElement_1_ID" value="165"/>
<documentation> <documentation>
#### (170-189) Forward Beamline Magnets #### (170-189) Far Forward Beamline Magnets
</documentation> </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> <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> </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> <documentation>
## Detector Definition Parameters ## Detector Definition Parameters
...@@ -288,6 +339,28 @@ Examples: ...@@ -288,6 +339,28 @@ Examples:
</documentation> </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> <documentation>
## Solenoid Magnet Parameters ## Solenoid Magnet Parameters
...@@ -297,326 +370,189 @@ Examples: ...@@ -297,326 +370,189 @@ Examples:
<comment>Solenoid option</comment> <comment>Solenoid option</comment>
<constant name="Solenoid_length" value="3840.0*mm"/> <constant name="Solenoid_length" value="3840.0*mm"/>
<constant name="Solenoid_rmin" value="1600.0*mm"/> <constant name="Solenoid_rmin" value="1600.0*mm"/>
<constant name="Solenoid_thickness" value="640*mm"/> <constant name="Solenoid_thickness" value="455*mm"/>
<constant name="Solenoid_offset" value="10*mm"/> <constant name="Solenoid_offset" value="-240*mm"/>
<!--
<comment>Helmholtz option</comment> <comment>Helmholtz option</comment>
<comment>
<constant name="Solenoid_length" value="3840.0*mm"/> <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_thickness" value="640*mm"/>
<constant name="Solenoid_offset" value="10*mm"/> <constant name="Solenoid_offset" value="10*mm"/>
</comment> </comment>
-->
<constant name="Solenoid_rmax" value="Solenoid_rmin + Solenoid_thickness"/> <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_rmin" value="Solenoid_rmin"/>
<constant name="SolenoidBarrel_length" value="Solenoid_length"/> <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.
### PID Detector Region Parameters
</documentation>
<constant name="ForwardPID_length" value="180.0*cm"/>
<constant name="ForwardTracking_length" value="25.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="10.0*cm"/>
<constant name="BackwardTOF_length" value="0.0*cm"/>
<comment> Note: PID has space for DIRC and optional uRWEL layers</comment>
<constant name="BarrelPIDThickness" value="10.0 * cm"/>
<documentation> <documentation>
## Tracking Detector Parameters ## Tracking Detector Parameters
Generic tracking space allocations
</documentation> </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="VertexTrackerEndcapP_rmin" value="Beampipe_rmax + 5.0*mm"/>
<constant name="VertexTrackerEndcapN_rmin" value="Beampipe_rmax + 5.0*mm"/>
<constant name="VertexTrackerEndcapP_zmax" value="300.0*mm"/>
<constant name="VertexTrackerEndcapN_zmax" value="300.0*mm"/>
<documentation> <documentation>
### Vertex Tracking Region ### Vertex Tracking Region
</documentation> </documentation>
<constant name="VertexTrackingRegion_length" value="VertexTrackerEndcapP_zmax + VertexTrackerEndcapN_zmax "/> <constant name="VertexTrackingRegion_rmin" value="Beampipe_rmax + 1.0*mm" />
<constant name="VertexTrackingRegion_zmax" value="VertexTrackerEndcapP_zmax"/> <constant name="VertexTrackingRegion_rmax" value="100.0*mm" />
<constant name="VertexTrackingRegion_rmax" value="VertexTrackerBarrel_rmax"/> <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> <documentation>
### Tracker Detector Parameters ### Central Tracking Region
TrackerBarrel_rmax: also the rmin for the barrel PID system (DIRC) TrackerBarrel_rmax: also the rmin for the barrel PID system (DIRC)
</documentation> 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.
<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="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"/>
<documentation>
`TrackerBarrelForwardPadding` and `TrackerBarrelBackwardPadding` compensate for the asymmetry of the setup
</documentation> </documentation>
<constant name="TrackerBarrelForwardPadding" value="25.0*cm"/>
<constant name="TrackerBarrelBackwardPadding" value="7.5*cm"/>
<comment> Deprecated <constant name="CentralTrackingRegion_rmax" value="950.0*mm" />
constant name="SiliconTrackerInnerRadius" value="TrackerBarrel_rmin" <constant name="CentralTrackingRegionP_zmax" value="1700.0*mm" />
constant name="SiliconTrackerInnerBarrelLength" value="TrackerBarrelInner_length" <constant name="CentralTrackingRegionN_zmax" value="1500.0*mm" />
constant name="SiliconTrackerOuterRadius" value="TrackerBarrel_rmax" <constant name="CentralTrackingRegion_length" value="CentralTrackingRegionP_zmax + CentralTrackingRegionN_zmax" />
constant name="SiliconTrackerOuterBarrelLength" value="TrackerBarrelOuter_length" <comment>
constant name="SiliconTrackerOuterBarrel_zmax" value="TrackerBarrelOuter_length/2.0" tan(theta) to determine rmin in the outer tracking region (due to tapered beampipe)
TrackerBarrelOuter_length -> TrackerBarrel_length
TrackerBarrelInner_length -> TrackerBarrelInside_length
</comment> </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" />
<documentation> <documentation level="0">
## Central tracking and PID detector boundaries ### PID Detector Region Parameters
</documentation>
<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" />
The central tracking detectors are assumed to be symmtric about the origin. <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" />
</documentation> <comment> Forward RICH region </comment>
<constant name="BarrelTracking_length" value="TrackerBarrel_length"/> <constant name="ForwardRICHRegion_zmin" value="ForwardTOFRegion_zmin + ForwardTOFRegion_length" />
<constant name="BarrelTracking_rmax" value="TrackerBarrel_rmax"/> <constant name="ForwardRICHRegion_length" value="ForwardPIDRegion_length - ForwardTOFRegion_length" />
<constant name="BarrelTracking_zmax" value="BarrelTracking_length/2.0"/> <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" />
<constant name="BarrelTrackingAndPID_length" value="BarrelTracking_length"/> <documentation>
<constant name="BarrelTrackingAndPID_rmax" value="BarrelTracking_rmax + BarrelPIDThickness"/> ## Forward/backward tracking region behind the PID detectors
</documentation>
<constant name="CentralTracking_length" value="BarrelTracking_length + TrackerBarrelForwardPadding + TrackerBarrelBackwardPadding"/> <constant name="BackwardTrackingRegion_tan" value="CentralTrackingRegionN_tan" />
<constant name="CentralTracking_rmax" value="TrackerBarrel_rmax"/> <constant name="BackwardTrackingRegion_zmin" value="BackwardPIDRegion_zmin + BackwardPIDRegion_length" />
<constant name="CentralTrackingHalfN_length" value="BarrelTracking_length/2. + TrackerBarrelBackwardPadding"/> <constant name="ForwardTrackingRegion_tan" value="ForwardRICHRegion_tan2" />
<constant name="CentralTrackingHalfP_length" value="BarrelTracking_length/2. + TrackerBarrelForwardPadding"/> <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" />
<comment> These are used by ddsim </comment> <comment> Total length of the endcap detectors in front of the calorimeter</comment>
<constant name="tracker_region_rmax" value="CentralTracking_rmax"/> <constant name="BackwardInnerEndcapRegion_length" value="BackwardPIDRegion_length + BackwardTrackingRegion_length"/>
<constant name="tracker_region_zmax" value="CentralTracking_length/2.0"/> <constant name="ForwardInnerEndcapRegion_length" value="ForwardPIDRegion_length + ForwardTrackingRegion_length"/>
<comment> Total length of the endcap detectors</comment> <documentation>
<constant name="BackwardInnerEndcap_length" value="BackwardPID_length + BackwardTracking_length"/> ## Service gaps
<constant name="ForwardInnerEndcap_length" value="ForwardPID_length + ForwardTracking_length"/>
Service gaps in FW direction (before endcapP ECAL) and BW direction (before endcapN HCAL)
</documentation>
<constant name="ForwardServiceGap_length" value="10.0*cm"/>
<constant name="BackwardServiceGap_length" value="10.0*cm"/>
<documentation level="3"> <documentation level="3">
## Calorimeter Parameters ## 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> </documentation>
<constant name="CaloSides" value="12"/>
<comment> these offesets could be implemented differently for clarity. </comment> <constant name="EcalEndcapP_zmin" value="ForwardPIDRegion_zmin + ForwardInnerEndcapRegion_length + ForwardServiceGap_length" />
<constant name="EcalEndcapPSolenoid_offset" value="800.0*mm" /> <constant name="EcalEndcapP_length" value="30*cm" />
<constant name="EcalEndcapNSolenoid_offset" value="-100.0*mm" /> <constant name="EcalEndcapP_rmin" value="200.0*mm" />
<comment> extra 50cm rmax that "protrudes" into the HCAL</comment>
<constant name="EndcapPExtra_length" value="40.0*cm"/> <constant name="EcalEndcapP_rmax" value="floor(Eta1_1_tan * EcalEndcapP_zmin)"/>
<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 + 35.0 * mm"/>
<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"/>
<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="EcalEndcapN_zmin" value="BackwardPIDRegion_zmin + BackwardInnerEndcapRegion_length"/>
<constant name="EcalEndcapN_length" value="60*cm" />
<comment> <comment>
Unused, TBD rmin1: rmin round electron pipe (ignoring the hadron pipe)
rmin2: rmin around both beam pipes
</comment> </comment>
<constant name="EndcapPTotalCal_length" value="(SolenoidYokeEndcapP_zmin + EcalEndcapPSolenoid_offset) - (EcalEndcapP_zmin)"/> <constant name="EcalEndcapN_rmin1" value="Eta4_6_tan * EcalEndcapN_zmin" />
<constant name="EndcapNTotalCal_length" value="(SolenoidYokeEndcapN_zmin + EcalEndcapNSolenoid_offset) - (EcalEndcapN_zmin)"/> <constant name="EcalEndcapN_rmin2" value="Eta4_1_tan * EcalEndcapN_zmin" />
<constant name="EcalEndcapN_rmax" value="CentralTrackingRegion_rmax" />
<!--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"/>
<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"/>
<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="5*cm"/>
<constant name="EcalEndcapN_rmax" value="BarrelTracking_rmax"/>
<documentation>
## EM Calorimeter Parameters
### Note about Calormieter parameterization. <documentation level="3">
## Special DIRC parameters (depend on the ECAL setup)
The logic goes like this: </documentation>
1. The space for the calorimeter is fixed via parameterization above. <constant name="DIRCReadout_length" value="30*cm"/>
2. The layer thicknesses are fixed (first parameters below) <constant name="DIRCForward_length" value="0*cm"/>
3. From the space/thickness the number of layers is computed. <constant name="DIRCForward_zmax" value="EcalBarrelForward_zmax "/>
<constant name="DIRCBackward_zmax" value="EcalBarrelBackward_zmax + EcalBarrelReadout_length +DIRCReadout_length "/>
</documentation> <constant name="DIRC_length" value="DIRCForward_zmax + DIRCBackward_zmax"/>
<constant name="CaloSides" value="12"/> <constant name="DIRC_offset" value="(DIRCForward_zmax - DIRCBackward_zmax)/2"/>
<constant name="DIRC_rmin" value="CentralTrackingRegion_rmax"/>
<documentation> <constant name="DIRC_rmax" value="DIRC_rmin + BarrelPIDRegion_thickness"/>
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="EcalBarrel_length" value="CentralTracking_length + BackwardInnerEndcap_length + EcalEndcapN_length"/>
<constant name="EcalBarrel_offset" value="(CentralTracking_length - EcalBarrel_length)/2.0"/>
<documentation> <documentation>
## Hadronic Calorimeter Parameters ## Hadronic Calorimeter Parameters
</documentation> </documentation>
<constant name="HcalEndcapP_zmin" value="max(EcalEndcapP_zmin + EcalEndcapP_length, Solenoid_length / 2.0 + Solenoid_offset) "/> <constant name="HcalEndcapP_zmin" value="EcalEndcapP_zmin + EcalEndcapP_length"/>
<!--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="300*cm"/>
<constant name="HcalEndcapP_length" value="120.0*cm"/> <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> <comment> HcalEndcapP needs to clear the expanding beampipe with 2 * crossing angle + its radius of BeampipeOD / 2</comment>
<constant name="HcalEndcapP_rmin" value="max((HcalEndcapP_zmin + HcalEndcapP_length) * tan(2.0 * abs(CrossingAngle)) + BeampipeOD / 2.0, 15 * cm)"/> <constant name="HcalEndcapP_rmin" value="max((HcalEndcapP_zmin + HcalEndcapP_length) * tan(2.0 * abs(CrossingAngle)) + BeampipeOD / 2.0, 15 * cm)"/>
<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="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_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="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> For now they are forced to be symmetric, and we cover up to the start of the backward ECAL.
#### Material Thickness (this means in the forward region we stop in the middle of the RICH).
</documentation> </comment>
<constant name="HcalSteelThickness" value="1.89 * cm"/>
<constant name="HcalPyrexThickness" value="1.10 * mm"/>
<constant name="HcalRPCGasThickness" value="1.20 * mm"/>
<constant name="HcalG10Thickness" value="3.00 * mm"/>
<constant name="HcalAirThickness" value="1.60 * mm"/>
<documentation>
- Single Layer Thickness (for both barrel and endcap)
</documentation>
<constant name="HcalSingleLayerThickness"
value="HcalSteelThickness + (2 * HcalPyrexThickness) + HcalRPCGasThickness + HcalG10Thickness + HcalAirThickness"/>
<documentation>
- Hcal Barrel Layers and computed Thickness
</documentation>
<constant name="HcalBarrelLayer_NRepeat" value="floor(HcalBarrelAvailThickness / HcalSingleLayerThickness)"/>
<constant name="HcalBarrelThickness" value="HcalBarrelLayer_NRepeat * HcalSingleLayerThickness"/>
<documentation>
- Hcal Endcap Layers and computed Thickness
</documentation>
<constant name="HcalEndcapPLayer_NRepeat" value="floor(HcalEndcapP_length / HcalSingleLayerThickness)"/>
<constant name="HcalEndcapNLayer_NRepeat" value="floor(HcalEndcapN_length / HcalSingleLayerThickness)"/>
<constant name="HcalEndcapP_thickness" value="HcalEndcapPLayer_NRepeat * HcalSingleLayerThickness"/>
<constant name="HcalEndcapN_thickness" value="HcalEndcapNLayer_NRepeat * HcalSingleLayerThickness"/>
<comment> Special DIRC parameters </comment>
<constant name="DIRCFull_length" value="max(CentralTracking_length + BackwardInnerEndcap_length + EcalEndcapN_length, EcalBarrel_length) + 50*cm"/>
<constant name="DIRCExtra_offset" value="-5*cm"/>
<constant name="tracker_region_rmax" value="EcalBarrel_rmin"/>
<constant name="tracker_region_zmax" value="EcalEndcapN_zmin"/>
</define> </define>
...@@ -21,12 +21,12 @@ ...@@ -21,12 +21,12 @@
</comment> </comment>
<define> <define>
<constant name="DIRC_rmin" value="BarrelTracking_rmax-11*cm"/> <constant name="DIRCFake_rmin" value="BarrelTracking_rmax-11*cm"/>
<constant name="DIRC_rotation" value="pi" comment="Allows DIRC flip"/> <constant name="DIRC_rotation" value="pi" comment="Allows DIRC flip"/>
<!-- <constant name="cb_DIRC_length" value="DIRCLength"/> --> <!-- <constant name="cb_DIRC_length" value="DIRCLength"/> -->
<!-- CLEANUP THIS if not sure. This is from the initial implementation <!-- CLEANUP THIS if not sure. This is from the initial implementation
<constant name="DIRC_length" value="285.500*cm"/> <constant name="DIRC_length" value="285.500*cm"/>
<constant name="DIRC_rmin" value="82.00*cm"/>--> <constant name="DIRCFake_rmin" value="82.00*cm"/>-->
<!-- Prism --> <!-- Prism -->
<constant name="DIRCPrism_width" value="360*mm"/> <constant name="DIRCPrism_width" value="360*mm"/>
...@@ -37,8 +37,8 @@ ...@@ -37,8 +37,8 @@
<constant name="DIRCPrism_height" value="DIRCPrism_long_edge"/> <constant name="DIRCPrism_height" value="DIRCPrism_long_edge"/>
<!-- DIRC length --> <!-- DIRC length -->
<constant name="DIRC_length" value="DIRCFull_length - DIRCPrism_length"/> <constant name="DIRCMain_length" value="DIRC_length"/>
<constant name="DIRC_offset" value="(CentralTracking_length - DIRC_length)/2.0 - DIRCExtra_offset"/> <constant name="DIRCFake_offset" value="DIRC_offset+15*cm"/>
<!-- Box - main DIRC modules --> <!-- Box - main DIRC modules -->
<constant name="DIRCBox_count" value="16" comment="Number of DIRC boxes per... DIRC. 16 - default"/> <constant name="DIRCBox_count" value="16" comment="Number of DIRC boxes per... DIRC. 16 - default"/>
...@@ -64,7 +64,7 @@ ...@@ -64,7 +64,7 @@
<!-- Bar - Each DIRC box consists of N "bars" --> <!-- Bar - Each DIRC box consists of N "bars" -->
<!-- BarAssembly - Bars + Glue --> <!-- BarAssembly - Bars + Glue -->
<constant name="DIRCBarAssm_length" value="DIRC_length - DIRCPrism_length - DIRCMirror_thickness - DIRCLens_thickness - DIRCFd_thickness" comment="Length of bars+glue assembly"/> <constant name="DIRCBarAssm_length" value="DIRCMain_length - DIRCPrism_length - DIRCMirror_thickness - DIRCLens_thickness - DIRCFd_thickness" comment="Length of bars+glue assembly"/>
<constant name="DIRCBar_count" value="11" comment="Number of bars per box"/> <constant name="DIRCBar_count" value="11" comment="Number of bars per box"/>
<constant name="DIRCBar_gap" value="0.15 * mm"/> <constant name="DIRCBar_gap" value="0.15 * mm"/>
<constant name="DIRCBar_height" value="17 * mm"/> <constant name="DIRCBar_height" value="17 * mm"/>
...@@ -77,7 +77,7 @@ ...@@ -77,7 +77,7 @@
RMax is calculated according to "rectangle inside ring" problem solution RMax is calculated according to "rectangle inside ring" problem solution
https://math.stackexchange.com/questions/4222684/calculate-rectangle-inside-ring-parameters/4222691#4222691 https://math.stackexchange.com/questions/4222684/calculate-rectangle-inside-ring-parameters/4222691#4222691
</comment> </comment>
<constant name="DIRC_rmax" value="sqrt( (DIRC_rmin+DIRCPrism_height)^2 + 0.25*(DIRCPrism_height)^2 )"/> <constant name="DIRCFake_rmax" value="sqrt( (DIRCFake_rmin+DIRCPrism_height)^2 + 0.25*(DIRCPrism_height)^2 )"/>
</define> </define>
<materials> <materials>
...@@ -107,22 +107,22 @@ ...@@ -107,22 +107,22 @@
</regions> </regions>
<display> <display>
<vis name="DIRCTube" alpha="0.1" r="0" g="0.6" b="0.6" visible="true" showDaughters="true" lineStyle="solid" drawingStyle="solid" /> <vis name="DIRCTube" ref="AnlTeal" alpha="0.1" visible="true" showDaughters="true" lineStyle="solid" drawingStyle="solid" />
<vis name="DIRCBox" alpha="0.1" r="256/256" g="256/256" b="256/256" visible="true" showDaughters="true" lineStyle="solid" drawingStyle="solid" /> <vis name="DIRCBox" ref="AnlLight_Gray" alpha="0.1" visible="true" showDaughters="true" lineStyle="solid" drawingStyle="solid" />
<vis name="DIRCLens1" alpha="1" r="3/256" g="37/256" b="76/256" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" /> <vis name="DIRCLens1" ref="AnlProcess_Blue" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" />
<vis name="DIRCLens2" alpha="1" r="17/256" g="103/256" b="177/256" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" /> <vis name="DIRCLens2" ref="AnlProcess_Blue" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" />
<vis name="DIRCLens3" alpha="1" r="0/256" g="128/256" b="128/256" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" /> <vis name="DIRCLens3" ref="AnlTeal" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" />
<vis name="DIRCBar" alpha="1" r="0/256" g="128/256" b="128/256" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" /> <vis name="DIRCBar" ref="AnlTeal" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" />
<vis name="DIRCGlue" alpha="1" r="125/256" g="0/256" b="128/256" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" /> <vis name="DIRCGlue" ref="AnlViolet" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" />
<vis name="DIRCMirror" alpha="1" r="0" g="0" b="1" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" /> <vis name="DIRCMirror" ref="AnlGray" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" />
<vis name="DIRCPrism" alpha="1" r="212/256" g="175/256" b="55/256" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" /> <vis name="DIRCPrism" ref="AnlTeal" visible="true" showDaughters="false" lineStyle="solid" drawingStyle="solid" />
<vis name="DIRCFd" alpha="1" r="0.7" g="0" b="0" visible="true" showDaughters="false" /> <vis name="DIRCFd" ref="AnlRed" visible="true" showDaughters="false" />
</display> </display>
<detectors> <detectors>
<detector id="BarrelDIRC_ID" name="cb_DIRC" type="cb_DIRC" readout="DIRCBarHits" vis="DIRCTube"> <detector id="BarrelDIRC_ID" name="cb_DIRC" type="cb_DIRC" readout="DIRCBarHits" vis="DIRCTube">
<dimensions rmin="DIRC_rmin" rmax="DIRC_rmax" length="DIRC_length" radius="DIRCRadius" dx="DIRCBars_DX" dy="DIRCBars_DY" number="DIRCNum" deltaphi="DIRCDPhi"/> <dimensions rmin="DIRCFake_rmin" rmax="DIRCFake_rmax" length="DIRCMain_length" radius="DIRCRadius" dx="DIRCBars_DX" dy="DIRCBars_DY" number="DIRCNum" deltaphi="DIRCDPhi"/>
<position x="0" y="0" z="DIRC_offset"/> <position x="0" y="0" z="DIRCFake_offset"/>
<rotation theta="DIRC_rotation"/> <rotation theta="DIRC_rotation"/>
<module name="DircBox" R="DIRCRadius" repeat="DIRCBox_count" width="DIRCPrism_width + 1*mm" height="DIRCPrism_height*2" length="DIRCBarAssm_length + 550*mm" vis="DIRCBox"> <module name="DircBox" R="DIRCRadius" repeat="DIRCBox_count" width="DIRCPrism_width + 1*mm" height="DIRCPrism_height*2" length="DIRCBarAssm_length + 550*mm" vis="DIRCBox">
<!-- Mirror (at the end of the module) --> <!-- Mirror (at the end of the module) -->
......
...@@ -10,46 +10,92 @@ ...@@ -10,46 +10,92 @@
<comment> <comment>
Tracking Visualizations Tracking Visualizations
</comment> </comment>
<vis name="TrackerVis" ref="AnlRed" /> <vis name="TrackerVis" ref="AnlRed" />
<vis name="TrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="true" /> <vis name="TrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="true" />
<vis name="TrackerLayerVis" ref="AnlTeal" 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="TrackerModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="false" />
<vis name="TrackerMPGDVis" ref="AnlRed" visible="true" showDaughters="false" />
<vis name="VertexSupportVis" ref="AnlBlue" showDaughters="false" /> <comment> Visualization for Barrel MMGAS (apply to layers) and GEM endcap (apply to modules) </comment>
<vis name="VertexLayerVis" ref="AnlTeal" visible="true" showDaughters="true" /> <vis name="TrackerGEMModuleVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="TrackerMMGASLayerVis" ref="TrackerMPGDVis" visible="true" 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="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> <comment>
ECal Vis ECal Vis
</comment> </comment>
<vis name="EcalVis" ref="AnlGold" showDaughters="true" visible="true"/> <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="EcalBarrelVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalBarrelStaveVis" ref="AnlViolet" showDaughters="false" visible="true" /> <vis name="EcalBarrelStaveVis" ref="AnlOrange" showDaughters="false" visible="true" />
<vis name="EcalBarrelEnvelopeVis" ref="AnlViolet" showDaughters="false" visible="true" /> <vis name="EcalBarrelEnvelopeVis" ref="AnlGold" showDaughters="false" visible="true" />
<vis name="EcalBarrelSupportVis" ref="AnlOrange" showDaughters="false" visible="true"/> <vis name="EcalBarrelSupportVis" ref="AnlOrange" showDaughters="false" visible="true"/>
<vis name="EcalBarrelLayerVis" ref="AnlBlue" showDaughters="true" visible="true"/> <vis name="EcalBarrelLayerVis" ref="AnlGold" showDaughters="true" visible="true"/>
<vis name="EcalBarrelSliceVis" ref="AnlBlue" showDaughters="false" visible="true"/> <vis name="EcalBarrelSliceVis" ref="AnlGray" showDaughters="false" visible="true"/>
<vis name="EcalBarrelFiberLayerVis" ref="AnlGold" showDaughters="false" visible="true" /> <vis name="EcalBarrelFiberLayerVis" ref="AnlGold" showDaughters="false" visible="true" />
<vis name="EcalEndcapNModuleVis" ref="AnlTeal" 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> <comment>
HCal Vis HCal Vis
</comment> </comment>
<vis name="HcalVis" ref="AnlViolet" showDaughters="false"/> <vis name="HcalVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalBarrelVis" ref="AnlViolet" showDaughters="false" visible="true" /> <vis name="HcalBarrelVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalBarrelStaveVis" ref="AnlViolet" showDaughters="false" visible="true" /> <vis name="HcalBarrelStaveVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="HcalEndcapVis" ref="AnlProcess_Blue" showDaughters="false" visible="true" /> <vis name="HcalBarrelLayerVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="HcalSensorVis" ref="AnlProcess_Blue" showDaughters="false" visible="false" /> <vis name="HcalEndcapVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="HcalAbsorberVis" ref="AnlProcess_Blue" showDaughters="false" visible="false" /> <vis name="HcalEndcapLayerVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<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> <comment>
Solenoid Solenoid
</comment> </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="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" /> <vis name="SolenoidYokeVis" ref="AnlLight_Gray" showDaughters="false" visible="true" lineStyle="solid" drawingStyle="solid" />
...@@ -57,33 +103,48 @@ ...@@ -57,33 +103,48 @@
<comment> <comment>
PID Detectors PID Detectors
</comment> </comment>
<vis name="RICHVis" ref="AnlViolet" showDaughters="true"/> <vis name="RICHVis" ref="AnlTeal" showDaughters="true"/>
<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="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> <comment>
Beam line ZDC visualization
</comment> </comment>
<vis name="BeamPipeVis" ref="AnlLight_Gray" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_Vis" ref="AnlGreen" 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_module_Vis" ref="AnlRed" showDaughters="false" 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_HCAL_Vis" ref="AnlBlue" 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>
<vis name="cb_CTDVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/> PID visualization
<vis name="cb_CTD_Si_layerVis" alpha="1.0" r= "0.9" g="1.0" b="0.1" showDaughters="true" visible="true"/> </comment>
<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="DRICH_vessel_vis" ref="AnlGray" 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="DRICH_gas_vis" ref="AnlGreen" alpha="0.5" 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="DRICH_aerogel_vis" ref="AnlTeal" 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" alpha="1.0" r="1.0" g="1.0" b="1.0" showDaughters="true" visible="true" />
<vis name="DRICH_gas_vis" alpha="1.0" r="1.0" g="0.0" b="0.0" showDaughters="true" visible="true" />
<vis name="DRICH_aerogel_vis" alpha="1.0" r="0.0" g="1.0" b="1.0" 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_filter_vis" alpha="1.0" r="1.0" g="1.0" b="0.0" showDaughters="true" visible="true" />
<vis name="DRICH_mirror_vis" alpha="1.0" r="0.5" g="0.5" b="0.5" showDaughters="true" visible="true" /> <vis name="DRICH_mirror_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="DRICH_sensor_vis" alpha="1.0" r="0.0" g="1.0" b="0.0" 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> </display>
......
...@@ -11,41 +11,84 @@ ...@@ -11,41 +11,84 @@
<comment> <comment>
Tracking Visualizations Tracking Visualizations
</comment> </comment>
<vis name="TrackerSupportVis" ref="AnlBlue" showDaughters="false" /> <vis name="TrackerVis" ref="AnlRed" />
<vis name="TrackerLayerVis" ref="AnlTeal" visible="true" showDaughters="true" /> <vis name="TrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="TrackerModuleVis" ref="TrackerLayerVis" 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="VertexSupportVis" ref="AnlBlue" showDaughters="false" /> <vis name="VertexLayerVis" ref="AnlGray" visible="true" showDaughters="false" />
<vis name="VertexLayerVis" ref="AnlTeal" visible="true" showDaughters="true" /> <vis name="VertexSupportLayerVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="VertexModuleVis" ref="TrackerLayerVis" 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="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"/>
<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> <comment>
ECal Vis ECal Vis
</comment> </comment>
<vis name="EcalVis" ref="AnlGold" showDaughters="true" visible="true"/> <vis name="EcalBarrelLayerVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapVis" ref="AnlGold" showDaughters="false" visible="true"/> <vis name="EcalBarrelEnvelopeVis" ref="AnlGold" showDaughters="true" visible="false" />
<vis name="EcalBarrelVis" ref="AnlGold" showDaughters="false" visible="true"/> <vis name="EcalBarrelStaveVis" ref="AnlGold" showDaughters="true" 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="EcalBarrelFiberLayerVis" ref="AnlGold" showDaughters="false" 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="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapNModuleVis" ref="AnlTeal" 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> <comment>
HCal Vis HCal Vis
</comment> </comment>
<vis name="HcalVis" ref="AnlViolet" showDaughters="false"/> <vis name="HcalVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalBarrelVis" ref="AnlViolet" showDaughters="false" visible="true" /> <vis name="HcalBarrelVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalBarrelStaveVis" ref="AnlViolet" showDaughters="false" visible="true" /> <vis name="HcalBarrelStaveVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="HcalEndcapVis" ref="AnlProcess_Blue" showDaughters="false" visible="true" /> <vis name="HcalBarrelLayerVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalSensorVis" ref="AnlProcess_Blue" showDaughters="false" visible="false" /> <vis name="HcalEndcapVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="HcalAbsorberVis" ref="AnlProcess_Blue" showDaughters="false" visible="false" /> <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> <comment>
Solenoid Solenoid
</comment> </comment>
...@@ -57,43 +100,65 @@ ...@@ -57,43 +100,65 @@
<comment> <comment>
PID Detectors PID Detectors
</comment> </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> <comment>
Beam line PID visualization
</comment> </comment>
<vis name="BeamPipeVis" ref="AnlLight_Gray" showDaughters="true" visible="true"/>
<vis name="DRICH_vessel_vis" ref="AnlGray" 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="DRICH_gas_vis" ref="AnlLightGray" alpha="0.2" 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="DRICH_aerogel_vis" ref="AnlTeal" 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="DRICH_filter_vis" alpha="1.0" r="1.0" g="1.0" b="0.0" 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="DRICH_mirror_vis" ref="AnlGray" 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="DRICH_sensor_vis" ref="AnlGreen" 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="PFRICH_sensor_vis" ref="AnlGreen" 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="MRICH_aerogel_vis" ref="AnlTeal" 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="MRICH_frame_vis" ref="AnlGold" 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="MRICH_lens_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="MRICH_mirror_vis" ref="AnlGray" 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="RICHServiceVis" ref="AnlGray" showDaughters="true" visible="true" />
<comment> <comment>
Deprecated colors. Deprecated values used for IP6 vis
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"/
</comment> </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> </display>
<display>
<comment>
See compact/colors.xml for list of colors.
</comment>
<vis name="InvisibleNoDaughters" showDaughters="false" visible="false"/>
<vis name="InvisibleWithDaughters" showDaughters="true" visible="false"/>
<comment>
Tracking Visualizations
</comment>
<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> 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" 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="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="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
</comment>
<vis name="SolenoidCoilVis" ref="AnlLight_Gray" 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" />
<comment>
PID Detectors
</comment>
<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>
PID visualization
</comment>
<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" /> <!-- 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
</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>
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<lccdd> <lccdd>
<define> <define>
<!-- TODO [low priority]: some of these, viz. radii, could be parameterized <!-- vessel (=snout+tank) geometry -->
with respect to other variables; for now they are hard coded in case <constant name="DRICH_zmin" value="ForwardRICHRegion_zmin"/> <!-- vessel front -->
other detectors' parameters are changing --> <constant name="DRICH_Length" value="ForwardRICHRegion_length"/> <!-- overall vessel length (including snout) -->
<!-- parameters for re-scaling fun4all design to ATHENA --> <constant name="DRICH_rmin0" value="ForwardRICHRegion_zmin * ForwardRICHRegion_tan1"/> <!-- bore radius at dRICh vessel frontplane -->
<constant name="DRICH_scale" value="0.963"/> <!-- overall scale factor from fun4all to ATHENA --> <constant name="DRICH_rmin1" value="(ForwardRICHRegion_zmin + ForwardRICHRegion_length) * ForwardRICHRegion_tan2"/> <!-- bore radius at dRICh vessel backplane -->
<constant name="DRICH_f4a_length" value="161.0*cm"/> <!-- z-length of fun4all design --> <constant name="DRICH_wall_thickness" value="0.5*cm"/> <!-- thickness of radial walls -->
<!-- vessel (=snout+tank) geometry --> <constant name="DRICH_window_thickness" value="0.1*cm"/> <!-- thickness of entrance and exit walls -->
<constant name="DRICH_zmin" value="BarrelTracking_length/2.0 + ForwardTracking_length "/> <!-- vessel front --> <!-- tank geometry: cylinder, holding the majority of detector components -->
<constant name="DRICH_Length" value="ForwardPID_length"/> <!-- overall vessel length (including snout) --> <constant name="DRICH_rmax2" value="HcalBarrel_rmin-10*cm"/> <!-- cylinder radius, near maximal to fit HCal barrel inner polygon -->
<constant name="DRICH_rmin0" value="ForwardPID_rmin1"/> <!-- bore radius at dRICh vessel frontplane --> <!-- snout geometry: cone with front radius rmax0 and back radius of rmax1 -->
<constant name="DRICH_rmin1" value="19.0*cm"/> <!-- bore radius at dRICh vessel backplane --> <constant name="DRICH_SnoutLength" value="4.0*cm"/>
<constant name="DRICH_wall_thickness" value="0.5*cm"/> <!-- thickness of radial walls --> <constant name="DRICH_SnoutSlope" value="DRICH_rmax2 / (DRICH_zmin + DRICH_Length)"/>
<constant name="DRICH_window_thickness" value="0.1*cm"/> <!-- thickness of entrance and exit walls --> <constant name="DRICH_rmax0" value="DRICH_SnoutSlope * DRICH_zmin"/>
<!-- snout geometry: cone with front radius rmax0 and back radius of rmax1 --> <constant name="DRICH_rmax1" value="DRICH_SnoutSlope * ( DRICH_zmin + DRICH_SnoutLength)"/>
<constant name="DRICH_SnoutLength" value="50.0*cm"/> <!-- additional parameters -->
<constant name="DRICH_rmax0" value="110.0*cm"/> <constant name="DRICH_aerogel_thickness" value="4.0*cm"/> <!-- aerogel thickness -->
<constant name="DRICH_rmax1" value="125.0*cm"/> <constant name="DRICH_sensor_size" value="48.0*mm"/> <!-- sensor side length -->
<!-- tank geometry: cylinder, holding the majority of detector components --> <constant name="DRICH_sensor_thickness" value="35.0*mm"/> <!-- sensor thickness -->
<constant name="DRICH_rmax2" value="200*cm"/> <!-- cylinder radius; 20 cm gap between dRICh and HCalBarrel --> <constant name="DRICH_num_px" value="16"/> <!-- number of pixels along one side of the sensor -->
<!-- additional parameters --> <!-- debugging switches -->
<constant name="DRICH_aerogel_thickness" value="4.0*cm"/> <!-- aerogel thickness --> <comment>
<constant name="DRICH_sensor_size" value="48.0*mm"/> <!-- sensor side length --> - `DRICH_debug_optics`: 1 = all components become vacuum, except for mirrors; test opticalphotons from IP
<constant name="DRICH_sensor_thickness" value="35.0*mm"/> <!-- sensor thickness --> 2 = all components become vacuum, except for mirrors and `gasvol`, test charged particles from IP
<constant name="DRICH_num_px" value="16"/> <!-- number of pixels along one side of the sensor --> 0 = off
</define> - `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
<detectors> </comment>
<constant name="DRICH_debug_optics" value="0"/>
<detector <constant name="DRICH_debug_mirror" value="0"/>
id="ForwardRICH_ID" <constant name="DRICH_debug_sensors" value="0"/>
name="DRICH" </define>
type="athena_DRICH"
readout="DRICHHits"
gas="C2F6_DRICH" <detectors>
material="Aluminum"
vis_vessel="DRICH_vessel_vis"
vis_gas="DRICH_gas_vis" <!-- /detectors/detector -->
> <documentation level="10">
### dRICh: ***d***ual ***R***ing ***I***maging ***Ch***erenkov detector
<!-- envelope dimensions (see above) </documentation>
- `wall_thickness`: thickness of radial walls <detector
- `window_thickness`: thickness of entrance and exit disks id="ForwardRICH_ID"
--> name="DRICH"
<dimensions type="athena_DRICH"
z0="DRICH_zmin" readout="DRICHHits"
length="DRICH_Length" gas="C2F6_DRICH"
snout_length="DRICH_SnoutLength" material="Aluminum"
rmin0="DRICH_rmin0" vis_vessel="DRICH_vessel_vis"
rmin1="DRICH_rmin1" vis_gas="DRICH_gas_vis"
rmax0="DRICH_rmax0" debug_optics="DRICH_debug_optics"
rmax1="DRICH_rmax1" >
rmax2="DRICH_rmax2"
nsectors="6"
wall_thickness="DRICH_wall_thickness" <!-- /detectors/detector/dimensions -->
window_thickness="DRICH_window_thickness" <documentation level="10">
/> #### Vessel
- the dRICh vessel is composed of two parts:
<!-- radiator defined in a wedge of azimuthal space - tank: cylindrical region containing most of the detector components
- `phiw` is phi width of wedge - snout: conical region at the front of the vessel, containing the aerogel
- `thickness` defined separately for aerogel and filter - dimensions:
- `frontplane` is the front of the aerogel, w.r.t. front plane of vessel envelope - `zmin`: z-position of vessel front plane
- `pitch` controls the angle of the radiator (0=vertical) - `length`: overall z-length of the full vessel
- filter is applied to backplane of aerogel - `snout_length`: length of cone-shaped snout region, housing aerogel
--> - `rmin0` and `rmin1`: bore radius at front plane and back plane, respectively
<radiator - `rmax0` and `rmax1`: outer radius of snout at front plane and snout-back (tank-front) plane, respectively
rmin="DRICH_rmin0 + DRICH_wall_thickness + 2.0*cm" - `rmax2`: outer radius of tank, the main cylindrical vessel volume
rmax="DRICH_rmax0 - DRICH_wall_thickness - 2.0*cm" - `nsectors`: number of azimuthal sectors
phiw="56*degree" - `wall_thickness`: thickness of radial walls
frontplane="DRICH_window_thickness + 0.5*DRICH_aerogel_thickness" - `window_thickness`: thickness of entrance and exit disks
pitch="0*degree" </documentation>
> <dimensions
<aerogel zmin="DRICH_zmin"
material="Aerogel_DRICH" length="DRICH_Length"
vis="DRICH_aerogel_vis" snout_length="DRICH_SnoutLength"
thickness="DRICH_aerogel_thickness" rmin0="DRICH_rmin0"
/> rmin1="DRICH_rmin1"
<filter rmax0="DRICH_rmax0"
material="Acrylic_DRICH" rmax1="DRICH_rmax1"
vis="DRICH_filter_vis" rmax2="DRICH_rmax2"
thickness="0.3*mm" nsectors="6"
/> wall_thickness="DRICH_wall_thickness"
</radiator> window_thickness="DRICH_window_thickness"
/>
<!-- spherical mirror is part of a sphere
- `rmin` and `rmax` provide polar angle boundaries <!-- /detectors/detector/radiator -->
- `phiw` is the azimuthal width <documentation level="10">
- `radius` is the radius of the sphere #### Radiator
- `centerx` is the transverse position of the center - radiator is defined in a wedge of azimuthal space, composed of aerogel and a
of the sphere, for the sector on the +x axis filter; the filter is applied to the back of the aerogel, so that it separates
- the back of the mirror will pass through `backplane` the aerogel and gas radiators
- set `debug` to 1 so draw reference sphere instead, view with y-clipping - dimensions:
--> - `frontplane`: front of the aerogel, w.r.t. front plane of the vessel envelope
<mirror - `rmin` and `rmax`: inner and outer radius (at the front plane; radial bounds are conical)
material="Acrylic_DRICH" - `phiw`: azimuthal width of wedge
surface="MirrorSurface_DRICH" - `thickness`: radiator thickness, defined separately for aerogel and filter
vis="DRICH_mirror_vis" - `pitch`: controls the angle of the radiator (0=vertical)
backplane="DRICH_Length-2.0*cm" </documentation>
thickness="0.2*cm" <radiator
radius="290*DRICH_scale*cm" rmin="DRICH_rmin0 + DRICH_wall_thickness + 0.2*cm"
centerx="145*DRICH_scale*cm" rmax="DRICH_rmax0 - DRICH_wall_thickness - 0.2*cm"
rmin="DRICH_rmin1 + DRICH_wall_thickness + 0.0*cm" phiw="60*degree"
rmax="DRICH_rmax2 - DRICH_wall_thickness - 2.0*cm" frontplane="DRICH_window_thickness + 0.5*DRICH_aerogel_thickness"
phiw="54*degree" pitch="0*degree"
debug="0" >
/> <aerogel
material="Aerogel_DRICH"
<sensors> vis="DRICH_aerogel_vis"
<!-- geometry for a single square sensor thickness="DRICH_aerogel_thickness"
- based on Hamamatsu H13700 MAPMT />
(https://www.hamamatsu.com/us/en/product/type/H13700/index.html) <filter
- N.B. not ideal for a magnetic field, SiPM matrix would be better material="Acrylic_DRICH"
- effective area: 48.5x48.5mm vis="DRICH_filter_vis"
- enclosure size: 52x52mm thickness="0.3*mm"
- 16x16 channel matrix (see readout segmentation below) />
- pixel size: 3x3mm </radiator>
- `side` is the side length of the square
- `thickness` is the depth of the sensor
- `gap` provides room between the squares, to help <!-- /detectors/detector/mirror -->
prevent them from overlapping <documentation level="10">
- the value of `side` will determine how many sensors there are, #### Spherical mirror
since the sensor placement algorithm will try to place as many - spherical mirrors are built from spherical patches, and positioned near the
as it can in the specified patch below vessel back plane, separately for each sector
--> - dimensions:
<module - `backplane`: the position of the maximum z-plane intersected by the sphere,
material="Silicon" w.r.t. the back plane of vessel envelope
surface="SensorSurface_DRICH" - `rmin` and `rmax`: polar angle boundaries
vis="DRICH_sensor_vis" - `phiw`: azimuthal width of one sector
side="DRICH_sensor_size" - `thickness` is the radial thickness of the mirror; note that `backplane` is given for the
thickness="DRICH_sensor_thickness" reflective mirror surface, the inner radius of the sphere
gap="0.5*(52-48)*mm + 2*mm" - `focus_tune*` are tuning parameters for the focal region:
/> - `focus_tune_z` and `focus_tune_x` will move the focal region, with respect
<!-- sensors will be tiled on this sphere to the sensor sphere center (i.e., set both to zero for focus at the sensor sphere center
- `center{x,y,z} is defined for sector on +x axis, defined w.r.t. snout frontplane, (ignoring spherical aberrations effects))
and `radius` is the sphere radius; the first term of each of these comes from - other settings:
the fun4all design - `debug`: set to 1 so draw reference sphere instead, view with y-clipping
- these attributes were determined from a spherical fit to the </documentation>
sensor placement in the fun4all port <mirror
- set `debug` to 1 so draw reference sphere instead, view with y-clipping material="Acrylic_DRICH"
--> surface="MirrorSurface_DRICH"
<sphere vis="DRICH_mirror_vis"
radius="159.76*DRICH_scale*cm" backplane="DRICH_window_thickness + 1.0*cm"
centerx="144.91*DRICH_scale*cm" rmin="DRICH_rmin1 + DRICH_wall_thickness - 1.0*cm"
centery="0*DRICH_scale*cm" rmax="DRICH_rmax2 - DRICH_wall_thickness - 1.0*cm"
centerz="-197.25*DRICH_scale*cm + DRICH_Length - 0.5*DRICH_scale*DRICH_f4a_length" phiw="59.5*degree"
debug="0" thickness="0.2*cm"
/> focus_tune_x="30.0*cm"
<!-- sensors will be limited to a patch of the sphere focus_tune_z="-40.0*cm"
- `thetamin` and `thetamax` define pseudorapidity coverage debug="DRICH_debug_mirror"
- `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 <!-- /detectors/detector/sensors -->
--> <documentation level="10">
<sphericalpatch #### Sensors
thetamin="-10*degree" </documentation>
thetamax="22*degree" <sensors>
widthfactor="1.8"
taper="56*degree"
/> <!-- /detectors/detector/sensors/module -->
</sensors> <documentation level="10">
##### Sensor module
</detector> - based on [Hamamatsu H13700 MAPMT](https://www.hamamatsu.com/us/en/product/type/H13700/index.html):
</detectors> - not ideal for a magnetic field, SiPM matrix would be better
- effective area: 48.5x48.5 mm
<readouts> - enclosure size: 52x52 mm
<readout name="DRICHHits"> - 16x16 channel matrix (cf. readout segmentation below)
<!-- segmentation: square matrix of pixels - pixel size: 3x3 mm
- note: for `grid_size`, divide sensor size by 1 less than the - dimensions:
number of pixels, to account for fenceposting - `side`: side length of the square module
--> - `thickness`: thickness of the sensor module
<segmentation - `gap`: provides room between the squares, to help prevent them from overlapping
type="CartesianGridXY" - note: the value of `side` will determine how many sensors there are, since the
grid_size_x="DRICH_sensor_size/(DRICH_num_px-1)" sensor placement algorithm will try to place as many as it can in the specified
grid_size_y="DRICH_sensor_size/(DRICH_num_px-1)" spherical patch below
offset_x="-DRICH_sensor_size/2.0" </documentation>
offset_y="-DRICH_sensor_size/2.0" <module
/> material="Silicon"
<!-- cellID: 64bits surface="SensorSurface_DRICH"
- offset 0, length 8: dRICh ID vis="DRICH_sensor_vis"
- offset 8, length 3: sector number side="DRICH_sensor_size"
- offset 11, length 12: photosensor number thickness="DRICH_sensor_thickness"
- offset 23, length 16: x pixel gap="0.5*(52-48)*mm + 2*mm"
- offset 39, length 16: y pixel />
-->
<id>system:8,sector:3,module:12,x:23:16,y:16</id>
</readout> <!-- /detectors/detector/sensors/{sphere,sphericalpatch} -->
</readouts> <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> </lccdd>
...@@ -8,13 +8,11 @@ ...@@ -8,13 +8,11 @@
<documentation level="10"> <documentation level="10">
### Ecal configuration ### Ecal configuration
</documentation> </documentation>
<include ref="ci_ecal.xml"/> <!--include ref="ecal_forward_scfi.xml"/-->
<!--<include ref="compact/ci_ecal_shashlik.xml"/>--> <include ref="ecal_forward_homogenous.xml"/>
<!--<include ref="compact/ce_ecal.xml"/>-->
<!-- <include ref="ce_ecal_crystal_glass.xml"/>--> <include ref="ecal_backward_hybrid.xml"/>
<include ref="hybrid_ecal.xml"/>
<!-- <include ref="compact/ecal_barrel.xml"/> -->
<!-- <include ref="compact/ecal_barrel_hybrid.xml"/> -->
<include ref="ecal_barrel_interlayers.xml"/> <include ref="ecal_barrel_interlayers.xml"/>
</lccdd> </lccdd>
......
...@@ -27,13 +27,15 @@ ...@@ -27,13 +27,15 @@
<constant name="CrystalModule_width" value="20.00*mm"/> <constant name="CrystalModule_width" value="20.00*mm"/>
<constant name="CrystalModule_length" value="200.00*mm"/> <constant name="CrystalModule_length" value="200.00*mm"/>
<constant name="CrystalModule_wrap" value="0.50*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_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_wrap" value="2*CrystalModule_wrap"/>
<constant name="GlassModule_z0" value="0.0*cm"/> <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_thickness" value="GlassModule_length"/>
<constant name="EcalEndcapN_z0" value="-EcalEndcapN_zmin - EcalEndcapN_thickness/2"/> <constant name="EcalEndcapN_z0" value="-EcalEndcapN_zmin - EcalEndcapN_thickness/2"/>
<constant name="EcalEndcapNCrystal_rmax" value="40*cm"/> <constant name="EcalEndcapNCrystal_rmax" value="40*cm"/>
......
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
<constant name="EcalBarrel_ModRepeat" value="CaloSides"/> <constant name="EcalBarrel_ModRepeat" value="CaloSides"/>
<constant name="EcalBarrel_ModLength" value="0.5*m"/> <constant name="EcalBarrel_ModLength" value="0.5*m"/>
<constant name="EcalBarrel_ModWidth" 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" <constant name="EcalBarrel_ReadoutLayerThickness"
value="EcalBarrel_SiliconThickness value="EcalBarrel_SiliconThickness
+ EcalBarrel_ElectronicsThickness + EcalBarrel_ElectronicsThickness
......
...@@ -8,6 +8,12 @@ ...@@ -8,6 +8,12 @@
EM Calorimeter Parameters with AstroPix EM Calorimeter Parameters with AstroPix
--------------------------------------- ---------------------------------------
</comment> </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_Support_thickness" value="5*cm"/>
<constant name="EcalBarrel_SiliconThickness" value="500*um"/> <constant name="EcalBarrel_SiliconThickness" value="500*um"/>
<constant name="EcalBarrel_ElectronicsThickness" value="150*um"/> <constant name="EcalBarrel_ElectronicsThickness" value="150*um"/>
...@@ -21,7 +27,6 @@ ...@@ -21,7 +27,6 @@
<constant name="EcalBarrel_FiberXSpacing" value="1.34*mm"/> <constant name="EcalBarrel_FiberXSpacing" value="1.34*mm"/>
<constant name="EcalBarrel_FiberZSpacing" value="1.22*mm"/> <constant name="EcalBarrel_FiberZSpacing" value="1.22*mm"/>
<constant name="EcalBarrel_SpaceBetween" value="0.1*mm"/> <constant name="EcalBarrel_SpaceBetween" value="0.1*mm"/>
<constant name="EcalBarrel_FiberChunkLayers_num" value = "15"/>
<comment> <comment>
For Pb/SiFi (GlueX): X0 ~ 1.45 cm For Pb/SiFi (GlueX): X0 ~ 1.45 cm
For W/SiFi (sPHENIX): X0 ~ 0.7 cm (but different fiber orientation) For W/SiFi (sPHENIX): X0 ~ 0.7 cm (but different fiber orientation)
...@@ -30,7 +35,8 @@ ...@@ -30,7 +35,8 @@
<constant name="EcalBarrel_ModRepeat" value="CaloSides"/> <constant name="EcalBarrel_ModRepeat" value="CaloSides"/>
<constant name="EcalBarrel_ModLength" value="0.5*m"/> <constant name="EcalBarrel_ModLength" value="0.5*m"/>
<constant name="EcalBarrel_ModWidth" 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" <constant name="EcalBarrel_ImagingLayerThickness"
value="EcalBarrel_SiliconThickness value="EcalBarrel_SiliconThickness
+ EcalBarrel_ElectronicsThickness + EcalBarrel_ElectronicsThickness
...@@ -43,16 +49,27 @@ ...@@ -43,16 +49,27 @@
+ EcalBarrel_CarbonThickness + EcalBarrel_CarbonThickness
+ EcalBarrel_LayerSpacing"/> + EcalBarrel_LayerSpacing"/>
<constant name="EcalBarrelImagingLayers_nMax" value="6"/>
<constant name="EcalBarrelImagingLayers_num" <constant name="EcalBarrelImagingLayers_num"
value="min(EcalBarrelImagingLayers_nMax, value="min(EcalBarrelImagingLayers_nMax,
floor(EcalBarrel_AvailThickness/ floor((EcalBarrel_AvailThickness-EcalBarrel_ImagingLayerThickness)/
(EcalBarrel_ImagingLayerThickness+EcalBarrel_RadiatorThickness+EcalBarrel_SpaceBetween)))"/> (EcalBarrel_ImagingLayerThickness + EcalBarrel_ScFiLayerThickness +
<constant name="EcalBarrel_FiberLayerThickness_max" EcalBarrel_SpaceBetween)))"/>
value="max(0, EcalBarrel_AvailThickness- <comment>
(EcalBarrelImagingLayers_num*EcalBarrel_ImagingLayerThickness))"/> Adjusting size of the ScFi back chunk to match number of imiaging layers
<constant name="EcalBarrel_FiberLayerThickness" and 20 radiation lengths in total
value="min(EcalBarrel_FiberLayerThickness_max, EcalBarrel_FiberZSpacing*13*15)"/> </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> </define>
<limits> <limits>
...@@ -134,7 +151,7 @@ ...@@ -134,7 +151,7 @@
<layer repeat="EcalBarrel_FiberChunkLayers_num" vis="EcalBarrelLayerVis" <layer repeat="EcalBarrel_FiberChunkLayers_num" vis="EcalBarrelLayerVis"
space_before="EcalBarrel_ImagingLayerThickness + EcalBarrel_SpaceBetween"> space_before="EcalBarrel_ImagingLayerThickness + EcalBarrel_SpaceBetween">
<slice material="Lead" <slice material="Lead"
thickness="EcalBarrel_FiberLayerThickness/EcalBarrel_FiberChunkLayers_num" thickness="EcalBarrel_ScFiPartThickness/EcalBarrel_FiberChunkLayers_num"
vis="EcalBarrelFiberLayerVis"> vis="EcalBarrelFiberLayerVis">
<fiber material="PlasticScint" <fiber material="PlasticScint"
sensitive="yes" 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>
<define>
<constant name="DIRCModule_count" value="CaloSides" />
<constant name="DIRCBar_thickness" value="17*mm" />
<constant name="DIRCBar_length" value="DIRC_length-8*cm" />
<constant name="DIRCSkinFront_thickness" value="2.5*mm" />
<constant name="DIRCSkinBack_thickness" value="2.5*mm" />
<constant name="DIRCFrame_width" value="20*mm"/>
<constant name="DIRCFrame_length" value="DIRC_length"/>
<constant name="DIRCFrame_thickness" value="40*mm"/>
<constant name="DIRCModule_rmax" value="DIRC_rmin + DIRCBar_thickness + DIRCSkinFront_thickness + DIRCSkinBack_thickness"/>
<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_width" value="2*DIRC_rmin * tan(DIRCModule_halfangle)"/>
<constant name="DIRCModule_rmin" value="DIRC_rmin + 1*cm"/>
</define>
<materials>
</materials>
<limits>
</limits>
<regions>
</regions>
<display>
</display>
<detectors>
<detector id="BarrelDIRC_ID" name="FakeDIRC" type="athena_FakeDIRC" readout="DIRCBarHits" vis="DIRCVis">
<dimensions rmin="DIRC_rmin" rmax="DIRC_rmax" length="DIRC_length" />
<position x="0" y="0" z="DIRC_offset" />
<comment> Fake DIRC modules </comment>
<module name="DIRCModule" vis="DIRCModuleVis">
<module_component name="FrontSkin"
material="CarbonFiber"
sensitive="false"
width="DIRCModule_width"
thickness="DIRCSkinFront_thickness"
vis="DIRCSupportVis"
length="DIRCBar_length" />
<module_component name="QuartzBar"
material="Quartz"
sensitive="true"
width="DIRCModule_width"
thickness="DIRCBar_thickness"
vis="DIRCBarVis"
length="DIRCBar_length" />
<module_component name="BackSkin"
material="CarbonFiber"
sensitive="false"
width="DIRCModule_width"
thickness="DIRCSkinBack_thickness"
vis="DIRCSupportVis"
length="DIRCBar_length" />
<frame material="StainlessSteel"
width="DIRCFrame_width"
length="DIRCFrame_length"
vis="DIRCFrameVis"
thickness="DIRCFrame_thickness" />
</module>
<comment> Fake DIRC layers </comment>
<layer module="DIRCModule" id="1" vis="DIRCLayerVis">
<barrel_envelope
inner_r="DIRC_rmin"
outer_r="DIRC_rmax"
z_length="DIRC_length" />
<rphi_layout
phi_tilt="0"
nphi="DIRCModule_count"
phi0="0"
rc="0.5*(DIRCModule_rmin+DIRCModule_rmax)"
dr="0" />
<z_layout
dr="0.0*mm"
z0="0.0*mm"
nz="1" />
</layer>
</detector>
</detectors>
<readouts>
<readout name="DIRCBarHits">
<segmentation type="CartesianGridXY" grid_size_x="3.0*mm" grid_size_y="3.0*mm" />
<id>system:8,layer:4,module:8,section:4,x:32:-16,y:-16</id>
</readout>
</readouts>
<plugins>
</plugins>
<fields>
</fields>
</lccdd>
<lccdd> <lccdd>
<comment> Endcap Tracker </comment> <comment> Endcap Tracker for Acadia </comment>
<define> <define>
<constant name="GEMTrackerEndcapP_thickness" value="min(10.0*cm,ForwardTracking_length)" /> <constant name="GEMTrackerEndcapP_thickness" value="min(10.0*cm,ForwardTrackingRegion_length)" />
<constant name="GEMTrackerEndcapN_thickness" value="min(10.0*cm,BackwardTracking_length)" /> <constant name="GEMTrackerEndcapN_thickness" value="min(10.0*cm,BackwardTrackingRegion_length)" />
<constant name="GEMTrackerEndcapP_zmin" value="EcalEndcapP_zmin - GEMTrackerEndcapP_thickness"/> <constant name="GEMTrackerEndcapP_zmin" value="ForwardTrackingRegion_zmin"/>
<constant name="GEMTrackerEndcapN_zmin" value="EcalEndcapN_zmin - GEMTrackerEndcapN_thickness"/> <constant name="GEMTrackerEndcapN_zmin" value="BackwardTrackingRegion_zmin"/>
<constant name="GEMTrackerEndcapP_rmin" value="19*cm" /> <constant name="GEMTrackerEndcapP_rmin" value="19*cm" />
<constant name="GEMTrackerEndcapN_rmin" value="15*cm" /> <constant name="GEMTrackerEndcapN_rmin" value="10*cm" />
<constant name="GEMTrackerEndcapP_rmax" value="Solenoid_rmax - 0.5*cm" /> <constant name="GEMTrackerEndcapP_rmax" value="200*cm" />
<constant name="GEMTrackerEndcapN_rmax" value="TrackerBarrel_rmax - 0.5*cm" /> <constant name="GEMTrackerEndcapN_rmax" value="BackwardPIDRegion_rmax" />
<constant name="GEMTrackerEndcapOpeningAngle" value="30.4*degree"/> <constant name="GEMTrackerEndcapOpeningAngle" value="30.4*degree"/>
<constant name="GEMTrackerEndcap_dz" value="15*mm" /> <constant name="GEMTrackerEndcap_dz" value="15*mm" />
<comment> <comment>
...@@ -87,11 +87,11 @@ ...@@ -87,11 +87,11 @@
<detectors> <detectors>
<detector <detector
id="GEMTrackerEndcapP_ID" id="TrackerEndcapP_3_ID"
name="GEMTrackerEndcapP" name="GEMTrackerEndcapP"
type="athena_GEMTrackerEndcap" type="athena_GEMTrackerEndcap"
readout="GEMTrackerEndcapHits" readout="GEMTrackerEndcapHits"
vis="AnlRed" vis="TrackerVis"
reflect="false"> reflect="false">
<module name="GEMModule1" vis="TrackerLayerVis"> <module name="GEMModule1" vis="TrackerLayerVis">
<trd x1="GEMTrackerEndcapP_x1/2.0" x2="GEMTrackerEndcapP_x2/2.0" z="GEMTrackerEndcapP_y/2"/> <trd x1="GEMTrackerEndcapP_x1/2.0" x2="GEMTrackerEndcapP_x2/2.0" z="GEMTrackerEndcapP_y/2"/>
...@@ -133,12 +133,13 @@ ...@@ -133,12 +133,13 @@
<module_component thickness="1.0*mm" material="Mylar" vis="TrackerSupportVis"/> <module_component thickness="1.0*mm" material="Mylar" vis="TrackerSupportVis"/>
</module> </module>
<layer id="1" > <layer id="1" >
<envelope vis="AnlRed" <envelope vis="TrackerVis"
rmin = "GEMTrackerEndcapP_rmin" rmin = "GEMTrackerEndcapP_rmin"
rmax = "GEMTrackerEndcapP_rmax" rmax = "GEMTrackerEndcapP_rmax"
length="GEMTrackerEndcapP_thickness" length="GEMTrackerEndcapP_thickness"
zstart="GEMTrackerEndcapP_zmin" /> zstart="GEMTrackerEndcapP_zmin" />
<ring vis="AnlRed" module="GEMModule1" <layer_material surface="representing" binning="binPhi,binR" bins0="40*12" bins1="1024"/>
<ring vis="TrackerVis" module="GEMModule1"
r="GEMTrackerEndcapP_rmin+GEMTrackerEndcapP_y/2.0" r="GEMTrackerEndcapP_rmin+GEMTrackerEndcapP_y/2.0"
zstart="0" zstart="0"
nmodules="12" dz="GEMTrackerEndcap_dz" /> nmodules="12" dz="GEMTrackerEndcap_dz" />
...@@ -150,11 +151,11 @@ ...@@ -150,11 +151,11 @@
</detector> </detector>
<detector <detector
id="GEMTrackerEndcapN_ID" id="TrackerEndcapN_3_ID"
name="GEMTrackerEndcapN" name="GEMTrackerEndcapN"
type="athena_GEMTrackerEndcap" type="athena_GEMTrackerEndcap"
readout="GEMTrackerEndcapHits" readout="GEMTrackerEndcapHits"
vis="AnlRed" vis="TrackerVis"
reflect="true"> reflect="true">
<module name="GEMModule1" vis="TrackerLayerVis"> <module name="GEMModule1" vis="TrackerLayerVis">
<trd x1="GEMTrackerEndcapN_x1/2.0" x2="GEMTrackerEndcapN_x2/2.0" z="GEMTrackerEndcapN_y/2"/> <trd x1="GEMTrackerEndcapN_x1/2.0" x2="GEMTrackerEndcapN_x2/2.0" z="GEMTrackerEndcapN_y/2"/>
...@@ -172,7 +173,7 @@ ...@@ -172,7 +173,7 @@
</frame> </frame>
</comment> </comment>
<comment> Going from HV side to readout side</comment> <comment> Going from HV side to readout side</comment>
<module_component thickness="25.0*um" material="Mylar" name="entrance_window"/> <module_component thickness="25.0*um" material="Mylar" name="entrance_window" vis="TrackerLayerVis"/>
<module_component thickness=" 2.0*mm" material="Ar10CO2" name="entrance_region" /> <module_component thickness=" 2.0*mm" material="Ar10CO2" name="entrance_region" />
<module_component thickness="50.0*um" material="Kapton" name="cathode_foil"/> <module_component thickness="50.0*um" material="Kapton" name="cathode_foil"/>
<module_component thickness=" 5.0*um" material="Copper" name="cathode_cu"/> <module_component thickness=" 5.0*um" material="Copper" name="cathode_cu"/>
...@@ -189,19 +190,20 @@ ...@@ -189,19 +190,20 @@
<module_component thickness="50.0*um" material="Kapton" name="readout_foil"/> <module_component thickness="50.0*um" material="Kapton" name="readout_foil"/>
<module_component thickness=" 5.0*um" material="Copper" name="readout_cu"/> <module_component thickness=" 5.0*um" material="Copper" name="readout_cu"/>
<module_component thickness=" 2.0*mm" material="Ar10CO2" name="exit_region"/> <module_component thickness=" 2.0*mm" material="Ar10CO2" name="exit_region"/>
<module_component thickness="25.0*um" material="Mylar" name="exit_window"/> <module_component thickness="25.0*um" material="Mylar" name="exit_window" vis="TrackerLayerVis"/>
</module> </module>
<module name="GEMSupportSpokes" vis="TrackerSupportVis"> <module name="GEMSupportSpokes" vis="TrackerSupportVis">
<trd x1="GEMTrackerEndcapFrameSideEdge_width" x2="GEMTrackerEndcapFrameSideEdge_width" z="GEMTrackerEndcapN_y/2"/> <trd x1="GEMTrackerEndcapFrameSideEdge_width" x2="GEMTrackerEndcapFrameSideEdge_width" z="GEMTrackerEndcapN_y/2"/>
<module_component thickness="1.0*mm" material="Mylar" vis="TrackerSupportVis"/> <module_component thickness="1.0*mm" material="Mylar" vis="TrackerSupportVis"/>
</module> </module>
<layer id="1" > <layer id="1" >
<envelope vis="AnlRed" <envelope vis="TrackerVis"
rmin = "GEMTrackerEndcapN_rmin" rmin = "GEMTrackerEndcapN_rmin"
rmax = "GEMTrackerEndcapN_rmax" rmax = "GEMTrackerEndcapN_rmax"
length="GEMTrackerEndcapN_thickness" length="GEMTrackerEndcapN_thickness"
zstart="GEMTrackerEndcapN_zmin" /> zstart="GEMTrackerEndcapN_zmin" />
<ring vis="AnlRed" module="GEMModule1" <layer_material surface="representing" binning="binPhi,binR" bins0="40*12" bins1="1024"/>
<ring vis="TrackerVis" module="GEMModule1"
r="GEMTrackerEndcapN_rmin+GEMTrackerEndcapN_y/2.0" r="GEMTrackerEndcapN_rmin+GEMTrackerEndcapN_y/2.0"
zstart="0.1" zstart="0.1"
nmodules="12" dz="GEMTrackerEndcap_dz" /> nmodules="12" dz="GEMTrackerEndcap_dz" />
...@@ -216,7 +218,7 @@ ...@@ -216,7 +218,7 @@
<readouts> <readouts>
<readout name="GEMTrackerEndcapHits"> <readout name="GEMTrackerEndcapHits">
<segmentation type="CartesianGridXZ" grid_size_x="50*um" grid_size_z="250*um" /> <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> </readout>
</readouts> </readouts>
......
<lccdd> <lccdd>
<define> <define>
<constant name="HcalBarrel_offset" value="(HcalEndcapP_zmin-HcalEndcapN_zmin)/2.0" /> <constant name="HcalBarrel_length" value="HcalBarrelForward_zmax + HcalBarrelBackward_zmax"/>
<constant name="HcalBarrel_offset" value="(HcalBarrelForward_zmax - HcalBarrelBackward_zmax)/2"/>
<constant name="HcalBarrelAvailThickness" value="HcalBarrel_thickness"/>
<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> </define>
<limits> <limits>
...@@ -21,6 +58,7 @@ ...@@ -21,6 +58,7 @@
name="HcalBarrel" name="HcalBarrel"
type="athena_EcalBarrel" type="athena_EcalBarrel"
readout="HcalBarrelHits" readout="HcalBarrelHits"
vis="HcalBarrelVis"
calorimeterType="HAD_BARREL" calorimeterType="HAD_BARREL"
offset="HcalBarrel_offset" offset="HcalBarrel_offset"
gap="0.*cm" gap="0.*cm"
...@@ -28,11 +66,11 @@ ...@@ -28,11 +66,11 @@
<dimensions <dimensions
numsides="CaloSides" numsides="CaloSides"
rmin="HcalBarrel_rmin" rmin="HcalBarrel_rmin"
z="HcalBarrelLength"/> z="HcalBarrel_length"/>
<staves vis="HcalBarrelVis"/> <staves vis="HcalBarrelStaveVis"/>
<layer repeat="HcalBarrelLayer_NRepeat"> <layer repeat="HcalBarrelLayer_NRepeat" vis="HcalBarrelLayerVis">
<slice material="Steel235" thickness="2.0*cm" vis="HcalAbsorberVis"/> <slice material="Steel235" thickness="HcalBarrelSteelThickness" vis="HcalAbsorberVis"/>
<slice material="Polystyrene" thickness="0.5*cm" vis="HcalSensorVis" sensitive="yes" limits="cal_limits"/> <slice material="Polystyrene" thickness="HcalBarrelPolystyreneThickness" vis="HcalSensorVis" sensitive="yes" limits="cal_limits"/>
</layer> </layer>
</detector> </detector>
...@@ -50,9 +88,27 @@ ...@@ -50,9 +88,27 @@
zmin="HcalEndcapP_zmin" zmin="HcalEndcapP_zmin"
rmin="HcalEndcapP_rmin" rmin="HcalEndcapP_rmin"
rmax="HcalBarrel_rmax"/> rmax="HcalBarrel_rmax"/>
<layer repeat="51" vis="HcalEndcapVis" > <layer repeat="HcalEndcapPLayer_NRepeat" vis="HcalEndcapLayerVis" >
<slice material="Steel235" thickness="2.0" vis="HcalAbsorberVis"/> <slice material="Steel235" thickness="HcalEndcapPSteelThickness" vis="HcalAbsorberVis"/>
<slice material="Polystyrene" thickness="0.3*cm" vis="HcalSensorVis" sensitive="yes" limits="cal_limits"/> <slice material="Polystyrene" thickness="HcalEndcapPPolystyreneThickness" vis="HcalSensorVis" sensitive="yes" limits="cal_limits"/>
</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> </layer>
</detector> </detector>
...@@ -69,9 +125,9 @@ ...@@ -69,9 +125,9 @@
zmin="HcalEndcapN_zmin" zmin="HcalEndcapN_zmin"
rmin="HcalEndcapN_rmin" rmin="HcalEndcapN_rmin"
rmax="HcalBarrel_rmax"/> rmax="HcalBarrel_rmax"/>
<layer repeat="HcalEndcapNLayer_NRepeat" vis="HcalEndcapVis" > <layer repeat="HcalEndcapNLayer_NRepeat" vis="HcalEndcapLayerVis" >
<slice material="Steel235" thickness="HcalSteelThickness" vis="HcalAbsorberVis"/> <slice material="Steel235" thickness="HcalEndcapNSteelThickness" vis="HcalAbsorberVis"/>
<slice material="Polystyrene" thickness="0.5*cm" vis="HcalSensorVis" sensitive="yes" limits="cal_limits"/> <slice material="Polystyrene" thickness="HcalEndcapNPolystyreneThickness" vis="HcalSensorVis" sensitive="yes" limits="cal_limits"/>
</layer> </layer>
</detector> </detector>
......
...@@ -97,6 +97,13 @@ ...@@ -97,6 +97,13 @@
<fraction n="0.040" ref="SodiumOxide"/> <fraction n="0.040" ref="SodiumOxide"/>
<fraction n="0.023" ref="AluminumOxide"/> <fraction n="0.023" ref="AluminumOxide"/>
</material> </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"> <material name="PbGlass">
<D type="density" value="3.86" unit="g / cm3"/> <D type="density" value="3.86" unit="g / cm3"/>
<fraction n="0.5080" ref="LeadOxide"/> <fraction n="0.5080" ref="LeadOxide"/>
...@@ -105,6 +112,42 @@ ...@@ -105,6 +112,42 @@
<fraction n="0.0278" ref="SodiumOxide"/> <fraction n="0.0278" ref="SodiumOxide"/>
<fraction n="0.0050" ref="ArsenicOxide"/> <fraction n="0.0050" ref="ArsenicOxide"/>
</material> </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"> <documentation level="3">
#### Carbon fiber #### Carbon fiber
a level 3 doc a level 3 doc
...@@ -180,6 +223,12 @@ ...@@ -180,6 +223,12 @@
<fraction n="0.044" ref="Ni"/> <fraction n="0.044" ref="Ni"/>
<fraction n="0.006" ref="Fe"/> <fraction n="0.006" ref="Fe"/>
</material> </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"> <material name="CarbonFiber_25percent">
<D type="density" value="0.375" unit="g / cm3"/> <D type="density" value="0.375" unit="g / cm3"/>
<fraction n="1.0" ref="CarbonFiber"/> <fraction n="1.0" ref="CarbonFiber"/>
...@@ -236,6 +285,12 @@ ...@@ -236,6 +285,12 @@
<fraction n="0.041960452" ref="H"/> <fraction n="0.041960452" ref="H"/>
<fraction n="0.33301847" ref="O"/> <fraction n="0.33301847" ref="O"/>
</material> </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"> <material name="Nomex">
<D type="density" value="0.029" unit="g/cm3" /> <D type="density" value="0.029" unit="g/cm3" />
<composite n="14" ref="C"/> <composite n="14" ref="C"/>
...@@ -298,4 +353,33 @@ ...@@ -298,4 +353,33 @@
<composite n="8" ref="C"/> <composite n="8" ref="C"/>
<composite n="8" ref="H"/> <composite n="8" ref="H"/>
</material> </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> </materials>
...@@ -2,9 +2,9 @@ ...@@ -2,9 +2,9 @@
<comment> MRICH </comment> <comment> MRICH </comment>
<define> <define>
<constant name="MRICH_rmin" value="10*cm"/> <constant name="MRICH_rmin" value="10*cm"/>
<constant name="MRICH_rmax" value="BackwardPID_rmax"/> <constant name="MRICH_rmax" value="BackwardPIDRegion_rmax"/>
<constant name="MRICH_length" value="BackwardPID_length"/> <constant name="MRICH_length" value="BackwardPIDRegion_length"/>
<constant name="MRICH_zmin" value="CentralTrackingHalfN_length"/> <constant name="MRICH_zmin" value="BackwardPIDRegion_zmin"/>
<constant name="MRICHAerogel_thickness" value="30.0*mm"/> <constant name="MRICHAerogel_thickness" value="30.0*mm"/>
<constant name="MRICHAerogel_width" value="126.5*mm"/> <constant name="MRICHAerogel_width" value="126.5*mm"/>
...@@ -15,10 +15,13 @@ ...@@ -15,10 +15,13 @@
<constant name="MRICHPhotoDet_thickness" value="1.5*mm"/> <constant name="MRICHPhotoDet_thickness" value="1.5*mm"/>
<constant name="MRICHPhotoDet_length" value="48.5*mm"/> <constant name="MRICHPhotoDet_length" value="48.5*mm"/>
<constant name="MRICHGlassWindow_width" value="103.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="MRICHPhotoDetCopper_thickness" value="0.1*mm"/>
<constant name="MRICHPhotoDetKapton_thickness" value="0.2*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="MRICHLensPhotoDet_length" value="136.4*mm"/>
<constant name="MRICHMirror_thickness" value="2.0*mm"/> <constant name="MRICHMirror_thickness" value="2.0*mm"/>
<constant name="MRICHMirror_length" value="MRICHLensPhotoDet_length - MRICHLensMirrorGap_thickness"/> <constant name="MRICHMirror_length" value="MRICHLensPhotoDet_length - MRICHLensMirrorGap_thickness"/>
...@@ -42,6 +45,9 @@ ...@@ -42,6 +45,9 @@
+ MRICHFresnelLens_thickness + MRICHFresnelLens_thickness
+ MRICHLensPhotoDet_length + MRICHLensPhotoDet_length
+ MRICHGlassPhotoDet_thickness + MRICHGlassPhotoDet_thickness
+ 2.0*MRICHPhotoDetMCPlate_thickness
+ MRICHPhotoDetAnode_thickness
+ MRICHPhotoDetPCB_thickness
+ MRICHPhotoDetCopper_thickness + MRICHPhotoDetCopper_thickness
+ MRICHPhotoDetKapton_thickness + MRICHPhotoDetKapton_thickness
+ MRICHRearExtraSpace_thickness "/> + MRICHRearExtraSpace_thickness "/>
...@@ -70,40 +76,46 @@ ...@@ -70,40 +76,46 @@
height="MRICHCarbonFrame_width" height="MRICHCarbonFrame_width"
length="MRICHCarbonFrame_length"> length="MRICHCarbonFrame_length">
<frame vis="AnlGray" thickness="MRICHCarbonFrame_thickness" material="CarbonFiber"/> <frame vis="AnlGray" thickness="MRICHCarbonFrame_thickness" material="CarbonFiber"/>
<aerogel vis="AnlTeal" <aerogel vis="MRICH_aerogel_vis"
length="MRICHAerogel_thickness" width="MRICHAerogel_width" length="MRICHAerogel_thickness"
width="MRICHAerogel_width"
material="AerogelOptical"> material="AerogelOptical">
<frame vis="AnlGold_1" thickness="MRICHFoam_thickness" material="PolystyreneFoam" /> <frame vis="MRICH_frame_vis" thickness="MRICHFoam_thickness" material="PolystyreneFoam" />
</aerogel> </aerogel>
<lens vis="AnlViolet" thickness="MRICHFresnelLens_thickness" <lens vis="MRICH_lens_vis" thickness="MRICHFresnelLens_thickness"
pitch="MRICHFresnelLensGroove_pitch" focal_length="6.0*inch" pitch="MRICHFresnelLensGroove_pitch" focal_length="6.0*inch"
effective_diameter="MRICHFresnelLensEffectiveDiameter" effective_diameter="MRICHFresnelLensEffectiveDiameter"
width="MRICHAerogel_width" width="MRICHAerogel_width"
material="AcrylicOptical"/> material="AcrylicOptical"/>
<mirror vis="AnlGray" <mirror vis="MRICH_mirror_vis"
x1="MRICHMirror_width1" x2="MRICHMirror_width2" length="MRICHMirror_length" x1="MRICHMirror_width1" x2="MRICHMirror_width2" length="MRICHMirror_length"
surface="MRICH_MirrorOpticalSurface" thickness="MRICHMirror_thickness" surface="MRICH_MirrorOpticalSurface" thickness="MRICHMirror_thickness"
material="AluminumOxide"/> material="AluminumOxide"/>
<photodet width="MRICHGlassWindow_width" thickness="MRICHGlassPhotoDet_thickness" material="PyrexGlassOptical"> <photodet width="MRICHGlassWindow_width" thickness="MRICHGlassPhotoDet_thickness" material="PyrexGlassOptical">
<sensor nx="2" ny="2" thickness="MRICHPhotoDet_thickness" width="MRICHPhotoDet_length" material="SiliconOxide"/> <sensor nx="2" ny="2" thickness="MRICHPhotoDet_thickness" width="MRICHPhotoDet_length" material="SiliconOxide"/>
<!--layer thickness="MRICHPhotoDetCopper_thickness" material="Copper"/--> <layer thickness="MRICHPhotoDetMCPlate_thickness" material="PyrexGlass"/> <!-- FIXME: should be PyrexGlass25 with 1.2*mm thickness -->
<!--layer thickness="MRICHPhotoDetKapton_thickness" material="Kapton"/--> <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> </photodet>
</module> </module>
<comment> <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> </comment>
<positions scale="1.03"> <positions scale="1.03" z0="157.5*cm">
<position x="-41.3250000000" y="178.6750000000"/> <position x="-41.3250000000" y="178.6750000000"/>
<position x=" 96.0250000001" y="178.6750000000"/> <position x=" 96.0250000001" y="178.6750000000"/>
</positions> </positions>
<positions scale="1.036"> <positions scale="1.036" z0="157.5*cm">
<position x="-41.3250000000" y="316.0250000001"/> <position x="-41.3250000000" y="316.0250000001"/>
<position x=" 96.0250000001" y="316.0250000001"/> <position x=" 96.0250000001" y="316.0250000001"/>
<position x="233.3750000002" y="178.6750000000"/> <position x="233.3750000002" y="178.6750000000"/>
<position x="233.3750000002" y="316.0250000001"/> <position x="233.3750000002" y="316.0250000001"/>
</positions> </positions>
<positions scale="1.052"> <positions scale="1.052" z0="157.5*cm">
<position x="-41.3250000000" y="453.3750000002"/> <position x="-41.3250000000" y="453.3750000002"/>
<position x=" 96.0250000001" y="453.3750000002"/> <position x=" 96.0250000001" y="453.3750000002"/>
<position x="233.3750000002" y="453.3750000002"/> <position x="233.3750000002" y="453.3750000002"/>
...@@ -111,7 +123,7 @@ ...@@ -111,7 +123,7 @@
<position x="370.7250000003" y="316.0250000001"/> <position x="370.7250000003" y="316.0250000001"/>
<position x="370.7250000003" y="178.6750000000"/> <position x="370.7250000003" y="178.6750000000"/>
</positions> </positions>
<positions scale="1.078"> <positions scale="1.078" z0="157.5*cm">
<position x="-41.3250000000" y="590.7250000003"/> <position x="-41.3250000000" y="590.7250000003"/>
<position x=" 96.0250000001" y="590.7250000003"/> <position x=" 96.0250000001" y="590.7250000003"/>
<position x="233.3750000002" y="590.7250000003"/> <position x="233.3750000002" y="590.7250000003"/>
...@@ -121,7 +133,7 @@ ...@@ -121,7 +133,7 @@
<position x="508.0750000004" y="316.0250000001"/> <position x="508.0750000004" y="316.0250000001"/>
<position x="508.0750000004" y="453.3750000002"/> <position x="508.0750000004" y="453.3750000002"/>
</positions> </positions>
<positions scale="1.09"> <positions scale="1.09" z0="157.5*cm">
<position x="-41.3250000000" y="728.0750000004"/> <position x="-41.3250000000" y="728.0750000004"/>
<position x=" 96.0250000001" y="728.0750000004"/> <position x=" 96.0250000001" y="728.0750000004"/>
<!--position x="233.3750000002" y="728.0750000004"/--> <!--position x="233.3750000002" y="728.0750000004"/-->
...@@ -132,7 +144,7 @@ ...@@ -132,7 +144,7 @@
<position x="645.4250000005" y="316.0250000001"/> <position x="645.4250000005" y="316.0250000001"/>
<position x="645.4250000005" y="178.6750000000"/> <position x="645.4250000005" y="178.6750000000"/>
</positions> </positions>
<positions scale="1.095"> <positions scale="1.095" z0="157.5*cm">
<!--position x="-41.3250000000" y="865.4250000005"/--> <!--position x="-41.3250000000" y="865.4250000005"/-->
<!--position x=" 96.0250000001" y="865.4250000005"/--> <!--position x=" 96.0250000001" y="865.4250000005"/-->
<!--position x="233.3750000002" y="865.4250000005"/--> <!--position x="233.3750000002" y="865.4250000005"/-->
...@@ -140,6 +152,7 @@ ...@@ -140,6 +152,7 @@
<!--position x="782.7750000006" y="316.0250000001"/--> <!--position x="782.7750000006" y="316.0250000001"/-->
<!--position x="782.7750000006" y="453.3750000002"/--> <!--position x="782.7750000006" y="453.3750000002"/-->
</positions> </positions>
<layer thickness="MRICHCarbonFrame_thickness" material="CarbonFiber"/>
</detector> </detector>
</detectors> </detectors>
......