Skip to content
Snippets Groups Projects

Compare revisions

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

Source

Select target project
No results found

Target

Select target project
  • EIC/detectors/athena
  • zwzhao/athena
  • FernandoTA/athena
  • palspeic/athena
4 results
Show changes
Commits on Source (56)
Showing
with 2159 additions and 518 deletions
......@@ -25,3 +25,7 @@ ip6
fieldmaps
manifest.txt
acts.txt
acts2.txt
materials-map.cbor
......@@ -115,18 +115,17 @@ dump_geometry:
- print_env.sh
## DEBUG
- mkdir -p geo
## disable fibers in SciFi endcap ECAL for better performance
## not needed, as we have no fibers in the current setup
#- sed -i '/<fiber/,+4d' ${DETECTOR_PATH}/compact/ci_ecal_scfi.xml
## subsystem views
- |
sed -i -e '/<detectors>/,/<\/detectors>/d' ${DETECTOR_PATH}/compact/tracking_config*.xml
mv ${DETECTOR_PATH}/compact/display_geoviewer.xml ${DETECTOR_PATH}/compact/display.xml
mv ${DETECTOR_PATH}/compact/colors_geoviewer.xml ${DETECTOR_PATH}/compact/colors.xml
for xml in ${DETECTOR_PATH}/compact/subsystem_views/*.xml; do
echo $xml
geo_name=`basename $xml .xml`_geo.root
cp $xml ${DETECTOR_PATH}/geo.xml
dd_web_display --output geo/${geo_name} ${DETECTOR_PATH}/geo.xml
done
## Lower-resolution display of the pfRICH sensors for global views
- sed -i 's/_default"\/>/_lores"\/>/' ${DETECTOR_PATH}/compact/pfrich.xml
## full geo with downstream beamline
- dd_web_display --output geo/detector_geo_full.root ${DETECTOR_PATH}/athena.xml
## only central detector geo
......@@ -141,11 +140,13 @@ dump_geometry:
## print some useful output
- |
echo "Geometry viewer at:"
echo "https://eic.phy.anl.gov/geoviewer/index.htm?file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/${CI_JOB_ID}/artifacts/raw/geo/detector_geo_full.root?job=dump_geometry&item=default;1&opt=clipxyz;transp30;zoom75;ROTY290;ROTZ350;trz0;trr0;ctrl;all&"
echo "https://eic.phy.anl.gov/geoviewer/index.htm?file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/${CI_JOB_ID}/artifacts/raw/geo/detector_geo_full.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom75;ROTY290;ROTZ350;trz0;trr0;ctrl;all"
echo " - Central detector view at: "
echo "https://eic.phy.anl.gov/geoviewer/index.htm?file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/${CI_JOB_ID}/artifacts/raw/geo/detector_geo.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom120;ROTY320;ROTZ340;trz0;trr0;ctrl;all"
for xml in ${DETECTOR_PATH}/compact/subsystem_views/*.xml; do
geo_name=`basename $xml .xml`_geo.root
echo " - Subsystem view for `basename $xml .xml` at:"
echo " https://eic.phy.anl.gov/geoviewer/index.htm?file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/${CI_JOB_ID}/artifacts/raw/geo/${geo_name}?job=dump_geometry&item=default;1&opt=clipxyz;transp30;zoom75;ROTY290;ROTZ350;trz0;trr0;ctrl;all&"
echo " https://eic.phy.anl.gov/geoviewer/index.htm?file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/${CI_JOB_ID}/artifacts/raw/geo/${geo_name}?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom75;ROTY320;ROTZ340;trz0;trr0;ctrl;all"
done
detector_documentation:
......@@ -157,7 +158,7 @@ detector_documentation:
- bash bin/build_documentation | tee doc/detector.md
#- |
# xmllint --format --xpath '//comment/text()' ${DETECTOR_PATH}/athena.xml | sed -re 's/<\/?\w+>//g' | sed 's/^[[:space:]]*#/#/' | tee doc/detector.md
# xmllint --format --xpath '//comment/text()' ${DETECTOR_PATH}/ip6/ip6_defs.xml | sed -re 's/<\/?\w+>//g' | sed 's/^[[:space:]]*#/#/' | tee -a doc/detector.md || true
# xmllint --format --xpath '//comment/text()' ${DETECTOR_PATH}/ip6/definitions.xml | sed -re 's/<\/?\w+>//g' | sed 's/^[[:space:]]*#/#/' | tee -a doc/detector.md || true
# for afile in ${DETECTOR_PATH}/compact/*.xml ; do
# xmllint --format --xpath '//comment/text()' ${afile} | sed -re 's/<\/?\w+>//g' | sed 's/^[[:space:]]*#/#/' | tee -a doc/detector.md || true
# done
......@@ -178,7 +179,7 @@ report:
- view_20
- dump_constants
- dump_geometry
- convert_to_gdml
- dump_gdml
script:
- pip3 install jinja2 && ls -lrth
- ./bin/make_images > doc/dawn_views.md
......@@ -196,6 +197,9 @@ overlap_check_tgeo:
needs:
- ["common:detector"]
script:
## disable fibers in ECAL for normal overlap check
- sed -i '/<fiber/,+6d' ${DETECTOR_PATH}/compact/ecal_barrel_interlayers.xml
- sed -i '/<fiber/,+4d' ${DETECTOR_PATH}/ip6/far_forward/ZDC_Ecal_WSciFi.xml
- checkOverlaps -c ${DETECTOR_PATH}/athena.xml | tee doc/overlap_check_tgeo.out
- echo "$(cat doc/overlap_check_tgeo.out | grep ovlp | wc -l) overlaps..."
- if [[ "$(cat doc/overlap_check_tgeo.out | grep ovlp | wc -l)" -gt "0" ]] ; then echo "Overlaps exist!" && false ; fi
......@@ -207,6 +211,7 @@ overlap_check_geant4:full_fast:
script:
## disable fibers in ECAL for normal overlap check
- sed -i '/<fiber/,+6d' ${DETECTOR_PATH}/compact/ecal_barrel_interlayers.xml
- sed -i '/<fiber/,+4d' ${DETECTOR_PATH}/ip6/far_forward/ZDC_Ecal_WSciFi.xml
## reduce the number of fibers in Hadron EMCal for overlap check
## not needed, as we are running with a different setup now
#- sed -i 's/radius="EcalEndcapP_FiberRadius"/radius="EcalEndcapP_FiberRadius*10"/' ${DETECTOR_PATH}/compact/ci_ecal_scfi.xml
......@@ -226,13 +231,19 @@ overlap_check_geant4:inner_detector:
- echo "$(cat doc/overlap_check_geant4.out | grep GeomVol1002 | wc -l) overlaps..."
- if [[ "$(cat doc/overlap_check_geant4.out | grep GeomVol1002 | wc -l)" -gt "0" ]] ; then echo "Overlaps exist!" && false ; fi
convert_to_gdml:
dump_gdml:
stage: test
needs:
- ["common:detector"]
script:
- mkdir -p geo
- python scripts/convert_to_gdml.py --compact ${DETECTOR_PATH}/athena.xml --output geo/athena.gdml
- |
python scripts/convert_to_gdml.py --compact ${DETECTOR_PATH}/athena.xml --output geo/athena.gdml
for xml in ${DETECTOR_PATH}/compact/subsystem_views/*.xml; do
cp $xml ${DETECTOR_PATH}/geo.xml
gdml_name=`basename $xml .xml`.gdml
python scripts/convert_to_gdml.py --compact ${DETECTOR_PATH}/geo.xml --output geo/${gdml_name}
done
tracking_geometry_debug:
stage: test
......@@ -259,5 +270,5 @@ benchmarks:detector:
project: EIC/benchmarks/detector_benchmarks
strategy: depend
needs:
- overlap_check_tgeo
- overlap_check_geant4:full_fast
- common:detector
......@@ -10,13 +10,18 @@ PROJECT(athena
)
set(CMAKE_CXX_STANDARD 17)
find_package( DD4hep REQUIRED COMPONENTS DDCore DDG4)
find_package(Acts REQUIRED COMPONENTS Core PluginIdentification PluginTGeo PluginDD4hep )
find_package(fmt)
#find_library(FMT_LIBRARY fmt)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror")
find_package(DD4hep REQUIRED COMPONENTS DDCore DDG4)
find_package(ActsDD4hep)
if(ActsDD4hep_FOUND)
add_compile_definitions(USE_ACTSDD4HEP)
set(ActsDD4hep ActsDD4hep::ActsDD4hep)
else()
find_package(Acts REQUIRED COMPONENTS Core PluginIdentification PluginTGeo PluginDD4hep)
set(ActsDD4hep ActsCore ActsPluginDD4hep)
endif()
find_package(fmt REQUIRED)
#-----------------------------------------------------------------------------------
set(a_lib_name athena)
......@@ -24,15 +29,16 @@ set(a_lib_name athena)
dd4hep_configure_output()
dd4hep_add_plugin(${a_lib_name} SOURCES
src/BackwardGEMTracker_geo.cpp
src/BarrelBarDetectorWithSideFrame_geo.cpp
src/BarrelCalorimeter_geo.cpp
src/BarrelCalorimeterHybrid_geo.cpp
src/BarrelCalorimeterInterlayers_geo.cpp
src/BarrelTrackerWithFrame_geo.cpp
src/CompositeTracker_geo.cpp
src/CylinderTrackerBarrel_geo.cpp
src/DIRC_geo.cpp
src/DRich_geo.cpp
src/DRICH_geo.cpp
src/PFRICH_geo.cpp
src/FileLoader.cpp
src/FieldMapBrBz.cpp
src/GaseousRICH_geo.cpp
src/GeometryHelpers.cpp
......@@ -45,10 +51,10 @@ dd4hep_add_plugin(${a_lib_name} SOURCES
src/SimpleDiskDetector_geo.cpp
src/SolenoidCoil_geo.cpp
src/TrapEndcapTracker_geo.cpp
USES ActsCore ActsPluginDD4hep
USES ${ActsDD4hep}
)
target_link_libraries(${a_lib_name}
PUBLIC DD4hep::DDCore DD4hep::DDRec fmt::fmt
PUBLIC DD4hep::DDCore DD4hep::DDRec fmt::fmt
)
#-----------------------------------------------------------------------------------
......@@ -67,5 +73,5 @@ install(FILES athena.xml
#-----------------------------------------------------------------------------------
# Install the detector calibration files.
install(DIRECTORY calibrations/
DESTINATION share/${PROJECT_NAME}/
DESTINATION share/${PROJECT_NAME}/calibrations
)
......@@ -3,22 +3,34 @@ Overview
The Athena Detector at IP6 for Electron-Ion Collider experiment.
**Detector geometry viewer:**
- [Central detector geometry](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/api/v4/projects/473/jobs/artifacts/master/raw/geo/detector_geo.root?job=report&item=default;1&opt=clipxyz;transp30;zoom100;ROTY0;ROTZ0;trz100;trr0;ctrl;all&)
- [Full Detector geometry (including beamline)](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/api/v4/projects/473/jobs/artifacts/master/raw/geo/detector_geo_full.root?job=report&item=default;1&opt=clipxyz;transp30;zoom75;ROTY290;ROTZ350;trz0;trr0;ctrl;all&)
<a href="https://eicweb.phy.anl.gov/api/v4/projects/473/jobs/artifacts/master/raw/images/view01.pdf?job=report">
<img src="https://eicweb.phy.anl.gov/api/v4/projects/473/jobs/artifacts/master/raw/images/view01.png?job=report" width="400px" />
- [Central detector](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/geo/detector_geo.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom120;ROTY320;ROTZ340;trz0;trr0;ctrl;all)
- [Full Detector (including beamline)](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/geo/detector_geo_full.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom75;ROTY290;ROTZ350;trz0;trr0;ctrl;all)
- [Inner detector (without calorimetry)](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/geo/inner_detector_geo.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom75;ROTY320;ROTZ340;trz0;trr0;ctrl;all)
- Subsystem views:
- [Calorimetry](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/geo/calorimeters_geo.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom120;ROTY320;ROTZ340;trz0;trr0;ctrl;all)
- [PID](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/geo/pid_only_geo.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom75;ROTY320;ROTZ340;trz0;trr0;ctrl;all)
- [dRICH](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/geo/drich_only_geo.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom75;ROTY290;ROTZ350;trz0;trr0;ctrl;all)
- [pfRICH](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/geo/pfrich_only_geo.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom55;ROTY49;ROTZ350;trz0;trr0;ctrl;all&)
- [DIRC](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/geo/dirc_only_geo.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom120;ROTY320;ROTZ340;trz0;trr0;ctrl;all)
- [ToF](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/geo/tof_only_geo.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom55;ROTY49;ROTZ350;trz0;trr0;ctrl;all&)
- [Tracking](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/geo/tracking_only_geo.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom75;ROTY320;ROTZ340;trz0;trr0;ctrl;all)
- [Vertex detector](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/geo/vertex_only_geo.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom120;ROTY320;ROTZ340;trz0;trr0;ctrl;all)
- [Far-forward](https://eic.phy.anl.gov/geoviewer/index.htm?nobrowser&file=https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/geo/ip6_geo.root?job=dump_geometry&item=default;1&opt=clipx;clipy;transp30;zoom40;ROTY290;ROTZ350;trz0;trr0;ctrl;all)
<a href="https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/images/view01.pdf?job=report">
<img src="https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/images/view01.png?job=report" width="400px" />
</a>
<br />
<a href="https://eicweb.phy.anl.gov/api/v4/projects/473/jobs/artifacts/master/raw/images/view01_top.pdf?job=report">
<img src="https://eicweb.phy.anl.gov/api/v4/projects/473/jobs/artifacts/master/raw/images/view01_top.png?job=report" width="400px" />
<a href="https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/images/view01_top.pdf?job=report">
<img src="https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/images/view01_top.png?job=report" width="400px" />
</a>
[Browse latest](https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/browse/images?job=report)
[Detector views](views/detector_views.md)
[Detector views](https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/doc/dawn_views.md?job=report)
[Constants listing](https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/artifacts/master/raw/doc/constants.out?job=report)
Getting Started
---------------
......
......@@ -33,8 +33,8 @@
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/ip6_defs.xml" />
<include ref="ip6/far_forward_fields_275.xml" />
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
......@@ -84,17 +84,6 @@
- and more...
</documentation>
<comment>
Beamline elements
-----------------
</comment>
<include ref="ip6/forward_ion_beamline.xml"/>
<include ref="ip6/beampipe_hadron_B0.xml" />
<include ref="ip6/beampipe.xml" />
<include ref="ip6/inner_vacuum_FF_magnets.xml"/>
<documentation level="5">
## Main magnet
......@@ -102,81 +91,20 @@
</documentation>
<include ref="compact/solenoid.xml"/>
<documentation level="5">
### Tracker subassemblies for ACTS
</documentation>
<detectors>
<detector id="VertexBarrelSubAssembly_ID"
name="VertexBarrelSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexBarrel" />
</detector>
<detector id="VertexEndcapSubAssembly_ID"
name="VertexEndcapSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexEndcapN" />
<composite name="VertexEndcapP" />
</detector>
<detector id="TrackerBarrelSubAssembly_Inner_ID"
name="TrackerBarrelSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Inner"/>
</detector>
<detector id="TrackerEndcapSubAssembly_Inner_ID"
name="TrackerEndcapSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerEndcapN_Inner"/>
<composite name="TrackerEndcapP_Inner"/>
</detector>
<detector id="TrackerBarrelSubAssembly_Outer_ID"
name="TrackerSubAssembly_Outer"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Outer"/>
<composite name="TrackerEndcapP_Outer"/>
<composite name="TrackerEndcapN_Outer"/>
</detector>
<comment>
TOF disabled for baseline
<detector id="OuterTrackingSubAssembly_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TOFSubAssemblyVis">
<composite name="BarrelTOF"/>
<composite name="ForwardTOF"/>
<composite name="BackwardTOF"/>
</detector>
</comment>
<detector id="OuterTrackingSubAssembly_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="SubAssemblyVis">
<composite name="GEMTrackerEndcapP"/>
<composite name="GEMTrackerEndcapN"/>
</detector>
</detectors>
<documentation level="10">
## Central tracking detectors
</documentation>
<include ref="compact/tracking_config_acadia.xml"/>
<!--include ref="compact/tracking_config_mgpds.xml"/-->
<!--include ref="compact/tracking_config_acadia.xml"/-->
<!--include ref="compact/tracking_config_canyonlands.xml"/-->
<include ref="compact/tracking_config_deathvalley.xml"/>
<documentation level="10">
### PID detectors
</documentation>
<include ref="compact/pid_config_acadia.xml" />
<!--include ref="compact/pid_config_acadia.xml" /-->
<!--include ref="compact/pid_config_canyonlands.xml" /-->
<include ref="compact/pid_config_deathvalley.xml" />
<documentation level="10">
## Central calorimetry
......@@ -184,74 +112,20 @@
<include ref="compact/ecal.xml"/>
<include ref="compact/hcal.xml"/>
<documentation level="11">
## Far foward detectors
</documentation>
<include ref="ip6/central_beampipe.xml"/>
<documentation level="11">
## Far foward detectors
</documentation>
<include ref="ip6/B0_tracker.xml"/>
<include ref="ip6/B0_preshower.xml"/>
<include ref="ip6/far_forward_offM_tracker.xml"/>
<include ref="ip6/far_forward_detectors.xml"/>
<include ref="ip6/roman_pots_eRD24_design.xml"/>
<include ref="ip6/far_forward.xml"/>
<fields>
<field name="B0PF_Magnet" type="MultipoleMagnet">
<position x="B0PF_XPosition" y="0" z="B0PF_CenterPosition"/>
<rotation x="0" y="B0PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0PF_InnerRadius" dz="B0PF_Length*0.5"/>
<coefficient coefficient="B0PF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="B0APF_Magnet" type="MultipoleMagnet">
<position x="B0APF_XPosition" y="0" z="B0APF_CenterPosition"/>
<rotation x="0" y="B0APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0APF_InnerRadius" dz="B0APF_Length*0.5"/>
<coefficient coefficient="B0APF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="Q1APF_Magnet" type="MultipoleMagnet">
<position x="Q1APF_XPosition" y="0" z="Q1APF_CenterPosition"/>
<rotation x="0" y="Q1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1APF_InnerRadius" dz="Q1APF_Length*0.5"/>
<coefficient coefficient="Q1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q1BPF_Magnet" type="MultipoleMagnet">
<position x="Q1BPF_XPosition" y="0" z="Q1BPF_CenterPosition"/>
<rotation x="0" y="Q1BPF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1BPF_InnerRadius" dz="Q1BPF_Length*0.5"/>
<coefficient coefficient="Q1BPF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1BPF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q2PF_Magnet" type="MultipoleMagnet">
<position x="Q2PF_XPosition" y="0" z="Q2PF_CenterPosition"/>
<rotation x="0" y="Q2PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q2PF_InnerRadius" dz="Q2PF_Length*0.5"/>
<coefficient coefficient="Q2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1PF_Magnet" type="MultipoleMagnet">
<position x="B1PF_XPosition" y="0" z="B1PF_CenterPosition"/>
<rotation x="0" y="B1PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1PF_InnerRadius" dz="B1PF_Length*0.5"/>
<coefficient coefficient="B1PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1APF_Magnet" type="MultipoleMagnet">
<position x="B1APF_XPosition" y="0" z="B1APF_CenterPosition"/>
<rotation x="0" y="B1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1APF_InnerRadius" dz="B1APF_Length*0.5"/>
<coefficient coefficient="B1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B2PF_Magnet" type="MultipoleMagnet">
<position x="B2PF_XPosition" y="0" z="B2PF_CenterPosition"/>
<rotation x="0" y="B2PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B2PF_InnerRadius" dz="B2PF_Length*0.5"/>
<coefficient coefficient="B2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
</fields>
<documentation level="11">
## Far backward detectors
</documentation>
<include ref="ip6/far_backward.xml"/>
<comment>
FB elements
......
......@@ -52,7 +52,7 @@ parser.add_argument('-t', '--tag', type=str,dest='file_tag',
help='Output file tag')
parser.add_argument('--timeout', type=int,
default=60,
default=3600,
help='Timeout in seconds')
parser.add_argument('passthrough', nargs='*')
......
......@@ -7,9 +7,15 @@ env = Environment(
autoescape=select_autoescape(['html', 'xml'])
)
import os
import glob
base_url = "https://eicweb.phy.anl.gov/api/v4/projects/390/jobs/artifacts/master/raw"
if "CI_PROJECT_ID" in os.environ:
CI_PROJECT_ID = str(os.environ["CI_PROJECT_ID"])
else:
CI_PROJECT_ID = "473"
base_url = f"https://eicweb.phy.anl.gov/api/v4/projects/{CI_PROJECT_ID}/jobs/artifacts/master/raw"
#images = ["images/view2a.png","images/view2b.png", "images/view1.png"]
images = glob.glob("images/*.png")
......
{
"ecal_neg_endcap": {
"readout": "module",
"dynamicRange": "20*GeV",
"capacityBitsADC": 14,
"pedestalMean": 100,
"pedestalSigma": 1,
"thresholdValue": 3
},
"hcal_neg_endcap": {
"readout": "tile",
"dynamicRange": "20*MeV",
"capacityBitsADC": 8,
"pedestalMean": 20,
"pedestalSigma": 0.3,
"thresholdValue": 1
},
"ecal_pos_endcap": {
"readout": "module",
"dynamicRange": "3*GeV",
"capacityBitsADC": 14,
"pedestalMean": 100,
"pedestalSigma": 0.7,
"thresholdValue": 2
},
"hcal_pos_endcap": {
"readout": "tile",
"dynamicRange": "3.6*GeV",
"capacityBitsADC": 10,
"pedestalMean": 20,
"pedestalSigma": 0.8,
"thresholdValue": 3
},
"ecal_barrel_imaging": {
"readout": "pixel",
"dynamicRange": "3*MeV",
"capacityBitsADC": 13,
"pedestalMean": 100,
"pedestalSigma": 14,
"thresholdValue": 50
},
"ecal_barrel_scfi": {
"readout": "light_guide",
"dynamicRange": "750*MeV",
"capacityBitsADC": 14,
"pedestalMean": 20,
"pedestalSigma": 0.3,
"thresholdValue": 1
},
"hcal_barrel": {
"readout": "tile",
"dynamicRange": "20*MeV",
"capacityBitsADC": 8,
"pedestalMean": 20,
"pedestalSigma": 0.3,
"thresholdValue": 1
}
}
calo_digi_canyonlands.json
\ No newline at end of file
{
"electron": {
"particle_name": "electron",
"sampling_fraction": 0.10856976476514045,
"sampling_fraction_img": 0.00595078393326404,
"sampling_fraction_scfi": 0.10262666247845109,
"thrown_energy": 4.975791477972636
"sampling_fraction": 0.1053739677993623,
"sampling_fraction_error": 0.00014385360879111712,
"sampling_fraction_error_img": 7.262477989358573e-05,
"sampling_fraction_error_scfi": 0.0001238835428684493,
"sampling_fraction_img": 0.006008855583640059,
"sampling_fraction_scfi": 0.09940809338992981,
"thrown_energy": 5.000000028019361
}
}
{
"ffi_zdc_ecal": {
"sampling_fraction": 1.0,
"minClusterCenterEdep": "3.*MeV",
"minClusterHitEdep": "0.1*MeV",
"localDistXY": ["50*mm", "50*mm"],
"splitCluster": true
},
"ffi_zdc_hcal": {
"sampling_fraction": 1.0,
"minClusterCenterEdep": "1.*MeV",
"minClusterHitEdep": "0.1*MeV",
"localDistXY": ["200*mm", "200*mm"],
"splitCluster": false
}
}
......@@ -27,6 +27,10 @@ total X0 0.24% per disk layer (4 sectors per disk):
</documentation>
<define>
<constant name="CentralTrackerSensor_thickness" value="40*um"/>
<constant name="TrackerCarbon_thickness" value="0.12*mm"/>
<constant name="TrackerEndcapAluminum_thickness" value="0.15*mm"/>
<comment>
Layer_rOffset is used to add inside space so the _rmin value is the nominal sensor radius.
TrackerBarrelSpaceFrame_height must be smaller than {_rmin2 - _rmin1 - Layer_rOffset - 1mm - stave_thickness}
......@@ -35,7 +39,7 @@ total X0 0.24% per disk layer (4 sectors per disk):
<constant name="TrackerBarrelLayer_rOffset" value="0.5*cm"/>
<constant name="TrackerBarrelSpaceFrame_width" value="4.0*cm"/>
<constant name="TrackerBarrelSpaceFrame_height" value="1.0*cm"/>
<constant name="TrackerSensor_thickness" value="ITS3Thickness"/>
<constant name="TrackerSensor_thickness" value="CentralTrackerSensor_thickness"/>
<constant name="TrackerBarrelInner_rmin1" value="21.0*cm"/>
<constant name="TrackerBarrelInner_rmin2" value="22.68*cm"/>
......@@ -155,7 +159,7 @@ total X0 0.24% per disk layer (4 sectors per disk):
</comment>
<detector
id="TrackerBarrel_Inner_ID"
id="TrackerBarrel_0_ID"
name="TrackerBarrel_Inner"
type="athena_TrackerBarrel"
readout="TrackerBarrelHits"
......@@ -219,7 +223,7 @@ total X0 0.24% per disk layer (4 sectors per disk):
</detector>
<detector
id="TrackerEndcapP_Inner_ID"
id="TrackerEndcapP_0_ID"
name="TrackerEndcapP_Inner"
type="athena_TrapEndcapTracker"
readout="TrackerEndcapHits"
......@@ -241,7 +245,7 @@ total X0 0.24% per disk layer (4 sectors per disk):
<module name="Module1" vis="AnlProcess_Blue">
<trd x1="TrackerEndcapInnerMod1_x1/2.0" x2="TrackerEndcapInnerMod1_x2/2.0" z="TrackerEndcapInnerMod1_y/2"/>
<module_component thickness="ITS3Thickness" material="Silicon" sensitive="true"/>
<module_component thickness="CentralTrackerSensor_thickness" material="Silicon" sensitive="true"/>
<module_component thickness="TrackerEndcapAluminum_thickness" material="Aluminum"/>
<module_component thickness="TrackerCarbon_thickness" material="CarbonFiber"/>
</module>
......@@ -260,7 +264,7 @@ total X0 0.24% per disk layer (4 sectors per disk):
</detector>
<detector
id="TrackerEndcapN_Inner_ID"
id="TrackerEndcapN_0_ID"
name="TrackerEndcapN_Inner"
type="athena_TrapEndcapTracker"
readout="TrackerEndcapHits"
......@@ -282,7 +286,7 @@ total X0 0.24% per disk layer (4 sectors per disk):
<module name="Module1" vis="AnlProcess_Blue">
<trd x1="TrackerEndcapInnerMod1_x1/2.0" x2="TrackerEndcapInnerMod1_x2/2.0" z="TrackerEndcapInnerMod1_y/2"/>
<module_component thickness="ITS3Thickness" material="Silicon" sensitive="true"/>
<module_component thickness="CentralTrackerSensor_thickness" material="Silicon" sensitive="true"/>
<module_component thickness="TrackerEndcapAluminum_thickness" material="Aluminum"/>
<module_component thickness="TrackerCarbon_thickness" material="CarbonFiber"/>
</module>
......@@ -306,7 +310,7 @@ total X0 0.24% per disk layer (4 sectors per disk):
-----------------------------------
</comment>
<detector
id="TrackerBarrel_Outer_ID"
id="TrackerBarrel_1_ID"
name="TrackerBarrel_Outer"
type="athena_TrackerBarrel"
readout="TrackerBarrelHits"
......@@ -370,7 +374,7 @@ total X0 0.24% per disk layer (4 sectors per disk):
</detector>
<detector
id="TrackerEndcapP_Outer_ID"
id="TrackerEndcapP_1_ID"
name="TrackerEndcapP_Outer"
type="athena_TrapEndcapTracker"
readout="TrackerEndcapHits"
......@@ -399,19 +403,19 @@ total X0 0.24% per disk layer (4 sectors per disk):
<module name="Module1" vis="AnlProcess_Blue">
<trd x1="TrackerEndcapOuterMod1_x1/2.0" x2="TrackerEndcapOuterMod1_x2/2.0" z="TrackerEndcapOuterMod1_y/2"/>
<module_component thickness="ITS3Thickness" material="Silicon" sensitive="true"/>
<module_component thickness="CentralTrackerSensor_thickness" material="Silicon" sensitive="true"/>
<module_component thickness="TrackerEndcapAluminum_thickness" material="Aluminum"/>
<module_component thickness="TrackerCarbon_thickness" material="CarbonFiber"/>
</module>
<module name="Module2" vis="AnlProcess_Blue">
<trd x1="TrackerEndcapOuterMod2_x1/2.0" x2="TrackerEndcapOuterMod2_x2/2.0" z="TrackerEndcapOuterMod2_y/2"/>
<module_component thickness="ITS3Thickness" material="Silicon" sensitive="true"/>
<module_component thickness="CentralTrackerSensor_thickness" material="Silicon" sensitive="true"/>
<module_component thickness="TrackerEndcapAluminum_thickness" material="Aluminum"/>
<module_component thickness="TrackerCarbon_thickness" material="CarbonFiber"/>
</module>
<module name="Module3" vis="AnlProcess_Blue">
<trd x1="TrackerEndcapOuterMod3_x1/2.0" x2="TrackerEndcapOuterMod3_x2/2.0" z="TrackerEndcapOuterMod3_y/2"/>
<module_component thickness="ITS3Thickness" material="Silicon" sensitive="true"/>
<module_component thickness="CentralTrackerSensor_thickness" material="Silicon" sensitive="true"/>
<module_component thickness="TrackerEndcapAluminum_thickness" material="Aluminum"/>
<module_component thickness="TrackerCarbon_thickness" material="CarbonFiber"/>
</module>
......@@ -454,7 +458,7 @@ total X0 0.24% per disk layer (4 sectors per disk):
</detector>
<detector
id="TrackerEndcapN_Outer_ID"
id="TrackerEndcapN_1_ID"
name="TrackerEndcapN_Outer"
type="athena_TrapEndcapTracker"
readout="TrackerEndcapHits"
......@@ -485,19 +489,19 @@ total X0 0.24% per disk layer (4 sectors per disk):
<module name="Module1" vis="AnlProcess_Blue">
<trd x1="TrackerEndcapOuterMod1_x1/2.0" x2="TrackerEndcapOuterMod1_x2/2.0" z="TrackerEndcapOuterMod1_y/2"/>
<module_component thickness="ITS3Thickness" material="Silicon" sensitive="true"/>
<module_component thickness="CentralTrackerSensor_thickness" material="Silicon" sensitive="true"/>
<module_component thickness="TrackerEndcapAluminum_thickness" material="Aluminum"/>
<module_component thickness="TrackerCarbon_thickness" material="CarbonFiber"/>
</module>
<module name="Module2" vis="AnlProcess_Blue">
<trd x1="TrackerEndcapOuterMod2_x1/2.0" x2="TrackerEndcapOuterMod2_x2/2.0" z="TrackerEndcapOuterMod2_y/2"/>
<module_component thickness="ITS3Thickness" material="Silicon" sensitive="true"/>
<module_component thickness="CentralTrackerSensor_thickness" material="Silicon" sensitive="true"/>
<module_component thickness="TrackerEndcapAluminum_thickness" material="Aluminum"/>
<module_component thickness="TrackerCarbon_thickness" material="CarbonFiber"/>
</module>
<module name="Module3" vis="AnlProcess_Blue">
<trd x1="TrackerEndcapOuterMod3_x1/2.0" x2="TrackerEndcapOuterMod3_x2/2.0" z="TrackerEndcapOuterMod3_y/2"/>
<module_component thickness="ITS3Thickness" material="Silicon" sensitive="true"/>
<module_component thickness="CentralTrackerSensor_thickness" material="Silicon" sensitive="true"/>
<module_component thickness="TrackerEndcapAluminum_thickness" material="Aluminum"/>
<module_component thickness="TrackerCarbon_thickness" material="CarbonFiber"/>
</module>
......
<?xml version="1.0" encoding="UTF-8"?>
<lccdd>
<comment>
Master tracker parameters
Central Tracking region consists of:
|----------------------------------------------------------------------------|
| | OuterBarrel | |
| |--------------------------------------------------------| |
| | | MedialBarrel | | |
| | |------------------------------------| | |
| | | | InnerBarrel | | | |
| | | |----------------| | | |
| Outer | Medial | Inner | Vertex Tracker | Inner | Medial | Outer |
| EndcapN | EndcapN | EndcapN | Vertex Tracker | EndcapP | EndcapP | EndcapP |
|----------------------------------------------------------------------------|
^ ^
CentralTrackingRegionN_zmax CentralTrackingRegionP_zmax
</comment>
<define>
<comment> Inner tracker setup </comment>
<constant name="InnerTrackerBarrel_rmin" value="13.38*cm"/>
<constant name="InnerTrackerBarrel_offset" value="4.62*cm"/>
<constant name="InnerTrackerBarrel_count" value="2"/>
<constant name="InnerTrackerBarrelMod_width" value="4.*cm"/>
<constant name="InnerTrackerBarrelCone_zmin" value="16.8*cm"/>
<constant name="InnerTrackerBarrelCone_zmax" value="24.54*cm"/>
<constant name="InnerTrackerEndcap_zmin" value="25*cm"/>
<constant name="InnerTrackerEndcap_rmin" value="Beampipe_rmax + 50*um"/>
<constant name="InnerTrackerEndcap_offset" value="24*cm"/>
<constant name="InnerTrackerEndcap_count" value="2"/>
<comment> Medial tracker setup </comment>
<constant name="MedialTrackerBarrel_rmin" value="47.72*cm"/>
<constant name="MedialTrackerBarrel_offset" value="1.85*cm"/>
<constant name="MedialTrackerBarrel_count" value="2"/>
<constant name="MedialTrackerEndcap_zmin" value="73*cm"/>
<constant name="MedialTrackerEndcap_offset" value="0*cm"/>
<constant name="MedialTrackerEndcap_count" value="1"/>
<constant name="MedialTrackerEndcapP_rmin" value="Beampipe_rmax + 3*mm"/>
<constant name="MedialTrackerEndcapN_rmin" value="InnerTrackerEndcap_rmin"/>
<comment> Outer tracker setup </comment>
<constant name="OuterTrackerBarrel_rmin" value="75.61*cm"/>
<constant name="OuterTrackerBarrel_offset" value="1.85*cm"/>
<constant name="OuterTrackerBarrel_count" value="2"/>
<constant name="OuterTrackerEndcapP_zmin" value="103.67*cm"/>
<constant name="OuterTrackerEndcapP_offset" value="30.66*cm"/>
<constant name="OuterTrackerEndcapP_count" value="3"/>
<constant name="OuterTrackerEndcapN_zmin" value="109*cm"/>
<constant name="OuterTrackerEndcapN_offset" value="36.00*cm"/>
<constant name="OuterTrackerEndcapN_count" value="2"/>
<comment> Gem disk setup.
Note: some GEM disk z-positions are moved slightly (below in the parametrization)
to avoid vertical overlaps with the silicon disks (which is not allowed by ACTS).
@FIXME
</comment>
<constant name="GEMEndcapPDisk1_zmin" value="103*cm"/>
<constant name="GEMEndcapPDisk2_zmin" value="164.5"/>
<constant name="GEMEndcapPDisk3_zmin" value="ForwardTrackingRegion_zmin + 2*cm"/>
<constant name="GEMEndcapP_count" value="3"/>
<constant name="GEMEndcapN_zmin" value="103*cm"/>
<constant name="GEMEndcapN_offset" value="41.5*cm"/>
<constant name="GEMEndcapN_count" value="2"/>
<comment> Silicon tracker parameters </comment>
<constant name="SiTrackerBarrelSpaceFrameCF_thickness" value="0.12*mm"/>
<constant name="SiTrackerBarrelSpaceFrame_height" value="1.0*cm"/>
<constant name="SiTrackerEndcapAl_thickness" value="0.15*mm"/>
<constant name="SiTrackerEndcapCF_thickness" value="0.12*mm"/>
<constant name="SiTrackerEndcapMod_count" value="36"/>
<constant name="SiTrackerEndcapMod_dz" value="0" />
<constant name="SiTrackerEndcapMod_overlap" value="0"/>
<constant name="SiTrackerSensor_thickness" value="40*um"/>
<constant name="SiTrackerCyl_rmin" value="43.23" />
<constant name="SiTrackerServiceConeAl_thickness" value="2.5*mm" />
<constant name="SiTrackerServiceCylAl_thickness" value="2.5*mm" />
<constant name="SiTrackerSupportConeCF_thickness" value="2*mm" />
<constant name="SiTrackerSupportCylCF_thickness" value="2*mm" />
<comment> MMGAS tracker parameters </comment>
<constant name="MMKaptonOverlay_thickness" value="50*um"/>
<constant name="MMCuGround_thickness" value="1.58*um"/>
<constant name="MMPCB_thickness" value="100*um"/>
<constant name="MMCuStrip_thickness" value="12*um"/>
<constant name="MMKaptonStrip_thickness" value="75*um"/>
<constant name="MMResistiveStrip_thickness" value="128*um"/>
<constant name="MMGas_thickness" value="20*um"/>
<constant name="MMMesh_thickness" value="18*um"/>
<constant name="MMGasGap_thickness" value="3000*um"/>
<constant name="MMDriftCuElectrode_thickness" value="5*um"/>
<constant name="MMDriftKapton_thickness" value="250*um"/>
<constant name="MMDriftCuGround_thickness" value="0.41*um"/>
<comment> GEM tracker parameters </comment>
<constant name="GEMEndcapMod_count" value="12"/>
<constant name="GEMFrame_thickness" value="13.0*mm"/>
<constant name="GEMFrameBotEdge_width" value="10.0*mm"/>
<constant name="GEMFrameTopEdge_width" value="50.0*mm"/>
<constant name="GEMFrameSideEdge_width" value="10.0*mm"/>
<constant name="GEMSpoke_thickness" value="1.0*mm"/>
<constant name="GEMSpoke_width" value="GEMFrameSideEdge_width"/>
<comment> Account for the fact that GEMs have holes, so they are not solid volumes </comment>
<constant name="GEMAreaFactor" value="0.80" />
<comment> GEM layers </comment>
<constant name="GEMMylar_thickness" value="25.0*um"/>
<constant name="GEMGas_thickness" value="2.0*mm"/>
<constant name="GEMDriftRegion_thickness" value="3.0*mm"/>
<constant name="GEMKapton_thickness" value="50*um"/>
<constant name="GEMCuFoil_thickness" value="10*um"/>
<constant name="GEMCuElectrode_thickness" value="5.0*um"/>
</define>
<documentation>
## Inner silicon tracker barrel
### Silicon Tracker
#### Some references:
- With some added info on ITS3 chip from https://indico.bnl.gov/event/10677/contributions/45591/attachments/33204/53254/20210318-IR2%40EIC-SVT.pdf
To be used as standin until we get more detailed specs from the working group on the tracker.
- https://wiki.bnl.gov/athena/index.php/Tracking
#### ITS3 sensors
ITS3 sensor thickness:
- 40um, pixel size: 10um (segmentation)
- total X0 0.55% per barrel layer:
- 0.35 mm aluminum ~ 0.4% X0.
- 2 x carbonfiber (RL ~ 28) 0.12 mm (!!! material scan shows ~0.17mm, need to check later) to match Si (RL~9) of 0.04mm ~ 0.04%
total X0 0.24% per disk layer (4 sectors per disk):
- 0.15 mm aluminum ~ 0.16% X0.
- 1 x carbonfiber (RL ~ 28) 0.12 mm to match Si (RL~9) of 0.04mm ~ 0.04%
</documentation>
<define>
<constant name="InnerTrackerBarrelMod1_rmin" value="InnerTrackerBarrel_rmin" />
<constant name="InnerTrackerBarrelMod2_rmin" value="InnerTrackerBarrelMod1_rmin + 1 * InnerTrackerBarrel_offset" />
<constant name="InnerTrackerBarrelCone_length" value="InnerTrackerBarrelCone_zmax - InnerTrackerBarrelCone_zmin" />
<constant name="InnerTrackerBarrelCone_z" value="(InnerTrackerBarrelCone_zmax + InnerTrackerBarrelCone_zmin)/2" />
<constant name="InnerTrackerBarrelCone_thickness" value="SiTrackerSupportConeCF_thickness + SiTrackerServiceConeAl_thickness" />
<comment> Shorten Module (with non-zero thickness!) to avoid overlaps with support cone</comment>
<constant name="InnerTrackerBarrelMod1_length" value="2 * InnerTrackerBarrelMod1_rmin / CentralTrackingBarrel_tan - 0.5*cm - 2. * InnerTrackerBarrelCone_thickness" />
<constant name="InnerTrackerBarrelMod2_length" value="2 * InnerTrackerBarrelMod2_rmin / CentralTrackingBarrel_tan - 0.5*cm - 2. * InnerTrackerBarrelCone_thickness" />
<constant name="InnerTrackerBarrelServiceCone_rmin1" value="InnerTrackerBarrelCone_zmin * CentralTrackingBarrel_tan" />
<constant name="InnerTrackerBarrelServiceCone_rmax1" value="InnerTrackerBarrelServiceCone_rmin1 + SiTrackerServiceConeAl_thickness" />
<constant name="InnerTrackerBarrelServiceCone_rmin2" value="InnerTrackerBarrelCone_zmax * CentralTrackingBarrel_tan" />
<constant name="InnerTrackerBarrelServiceCone_rmax2" value="InnerTrackerBarrelServiceCone_rmin2 + SiTrackerServiceConeAl_thickness" />
<constant name="InnerTrackerBarrelSupportCone_rmin1" value="InnerTrackerBarrelServiceCone_rmax1" />
<constant name="InnerTrackerBarrelSupportCone_rmax1" value="InnerTrackerBarrelSupportCone_rmin1 + SiTrackerSupportConeCF_thickness" />
<constant name="InnerTrackerBarrelSupportCone_rmin2" value="InnerTrackerBarrelServiceCone_rmax2" />
<constant name="InnerTrackerBarrelSupportCone_rmax2" value="InnerTrackerBarrelSupportCone_rmin2 + SiTrackerSupportConeCF_thickness" />
<constant name="InnerTrackerBarrelLayer1_length" value="InnerTrackerBarrelMod1_length + 1*um" />
<constant name="InnerTrackerBarrelLayer2_length" value="InnerTrackerBarrelMod2_length + 1*um" />
<constant name="InnerTrackerBarrelLayer_thickness" value="1.1*cm" />
<comment> Place asymmetrically in the layer (module sits near the bottom). </comment>
<constant name="InnerTrackerBarrelLayer1_rmin" value="InnerTrackerBarrelMod1_rmin - InnerTrackerBarrelLayer_thickness / 25" />
<constant name="InnerTrackerBarrelLayer2_rmin" value="InnerTrackerBarrelMod2_rmin - InnerTrackerBarrelLayer_thickness / 25" />
<constant name="InnerTrackerBarrelLayer1_rmax" value="InnerTrackerBarrelLayer1_rmin + InnerTrackerBarrelLayer_thickness" />
<constant name="InnerTrackerBarrelLayer2_rmax" value="InnerTrackerBarrelLayer2_rmin + InnerTrackerBarrelLayer_thickness" />
<constant name="InnerTrackerBarrelEnvelope_length" value="2 * InnerTrackerBarrelCone_zmax" />
<constant name="InnerTrackerBarrelEnvelope_rmin" value="VertexTrackingRegion_rmax" />
<constant name="InnerTrackerBarrelEnvelope_rmax" value="InnerTrackerBarrelLayer2_rmax" />
<comment> Barrel staves, nmodules = np.pi/np.arcsin(frame_width*np.cos(tilt_angle)/2.0/R) </comment>
<comment> (rounded up by 2 to avoid holes)</comment>
<constant name="InnerTrackerBarrelModTilt_angle" value="3.0*degree"/>
<constant name="InnerTrackerBarrelMod1_count" value="floor(180.*degree/asin(InnerTrackerBarrelMod_width*cos(InnerTrackerBarrelModTilt_angle)/2/InnerTrackerBarrelMod1_rmin))+2"/>
<constant name="InnerTrackerBarrelMod2_count" value="floor(180.*degree/asin(InnerTrackerBarrelMod_width*cos(InnerTrackerBarrelModTilt_angle)/2/InnerTrackerBarrelMod2_rmin))+2"/>
</define>
<detectors>
<detector
id="TrackerBarrel_0_ID"
name="InnerTrackerBarrel"
type="athena_TrackerBarrel"
readout="TrackerBarrelHits"
insideTrackingVolume="true">
<dimensions
rmin="InnerTrackerBarrelEnvelope_rmin"
rmax="InnerTrackerBarrelEnvelope_rmax"
length="InnerTrackerBarrelEnvelope_length"/>
<support material="Aluminum" name="serv_cone_pos" vis="TrackerServiceVis">
<shape type="Cone"
rmin1="InnerTrackerBarrelServiceCone_rmin1"
rmax1="InnerTrackerBarrelServiceCone_rmax1"
rmin2="InnerTrackerBarrelServiceCone_rmin2"
rmax2="InnerTrackerBarrelServiceCone_rmax2"
z="InnerTrackerBarrelCone_length/2"/>
<position x="0*cm" y="0*cm" z="InnerTrackerBarrelCone_z" />
</support>
<support material="CarbonFiber" name="sup_cone_pos" vis="TrackerSupportVis">
<shape type="Cone"
rmin1="InnerTrackerBarrelSupportCone_rmin1"
rmax1="InnerTrackerBarrelSupportCone_rmax1"
rmin2="InnerTrackerBarrelSupportCone_rmin2"
rmax2="InnerTrackerBarrelSupportCone_rmax2"
z="InnerTrackerBarrelCone_length/2"/>
<position x="0*cm" y="0*cm" z="InnerTrackerBarrelCone_z" />
</support>
<support material="Aluminum" name="serv_cone_neg" vis="TrackerServiceVis">
<shape type="Cone"
rmin1="InnerTrackerBarrelServiceCone_rmin2"
rmax1="InnerTrackerBarrelServiceCone_rmax2"
rmin2="InnerTrackerBarrelServiceCone_rmin1"
rmax2="InnerTrackerBarrelServiceCone_rmax1"
z="InnerTrackerBarrelCone_length/2"/>
<position x="0*cm" y="0*cm" z="-InnerTrackerBarrelCone_z" />
</support>
<support material="CarbonFiber" name="sup_cone_neg" vis="TrackerSupportVis">
<shape type="Cone"
rmin1="InnerTrackerBarrelSupportCone_rmin2"
rmax1="InnerTrackerBarrelSupportCone_rmax2"
rmin2="InnerTrackerBarrelSupportCone_rmin1"
rmax2="InnerTrackerBarrelSupportCone_rmax1"
z="InnerTrackerBarrelCone_length/2"/>
<position x="0*cm" y="0*cm" z="-InnerTrackerBarrelCone_z" />
</support>
<comment>
Tracker Barrel Modules
</comment>
<module name="InnerTrackerBarrel_Mod1" vis="TrackerModuleVis">
<frame material="CarbonFiber" vis="TrackerSupportVis"
width="InnerTrackerBarrelMod_width"
height="SiTrackerBarrelSpaceFrame_height"
length="InnerTrackerBarrelMod1_length"
thickness="SiTrackerBarrelSpaceFrameCF_thickness" />
<module_component name="silicon"
width="InnerTrackerBarrelMod_width"
length="InnerTrackerBarrelMod1_length" thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
<module_component name="aluminum1" material="Aluminum" sensitive="false"
width="InnerTrackerBarrelMod_width" length="InnerTrackerBarrelMod1_length" thickness="0.4*mm" vis="TrackerServiceVis"/>
</module>
<module name="InnerTrackerBarrel_Mod2" vis="TrackerModuleVis">
<frame material="CarbonFiber" vis="TrackerSupportVis"
width="InnerTrackerBarrelMod_width"
height="SiTrackerBarrelSpaceFrame_height"
length="InnerTrackerBarrelMod2_length"
thickness="SiTrackerBarrelSpaceFrameCF_thickness" />
<module_component name="silicon"
width="InnerTrackerBarrelMod_width"
length="InnerTrackerBarrelMod2_length" thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
<module_component name="aluminum1" material="Aluminum" sensitive="false"
width="InnerTrackerBarrelMod_width" length="InnerTrackerBarrelMod2_length" thickness="0.4*mm" vis="TrackerServiceVis" />
</module>
<layer module="InnerTrackerBarrel_Mod1" id="1" vis="TrackerLayerVis">
<barrel_envelope
inner_r="InnerTrackerBarrelLayer1_rmin"
outer_r="InnerTrackerBarrelLayer1_rmax"
z_length="InnerTrackerBarrelLayer1_length"/>
<layer_material surface="outer" binning="binPhi,binZ" bins0="100*InnerTrackerBarrelMod1_count" bins1="100" />
<rphi_layout phi_tilt="InnerTrackerBarrelModTilt_angle" nphi="InnerTrackerBarrelMod1_count" phi0="0.0" rc="InnerTrackerBarrelMod1_rmin" dr="0.0 * mm"/>
<z_layout dr="0.0 * mm" z0="0.0 * mm" nz="1"/>
</layer>
<layer module="InnerTrackerBarrel_Mod2" id="2" vis="TrackerLayerVis">
<barrel_envelope
inner_r="InnerTrackerBarrelLayer2_rmin"
outer_r="InnerTrackerBarrelLayer2_rmax"
z_length="InnerTrackerBarrelLayer2_length"/>
<layer_material surface="outer" binning="binPhi,binZ" bins0="100*InnerTrackerBarrelMod2_count" bins1="100" />
<rphi_layout phi_tilt="InnerTrackerBarrelModTilt_angle" nphi="InnerTrackerBarrelMod2_count" phi0="0.0" rc="InnerTrackerBarrelMod2_rmin" dr="0.0 * mm"/>
<z_layout dr="0.0 * mm" z0="0.0 * mm" nz="1"/>
</layer>
</detector>
</detectors>
<documentation>
## Inner silicon tracker disks, symmetric between N and P
</documentation>
<define>
<comment> Global Si endcap variables </comment>
<constant name="SiTrackerEndcapMod_thickness" value="SiTrackerEndcapCF_thickness + SiTrackerEndcapAl_thickness + SiTrackerSensor_thickness" />
<constant name="SiTrackerEndcapMod_angle" value="360.0*degree / SiTrackerEndcapMod_count * (1 + SiTrackerEndcapMod_overlap)" />
<constant name="SiTrackerEndcapLayer_thickness" value="SiTrackerEndcapMod_thickness + 2 * SiTrackerEndcapMod_dz + 1*um" />
<constant name="SiTrackerServiceCyl_rmin" value="SiTrackerCyl_rmin"/>
<constant name="SiTrackerServiceCyl_rmax" value="SiTrackerServiceCyl_rmin + SiTrackerServiceCylAl_thickness"/>
<constant name="SiTrackerSupportCyl_rmin" value="SiTrackerServiceCyl_rmax"/>
<constant name="SiTrackerSupportCyl_rmax" value="SiTrackerSupportCyl_rmin + SiTrackerSupportCylCF_thickness"/>
<comment> Inner Si endcap setup </comment>
<constant name="InnerTrackerEndcapMod1_zmin" value="InnerTrackerEndcap_zmin" />
<constant name="InnerTrackerEndcapMod1_rmin" value="InnerTrackerEndcap_rmin" />
<constant name="InnerTrackerEndcapMod1_rmax" value="min(InnerTrackerEndcapMod1_zmin * CentralTrackingBarrel_tan * 0.995, SiTrackerCyl_rmin)" />
<constant name="InnerTrackerEndcapMod1_x1" value="2 * InnerTrackerEndcapMod1_rmin * tan(SiTrackerEndcapMod_angle/2)" />
<constant name="InnerTrackerEndcapMod1_x2" value="2 * InnerTrackerEndcapMod1_rmax * sin(SiTrackerEndcapMod_angle/2)" />
<constant name="InnerTrackerEndcapMod1_y" value="InnerTrackerEndcapMod1_rmax * cos(SiTrackerEndcapMod_angle/2) - InnerTrackerEndcapMod1_rmin" />
<constant name="InnerTrackerEndcapMod2_zmin" value="InnerTrackerEndcapMod1_zmin + 1 * InnerTrackerEndcap_offset" />
<constant name="InnerTrackerEndcapMod2_rmin" value="InnerTrackerEndcap_rmin" />
<constant name="InnerTrackerEndcapMod2_rmax" value="min(InnerTrackerEndcapMod2_zmin * CentralTrackingBarrel_tan * 0.995, SiTrackerCyl_rmin)" />
<constant name="InnerTrackerEndcapMod2_x1" value="2 * InnerTrackerEndcapMod2_rmin * tan(SiTrackerEndcapMod_angle/2)" />
<constant name="InnerTrackerEndcapMod2_x2" value="2 * InnerTrackerEndcapMod2_rmax * sin(SiTrackerEndcapMod_angle/2)" />
<constant name="InnerTrackerEndcapMod2_y" value="InnerTrackerEndcapMod2_rmax * cos(SiTrackerEndcapMod_angle/2) - InnerTrackerEndcapMod2_rmin" />
<constant name="InnerTrackerEndcapLayer1_rmin" value="InnerTrackerEndcapMod1_rmin - 1*um" />
<constant name="InnerTrackerEndcapLayer1_rmax" value="InnerTrackerEndcapMod1_rmax + 1*um" />
<constant name="InnerTrackerEndcapLayer1_zmin" value="InnerTrackerEndcapMod1_zmin - SiTrackerEndcapLayer_thickness/2" />
<constant name="InnerTrackerEndcapLayer2_rmin" value="InnerTrackerEndcapMod2_rmin - 1*um" />
<constant name="InnerTrackerEndcapLayer2_rmax" value="InnerTrackerEndcapMod2_rmax + 1*um" />
<constant name="InnerTrackerEndcapLayer2_zmin" value="InnerTrackerEndcapMod2_zmin - SiTrackerEndcapLayer_thickness/2" />
<constant name="InnerTrackerEndcapCone_zmin" value="InnerTrackerBarrelCone_zmax" />
<constant name="InnerTrackerEndcapServiceCone_rmin1" value="InnerTrackerEndcapCone_zmin * CentralTrackingBarrel_tan" />
<constant name="InnerTrackerEndcapServiceCone_rmax1" value="InnerTrackerEndcapServiceCone_rmin1 + SiTrackerServiceConeAl_thickness" />
<constant name="InnerTrackerEndcapServiceCone_rmin2" value="SiTrackerServiceCyl_rmin" />
<constant name="InnerTrackerEndcapServiceCone_rmax2" value="SiTrackerServiceCyl_rmax" />
<constant name="InnerTrackerEndcapCone_zmax" value="InnerTrackerEndcapServiceCone_rmin2 / CentralTrackingBarrel_tan" />
<constant name="InnerTrackerEndcapCone_z" value="(InnerTrackerEndcapCone_zmax + InnerTrackerEndcapCone_zmin)/2" />
<constant name="InnerTrackerEndcapCone_length" value="InnerTrackerEndcapCone_zmax - InnerTrackerEndcapCone_zmin" />
<constant name="InnerTrackerEndcapSupportCone_rmin1" value="InnerTrackerEndcapServiceCone_rmax1" />
<constant name="InnerTrackerEndcapSupportCone_rmax1" value="InnerTrackerEndcapSupportCone_rmin1 + SiTrackerSupportConeCF_thickness" />
<constant name="InnerTrackerEndcapSupportCone_rmin2" value="SiTrackerSupportCyl_rmin" />
<constant name="InnerTrackerEndcapSupportCone_rmax2" value="SiTrackerSupportCyl_rmax" />
<comment> The tracker endcap ends at the same place as the medial tracker barrel that sits around it </comment>
<constant name="InnerTrackerEndcap_zmax" value="MedialTrackerBarrel_rmin / CentralTrackingBarrel_tan" />
<constant name="InnerTrackerEndcapCyl_zmin" value="InnerTrackerEndcapCone_zmax" />
<constant name="InnerTrackerEndcapCyl_zmax" value="InnerTrackerEndcap_zmax" />
<constant name="InnerTrackerEndcapCyl_z" value="(InnerTrackerEndcapCyl_zmin + InnerTrackerEndcapCyl_zmax)/2" />
<constant name="InnerTrackerEndcapCyl_length" value="InnerTrackerEndcapCyl_zmax - InnerTrackerEndcapCyl_zmin" />
</define>
<detectors>
<detector
id="TrackerEndcapP_0_ID"
name="InnerTrackerEndcapP"
type="athena_TrapEndcapTracker"
readout="TrackerEndcapHits1"
vis="TrackerVis"
reflect="false">
<support material="Aluminum" name="serv_cone_pos" vis="TrackerServiceVis">
<shape type="Cone"
rmin1="InnerTrackerEndcapServiceCone_rmin1"
rmax1="InnerTrackerEndcapServiceCone_rmax1"
rmin2="InnerTrackerEndcapServiceCone_rmin2"
rmax2="InnerTrackerEndcapServiceCone_rmax2"
z="InnerTrackerEndcapCone_length/2"/>
<position x="0*cm" y="0*cm" z="InnerTrackerEndcapCone_z" />
</support>
<support material="CarbonFiber" name="sup_cone_pos" vis="TrackerSupportVis">
<shape type="Cone"
rmin1="InnerTrackerEndcapSupportCone_rmin1"
rmax1="InnerTrackerEndcapSupportCone_rmax1"
rmin2="InnerTrackerEndcapSupportCone_rmin2"
rmax2="InnerTrackerEndcapSupportCone_rmax2"
z="InnerTrackerEndcapCone_length/2"/>
<position x="0*cm" y="0*cm" z="InnerTrackerEndcapCone_z" />
</support>
<support material="Aluminum" name="serv_cyl_pos" vis="TrackerServiceVis"
rmin="SiTrackerServiceCyl_rmin"
thickness="SiTrackerServiceCylAl_thickness"
length="InnerTrackerEndcapCyl_length"
zstart="InnerTrackerEndcapCyl_zmin" />
<support material="CarbonFiber" name="sup_cyl_pos" vis="TrackerSupportVis"
rmin="SiTrackerSupportCyl_rmin"
thickness="SiTrackerSupportCylCF_thickness"
length="InnerTrackerEndcapCyl_length"
zstart="InnerTrackerEndcapCyl_zmin" />
<module name="Module1" vis="TrackerModuleVis">
<trd x1="InnerTrackerEndcapMod1_x1/2" x2="InnerTrackerEndcapMod1_x2/2" z="InnerTrackerEndcapMod1_y/2" />
<module_component thickness="SiTrackerEndcapCF_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
<module_component thickness="SiTrackerEndcapAl_thickness" material="Aluminum" vis="TrackerServiceVis" />
<module_component thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
</module>
<module name="Module2" vis="TrackerModuleVis">
<trd x1="InnerTrackerEndcapMod2_x1/2" x2="InnerTrackerEndcapMod2_x2/2" z="InnerTrackerEndcapMod2_y/2" />
<module_component thickness="SiTrackerEndcapCF_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
<module_component thickness="SiTrackerEndcapAl_thickness" material="Aluminum" vis="TrackerServiceVis" />
<module_component thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
</module>
<layer id="1">
<envelope vis="TrackerLayerVis"
rmin="InnerTrackerEndcapLayer1_rmin"
rmax="InnerTrackerEndcapLayer1_rmax"
length="SiTrackerEndcapLayer_thickness"
zstart="InnerTrackerEndcapLayer1_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*SiTrackerEndcapMod_count" bins1="256"/>
<ring
r="InnerTrackerEndcapMod1_rmin + InnerTrackerEndcapMod1_y/2"
zstart="0"
nmodules="SiTrackerEndcapMod_count"
dz="SiTrackerEndcapMod_dz"
module="Module1" />
</layer>
<layer id="2">
<envelope vis="TrackerLayerVis"
rmin="InnerTrackerEndcapLayer2_rmin"
rmax="InnerTrackerEndcapLayer2_rmax"
length="SiTrackerEndcapLayer_thickness"
zstart="InnerTrackerEndcapLayer2_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*SiTrackerEndcapMod_count" bins1="256"/>
<ring
r="InnerTrackerEndcapMod2_rmin + InnerTrackerEndcapMod2_y/2"
zstart="0"
nmodules="SiTrackerEndcapMod_count"
dz="SiTrackerEndcapMod_dz"
module="Module2" />
</layer>
</detector>
<detector
id="TrackerEndcapN_0_ID"
name="InnerTrackerEndcapN"
type="athena_TrapEndcapTracker"
readout="TrackerEndcapHits2"
vis="TrackerVis"
reflect="true">
<support material="Aluminum" name="serv_cone_neg" vis="TrackerServiceVis">
<shape type="Cone"
rmin1="InnerTrackerEndcapServiceCone_rmin2"
rmax1="InnerTrackerEndcapServiceCone_rmax2"
rmin2="InnerTrackerEndcapServiceCone_rmin1"
rmax2="InnerTrackerEndcapServiceCone_rmax1"
z="InnerTrackerEndcapCone_length/2"/>
<position x="0*cm" y="0*cm" z="-1*InnerTrackerEndcapCone_z" />
</support>
<support material="CarbonFiber" name="sup_cone_neg" vis="TrackerSupportVis">
<shape type="Cone"
rmin1="InnerTrackerEndcapSupportCone_rmin2"
rmax1="InnerTrackerEndcapSupportCone_rmax2"
rmin2="InnerTrackerEndcapSupportCone_rmin1"
rmax2="InnerTrackerEndcapSupportCone_rmax1"
z="InnerTrackerEndcapCone_length/2"/>
<position x="0*cm" y="0*cm" z="-1*InnerTrackerEndcapCone_z" />
</support>
<support material="Aluminum" name="serv_cyl_neg" vis="TrackerServiceVis"
rmin="SiTrackerServiceCyl_rmin"
thickness="SiTrackerServiceCylAl_thickness"
length="InnerTrackerEndcapCyl_length"
zstart="InnerTrackerEndcapCyl_zmin" />
<support material="CarbonFiber" name="sup_cyl_neg" vis="TrackerSupportVis"
rmin="SiTrackerSupportCyl_rmin"
thickness="SiTrackerSupportCylCF_thickness"
length="InnerTrackerEndcapCyl_length"
zstart="InnerTrackerEndcapCyl_zmin" />
<module name="Module1" vis="TrackerModuleVis">
<trd x1="InnerTrackerEndcapMod1_x1/2" x2="InnerTrackerEndcapMod1_x2/2" z="InnerTrackerEndcapMod1_y/2" />
<module_component thickness="SiTrackerEndcapCF_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
<module_component thickness="SiTrackerEndcapAl_thickness" material="Aluminum" vis="TrackerServiceVis" />
<module_component thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
</module>
<module name="Module2" vis="TrackerModuleVis">
<trd x1="InnerTrackerEndcapMod2_x1/2" x2="InnerTrackerEndcapMod2_x2/2" z="InnerTrackerEndcapMod2_y/2" />
<module_component thickness="SiTrackerEndcapCF_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
<module_component thickness="SiTrackerEndcapAl_thickness" material="Aluminum" vis="TrackerServiceVis" />
<module_component thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
</module>
<layer id="1">
<envelope vis="TrackerLayerVis"
rmin="InnerTrackerEndcapLayer1_rmin"
rmax="InnerTrackerEndcapLayer1_rmax"
length="SiTrackerEndcapLayer_thickness"
zstart="InnerTrackerEndcapLayer1_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*SiTrackerEndcapMod_count" bins1="256"/>
<ring
r="InnerTrackerEndcapMod1_rmin + InnerTrackerEndcapMod1_y/2"
zstart="0"
nmodules="SiTrackerEndcapMod_count"
dz="SiTrackerEndcapMod_dz"
module="Module1" />
</layer>
<layer id="2">
<envelope vis="TrackerLayerVis"
rmin="InnerTrackerEndcapLayer2_rmin"
rmax="InnerTrackerEndcapLayer2_rmax"
length="SiTrackerEndcapLayer_thickness"
zstart="InnerTrackerEndcapLayer2_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*SiTrackerEndcapMod_count" bins1="256"/>
<ring
r="InnerTrackerEndcapMod2_rmin + InnerTrackerEndcapMod2_y/2"
zstart="0"
nmodules="SiTrackerEndcapMod_count"
dz="SiTrackerEndcapMod_dz"
module="Module2" />
</layer>
</detector>
</detectors>
<documentation>
## Medial barrel tracker (MMGAS)
</documentation>
<define>
<comment> Global MMGAS variables </comment>
<constant
name="MMTrackerBarrelMod_thickness"
value="MMKaptonOverlay_thickness + MMCuGround_thickness + MMPCB_thickness
+ MMCuStrip_thickness + MMKaptonStrip_thickness + MMResistiveStrip_thickness
+ MMGas_thickness + MMMesh_thickness + MMGasGap_thickness
+ MMDriftCuElectrode_thickness + MMDriftKapton_thickness
+ MMDriftCuGround_thickness" />
<comment> Medial barrel implementation </comment>
<comment> The value of InnerTrackerEndcap_zmax is calculated above based on the rmin of the MedialTrackerBarrel </comment>
<constant name="MedialTrackerBarrel_length" value="2 * InnerTrackerEndcap_zmax"/>
<constant name="MedialTrackerBarrelMod1_rmin" value="MedialTrackerBarrel_rmin"/>
<constant name="MedialTrackerBarrelMod_length" value="MedialTrackerBarrel_length - 2*um" />
<constant name="MedialTrackerBarrelMod2_rmin" value="MedialTrackerBarrel_rmin + 1 * MedialTrackerBarrel_offset"/>
<constant name="MedialTrackerBarrelMod_count" value="128" />
<constant name="MedialTrackerBarrelMod1_width" value="2*MedialTrackerBarrelMod1_rmin * tan(180*degree/MedialTrackerBarrelMod_count)" />
<constant name="MedialTrackerBarrelMod2_width" value="2*MedialTrackerBarrelMod2_rmin * tan(180*degree/MedialTrackerBarrelMod_count)" />
<constant name="MedialTrackerBarrelLayer_length" value="MedialTrackerBarrel_length"/>
<constant name="MedialTrackerBarrelLayer_thickness" value="MMTrackerBarrelMod_thickness + 1.0*cm"/>
<constant name="MedialTrackerBarrelLayer1_rmin" value="MedialTrackerBarrelMod1_rmin - MedialTrackerBarrelLayer_thickness / 5" />
<constant name="MedialTrackerBarrelLayer1_rmax" value="MedialTrackerBarrelLayer1_rmin + MedialTrackerBarrelLayer_thickness" />
<constant name="MedialTrackerBarrelLayer2_rmin" value="MedialTrackerBarrelMod2_rmin - MedialTrackerBarrelLayer_thickness / 5" />
<constant name="MedialTrackerBarrelLayer2_rmax" value="MedialTrackerBarrelLayer2_rmin + MedialTrackerBarrelLayer_thickness" />
<constant name="MedialTrackerBarrelEnvelope_rmin" value="MedialTrackerBarrelLayer1_rmin" />
<constant name="MedialTrackerBarrelEnvelope_rmax" value="MedialTrackerBarrelLayer2_rmax" />
<constant name="MedialTrackerBarrelEnvelope_length" value="MedialTrackerBarrelLayer_length" />
</define>
<detectors>
<detector
id="TrackerBarrel_1_ID"
name="MedialTrackerBarrel"
type="athena_TrackerBarrel"
readout="MPGDTrackerBarrelHits1"
insideTrackingVolume="true">
<dimensions
rmin="MedialTrackerBarrelEnvelope_rmin"
rmax="MedialTrackerBarrelEnvelope_rmax"
length="MedialTrackerBarrelEnvelope_length"/>
<module name="MedialTrackerBarrel_Mod1" vis="TrackerMPGDVis">
<comment> Going from the inside (sensitive) side to the readout side </comment>
<module_component name="DriftCuGround" thickness="MMDriftCuGround_thickness" material="Copper" vis="TrackerMPGDVis" width="MedialTrackerBarrelMod1_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="DriftKapton" thickness="MMDriftKapton_thickness" material="Kapton" width="MedialTrackerBarrelMod1_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="DriftCuElectrode" thickness="MMDriftCuElectrode_thickness" material="Copper" width="MedialTrackerBarrelMod1_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="GasGap" thickness="MMGasGap_thickness" material="Ar90IsoButane" sensitive="True" width="MedialTrackerBarrelMod1_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="Mesh" thickness="MMMesh_thickness" material="MMGAS_InoxForMesh" width="MedialTrackerBarrelMod1_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="Gas" thickness="MMGas_thickness" material="Ar90IsoButane" width="MedialTrackerBarrelMod1_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="ResistiveStrips" thickness="MMResistiveStrip_thickness" material="MMGAS_ResistivePaste" width="MedialTrackerBarrelMod1_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="KaptonStrips" thickness="MMKaptonStrip_thickness" material="Kapton" width="MedialTrackerBarrelMod1_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="CuStrips" thickness="MMCuStrip_thickness" material="Copper" width="MedialTrackerBarrelMod1_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="PCB" thickness="MMPCB_thickness" material="Fr4" width="MedialTrackerBarrelMod1_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="CuGround" thickness="MMCuGround_thickness" material="Copper" width="MedialTrackerBarrelMod1_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="KaptonOverlay" thickness="MMKaptonOverlay_thickness" material="Kapton" vis="TrackerSupportVis" width="MedialTrackerBarrelMod1_width" length="MedialTrackerBarrelMod_length"/>
</module>
<module name="MedialTrackerBarrel_Mod2" vis="TrackerMPGDVis">
<comment> Going from the inside (sensitive) side to the readout side </comment>
<module_component name="DriftCuGround" thickness="MMDriftCuGround_thickness" material="Copper" vis="TrackerMPGDVis" width="MedialTrackerBarrelMod2_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="DriftKapton" thickness="MMDriftKapton_thickness" material="Kapton" width="MedialTrackerBarrelMod2_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="DriftCuElectrode" thickness="MMDriftCuElectrode_thickness" material="Copper" width="MedialTrackerBarrelMod2_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="GasGap" thickness="MMGasGap_thickness" material="Ar90IsoButane" sensitive="True" width="MedialTrackerBarrelMod2_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="Mesh" thickness="MMMesh_thickness" material="MMGAS_InoxForMesh" width="MedialTrackerBarrelMod2_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="Gas" thickness="MMGas_thickness" material="Ar90IsoButane" width="MedialTrackerBarrelMod2_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="ResistiveStrips" thickness="MMResistiveStrip_thickness" material="MMGAS_ResistivePaste" width="MedialTrackerBarrelMod2_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="KaptonStrips" thickness="MMKaptonStrip_thickness" material="Kapton" width="MedialTrackerBarrelMod2_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="CuStrips" thickness="MMCuStrip_thickness" material="Copper" width="MedialTrackerBarrelMod2_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="PCB" thickness="MMPCB_thickness" material="Fr4" width="MedialTrackerBarrelMod2_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="CuGround" thickness="MMCuGround_thickness" material="Copper" width="MedialTrackerBarrelMod2_width" length="MedialTrackerBarrelMod_length"/>
<module_component name="KaptonOverlay" thickness="MMKaptonOverlay_thickness" material="Kapton" vis="TrackerSupportVis" width="MedialTrackerBarrelMod2_width" length="MedialTrackerBarrelMod_length"/>
</module>
<layer module="MedialTrackerBarrel_Mod1" id="1" vis="TrackerMMGASLayerVis">
<barrel_envelope
inner_r="MedialTrackerBarrelLayer1_rmin"
outer_r="MedialTrackerBarrelLayer1_rmax"
z_length="MedialTrackerBarrelLayer_length"/>
<layer_material surface="outer" binning="binPhi,binZ" bins0="10*MedialTrackerBarrelMod_count" bins1="100" />
<rphi_layout phi_tilt="0" nphi="MedialTrackerBarrelMod_count" phi0="0.0" rc="MedialTrackerBarrelMod1_rmin" dr="0.0 * mm"/>
<z_layout dr="0.0 * mm" z0="0.0 * mm" nz="1"/>
</layer>
<layer module="MedialTrackerBarrel_Mod2" id="2" vis="TrackerMMGASLayerVis">
<barrel_envelope
inner_r="MedialTrackerBarrelLayer2_rmin"
outer_r="MedialTrackerBarrelLayer2_rmax"
z_length="MedialTrackerBarrelLayer_length"/>
<layer_material surface="outer" binning="binPhi,binZ" bins0="10*MedialTrackerBarrelMod_count" bins1="100" />
<rphi_layout phi_tilt="0" nphi="MedialTrackerBarrelMod_count" phi0="0.0" rc="MedialTrackerBarrelMod2_rmin" dr="0.0 * mm"/>
<z_layout dr="0.0 * mm" z0="0.0 * mm" nz="1"/>
</layer>
</detector>
</detectors>
<documentation>
## Medial silicon tracker disks (1 each), symmetric between N and P except for disk rmin
</documentation>
<define>
<comment> Medial Si endcap setup </comment>
<constant name="MedialTrackerEndcapPMod1_zmin" value="MedialTrackerEndcap_zmin" />
<constant name="MedialTrackerEndcapPMod1_rmin" value="MedialTrackerEndcapP_rmin" />
<constant name="MedialTrackerEndcapPMod1_rmax" value="min(MedialTrackerEndcapPMod1_zmin * CentralTrackingBarrel_tan * 0.995, SiTrackerCyl_rmin)" />
<constant name="MedialTrackerEndcapPMod1_x1" value="2 * MedialTrackerEndcapPMod1_rmin * tan(SiTrackerEndcapMod_angle/2)" />
<constant name="MedialTrackerEndcapPMod1_x2" value="2 * MedialTrackerEndcapPMod1_rmax * sin(SiTrackerEndcapMod_angle/2)" />
<constant name="MedialTrackerEndcapPMod1_y" value="MedialTrackerEndcapPMod1_rmax * cos(SiTrackerEndcapMod_angle/2) - MedialTrackerEndcapPMod1_rmin" />
<constant name="MedialTrackerEndcapPLayer1_rmin" value="MedialTrackerEndcapPMod1_rmin - 1*um" />
<constant name="MedialTrackerEndcapPLayer1_rmax" value="MedialTrackerEndcapPMod1_rmax + 1*um" />
<constant name="MedialTrackerEndcapPLayer1_zmin" value="MedialTrackerEndcapPMod1_zmin - SiTrackerEndcapLayer_thickness/2" />
<constant name="MedialTrackerEndcapNMod1_zmin" value="MedialTrackerEndcap_zmin" />
<constant name="MedialTrackerEndcapNMod1_rmin" value="MedialTrackerEndcapN_rmin" />
<constant name="MedialTrackerEndcapNMod1_rmax" value="min(MedialTrackerEndcapNMod1_zmin * CentralTrackingBarrel_tan * 0.995, SiTrackerCyl_rmin)" />
<constant name="MedialTrackerEndcapNMod1_x1" value="2 * MedialTrackerEndcapNMod1_rmin * tan(SiTrackerEndcapMod_angle/2)" />
<constant name="MedialTrackerEndcapNMod1_x2" value="2 * MedialTrackerEndcapNMod1_rmax * sin(SiTrackerEndcapMod_angle/2)" />
<constant name="MedialTrackerEndcapNMod1_y" value="MedialTrackerEndcapNMod1_rmax * cos(SiTrackerEndcapMod_angle/2) - MedialTrackerEndcapNMod1_rmin" />
<constant name="MedialTrackerEndcapNLayer1_rmin" value="MedialTrackerEndcapNMod1_rmin - 1*um" />
<constant name="MedialTrackerEndcapNLayer1_rmax" value="MedialTrackerEndcapNMod1_rmax + 1*um" />
<constant name="MedialTrackerEndcapNLayer1_zmin" value="MedialTrackerEndcapNMod1_zmin - SiTrackerEndcapLayer_thickness/2" />
<comment> The tracker endcap ends at the same place as the outer tracker barrel that sits around it </comment>
<constant name="MedialTrackerEndcap_zmax" value="OuterTrackerBarrel_rmin / CentralTrackingBarrel_tan" />
<constant name="MedialTrackerEndcapCyl_zmin" value="InnerTrackerEndcap_zmax" />
<constant name="MedialTrackerEndcapCyl_zmax" value="MedialTrackerEndcap_zmax" />
<constant name="MedialTrackerEndcapCyl_z" value="(MedialTrackerEndcapCyl_zmin + MedialTrackerEndcapCyl_zmax)/2" />
<constant name="MedialTrackerEndcapCyl_length" value="MedialTrackerEndcapCyl_zmax - MedialTrackerEndcapCyl_zmin" />
</define>
<detectors>
<detector
id="TrackerEndcapP_1_ID"
name="MedialTrackerEndcapP"
type="athena_TrapEndcapTracker"
readout="TrackerEndcapHits3"
vis="TrackerVis"
reflect="false">
<support material="Aluminum" name="serv_cyl_pos" vis="TrackerServiceVis"
rmin="SiTrackerServiceCyl_rmin"
thickness="SiTrackerServiceCylAl_thickness"
length="MedialTrackerEndcapCyl_length"
zstart="MedialTrackerEndcapCyl_zmin" />
<support material="CarbonFiber" name="sup_cyl_pos" vis="TrackerSupportVis"
rmin="SiTrackerSupportCyl_rmin"
thickness="SiTrackerSupportCylCF_thickness"
length="MedialTrackerEndcapCyl_length"
zstart="MedialTrackerEndcapCyl_zmin" />
<module name="Module1" vis="TrackerModuleVis">
<trd x1="MedialTrackerEndcapPMod1_x1/2" x2="MedialTrackerEndcapPMod1_x2/2" z="MedialTrackerEndcapPMod1_y/2" />
<module_component thickness="SiTrackerEndcapCF_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
<module_component thickness="SiTrackerEndcapAl_thickness" material="Aluminum" vis="TrackerServiceVis" />
<module_component thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
</module>
<layer id="1">
<envelope vis="TrackerLayerVis"
rmin="MedialTrackerEndcapPLayer1_rmin"
rmax="MedialTrackerEndcapPLayer1_rmax"
length="SiTrackerEndcapLayer_thickness"
zstart="MedialTrackerEndcapPLayer1_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*SiTrackerEndcapMod_count" bins1="256"/>
<ring
r="MedialTrackerEndcapPMod1_rmin + MedialTrackerEndcapPMod1_y/2"
zstart="0"
nmodules="SiTrackerEndcapMod_count"
dz="SiTrackerEndcapMod_dz"
module="Module1" />
</layer>
</detector>
<detector
id="TrackerEndcapN_1_ID"
name="MedialTrackerEndcapN"
type="athena_TrapEndcapTracker"
readout="TrackerEndcapHits4"
vis="TrackerVis"
reflect="true">
<support material="Aluminum" name="serv_cyl_neg" vis="TrackerServiceVis"
rmin="SiTrackerServiceCyl_rmin"
thickness="SiTrackerServiceCylAl_thickness"
length="MedialTrackerEndcapCyl_length"
zstart="MedialTrackerEndcapCyl_zmin" />
<support material="CarbonFiber" name="sup_cyl_neg" vis="TrackerSupportVis"
rmin="SiTrackerSupportCyl_rmin"
thickness="SiTrackerSupportCylCF_thickness"
length="MedialTrackerEndcapCyl_length"
zstart="MedialTrackerEndcapCyl_zmin" />
<module name="Module1" vis="TrackerModuleVis">
<trd x1="MedialTrackerEndcapNMod1_x1/2" x2="MedialTrackerEndcapNMod1_x2/2" z="MedialTrackerEndcapNMod1_y/2" />
<module_component thickness="SiTrackerEndcapCF_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
<module_component thickness="SiTrackerEndcapAl_thickness" material="Aluminum" vis="TrackerServiceVis" />
<module_component thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
</module>
<layer id="1">
<envelope vis="TrackerLayerVis"
rmin="MedialTrackerEndcapNLayer1_rmin"
rmax="MedialTrackerEndcapNLayer1_rmax"
length="SiTrackerEndcapLayer_thickness"
zstart="MedialTrackerEndcapNLayer1_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*SiTrackerEndcapMod_count" bins1="256"/>
<ring
r="MedialTrackerEndcapNMod1_rmin + MedialTrackerEndcapNMod1_y/2"
zstart="0"
nmodules="SiTrackerEndcapMod_count"
dz="SiTrackerEndcapMod_dz"
module="Module1" />
</layer>
</detector>
</detectors>
<documentation>
## Outer barrel tracker (MMGAS)
</documentation>
<define>
<comment> The value of MedialTrackerEndcap_zmax is calculated above based on the rmin of the OuterTrackerBarrel </comment>
<constant name="OuterTrackerBarrel_length" value="2 * MedialTrackerEndcap_zmax"/>
<constant name="OuterTrackerBarrelMod1_rmin" value="OuterTrackerBarrel_rmin"/>
<constant name="OuterTrackerBarrelMod_length" value="OuterTrackerBarrel_length - 2*um" />
<constant name="OuterTrackerBarrelMod2_rmin" value="OuterTrackerBarrel_rmin + 1 * OuterTrackerBarrel_offset"/>
<constant name="OuterTrackerBarrelMod_count" value="128" />
<constant name="OuterTrackerBarrelMod1_width" value="2*OuterTrackerBarrelMod1_rmin * tan(180*degree/OuterTrackerBarrelMod_count)" />
<constant name="OuterTrackerBarrelMod2_width" value="2*OuterTrackerBarrelMod2_rmin * tan(180*degree/OuterTrackerBarrelMod_count)" />
<constant name="OuterTrackerBarrelLayer_length" value="OuterTrackerBarrel_length"/>
<constant name="OuterTrackerBarrelLayer_thickness" value="MMTrackerBarrelMod_thickness + 1.0*cm"/>
<constant name="OuterTrackerBarrelLayer1_rmin" value="OuterTrackerBarrelMod1_rmin - OuterTrackerBarrelLayer_thickness / 5" />
<constant name="OuterTrackerBarrelLayer1_rmax" value="OuterTrackerBarrelLayer1_rmin + OuterTrackerBarrelLayer_thickness" />
<constant name="OuterTrackerBarrelLayer2_rmin" value="OuterTrackerBarrelMod2_rmin - OuterTrackerBarrelLayer_thickness / 5" />
<constant name="OuterTrackerBarrelLayer2_rmax" value="OuterTrackerBarrelLayer2_rmin + OuterTrackerBarrelLayer_thickness" />
<constant name="OuterTrackerBarrelEnvelope_rmin" value="OuterTrackerBarrelLayer1_rmin" />
<constant name="OuterTrackerBarrelEnvelope_rmax" value="OuterTrackerBarrelLayer2_rmax" />
<constant name="OuterTrackerBarrelEnvelope_length" value="OuterTrackerBarrelLayer_length" />
</define>
<detectors>
<detector
id="TrackerBarrel_2_ID"
name="OuterTrackerBarrel"
type="athena_TrackerBarrel"
readout="MPGDTrackerBarrelHits2"
insideTrackingVolume="true">
<dimensions
rmin="OuterTrackerBarrelEnvelope_rmin"
rmax="OuterTrackerBarrelEnvelope_rmax"
length="OuterTrackerBarrelEnvelope_length"/>
<module name="OuterTrackerBarrel_Mod1" vis="TrackerMPGDVis">
<comment> Going from the inside (sensitive) side to the readout side </comment>
<module_component name="DriftCuGround" thickness="MMDriftCuGround_thickness" material="Copper" vis="TrackerMPGDVis" width="OuterTrackerBarrelMod1_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="DriftKapton" thickness="MMDriftKapton_thickness" material="Kapton" width="OuterTrackerBarrelMod1_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="DriftCuElectrode" thickness="MMDriftCuElectrode_thickness" material="Copper" width="OuterTrackerBarrelMod1_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="GasGap" thickness="MMGasGap_thickness" material="Ar90IsoButane" sensitive="True" width="OuterTrackerBarrelMod1_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="Mesh" thickness="MMMesh_thickness" material="MMGAS_InoxForMesh" width="OuterTrackerBarrelMod1_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="Gas" thickness="MMGas_thickness" material="Ar90IsoButane" width="OuterTrackerBarrelMod1_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="ResistiveStrips" thickness="MMResistiveStrip_thickness" material="MMGAS_ResistivePaste" width="OuterTrackerBarrelMod1_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="KaptonStrips" thickness="MMKaptonStrip_thickness" material="Kapton" width="OuterTrackerBarrelMod1_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="CuStrips" thickness="MMCuStrip_thickness" material="Copper" width="OuterTrackerBarrelMod1_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="PCB" thickness="MMPCB_thickness" material="Fr4" width="OuterTrackerBarrelMod1_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="CuGround" thickness="MMCuGround_thickness" material="Copper" width="OuterTrackerBarrelMod1_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="KaptonOverlay" thickness="MMKaptonOverlay_thickness" material="Kapton" vis="TrackerSupportVis" width="OuterTrackerBarrelMod1_width" length="OuterTrackerBarrelMod_length"/>
</module>
<module name="OuterTrackerBarrel_Mod2" vis="TrackerMPGDVis">
<comment> Going from the inside (sensitive) side to the readout side </comment>
<module_component name="DriftCuGround" thickness="MMDriftCuGround_thickness" material="Copper" vis="TrackerMPGDVis" width="OuterTrackerBarrelMod2_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="DriftKapton" thickness="MMDriftKapton_thickness" material="Kapton" width="OuterTrackerBarrelMod2_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="DriftCuElectrode" thickness="MMDriftCuElectrode_thickness" material="Copper" width="OuterTrackerBarrelMod2_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="GasGap" thickness="MMGasGap_thickness" material="Ar90IsoButane" sensitive="True" width="OuterTrackerBarrelMod2_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="Mesh" thickness="MMMesh_thickness" material="MMGAS_InoxForMesh" width="OuterTrackerBarrelMod2_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="Gas" thickness="MMGas_thickness" material="Ar90IsoButane" width="OuterTrackerBarrelMod2_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="ResistiveStrips" thickness="MMResistiveStrip_thickness" material="MMGAS_ResistivePaste" width="OuterTrackerBarrelMod2_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="KaptonStrips" thickness="MMKaptonStrip_thickness" material="Kapton" width="OuterTrackerBarrelMod2_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="CuStrips" thickness="MMCuStrip_thickness" material="Copper" width="OuterTrackerBarrelMod2_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="PCB" thickness="MMPCB_thickness" material="Fr4" width="OuterTrackerBarrelMod2_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="CuGround" thickness="MMCuGround_thickness" material="Copper" width="OuterTrackerBarrelMod2_width" length="OuterTrackerBarrelMod_length"/>
<module_component name="KaptonOverlay" thickness="MMKaptonOverlay_thickness" material="Kapton" vis="TrackerSupportVis" width="OuterTrackerBarrelMod2_width" length="OuterTrackerBarrelMod_length"/>
</module>
<layer module="OuterTrackerBarrel_Mod1" id="1" vis="TrackerMMGASLayerVis">
<barrel_envelope
inner_r="OuterTrackerBarrelLayer1_rmin"
outer_r="OuterTrackerBarrelLayer1_rmax"
z_length="OuterTrackerBarrelLayer_length"/>
<layer_material surface="outer" binning="binPhi,binZ" bins0="10*OuterTrackerBarrelMod_count" bins1="100" />
<rphi_layout phi_tilt="0" nphi="OuterTrackerBarrelMod_count" phi0="0.0" rc="OuterTrackerBarrelMod1_rmin" dr="0.0 * mm"/>
<z_layout dr="0.0 * mm" z0="0.0 * mm" nz="1"/>
</layer>
<layer module="OuterTrackerBarrel_Mod2" id="2" vis="TrackerMMGASLayerVis">
<barrel_envelope
inner_r="OuterTrackerBarrelLayer2_rmin"
outer_r="OuterTrackerBarrelLayer2_rmax"
z_length="OuterTrackerBarrelLayer_length"/>
<layer_material surface="outer" binning="binPhi,binZ" bins0="10*OuterTrackerBarrelMod_count" bins1="100" />
<rphi_layout phi_tilt="0" nphi="OuterTrackerBarrelMod_count" phi0="0.0" rc="OuterTrackerBarrelMod2_rmin" dr="0.0 * mm"/>
<z_layout dr="0.0 * mm" z0="0.0 * mm" nz="1"/>
</layer>
</detector>
</detectors>
<documentation>
## Outer silicon tracker disks (3P, 2N)
</documentation>
<define>
<comment> Positive disks </comment>
<constant name="OuterTrackerEndcapPMod1_zmin" value="OuterTrackerEndcapP_zmin" />
<constant name="OuterTrackerEndcapPMod1_rmin" value="OuterTrackerEndcapPMod1_zmin * CentralTrackingRegionP_tan * 0.99" />
<constant name="OuterTrackerEndcapPMod1_rmax" value="SiTrackerCyl_rmin" />
<constant name="OuterTrackerEndcapPMod1_x1" value="2 * OuterTrackerEndcapPMod1_rmin * tan(SiTrackerEndcapMod_angle/2)" />
<constant name="OuterTrackerEndcapPMod1_x2" value="2 * OuterTrackerEndcapPMod1_rmax * sin(SiTrackerEndcapMod_angle/2)" />
<constant name="OuterTrackerEndcapPMod1_y" value="OuterTrackerEndcapPMod1_rmax * cos(SiTrackerEndcapMod_angle/2) - OuterTrackerEndcapPMod1_rmin" />
<constant name="OuterTrackerEndcapPLayer1_rmin" value="OuterTrackerEndcapPMod1_rmin - 1*um" />
<constant name="OuterTrackerEndcapPLayer1_rmax" value="OuterTrackerEndcapPMod1_rmax + 1*um" />
<constant name="OuterTrackerEndcapPLayer1_zmin" value="OuterTrackerEndcapPMod1_zmin - SiTrackerEndcapLayer_thickness/2" />
<constant name="OuterTrackerEndcapPMod2_zmin" value="OuterTrackerEndcapP_zmin + 1 * OuterTrackerEndcapP_offset" />
<constant name="OuterTrackerEndcapPMod2_rmin" value="OuterTrackerEndcapPMod2_zmin * CentralTrackingRegionP_tan * 0.99" />
<constant name="OuterTrackerEndcapPMod2_rmax" value="SiTrackerCyl_rmin" />
<constant name="OuterTrackerEndcapPMod2_x1" value="2 * OuterTrackerEndcapPMod2_rmin * tan(SiTrackerEndcapMod_angle/2)" />
<constant name="OuterTrackerEndcapPMod2_x2" value="2 * OuterTrackerEndcapPMod2_rmax * sin(SiTrackerEndcapMod_angle/2)" />
<constant name="OuterTrackerEndcapPMod2_y" value="OuterTrackerEndcapPMod2_rmax * cos(SiTrackerEndcapMod_angle/2) - OuterTrackerEndcapPMod2_rmin" />
<constant name="OuterTrackerEndcapPLayer2_rmin" value="OuterTrackerEndcapPMod2_rmin - 1*um" />
<constant name="OuterTrackerEndcapPLayer2_rmax" value="OuterTrackerEndcapPMod2_rmax + 1*um" />
<constant name="OuterTrackerEndcapPLayer2_zmin" value="OuterTrackerEndcapPMod2_zmin - SiTrackerEndcapLayer_thickness/2" />
<constant name="OuterTrackerEndcapPMod3_zmin" value="OuterTrackerEndcapP_zmin + 2 * OuterTrackerEndcapP_offset" />
<constant name="OuterTrackerEndcapPMod3_rmin" value="OuterTrackerEndcapPMod3_zmin * CentralTrackingRegionP_tan * 1.00" />
<constant name="OuterTrackerEndcapPMod3_rmax" value="SiTrackerCyl_rmin" />
<constant name="OuterTrackerEndcapPMod3_x1" value="2 * OuterTrackerEndcapPMod3_rmin * tan(SiTrackerEndcapMod_angle/2)" />
<constant name="OuterTrackerEndcapPMod3_x2" value="2 * OuterTrackerEndcapPMod3_rmax * sin(SiTrackerEndcapMod_angle/2)" />
<constant name="OuterTrackerEndcapPMod3_y" value="OuterTrackerEndcapPMod3_rmax * cos(SiTrackerEndcapMod_angle/2) - OuterTrackerEndcapPMod3_rmin" />
<constant name="OuterTrackerEndcapPLayer3_rmin" value="OuterTrackerEndcapPMod3_rmin - 1*um" />
<constant name="OuterTrackerEndcapPLayer3_rmax" value="OuterTrackerEndcapPMod3_rmax + 1*um" />
<constant name="OuterTrackerEndcapPLayer3_zmin" value="OuterTrackerEndcapPMod3_zmin - SiTrackerEndcapLayer_thickness/2" />
<comment> The Si tracker endcap ends at position of the last disk </comment>
<constant name="OuterTrackerEndcapP_zmax" value="OuterTrackerEndcapPLayer3_zmin + SiTrackerEndcapLayer_thickness" />
<constant name="OuterTrackerEndcapPCyl_zmin" value="MedialTrackerEndcap_zmax" />
<constant name="OuterTrackerEndcapPCyl_zmax" value="OuterTrackerEndcapP_zmax" />
<constant name="OuterTrackerEndcapPCyl_z" value="(OuterTrackerEndcapPCyl_zmin + OuterTrackerEndcapPCyl_zmax)/2" />
<constant name="OuterTrackerEndcapPCyl_length" value="OuterTrackerEndcapPCyl_zmax - OuterTrackerEndcapPCyl_zmin" />
<comment> Negative disks </comment>
<constant name="OuterTrackerEndcapNMod1_zmin" value="OuterTrackerEndcapN_zmin" />
<constant name="OuterTrackerEndcapNMod1_rmin" value="OuterTrackerEndcapNMod1_zmin * CentralTrackingRegionN_tan * 1.00" />
<constant name="OuterTrackerEndcapNMod1_rmax" value="SiTrackerCyl_rmin" />
<constant name="OuterTrackerEndcapNMod1_x1" value="2 * OuterTrackerEndcapNMod1_rmin * tan(SiTrackerEndcapMod_angle/2)" />
<constant name="OuterTrackerEndcapNMod1_x2" value="2 * OuterTrackerEndcapNMod1_rmax * sin(SiTrackerEndcapMod_angle/2)" />
<constant name="OuterTrackerEndcapNMod1_y" value="OuterTrackerEndcapNMod1_rmax * cos(SiTrackerEndcapMod_angle/2) - OuterTrackerEndcapNMod1_rmin" />
<constant name="OuterTrackerEndcapNLayer1_rmin" value="OuterTrackerEndcapNMod1_rmin - 1*um" />
<constant name="OuterTrackerEndcapNLayer1_rmax" value="OuterTrackerEndcapNMod1_rmax + 1*um" />
<constant name="OuterTrackerEndcapNLayer1_zmin" value="OuterTrackerEndcapNMod1_zmin - SiTrackerEndcapLayer_thickness/2" />
<constant name="OuterTrackerEndcapNMod2_zmin" value="OuterTrackerEndcapN_zmin + 1 * OuterTrackerEndcapN_offset" />
<constant name="OuterTrackerEndcapNMod2_rmin" value="OuterTrackerEndcapNMod2_zmin * CentralTrackingRegionN_tan * 1.00" />
<constant name="OuterTrackerEndcapNMod2_rmax" value="SiTrackerCyl_rmin" />
<constant name="OuterTrackerEndcapNMod2_x1" value="2 * OuterTrackerEndcapNMod2_rmin * tan(SiTrackerEndcapMod_angle/2)" />
<constant name="OuterTrackerEndcapNMod2_x2" value="2 * OuterTrackerEndcapNMod2_rmax * sin(SiTrackerEndcapMod_angle/2)" />
<constant name="OuterTrackerEndcapNMod2_y" value="OuterTrackerEndcapNMod2_rmax * cos(SiTrackerEndcapMod_angle/2) - OuterTrackerEndcapNMod2_rmin" />
<constant name="OuterTrackerEndcapNLayer2_rmin" value="OuterTrackerEndcapNMod2_rmin - 1*um" />
<constant name="OuterTrackerEndcapNLayer2_rmax" value="OuterTrackerEndcapNMod2_rmax + 1*um" />
<constant name="OuterTrackerEndcapNLayer2_zmin" value="OuterTrackerEndcapNMod2_zmin - SiTrackerEndcapLayer_thickness/2" />
<comment> The Si tracker endcap ends at position of the last disk </comment>
<constant name="OuterTrackerEndcapN_zmax" value="OuterTrackerEndcapNLayer2_zmin + SiTrackerEndcapLayer_thickness" />
<constant name="OuterTrackerEndcapNCyl_zmin" value="MedialTrackerEndcap_zmax" />
<constant name="OuterTrackerEndcapNCyl_zmax" value="OuterTrackerEndcapN_zmax" />
<constant name="OuterTrackerEndcapNCyl_z" value="(OuterTrackerEndcapNCyl_zmin + OuterTrackerEndcapNCyl_zmax)/2" />
<constant name="OuterTrackerEndcapNCyl_length" value="OuterTrackerEndcapNCyl_zmax - OuterTrackerEndcapNCyl_zmin" />
</define>
<detectors>
<detector
id="TrackerEndcapP_2_ID"
name="OuterTrackerEndcapP"
type="athena_TrapEndcapTracker"
readout="TrackerEndcapHits5"
vis="TrackerVis"
reflect="false">
<support material="Aluminum" name="serv_cyl_pos" vis="TrackerServiceVis"
rmin="SiTrackerServiceCyl_rmin"
thickness="SiTrackerServiceCylAl_thickness"
length="OuterTrackerEndcapPCyl_length"
zstart="OuterTrackerEndcapPCyl_zmin" />
<support material="CarbonFiber" name="sup_cyl_pos" vis="TrackerSupportVis"
rmin="SiTrackerSupportCyl_rmin"
thickness="SiTrackerSupportCylCF_thickness"
length="OuterTrackerEndcapPCyl_length"
zstart="OuterTrackerEndcapPCyl_zmin" />
<module name="Module1" vis="TrackerModuleVis">
<trd x1="OuterTrackerEndcapPMod1_x1/2" x2="OuterTrackerEndcapPMod1_x2/2" z="OuterTrackerEndcapPMod1_y/2" />
<module_component thickness="SiTrackerEndcapCF_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
<module_component thickness="SiTrackerEndcapAl_thickness" material="Aluminum" vis="TrackerServiceVis" />
<module_component thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
</module>
<module name="Module2" vis="TrackerModuleVis">
<trd x1="OuterTrackerEndcapPMod2_x1/2" x2="OuterTrackerEndcapPMod2_x2/2" z="OuterTrackerEndcapPMod2_y/2" />
<module_component thickness="SiTrackerEndcapCF_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
<module_component thickness="SiTrackerEndcapAl_thickness" material="Aluminum" vis="TrackerServiceVis" />
<module_component thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
</module>
<module name="Module3" vis="TrackerModuleVis">
<trd x1="OuterTrackerEndcapPMod3_x1/2" x2="OuterTrackerEndcapPMod3_x2/2" z="OuterTrackerEndcapPMod3_y/2" />
<module_component thickness="SiTrackerEndcapCF_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
<module_component thickness="SiTrackerEndcapAl_thickness" material="Aluminum" vis="TrackerServiceVis" />
<module_component thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
</module>
<layer id="1">
<envelope vis="TrackerLayerVis"
rmin="OuterTrackerEndcapPLayer1_rmin"
rmax="OuterTrackerEndcapPLayer1_rmax"
length="SiTrackerEndcapLayer_thickness"
zstart="OuterTrackerEndcapPLayer1_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*SiTrackerEndcapMod_count" bins1="256"/>
<ring
r="OuterTrackerEndcapPMod1_rmin + OuterTrackerEndcapPMod1_y/2"
zstart="0"
nmodules="SiTrackerEndcapMod_count"
dz="SiTrackerEndcapMod_dz"
module="Module1" />
</layer>
<layer id="2">
<envelope vis="TrackerLayerVis"
rmin="OuterTrackerEndcapPLayer2_rmin"
rmax="OuterTrackerEndcapPLayer2_rmax"
length="SiTrackerEndcapLayer_thickness"
zstart="OuterTrackerEndcapPLayer2_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*SiTrackerEndcapMod_count" bins1="256"/>
<ring
r="OuterTrackerEndcapPMod2_rmin + OuterTrackerEndcapPMod2_y/2"
zstart="0"
nmodules="SiTrackerEndcapMod_count"
dz="SiTrackerEndcapMod_dz"
module="Module2" />
</layer>
<layer id="3">
<envelope vis="TrackerLayerVis"
rmin="OuterTrackerEndcapPLayer3_rmin"
rmax="OuterTrackerEndcapPLayer3_rmax"
length="SiTrackerEndcapLayer_thickness"
zstart="OuterTrackerEndcapPLayer3_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*SiTrackerEndcapMod_count" bins1="256"/>
<ring
r="OuterTrackerEndcapPMod3_rmin + OuterTrackerEndcapPMod3_y/2"
zstart="0"
nmodules="SiTrackerEndcapMod_count"
dz="SiTrackerEndcapMod_dz"
module="Module3" />
</layer>
</detector>
<detector
id="TrackerEndcapN_2_ID"
name="OuterTrackerEndcapN"
type="athena_TrapEndcapTracker"
readout="TrackerEndcapHits6"
vis="TrackerVis"
reflect="true">
<support material="Aluminum" name="serv_cyl_pos" vis="TrackerServiceVis"
rmin="SiTrackerServiceCyl_rmin"
thickness="SiTrackerServiceCylAl_thickness"
length="OuterTrackerEndcapNCyl_length"
zstart="OuterTrackerEndcapNCyl_zmin" />
<support material="CarbonFiber" name="sup_cyl_pos" vis="TrackerSupportVis"
rmin="SiTrackerSupportCyl_rmin"
thickness="SiTrackerSupportCylCF_thickness"
length="OuterTrackerEndcapNCyl_length"
zstart="OuterTrackerEndcapNCyl_zmin" />
<module name="Module1" vis="TrackerModuleVis">
<trd x1="OuterTrackerEndcapNMod1_x1/2" x2="OuterTrackerEndcapNMod1_x2/2" z="OuterTrackerEndcapNMod1_y/2" />
<module_component thickness="SiTrackerEndcapCF_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
<module_component thickness="SiTrackerEndcapAl_thickness" material="Aluminum" vis="TrackerServiceVis" />
<module_component thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
</module>
<module name="Module2" vis="TrackerModuleVis">
<trd x1="OuterTrackerEndcapNMod2_x1/2" x2="OuterTrackerEndcapNMod2_x2/2" z="OuterTrackerEndcapNMod2_y/2" />
<module_component thickness="SiTrackerEndcapCF_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
<module_component thickness="SiTrackerEndcapAl_thickness" material="Aluminum" vis="TrackerServiceVis" />
<module_component thickness="SiTrackerSensor_thickness" material="Silicon" sensitive="true" vis="TrackerLayerVis" />
</module>
<layer id="1">
<envelope vis="TrackerLayerVis"
rmin="OuterTrackerEndcapNLayer1_rmin"
rmax="OuterTrackerEndcapNLayer1_rmax"
length="SiTrackerEndcapLayer_thickness"
zstart="OuterTrackerEndcapNLayer1_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*SiTrackerEndcapMod_count" bins1="256"/>
<ring
r="OuterTrackerEndcapNMod1_rmin + OuterTrackerEndcapNMod1_y/2"
zstart="0"
nmodules="SiTrackerEndcapMod_count"
dz="SiTrackerEndcapMod_dz"
module="Module1" />
</layer>
<layer id="2">
<envelope vis="TrackerLayerVis"
rmin="OuterTrackerEndcapNLayer2_rmin"
rmax="OuterTrackerEndcapNLayer2_rmax"
length="SiTrackerEndcapLayer_thickness"
zstart="OuterTrackerEndcapNLayer2_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*SiTrackerEndcapMod_count" bins1="256"/>
<ring
r="OuterTrackerEndcapNMod2_rmin + OuterTrackerEndcapNMod2_y/2"
zstart="0"
nmodules="SiTrackerEndcapMod_count"
dz="SiTrackerEndcapMod_dz"
module="Module2" />
</layer>
</detector>
</detectors>
<documentation>
## GEM trackers (3P, 2N)
</documentation>
<define>
<constant
name="GEMEndcapMod_thickness"
value="GEMMylar_thickness * 2 + GEMGas_thickness * 5 + GEMDriftRegion_thickness * 1
+ GEMKapton_thickness * (2 + 3 * GEMAreaFactor)
+ GEMCuFoil_thickness * (3 * GEMAreaFactor)
+ GEMCuElectrode_thickness * 2" />
<constant name="GEMEndcapMod_dz" value="GEMEndcapMod_thickness/2 + GEMSpoke_thickness/2" />
<constant name="GEMEndcapMod_overlap" value="0" />
<constant name="GEMEndcapMod_angle" value="360.0*degree / GEMEndcapMod_count * (1 + GEMEndcapMod_overlap)" />
<constant name="GEMEndcapLayer_thickness" value="GEMEndcapMod_thickness + 2 * GEMEndcapMod_dz + 1*um" />
<comment> Parameters for the "ring" GEMS around the silicon tracker, which are all identical </comment>
<constant name="GEMEndcapRingMod_rmin" value="SiTrackerSupportCyl_rmax + GEMFrameBotEdge_width" />
<constant name="GEMEndcapRingMod_rmax" value="min(min(GEMEndcapPDisk1_zmin, GEMEndcapN_zmin) * CentralTrackingBarrel_tan * 0.995, CentralTrackingRegion_rmax) - GEMFrameTopEdge_width" />
<constant name="GEMEndcapRingMod_x1" value="2 * GEMEndcapRingMod_rmin * tan(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapRingMod_x2" value="2 * GEMEndcapRingMod_rmax * sin(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapRingMod_y" value="GEMEndcapRingMod_rmax * cos(GEMEndcapMod_angle/2) - GEMEndcapRingMod_rmin" />
<constant name="GEMEndcapRingModBotFrame_rmin" value="SiTrackerSupportCyl_rmax" />
<constant name="GEMEndcapRingModBotFrame_y" value="GEMFrameBotEdge_width" />
<constant name="GEMEndcapRingModBotFrame_rmax" value="(GEMEndcapRingModBotFrame_rmin + GEMEndcapRingModBotFrame_y)/cos(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapRingModBotFrame_x1" value="2 * GEMEndcapRingModBotFrame_rmin * tan(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapRingModBotFrame_x2" value="2 * GEMEndcapRingModBotFrame_rmax * sin(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapRingModTopFrame_rmin" value="GEMEndcapRingMod_rmin + GEMEndcapRingMod_y" />
<constant name="GEMEndcapRingModTopFrame_y" value="GEMFrameTopEdge_width" />
<constant name="GEMEndcapRingModTopFrame_rmax" value="(GEMEndcapRingModTopFrame_rmin + GEMEndcapRingModTopFrame_y)/cos(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapRingModTopFrame_x1" value="GEMEndcapRingMod_x2" />
<constant name="GEMEndcapRingModTopFrame_x2" value="2 * GEMEndcapRingModTopFrame_rmax * sin(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapRingModSpoke_length" value="GEMEndcapRingMod_rmax - GEMEndcapRingModBotFrame_rmax" />
<constant name="GEMEndcapRingModSpoke_r" value="(GEMEndcapRingMod_rmax + GEMEndcapRingModBotFrame_rmax)/2" />
<constant name="GEMEndcapRingLayer_rmin" value="GEMEndcapRingModBotFrame_rmin - 1*um" />
<constant name="GEMEndcapRingLayer_rmax" value="GEMEndcapRingModTopFrame_rmax + 1*um" />
<comment>
z position of the "ring" GEMS, note that some are offset slightly
to not overlap in z with the silicon disks (an ACTS limitation).
</comment>
<constant name="GEMEndcapPMod1_zmin" value="GEMEndcapPDisk1_zmin + GEMEndcapLayer_thickness" />
<constant name="GEMEndcapPMod2_zmin" value="GEMEndcapPDisk2_zmin - GEMEndcapLayer_thickness" />
<constant name="GEMEndcapNMod1_zmin" value="GEMEndcapN_zmin" />
<constant name="GEMEndcapNMod2_zmin" value="GEMEndcapN_zmin + 1 * GEMEndcapN_offset - GEMEndcapLayer_thickness" />
<constant name="GEMEndcapPLayer1_zmin" value="GEMEndcapPMod1_zmin - GEMEndcapLayer_thickness/2" />
<constant name="GEMEndcapPLayer2_zmin" value="GEMEndcapPMod2_zmin - GEMEndcapLayer_thickness/2" />
<constant name="GEMEndcapNLayer1_zmin" value="GEMEndcapNMod1_zmin - GEMEndcapLayer_thickness/2" />
<constant name="GEMEndcapNLayer2_zmin" value="GEMEndcapNMod2_zmin - GEMEndcapLayer_thickness/2" />
<comment> Large forward disk (behind the RICH) </comment>
<constant name="GEMEndcapPMod3_zmin" value="GEMEndcapPDisk3_zmin" />
<constant name="GEMEndcapPLayer3_zmin" value="GEMEndcapPMod3_zmin - GEMEndcapLayer_thickness/2" />
<constant name="GEMEndcapLargeModBotFrame_rmin" value="GEMEndcapPMod3_zmin * ForwardTrackingRegion_tan" />
<constant name="GEMEndcapLargeModBotFrame_y" value="GEMFrameBotEdge_width" />
<constant name="GEMEndcapLargeModBotFrame_rmax" value="(GEMEndcapLargeModBotFrame_rmin + GEMEndcapLargeModBotFrame_y)/cos(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapLargeModBotFrame_x1" value="2 * GEMEndcapLargeModBotFrame_rmin * sin(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapLargeModBotFrame_x2" value="2 * GEMEndcapLargeModBotFrame_rmax * sin(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapLargeMod_rmin" value="GEMEndcapPMod3_zmin * ForwardTrackingRegion_tan + GEMFrameBotEdge_width" />
<comment> Ensure there's always the length of the service gap in space available above the large GEM (top frame can extend into this at the corners). </comment>
<constant name="GEMEndcapLargeMod_rmax" value="min(GEMEndcapPMod3_zmin * CentralTrackingBarrel_tan, Solenoid_rmax-ForwardServiceGap_length)" />
<constant name="GEMEndcapLargeMod_x1" value="2 * GEMEndcapLargeMod_rmin * sin(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapLargeMod_x2" value="2 * GEMEndcapLargeMod_rmax * sin(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapLargeMod_y" value="GEMEndcapLargeMod_rmax * cos(GEMEndcapMod_angle/2) - GEMEndcapLargeMod_rmin" />
<constant name="GEMEndcapLargeModTopFrame_rmin" value="GEMEndcapLargeMod_rmin + GEMEndcapLargeMod_y" />
<constant name="GEMEndcapLargeModTopFrame_y" value="GEMFrameTopEdge_width" />
<constant name="GEMEndcapLargeModTopFrame_rmax" value="(GEMEndcapLargeModTopFrame_rmin + GEMEndcapLargeModTopFrame_y)/cos(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapLargeModTopFrame_x1" value="GEMEndcapLargeMod_x2" />
<constant name="GEMEndcapLargeModTopFrame_x2" value="2 * GEMEndcapLargeModTopFrame_rmax * sin(GEMEndcapMod_angle/2)" />
<constant name="GEMEndcapLargeModSpoke_length" value="GEMEndcapLargeMod_rmax - GEMEndcapLargeModBotFrame_rmax" />
<constant name="GEMEndcapLargeModSpoke_r" value="(GEMEndcapLargeMod_rmax + GEMEndcapLargeModBotFrame_rmax)/2" />
<constant name="GEMEndcapLargeLayer_rmin" value="GEMEndcapLargeModBotFrame_rmin - 1*um" />
<constant name="GEMEndcapLargeLayer_rmax" value="GEMEndcapLargeModTopFrame_rmax + 1*um" />
</define>
<detectors>
<detector
id="TrackerEndcapP_3_ID"
name="GEMEndcapP"
type="athena_TrapEndcapTracker"
readout="GEMTrackerEndcapHits1"
vis="TrackerVis"
reflect="false">
<module name="RingModule" vis="TrackerGEMModuleVis">
<trd x1="GEMEndcapRingMod_x1/2" x2="GEMEndcapRingMod_x2/2" z="GEMEndcapRingMod_y/2" />
<comment> going from back to front </comment>
<module_component name="exit_window" thickness="GEMMylar_thickness" material="Mylar" vis="TrackerServiceVis" />
<module_component name="exit_region" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="readout_cu" thickness="GEMCuElectrode_thickness" material="Copper"/>
<module_component name="readout_foil" thickness="GEMKapton_thickness" material="Kapton"/>
<module_component name="induction_region" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="gem_foil_3_cu" thickness="GEMCuElectrode_thickness * GEMAreaFactor" material="Copper"/>
<module_component name="gem_foil_3" thickness="GEMKapton_thickness * GEMAreaFactor" material="Kapton"/>
<module_component name="transfer_region2" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="gem_foil_2_cu" thickness="GEMCuElectrode_thickness * GEMAreaFactor" material="Copper"/>
<module_component name="gem_foil_2" thickness="GEMKapton_thickness * GEMAreaFactor" material="Kapton"/>
<module_component name="transfer_region1" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="gem_foil_1_cu" thickness="GEMCuElectrode_thickness * GEMAreaFactor" material="Copper"/>
<module_component name="gem_foil_1" thickness="GEMKapton_thickness * GEMAreaFactor" material="Kapton"/>
<module_component name="drift_region" thickness="GEMDriftRegion_thickness" material="Ar10CO2" sensitive="true"/>
<module_component name="cathode_cu" thickness="GEMCuElectrode_thickness" material="Copper"/>
<module_component name="cathode_foil" thickness="GEMKapton_thickness" material="Kapton"/>
<module_component name="entrance_region" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="entrance_window" thickness="GEMMylar_thickness" material="Mylar" vis="TrackerMPGDVis" />
</module>
<module name="RingBotFrame" vis="TrackerSupportVis">
<trd x1="GEMEndcapRingModBotFrame_x1/2" x2="GEMEndcapRingModBotFrame_x2/2" z="GEMEndcapRingModBotFrame_y/2" />
<module_component name="frame" thickness="GEMFrame_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
</module>
<module name="RingTopFrame" vis="TrackerSupportVis">
<trd x1="GEMEndcapRingModTopFrame_x1/2" x2="GEMEndcapRingModTopFrame_x2/2" z="GEMEndcapRingModTopFrame_y/2" />
<module_component name="frame" thickness="GEMFrame_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
</module>
<module name="RingSpoke" vis="TrackerSupportVis">
<trd x1="GEMSpoke_width/2" x2="GEMSpoke_width/2" z="GEMEndcapRingModSpoke_length/2"/>
<module_component thickness="GEMSpoke_thickness" material="Mylar" vis="TrackerSupportVis"/>
</module>
<layer id="1">
<envelope vis="TrackerLayerVis"
rmin="GEMEndcapRingLayer_rmin"
rmax="GEMEndcapRingLayer_rmax"
length="GEMEndcapLayer_thickness"
zstart="GEMEndcapPLayer1_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*GEMEndcapMod_count" bins1="256"/>
<ring
r="GEMEndcapRingMod_rmin + GEMEndcapRingMod_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="0*degree" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingModule" />
<ring
r="GEMEndcapRingMod_rmin + GEMEndcapRingMod_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="GEMEndcapMod_angle" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingModule" />
<ring
r="GEMEndcapRingModBotFrame_rmin + GEMEndcapRingModBotFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="0*degree" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingBotFrame" />
<ring
r="GEMEndcapRingModBotFrame_rmin + GEMEndcapRingModBotFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="GEMEndcapMod_angle" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingBotFrame" />
<ring
r="GEMEndcapRingModTopFrame_rmin + GEMEndcapRingModTopFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="GEMEndcapMod_angle" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingTopFrame" />
<ring
r="GEMEndcapRingModTopFrame_rmin + GEMEndcapRingModTopFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="0*degree" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingTopFrame" />
<ring
r="GEMEndcapRingModSpoke_r" zstart="0" dz="0"
nmodules="GEMEndcapMod_count/2" phi0="3*GEMEndcapMod_angle/2"
module="RingSpoke" />
</layer>
<layer id="2">
<envelope vis="TrackerLayerVis"
rmin="GEMEndcapRingLayer_rmin"
rmax="GEMEndcapRingLayer_rmax"
length="GEMEndcapLayer_thickness"
zstart="GEMEndcapPLayer2_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*GEMEndcapMod_count" bins1="256"/>
<ring
r="GEMEndcapRingMod_rmin + GEMEndcapRingMod_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="0*degree" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingModule" />
<ring
r="GEMEndcapRingMod_rmin + GEMEndcapRingMod_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="GEMEndcapMod_angle" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingModule" />
<ring
r="GEMEndcapRingModBotFrame_rmin + GEMEndcapRingModBotFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="0*degree" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingBotFrame" />
<ring
r="GEMEndcapRingModBotFrame_rmin + GEMEndcapRingModBotFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="GEMEndcapMod_angle" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingBotFrame" />
<ring
r="GEMEndcapRingModTopFrame_rmin + GEMEndcapRingModTopFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="GEMEndcapMod_angle" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingTopFrame" />
<ring
r="GEMEndcapRingModTopFrame_rmin + GEMEndcapRingModTopFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="0*degree" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingTopFrame" />
<ring
r="GEMEndcapRingModSpoke_r" zstart="0" dz="0"
nmodules="GEMEndcapMod_count/2" phi0="3*GEMEndcapMod_angle/2"
module="RingSpoke" />
</layer>
</detector>
<detector
id="TrackerEndcapN_3_ID"
name="GEMEndcapN"
type="athena_TrapEndcapTracker"
readout="GEMTrackerEndcapHits2"
vis="TrackerVis"
reflect="true">
<module name="RingModule" vis="TrackerGEMModuleVis">
<trd x1="GEMEndcapRingMod_x1/2" x2="GEMEndcapRingMod_x2/2" z="GEMEndcapRingMod_y/2" />
<comment> going from back to front </comment>
<module_component name="exit_window" thickness="GEMMylar_thickness" material="Mylar" vis="TrackerServiceVis" />
<module_component name="exit_region" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="readout_cu" thickness="GEMCuElectrode_thickness" material="Copper"/>
<module_component name="readout_foil" thickness="GEMKapton_thickness" material="Kapton"/>
<module_component name="induction_region" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="gem_foil_3_cu" thickness="GEMCuElectrode_thickness * GEMAreaFactor" material="Copper"/>
<module_component name="gem_foil_3" thickness="GEMKapton_thickness * GEMAreaFactor" material="Kapton"/>
<module_component name="transfer_region2" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="gem_foil_2_cu" thickness="GEMCuElectrode_thickness * GEMAreaFactor" material="Copper"/>
<module_component name="gem_foil_2" thickness="GEMKapton_thickness * GEMAreaFactor" material="Kapton"/>
<module_component name="transfer_region1" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="gem_foil_1_cu" thickness="GEMCuElectrode_thickness * GEMAreaFactor" material="Copper"/>
<module_component name="gem_foil_1" thickness="GEMKapton_thickness * GEMAreaFactor" material="Kapton"/>
<module_component name="drift_region" thickness="GEMDriftRegion_thickness" material="Ar10CO2" sensitive="true"/>
<module_component name="cathode_cu" thickness="GEMCuElectrode_thickness" material="Copper"/>
<module_component name="cathode_foil" thickness="GEMKapton_thickness" material="Kapton"/>
<module_component name="entrance_region" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="entrance_window" thickness="GEMMylar_thickness" material="Mylar" vis="TrackerMPGDVis" />
</module>
<module name="RingBotFrame" vis="TrackerSupportVis">
<trd x1="GEMEndcapRingModBotFrame_x1/2" x2="GEMEndcapRingModBotFrame_x2/2" z="GEMEndcapRingModBotFrame_y/2" />
<module_component name="frame" thickness="GEMFrame_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
</module>
<module name="RingTopFrame" vis="TrackerSupportVis">
<trd x1="GEMEndcapRingModTopFrame_x1/2" x2="GEMEndcapRingModTopFrame_x2/2" z="GEMEndcapRingModTopFrame_y/2" />
<module_component name="frame" thickness="GEMFrame_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
</module>
<module name="RingSpoke" vis="TrackerSupportVis">
<trd x1="GEMSpoke_width/2" x2="GEMSpoke_width/2" z="GEMEndcapRingModSpoke_length/2"/>
<module_component thickness="GEMSpoke_thickness" material="Mylar" vis="TrackerSupportVis"/>
</module>
<module name="LargeModule" vis="TrackerGEMModuleVis">
<trd x1="GEMEndcapLargeMod_x1/2" x2="GEMEndcapLargeMod_x2/2" z="GEMEndcapLargeMod_y/2" />
<comment> going from back to front </comment>
<module_component name="exit_window" thickness="GEMMylar_thickness" material="Mylar" vis="TrackerServiceVis" />
<module_component name="exit_region" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="readout_cu" thickness="GEMCuElectrode_thickness" material="Copper"/>
<module_component name="readout_foil" thickness="GEMKapton_thickness" material="Kapton"/>
<module_component name="induction_region" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="gem_foil_3_cu" thickness="GEMCuElectrode_thickness * GEMAreaFactor" material="Copper"/>
<module_component name="gem_foil_3" thickness="GEMKapton_thickness * GEMAreaFactor" material="Kapton"/>
<module_component name="transfer_region2" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="gem_foil_2_cu" thickness="GEMCuElectrode_thickness * GEMAreaFactor" material="Copper"/>
<module_component name="gem_foil_2" thickness="GEMKapton_thickness * GEMAreaFactor" material="Kapton"/>
<module_component name="transfer_region1" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="gem_foil_1_cu" thickness="GEMCuElectrode_thickness * GEMAreaFactor" material="Copper"/>
<module_component name="gem_foil_1" thickness="GEMKapton_thickness * GEMAreaFactor" material="Kapton"/>
<module_component name="drift_region" thickness="GEMDriftRegion_thickness" material="Ar10CO2" sensitive="true"/>
<module_component name="cathode_cu" thickness="GEMCuElectrode_thickness" material="Copper"/>
<module_component name="cathode_foil" thickness="GEMKapton_thickness" material="Kapton"/>
<module_component name="entrance_region" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="entrance_window" thickness="GEMMylar_thickness" material="Mylar" vis="TrackerMPGDVis" />
</module>
<module name="LargeBotFrame" vis="TrackerSupportVis">
<trd x1="GEMEndcapLargeModBotFrame_x1/2" x2="GEMEndcapLargeModBotFrame_x2/2" z="GEMEndcapLargeModBotFrame_y/2" />
<module_component name="frame" thickness="GEMFrame_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
</module>
<module name="LargeTopFrame" vis="TrackerSupportVis">
<trd x1="GEMEndcapLargeModTopFrame_x1/2" x2="GEMEndcapLargeModTopFrame_x2/2" z="GEMEndcapLargeModTopFrame_y/2" />
<module_component name="frame" thickness="GEMFrame_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
</module>
<module name="LargeSpoke" vis="TrackerSupportVis">
<trd x1="GEMSpoke_width/2" x2="GEMSpoke_width/2" z="GEMEndcapLargeModSpoke_length/2"/>
<module_component thickness="GEMSpoke_thickness" material="Mylar" vis="TrackerSupportVis"/>
</module>
<layer id="1">
<envelope vis="TrackerLayerVis"
rmin="GEMEndcapRingLayer_rmin"
rmax="GEMEndcapRingLayer_rmax"
length="GEMEndcapLayer_thickness"
zstart="GEMEndcapNLayer1_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*GEMEndcapMod_count" bins1="256"/>
<ring
r="GEMEndcapRingMod_rmin + GEMEndcapRingMod_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="0*degree" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingModule" />
<ring
r="GEMEndcapRingMod_rmin + GEMEndcapRingMod_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="GEMEndcapMod_angle" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingModule" />
<ring
r="GEMEndcapRingModBotFrame_rmin + GEMEndcapRingModBotFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="0*degree" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingBotFrame" />
<ring
r="GEMEndcapRingModBotFrame_rmin + GEMEndcapRingModBotFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="GEMEndcapMod_angle" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingBotFrame" />
<ring
r="GEMEndcapRingModTopFrame_rmin + GEMEndcapRingModTopFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="GEMEndcapMod_angle" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingTopFrame" />
<ring
r="GEMEndcapRingModTopFrame_rmin + GEMEndcapRingModTopFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="0*degree" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingTopFrame" />
<ring
r="GEMEndcapRingModSpoke_r" zstart="0" dz="0"
nmodules="GEMEndcapMod_count/2" phi0="3*GEMEndcapMod_angle/2"
module="RingSpoke" />
</layer>
<layer id="2">
<envelope vis="TrackerLayerVis"
rmin="GEMEndcapRingLayer_rmin"
rmax="GEMEndcapRingLayer_rmax"
length="GEMEndcapLayer_thickness"
zstart="GEMEndcapNLayer2_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*GEMEndcapMod_count" bins1="256"/>
<ring
r="GEMEndcapRingMod_rmin + GEMEndcapRingMod_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="0*degree" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingModule" />
<ring
r="GEMEndcapRingMod_rmin + GEMEndcapRingMod_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="GEMEndcapMod_angle" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingModule" />
<ring
r="GEMEndcapRingModBotFrame_rmin + GEMEndcapRingModBotFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="0*degree" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingBotFrame" />
<ring
r="GEMEndcapRingModBotFrame_rmin + GEMEndcapRingModBotFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="GEMEndcapMod_angle" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingBotFrame" />
<ring
r="GEMEndcapRingModTopFrame_rmin + GEMEndcapRingModTopFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="GEMEndcapMod_angle" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingTopFrame" />
<ring
r="GEMEndcapRingModTopFrame_rmin + GEMEndcapRingModTopFrame_y/2" zstart="0" dz="GEMEndcapMod_dz"
phi0="0*degree" dphi="GEMEndcapMod_angle" nmodules="GEMEndcapMod_count/2"
module="RingTopFrame" />
<ring
r="GEMEndcapRingModSpoke_r" zstart="0" dz="0"
nmodules="GEMEndcapMod_count/2" phi0="3*GEMEndcapMod_angle/2"
module="RingSpoke" />
</layer>
</detector>
<detector
id="TrackerEndcapP_4_ID"
name="ForwardGEM"
type="athena_TrapEndcapTracker"
readout="GEMTrackerEndcapHits3"
vis="TrackerVis"
reflect="false">
<module name="LargeModule" vis="TrackerGEMModuleVis">
<trd x1="GEMEndcapLargeMod_x1/2" x2="GEMEndcapLargeMod_x2/2" z="GEMEndcapLargeMod_y/2" />
<comment> going from back to front </comment>
<module_component name="exit_window" thickness="GEMMylar_thickness" material="Mylar" vis="TrackerServiceVis" />
<module_component name="exit_region" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="readout_cu" thickness="GEMCuElectrode_thickness" material="Copper"/>
<module_component name="readout_foil" thickness="GEMKapton_thickness" material="Kapton"/>
<module_component name="induction_region" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="gem_foil_3_cu" thickness="GEMCuElectrode_thickness * GEMAreaFactor" material="Copper"/>
<module_component name="gem_foil_3" thickness="GEMKapton_thickness * GEMAreaFactor" material="Kapton"/>
<module_component name="transfer_region2" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="gem_foil_2_cu" thickness="GEMCuElectrode_thickness * GEMAreaFactor" material="Copper"/>
<module_component name="gem_foil_2" thickness="GEMKapton_thickness * GEMAreaFactor" material="Kapton"/>
<module_component name="transfer_region1" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="gem_foil_1_cu" thickness="GEMCuElectrode_thickness * GEMAreaFactor" material="Copper"/>
<module_component name="gem_foil_1" thickness="GEMKapton_thickness * GEMAreaFactor" material="Kapton"/>
<module_component name="drift_region" thickness="GEMDriftRegion_thickness" material="Ar10CO2" sensitive="true"/>
<module_component name="cathode_cu" thickness="GEMCuElectrode_thickness" material="Copper"/>
<module_component name="cathode_foil" thickness="GEMKapton_thickness" material="Kapton"/>
<module_component name="entrance_region" thickness="GEMGas_thickness" material="Ar10CO2"/>
<module_component name="entrance_window" thickness="GEMMylar_thickness" material="Mylar" vis="TrackerMPGDVis" />
</module>
<module name="LargeBotFrame" vis="TrackerSupportVis">
<trd x1="GEMEndcapLargeModBotFrame_x1/2" x2="GEMEndcapLargeModBotFrame_x2/2" z="GEMEndcapLargeModBotFrame_y/2" />
<module_component name="frame" thickness="GEMFrame_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
</module>
<module name="LargeTopFrame" vis="TrackerSupportVis">
<trd x1="GEMEndcapLargeModTopFrame_x1/2" x2="GEMEndcapLargeModTopFrame_x2/2" z="GEMEndcapLargeModTopFrame_y/2" />
<module_component name="frame" thickness="GEMFrame_thickness" material="CarbonFiber" vis="TrackerSupportVis" />
</module>
<module name="LargeSpoke" vis="TrackerSupportVis">
<trd x1="GEMSpoke_width/2" x2="GEMSpoke_width/2" z="GEMEndcapLargeModSpoke_length/2"/>
<module_component thickness="GEMSpoke_thickness" material="Mylar" vis="TrackerSupportVis"/>
</module>
<layer id="1">
<envelope vis="TrackerLayerVis"
rmin="GEMEndcapLargeLayer_rmin"
rmax="GEMEndcapLargeLayer_rmax"
length="GEMEndcapLayer_thickness"
zstart="GEMEndcapPLayer3_zmin" />
<layer_material surface="representing" binning="binPhi,binR" bins0="20*GEMEndcapMod_count" bins1="256"/>
<ring
r="GEMEndcapLargeMod_rmin + GEMEndcapLargeMod_y/2"
zstart="0"
nmodules="GEMEndcapMod_count"
dz="GEMEndcapMod_dz"
module="LargeModule" />
<ring
r="GEMEndcapLargeModBotFrame_rmin + GEMEndcapLargeModBotFrame_y/2"
zstart="0"
nmodules="GEMEndcapMod_count"
dz="GEMEndcapMod_dz"
module="LargeBotFrame" />
<ring
r="GEMEndcapLargeModTopFrame_rmin + GEMEndcapLargeModTopFrame_y/2"
zstart="0"
nmodules="GEMEndcapMod_count"
dz="GEMEndcapMod_dz"
module="LargeTopFrame" />
<ring
r="GEMEndcapLargeModSpoke_r"
zstart="0"
nmodules="GEMEndcapMod_count"
dz="0"
phi0="GEMEndcapMod_angle/2"
module="LargeSpoke" />
</layer>
</detector>
</detectors>
<readouts>
<readout name="TrackerBarrelHits">
<segmentation type="CartesianGridXY" grid_size_x="0.010*mm" grid_size_y="0.010*mm" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-14,y:-18</id>
</readout>
<readout name="TrackerEndcapHits1">
<segmentation type="CartesianGridXZ" grid_size_x="0.010*mm" grid_size_z="0.010*mm" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
</readout>
<readout name="TrackerEndcapHits2">
<segmentation type="CartesianGridXZ" grid_size_x="0.010*mm" grid_size_z="0.010*mm" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
</readout>
<readout name="TrackerEndcapHits3">
<segmentation type="CartesianGridXZ" grid_size_x="0.010*mm" grid_size_z="0.010*mm" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
</readout>
<readout name="TrackerEndcapHits4">
<segmentation type="CartesianGridXZ" grid_size_x="0.010*mm" grid_size_z="0.010*mm" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
</readout>
<readout name="TrackerEndcapHits5">
<segmentation type="CartesianGridXZ" grid_size_x="0.010*mm" grid_size_z="0.010*mm" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
</readout>
<readout name="TrackerEndcapHits6">
<segmentation type="CartesianGridXZ" grid_size_x="0.010*mm" grid_size_z="0.010*mm" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
</readout>
<readout name="MPGDTrackerBarrelHits1">
<segmentation type="CartesianGridXY" grid_size_x="0.150*mm*sqrt(12)" grid_size_y="0.150*mm*sqrt(12)" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-14,y:-18</id>
</readout>
<readout name="MPGDTrackerBarrelHits2">
<segmentation type="CartesianGridXY" grid_size_x="0.150*mm*sqrt(12)" grid_size_y="0.150*mm*sqrt(12)" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-14,y:-18</id>
</readout>
<readout name="GEMTrackerEndcapHits1">
<segmentation type="CartesianGridXZ" grid_size_x="0.050*mm*sqrt(12)" grid_size_z="0.250*mm*sqrt(12)" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
</readout>
<readout name="GEMTrackerEndcapHits2">
<segmentation type="CartesianGridXZ" grid_size_x="0.050*mm*sqrt(12)" grid_size_z="0.250*mm*sqrt(12)" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
</readout>
<readout name="GEMTrackerEndcapHits3">
<segmentation type="CartesianGridXZ" grid_size_x="0.050*mm*sqrt(12)" grid_size_z="0.250*mm*sqrt(12)" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
</readout>
</readouts>
</lccdd>
<display>
<comment>
A coherent color scheme. Pick from these colors and (in theory) it should look pretty good.
<comment>
Colors tweaked to be displayable by geoViewer
</comment>
<vis name="AnlGreen" alpha="1" r="119/255" g="179/255" b="0"/>
<vis name="AnlViolet" alpha="1" r="91/256" g="0" b="145/256"/>
<vis name="AnlProcess_Blue" alpha="1" r="0/256" g="130/256" b="202/256"/>
<vis name="AnlGreen" alpha="1" r="100/256" g="200/256" b="0/256"/>
<vis name="AnlViolet" alpha="1" r="100/256" g="0/256" b="150/256"/>
<vis name="AnlProcess_Blue" alpha="1" r="0/256" g="100/256" b="202/256"/>
<vis name="AnlOrange" alpha="1" r="255/256" g="121/256" b="0"/>
<vis name="AnlRed" alpha="1" r="205/256" g="32/256 " b="44/256"/>
<vis name="AnlGold" alpha="1" r="248/256" g="178/256" b="0/256"/>
<vis name="AnlRed" alpha="1" r="205/256" g="45/256 " b="45/256"/>
<vis name="AnlGold" alpha="1" r="248/256" g="188/256" b="0/256"/>
<vis name="AnlBlue" alpha="1" r="0/256" g="96/256" b="156/256"/>
<vis name="AnlTeal" alpha="1" r="0/256" g="161/256" b="156/256"/>
<vis name="AnlGray" alpha="1" r="102/256" g="102/256" b="102/256"/>
<vis name="AnlLight_Gray" alpha="1" r="209/256" g="209/256" b="209/256"/>
<vis name="AnlOff_White" alpha="1" r="242/256" g="242/256" b="242/256"/>
<vis name="AnlDelta_Red" alpha="1" r="161/256" g="43/256" b="47/256"/>
<vis name="AnlDelta_Green" alpha="1" r="0" g="120/256" b="54/256"/>
<vis name="AnlDelta_Blue" alpha="1" r="11/256" g="31/256" b="143/256"/>
<vis name="AnlLightGray" ref="AnlLight_Gray" />
<!-- off-white (or white) don't work! -->
<!--vis name="AnlOff_White" alpha="1" r="242/256" g="242/256" b="242/256"/-->
<vis name="AnlDarkRed" alpha="1" r="161/256" g="45/256" b="45/256"/>
<vis name="AnlDarkGreen" alpha="1" r="0" g="110/256" b="50/256"/>
<vis name="AnlDarkBlue" alpha="1" r="45/256" g="45/256" b="110/256"/>
<vis name="AnlDelta_Red" ref="AnlDarkRed"/>
<vis name="AnlDelta_Green" ref="AnlDarkGreen"/>
<vis name="AnlDelta_Blue" ref="AnlDarkBlue"/>
</display>
<display>
<comment>
This is where another color scheme can be developed.
Note this is currently just a copy of colors.xml
</comment>
<vis name="AnlGreen" alpha="1" r="119/255" g="179/255" b="0"/>
<vis name="AnlViolet" alpha="1" r="91/256" g="0" b="145/256"/>
<vis name="AnlProcess_Blue" alpha="1" r="0/256" g="130/256" b="202/256"/>
<vis name="AnlOrange" alpha="1" r="255/256" g="121/256" b="0"/>
<vis name="AnlRed" alpha="1" r="205/256" g="32/256 " b="44/256"/>
<vis name="AnlGold" alpha="1" r="248/256" g="178/256" b="0/256"/>
<vis name="AnlBlue" alpha="1" r="0/256" g="96/256" b="156/256"/>
<vis name="AnlTeal" alpha="1" r="0/256" g="161/256" b="156/256"/>
<vis name="AnlGray" alpha="1" r="102/256" g="102/256" b="102/256"/>
<vis name="AnlLight_Gray" alpha="1" r="209/256" g="209/256" b="209/256"/>
<vis name="AnlOff_White" alpha="1" r="242/256" g="242/256" b="242/256"/>
<vis name="AnlDelta_Red" alpha="1" r="161/256" g="43/256" b="47/256"/>
<vis name="AnlDelta_Green" alpha="1" r="0" g="120/256" b="54/256"/>
<vis name="AnlDelta_Blue" alpha="1" r="11/256" g="31/256" b="143/256"/>
</display>
<display>
<comment>
Similar color to regular scheme but with values that can be displayed by geoviewer
</comment>
<vis name="AnlGreen" alpha="1" r="100/256" g="200/256" b="0/256"/>
<vis name="AnlViolet" alpha="1" r="100/256" g="0/256" b="150/256"/>
<vis name="AnlProcess_Blue" alpha="1" r="0/256" g="100/256" b="202/256"/>
<vis name="AnlOrange" alpha="1" r="255/256" g="121/256" b="0"/>
<vis name="AnlRed" alpha="1" r="205/256" g="45/256 " b="45/256"/>
<vis name="AnlGold" alpha="1" r="248/256" g="188/256" b="0/256"/>
<vis name="AnlBlue" alpha="1" r="0/256" g="96/256" b="156/256"/>
<vis name="AnlTeal" alpha="1" r="0/256" g="161/256" b="156/256"/>
<vis name="AnlGray" alpha="1" r="102/256" g="102/256" b="102/256"/>
<vis name="AnlLight_Gray" alpha="1" r="209/256" g="209/256" b="209/256"/>
<!-- off-white (or white) don't work! -->
<!--vis name="AnlOff_White" alpha="1" r="242/256" g="242/256" b="242/256"/-->
<vis name="AnlDelta_Red" alpha="1" r="161/256" g="45/256" b="45/256"/>
<vis name="AnlDelta_Green" alpha="1" r="0" g="110/256" b="50/256"/>
<vis name="AnlDelta_Blue" alpha="1" r="45/256" g="45/256" b="110/256"/>
</display>
......@@ -50,79 +50,92 @@ The unused IDs below are saved for future use.
<documentation>
#### (25-49) Silicon Vertex Tracker
- SiVertex subsystem ID: 25
- Layer 1 subassembly ID: 26
- Layer 2 subassembly ID: 27
- Layer 3 subassembly ID: 28
- Layer 4 subassembly ID: 29
- Layer 5 subassembly ID: 30
#### (25-39) Silicon Vertex Tracker
- Vertex subassemblies: 25-27
- Vertex barrel and endcaps: 28-30
- Unused: 28-30
</documentation>
<constant name="VertexBarrel_ID" value="25"/>
<constant name="VertexBarrelSubAssembly_ID" value="26"/>
<constant name="VertexEndcapSubAssembly_ID" value="27"/>
<constant name="VertexEndcapP_ID" value="30"/>
<constant name="VertexEndcapN_ID" value="40"/>
<constant name="VertexSubAssembly_0_ID" value="25"/>
<constant name="VertexSubAssembly_1_ID" value="26"/>
<constant name="VertexSubAssembly_2_ID" value="27"/>
<constant name="VertexBarrel_0_ID" value="31"/>
<constant name="VertexBarrel_1_ID" value="32"/>
<constant name="VertexBarrel_2_ID" value="33"/>
<constant name="VertexEndcapN_0_ID" value="34"/>
<constant name="VertexEndcapN_1_ID" value="35"/>
<constant name="VertexEndcapN_2_ID" value="36"/>
<constant name="VertexEndcapP_0_ID" value="37"/>
<constant name="VertexEndcapP_1_ID" value="38"/>
<constant name="VertexEndcapP_2_ID" value="39"/>
<documentation>
- Unused IDs: 31-49
- Unused IDs: 31-39
</documentation>
<documentation>
#### (50-74) Silicon Tracker System
#### (40-84) Tracker System
SiTracker subsystem ID: 50
Layer 1 subassembly ID: 51
Layer 2 subassembly ID: 52
Layer 3 subassembly ID: 53
Layer 4 subassembly ID: 54
Layer 5 subassembly ID: 55
(56-70) etc...
Unused IDs: 71-74
- Tracker subassemblies: 40-45
- Composite tracker systems: 46-57
- Tracker detectors: 56-84
Unused IDs: (77-79)
</documentation>
<constant name="TrackerBarrelSubAssembly_Inner_ID" value="50"/>
<constant name="TrackerEndcapSubAssembly_Inner_ID" value="51"/>
<constant name="TrackerBarrelSubAssembly_Outer_ID" value="52"/>
<constant name="TrackerEndcapSubAssembly_Outer_ID" value="53"/>
<constant name="OuterTrackingSubAssembly_ID" value="54"/>
<!--constant name="TrackerSubAssemblyLayer4_ID" value="54"/-->
<!--constant name="TrackerSubAssemblyLayer5_ID" value="55"/-->
<constant name="TrackerBarrel_Inner_ID" value="56"/>
<constant name="TrackerEndcapP_Inner_ID" value="57"/>
<constant name="TrackerEndcapN_Inner_ID" value="58"/>
<constant name="TrackerBarrel_Outer_ID" value="59"/>
<constant name="TrackerEndcapP_Outer_ID" value="60"/>
<constant name="TrackerEndcapN_Outer_ID" value="61"/>
<constant name="TrackerBarrel_Layer3_ID" value="62"/>
<constant name="TrackerEndcapP_Layer3_ID" value="63"/>
<constant name="TrackerEndcapN_Layer3_ID" value="64"/>
<constant name="TrackerBarrel_Layer4_ID" value="65"/>
<constant name="TrackerEndcapP_Layer4_ID" value="66"/>
<constant name="TrackerEndcapN_Layer4_ID" value="67"/>
<constant name="TrackerBarrel_Layer5_ID" value="68"/>
<constant name="TrackerEndcapP_Layer5_ID" value="69"/>
<constant name="TrackerEndcapN_Layer5_ID" value="70"/>
<documentation>
#### (75-84) Barrel Tracker IDs
- MMTrackerBarrel ID: 75
- RWellTrackerBarrel ID: 76
- Unused IDs: 77-89
</documentation>
<constant name="MMTrackerBarrel_ID" value="75"/>
<constant name="RWellTrackerBarrel_ID" value="76"/>
<comment>
SubAssembly IDs should increment from inner to outer
(it's not the definition order but rather the ID order that's used
for construction order in the ACTS geometry conversion)
</comment>
<constant name="TrackerSubAssembly_0_ID" value="40"/>
<constant name="TrackerSubAssembly_1_ID" value="41"/>
<constant name="TrackerSubAssembly_2_ID" value="42"/>
<constant name="TrackerSubAssembly_3_ID" value="43"/>
<constant name="TrackerSubAssembly_4_ID" value="44"/>
<constant name="TrackerSubAssembly_5_ID" value="45"/>
<constant name="TrackerCompositeBarrel_0_ID" value="46"/>
<constant name="TrackerCompositeBarrel_1_ID" value="47"/>
<constant name="TrackerCompositeBarrel_2_ID" value="48"/>
<constant name="TrackerCompositeBarrel_3_ID" value="49"/>
<constant name="TrackerCompositeEndcapN_0_ID" value="50"/>
<constant name="TrackerCompositeEndcapN_1_ID" value="51"/>
<constant name="TrackerCompositeEndcapN_2_ID" value="52"/>
<constant name="TrackerCompositeEndcapN_3_ID" value="53"/>
<constant name="TrackerCompositeEndcapP_0_ID" value="54"/>
<constant name="TrackerCompositeEndcapP_1_ID" value="55"/>
<constant name="TrackerCompositeEndcapP_2_ID" value="56"/>
<constant name="TrackerCompositeEndcapP_3_ID" value="57"/>
<constant name="TrackerBarrel_0_ID" value="58"/>
<constant name="TrackerBarrel_1_ID" value="59"/>
<constant name="TrackerBarrel_2_ID" value="60"/>
<constant name="TrackerBarrel_3_ID" value="61"/>
<constant name="TrackerBarrel_4_ID" value="62"/>
<constant name="TrackerBarrel_5_ID" value="63"/>
<constant name="TrackerBarrel_6_ID" value="64"/>
<constant name="TrackerBarrel_7_ID" value="65"/>
<constant name="TrackerBarrel_8_ID" value="66"/>
<constant name="TrackerEndcapN_0_ID" value="67"/>
<constant name="TrackerEndcapN_1_ID" value="68"/>
<constant name="TrackerEndcapN_2_ID" value="69"/>
<constant name="TrackerEndcapN_3_ID" value="70"/>
<constant name="TrackerEndcapN_4_ID" value="71"/>
<constant name="TrackerEndcapN_5_ID" value="72"/>
<constant name="TrackerEndcapN_6_ID" value="73"/>
<constant name="TrackerEndcapN_7_ID" value="74"/>
<constant name="TrackerEndcapN_8_ID" value="75"/>
<constant name="TrackerEndcapP_0_ID" value="76"/>
<constant name="TrackerEndcapP_1_ID" value="77"/>
<constant name="TrackerEndcapP_2_ID" value="78"/>
<constant name="TrackerEndcapP_3_ID" value="79"/>
<constant name="TrackerEndcapP_4_ID" value="80"/>
<constant name="TrackerEndcapP_5_ID" value="81"/>
<constant name="TrackerEndcapP_6_ID" value="82"/>
<constant name="TrackerEndcapP_7_ID" value="83"/>
<constant name="TrackerEndcapP_8_ID" value="84"/>
<documentation>
#### (85-99) Reserved IDs
......@@ -177,33 +190,31 @@ The unused IDs below are saved for future use.
<constant name="HCalBarrel_ID" value="111"/>
<constant name="HCalEndcapP_ID" value="112"/>
<constant name="HCalEndcapN_ID" value="113"/>
<constant name="PassiveSteelRingEndcapP_ID" value="114"/>
<documentation>
#### (120-129) (near) Forward reserved
- Forwardtracking ID: 120
- Forward RICH ID: 121
- Forward RICH ID: 120
- Forward TRD ID: 121
- Forward TOF ID: 122
- Unused IDs: 124-129
</documentation>
<constant name="ForwardTracking_ID" value="120"/>
<constant name="ForwardRICH_ID" value="121"/>
<!--constant name="UNUSED" value="122"/-->
<constant name="ForwardTRD_ID" value="123"/>
<constant name="GEMTrackerEndcapP_ID" value="124"/>
<constant name="GEMTrackerEndcapN_ID" value="125"/>
<constant name="ForwardTOF_ID" value="126"/>
<constant name="BackwardTOF_ID" value="127"/>
<constant name="ForwardRICH_ID" value="120"/>
<constant name="ForwardTRD_ID" value="121"/>
<constant name="ForwardTOF_ID" value="122"/>
<documentation>
#### (130-139) Backward reserved
- Modular RICH ID: 130
- Electron Endcap GEM tracking ID: 131
- Unused IDs: 132-139
- Backward RICH ID: 131
- Backward TOD ID: 132
- Unused IDs: 133-139
</documentation>
<constant name="MRICH_ID" value="130"/>
<!--constant name="UNUSED" value="131"/-->
<constant name="MRICH_ID" value="130"/>
<constant name="BackwardRICH_ID" value="131"/>
<constant name="BackwardTOF_ID" value="132"/>
<documentation>
#### (140-149) Central Magnet
......@@ -220,38 +231,78 @@ The unused IDs below are saved for future use.
<constant name="SolenoidYoke_ID" value="142"/>
<documentation>
#### (150-169) Far Forward Detectors
#### (150-169) Far Forward Detectors
- Forward Roman Pot ID: 150
- Forward B0 Tracker ID: 151
- Zero Degree Cal. Ecal ID: 160
- Zero Degree Cal. Hcal ID: 161
TODO: A lot of the repeated ID's below should be pushed into a single detector
TODO: A lot of the repeated ID's below should be pushed into a single detector
</documentation>
<constant name="B0Tracker_Station_1_ID" value="150"/>
<constant name="B0Tracker_Station_2_ID" value="151"/>
<constant name="B0Tracker_Station_3_ID" value="152"/>
<constant name="B0Tracker_Station_4_ID" value="153"/>
<constant name="B0Preshower_Station_1_ID" value="154"/>
<constant name="ForwardRomanPot_Station_1_ID" value="155"/>
<constant name="ForwardRomanPot_Station_1_ID" value="155"/>
<constant name="ForwardRomanPot_Station_2_ID" value="156"/>
<constant name="ForwardOffMTracker_station_1_ID" value="159"/>
<constant name="ForwardOffMTracker_station_1_ID" value="159"/>
<constant name="ForwardOffMTracker_station_2_ID" value="160"/>
<constant name="ForwardOffMTracker_station_3_ID" value="161"/>
<constant name="ForwardOffMTracker_station_4_ID" value="162"/>
<comment> TODO naming consistency </comment>
<constant name="ffi_ZDC_ECAL_ID" value="163"/>
<constant name="ffi_ZDC_HCAL_ID" value="164"/>
<constant name="ZDCEcal_ID" value="163"/>
<constant name="ZDCHcal_ID" value="164"/>
<constant name="VacuumMagnetElement_1_ID" value="165"/>
<documentation>
#### (170-189) Forward Beamline Magnets
#### (170-189) Far Forward Beamline Magnets
</documentation>
<constant name="B0PF_ID" value="170"/>
<constant name="B0APF_ID" value="171"/>
<constant name="Q1APF_ID" value="172"/>
<constant name="Q1BPF_ID" value="173"/>
<constant name="Q2PF_ID" value="174"/>
<constant name="B1PF_ID" value="175"/>
<constant name="B1APF_ID" value="176"/>
<constant name="B2PF_ID" value="177"/>
<constant name="Q0EF_ID" value="180"/>
<constant name="Q1EF_ID" value="181"/>
<documentation>
#### (190-199) Far Backward Beamline Magnets
- Low-Q2 Tagger 1 Tracker ID: 195
- Low-Q2 Tagger 1 Calorimeter ID: 196
- Low-Q2 Tagger 2 Tracker ID: 198
- Low-Q2 Tagger 2 Calorimeter ID: 199
TODO: A lot of the repeated ID's below should be pushed into a single detector
</documentation>
<constant name="LumiCollimator_ID" value="190"/>
<constant name="LumiDipole_ID" value="191"/>
<constant name="TaggerTracker_1_ID" value="195"/>
<constant name="TaggerCalorimeter_1_ID" value="196"/>
<constant name="TaggerTracker_2_ID" value="198"/>
<constant name="TaggerCalorimeter_2_ID" value="199"/>
<documentation>
#### (190-199) Backward Beamline Magnets
#### (200-219) Far Backward Beamline Magnets
</documentation>
<constant name="Pipe_to_Q1eR_ID" value="200"/>
<constant name="Magnet_Q1eR_ID" value="201"/>
<constant name="Pipe_in_Q1eR_ID" value="202"/>
<constant name="Pipe_Q1eR_to_Q2eR_ID" value="203"/>
<constant name="Magnet_Q2eR_ID" value="204"/>
<constant name="Pipe_in_Q2eR_ID" value="205"/>
<constant name="Pipe_Q2eR_to_B2AeR_ID" value="206"/>
<constant name="Magnet_B2AeR_ID" value="207"/>
<constant name="Pipe_in_B2AeR_ID" value="208"/>
<constant name="Pipe_B2AeR_to_B2BeR_ID" value="209"/>
<constant name="Magnet_B2BeR_ID" value="210"/>
<constant name="Pipe_in_B2BeR_ID" value="211"/>
<constant name="Magnet_Q3eR_ID" value="212"/>
<constant name="Vacuum_in_Q3eR_ID" value="213"/>
<documentation>
## Detector Definition Parameters
......@@ -288,6 +339,28 @@ Examples:
</documentation>
<documentation>
## Rapidity constants
</documentation>
<constant name="Eta1_1_tan" value="tan(2*atan(exp(-1.1)))" />
<constant name="Eta1_4_tan" value="tan(2*atan(exp(-1.4)))" />
<constant name="Eta3_5_tan" value="tan(2*atan(exp(-3.5)))" />
<constant name="Eta3_6_tan" value="tan(2*atan(exp(-3.6)))" />
<constant name="Eta3_7_tan" value="tan(2*atan(exp(-3.7)))" />
<constant name="Eta3_8_tan" value="tan(2*atan(exp(-3.8)))" />
<constant name="Eta3_9_tan" value="tan(2*atan(exp(-3.9)))" />
<constant name="Eta4_0_tan" value="tan(2*atan(exp(-4.0)))" />
<constant name="Eta4_1_tan" value="tan(2*atan(exp(-4.1)))" />
<constant name="Eta4_2_tan" value="tan(2*atan(exp(-4.2)))" />
<constant name="Eta4_3_tan" value="tan(2*atan(exp(-4.3)))" />
<constant name="Eta4_4_tan" value="tan(2*atan(exp(-4.4)))" />
<constant name="Eta4_5_tan" value="tan(2*atan(exp(-4.5)))" />
<constant name="Eta4_6_tan" value="tan(2*atan(exp(-4.6)))" />
<constant name="Eta4_7_tan" value="tan(2*atan(exp(-4.7)))" />
<constant name="Eta4_8_tan" value="tan(2*atan(exp(-4.8)))" />
<comment>Solenoid option</comment>
<documentation>
## Solenoid Magnet Parameters
......@@ -297,8 +370,8 @@ Examples:
<comment>Solenoid option</comment>
<constant name="Solenoid_length" value="3840.0*mm"/>
<constant name="Solenoid_rmin" value="1600.0*mm"/>
<constant name="Solenoid_thickness" value="640*mm"/>
<constant name="Solenoid_offset" value="10*mm"/>
<constant name="Solenoid_thickness" value="455*mm"/>
<constant name="Solenoid_offset" value="-240*mm"/>
<!--
<comment>Helmholtz option</comment>
......@@ -320,68 +393,87 @@ Examples:
</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 + 1.0*mm"/>
<constant name="VertexTrackerEndcapN_rmin" value="Beampipe_rmax + 1.0*mm"/>
<constant name="VertexTrackerEndcapP_zmax" value="300.0*mm"/>
<constant name="VertexTrackerEndcapN_zmax" value="300.0*mm"/>
<documentation>
### Vertex Tracking Region
</documentation>
<constant name="VertexTrackingRegion_length" value="VertexTrackerEndcapP_zmax + VertexTrackerEndcapN_zmax "/>
<constant name="VertexTrackingRegion_zmax" value="VertexTrackerEndcapP_zmax"/>
<constant name="VertexTrackingRegion_rmax" value="VertexTrackerBarrel_rmax"/>
<constant name="VertexTrackingRegion_rmin" value="Beampipe_rmax + 1.0*mm" />
<constant name="VertexTrackingRegion_rmax" value="100.0*mm" />
<constant name="VertexTrackingRegionP_zmax" value="240.0*mm" />
<constant name="VertexTrackingRegionN_zmax" value="240.0*mm" />
<constant name="VertexTrackingRegion_length" value="VertexTrackingRegionP_zmax + VertexTrackingRegionN_zmax" />
<documentation>
### Tracker Detector Parameters
### Central Tracking Region
TrackerBarrel_rmax: also the rmin for the barrel PID system (DIRC)
Note: The barrel rmax and endcap lengths are the maximum extent allowed for
the barrel and endcap layers, not the position of the final layer.
</documentation>
<constant name="TrackerBarrel_rmin" value="VertexTrackingRegion_rmax"/>
<constant name="TrackerBarrel_rmax" value="95.*cm"/>
<constant name="TrackerBarrel_thickness" value="TrackerBarrel_rmax-TrackerBarrel_rmin"/>
<constant name="TrackerBarrel_length" value="VertexTrackingRegion_length + 1150.0*mm"/>
<constant name="TrackerBarrel_zmax" value="TrackerBarrel_length/2.0"/>
<constant name="TrackerBarrelInside_length" value="VertexTrackingRegion_length"/>
<constant name="TrackerBarrelInside_zmax" value="TrackerBarrelInside_length/2.0"/>
<constant name="TrackerEndcapP_length" value="1025.0*mm"/>
<constant name="TrackerEndcapN_length" value="495.0*mm"/>
</documentation>
<constant name="CentralTrackingRegion_rmax" value="950.0*mm" />
<constant name="CentralTrackingRegionP_zmax" value="1700.0*mm" />
<constant name="CentralTrackingRegionN_zmax" value="1500.0*mm" />
<constant name="CentralTrackingRegion_length" value="CentralTrackingRegionP_zmax + CentralTrackingRegionN_zmax" />
<comment>
tan(theta) to determine rmin in the outer tracking region (due to tapered beampipe)
</comment>
<constant name="CentralTrackingBarrel_tan" value="Eta1_1_tan" />
<constant name="CentralTrackingRegionP_tan" value="Eta3_7_tan * 1.00" />
<constant name="CentralTrackingRegionN_tan" value="Eta4_0_tan * 0.99" />
<documentation level="0">
### PID Detector Region Parameters
</documentation>
<constant name="ForwardPID_length" value="140.0*cm"/>
<constant name="ForwardPID_rmin1" value="Beampipe_rmax + 90*mm"/>
<constant name="ForwardPID_rmin2" value="18.0*cm"/>
<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" />
<comment> Forward TOF region currenlty empty for future upgrades </comment>
<constant name="ForwardTOFRegion_zmin" value="ForwardPIDRegion_zmin" />
<constant name="ForwardTOFRegion_length" value="20.0*cm" />
<constant name="ForwardTOFRegion_rmax" value="CentralTrackingRegion_rmax" />
<constant name="ForwardTOFRegion_tan" value="CentralTrackingRegionP_tan" />
<comment> Forward RICH region </comment>
<constant name="ForwardRICHRegion_zmin" value="ForwardTOFRegion_zmin + ForwardTOFRegion_length" />
<constant name="ForwardRICHRegion_length" value="ForwardPIDRegion_length - ForwardTOFRegion_length" />
<comment> tangent of the opening angle at the front and back of the RICH </comment>
<constant name="ForwardRICHRegion_tan1" value="CentralTrackingRegionP_tan * 0.88" />
<constant name="ForwardRICHRegion_tan2" value="Eta3_6_tan * 0.89" />
<constant name="BackwardPIDRegion_zmin" value="CentralTrackingRegionN_zmax" />
<constant name="BackwardPIDRegion_length" value="60.0*cm" />
<constant name="BackwardPIDRegion_rmax" value="CentralTrackingRegion_rmax" />
<constant name="BackwardPIDRegion_tan" value="CentralTrackingRegionN_tan * 0.92" />
<comment> Backward RICH region </comment>
<constant name="BackwardRICHRegion_zmin" value="BackwardPIDRegion_zmin" />
<constant name="BackwardRICHRegion_length" value="58.0*cm" />
<comment> Backward TOF region, currently empty for upgrades </comment>
<constant name="BackwardTOFRegion_zmin" value="BackwardRICHRegion_zmin + BackwardRICHRegion_length" />
<constant name="BackwardTOFRegion_length" value="BackwardPIDRegion_length - BackwardRICHRegion_length" />
<comment> Note: PID has space for DIRC, ExtraSpace sits past the PID</comment>
<constant name="BarrelPIDRegion_thickness" value="8.0 * cm" />
<constant name="BarrelExtraSpace_thickness" value="0.0 * cm" />
<constant name="BackwardPID_length" value="40.0*cm"/>
<constant name="BackwardPID_rmax" value="TrackerBarrel_rmax"/>
<documentation>
## Forward/backward tracking region behind the PID detectors
</documentation>
<comment> Note: PID has space for DIRC, ExtraSpace has room for other detectors past the PID</comment>
<constant name="BarrelPIDThickness" value="8.0 * cm"/>
<constant name="BarrelExtraSpaceThickness" value="0.0 * cm"/>
<constant name="BackwardTrackingRegion_tan" value="CentralTrackingRegionN_tan" />
<constant name="BackwardTrackingRegion_zmin" value="BackwardPIDRegion_zmin + BackwardPIDRegion_length" />
<constant name="ForwardTrackingRegion_tan" value="ForwardRICHRegion_tan2" />
<constant name="ForwardTrackingRegion_zmin" value="ForwardPIDRegion_zmin + ForwardPIDRegion_length" />
<constant name="ForwardTrackingRegion_length" value="10.0*cm" />
<constant name="BackwardTrackingRegion_length" value="0.0*cm" />
<documentation level="0">
### Extra tracking region behind the endcap PID system
</documentation>
<constant name="ForwardTracking_length" value="5.0*cm"/>
<constant name="BackwardTracking_length" value="8.0*cm"/>
<comment> Total length of the endcap detectors in front of the calorimeter</comment>
<constant name="BackwardInnerEndcapRegion_length" value="BackwardPIDRegion_length + BackwardTrackingRegion_length"/>
<constant name="ForwardInnerEndcapRegion_length" value="ForwardPIDRegion_length + ForwardTrackingRegion_length"/>
<documentation>
## Service gaps
......@@ -391,43 +483,34 @@ Service gaps in FW direction (before endcapP ECAL) and BW direction (before endc
<constant name="ForwardServiceGap_length" value="10.0*cm"/>
<constant name="BackwardServiceGap_length" value="10.0*cm"/>
<documentation>
## Central tracking and PID detector boundaries
</documentation>
<constant name="CentralTracking_rmax" value="TrackerBarrel_rmax"/>
<constant name="CentralTracking_length" value="TrackerBarrel_length + TrackerEndcapP_length + TrackerEndcapN_length"/>
<constant name="BackwardPID_zmin" value="TrackerBarrel_length/2. + TrackerEndcapN_length"/>
<constant name="ForwardPID_zmin" value="TrackerBarrel_length/2. + TrackerEndcapP_length"/>
<constant name="BackwardTracking_zmin" value="BackwardPID_zmin + BackwardPID_length"/>
<constant name="ForwardTracking_zmin" value="ForwardPID_zmin + ForwardPID_length"/>
<comment> Total length of the endcap detectors in front of the calorimeter</comment>
<constant name="BackwardInnerEndcap_length" value="BackwardPID_length + BackwardTracking_length"/>
<constant name="ForwardInnerEndcap_length" value="ForwardPID_length + ForwardTracking_length"/>
<documentation level="3">
## Calorimeter Parameters
</documentation>
<constant name="CaloSides" value="12"/>
<constant name="EcalEndcapP_zmin" value="ForwardPID_zmin + ForwardInnerEndcap_length + ForwardServiceGap_length"/>
<constant name="EcalEndcapP_length" value="40*cm"/>
<constant name="EcalEndcapP_rmin" value="200.0*mm"/>
<constant name="EcalEndcapP_rmax" value="Solenoid_rmax "/>
<constant name="EcalEndcapN_zmin" value="max(BackwardPID_zmin + BackwardInnerEndcap_length, SolenoidBackward_zmax)"/>
<constant name="EcalEndcapN_length" value="60*cm"/>
<constant name="EcalEndcapN_rmin" value="max((EcalEndcapN_zmin + EcalEndcapN_length) * tan(abs(CrossingAngle)) + 12.5 * mm, 5*cm)"/>
<constant name="EcalEndcapN_rmax" value="TrackerBarrel_rmax"/>
<constant name="EcalBarrelEnvelope_thickness" value="45.0*cm"/>
<constant name="EcalBarrel_rmin" value="CentralTracking_rmax + BarrelPIDThickness + BarrelExtraSpaceThickness"/>
<constant name="EcalBarrelForward_length" value="-20*cm"/>
<constant name="EcalBarrelForward_zmax" value="ForwardPID_zmin + EcalBarrelForward_length"/>
<constant name="EcalBarrelBackward_zmax" value="BackwardPID_zmin + BackwardInnerEndcap_length + EcalEndcapN_length"/>
<constant name="EcalEndcapP_zmin" value="ForwardPIDRegion_zmin + ForwardInnerEndcapRegion_length + ForwardServiceGap_length" />
<constant name="EcalEndcapP_length" value="30*cm" />
<constant name="EcalEndcapP_rmin" value="200.0*mm" />
<comment> extra 50cm rmax that "protrudes" into the HCAL</comment>
<constant name="EcalEndcapP_rmax" value="floor(Eta1_1_tan * EcalEndcapP_zmin)"/>
<constant name="EcalEndcapN_zmin" value="BackwardPIDRegion_zmin + BackwardInnerEndcapRegion_length"/>
<constant name="EcalEndcapN_length" value="60*cm" />
<comment>
rmin1: rmin round electron pipe (ignoring the hadron pipe)
rmin2: rmin around both beam pipes
</comment>
<constant name="EcalEndcapN_rmin1" value="Eta4_6_tan * EcalEndcapN_zmin" />
<constant name="EcalEndcapN_rmin2" value="Eta4_1_tan * EcalEndcapN_zmin" />
<constant name="EcalEndcapN_rmax" value="CentralTrackingRegion_rmax" />
<constant name="EcalBarrelRegion_thickness" value="45.0*cm"/>
<constant name="EcalBarrel_rmin" value="CentralTrackingRegion_rmax + BarrelPIDRegion_thickness + BarrelExtraSpace_thickness"/>
<constant name="EcalBarrelForward_zmax" value="SolenoidForward_zmax"/>
<constant name="EcalBarrelBackward_zmax" value="EcalEndcapN_zmin + 30*cm"/>
<constant name="EcalBarrel_length" value="EcalBarrelForward_zmax + EcalBarrelBackward_zmax"/>
<constant name="EcalBarrel_offset" value="(EcalBarrelForward_zmax - EcalBarrelBackward_zmax)/2.0"/>
<constant name="EcalBarrelReadout_length" value="20*cm"/>
<documentation level="3">
......@@ -435,31 +518,32 @@ Service gaps in FW direction (before endcapP ECAL) and BW direction (before endc
</documentation>
<constant name="DIRCReadout_length" value="30*cm"/>
<constant name="DIRCForward_length" value="0*cm"/>
<constant name="DIRCForward_zmax" value="ForwardPID_zmin + DIRCForward_length"/>
<constant name="DIRCBackward_zmax" value="BackwardPID_zmin + BackwardInnerEndcap_length + EcalEndcapN_length + DIRCReadout_length"/>
<constant name="DIRCForward_zmax" value="EcalBarrelForward_zmax "/>
<constant name="DIRCBackward_zmax" value="EcalBarrelBackward_zmax + EcalBarrelReadout_length +DIRCReadout_length "/>
<constant name="DIRC_length" value="DIRCForward_zmax + DIRCBackward_zmax"/>
<constant name="DIRC_offset" value="(DIRCForward_zmax - DIRCBackward_zmax)/2"/>
<constant name="DIRC_rmin" value="TrackerBarrel_rmax"/>
<constant name="DIRC_rmax" value="DIRC_rmin + BarrelPIDThickness"/>
<constant name="DIRC_rmin" value="CentralTrackingRegion_rmax"/>
<constant name="DIRC_rmax" value="DIRC_rmin + BarrelPIDRegion_thickness"/>
<documentation>
## Hadronic Calorimeter Parameters
</documentation>
<constant name="HcalEndcapP_zmin" value="max(EcalEndcapP_zmin + EcalEndcapP_length, Solenoid_length / 2.0 + Solenoid_offset) "/>
<constant name="HcalEndcapP_zmin" value="EcalEndcapP_zmin + EcalEndcapP_length"/>
<constant name="HcalEndcapP_length" value="120.0*cm"/>
<comment> HcalEndcapP needs to clear the expanding beampipe with 2 * crossing angle + its radius of BeampipeOD / 2</comment>
<constant name="HcalEndcapP_rmin" value="max((HcalEndcapP_zmin + HcalEndcapP_length) * tan(2.0 * abs(CrossingAngle)) + BeampipeOD / 2.0, 15 * cm)"/>
<constant name="HcalEndcapN_zmin" value="DIRCBackward_zmax + BackwardServiceGap_length"/>
<constant name="HcalEndcapN_zmin" value="max(DIRCBackward_zmax + BackwardServiceGap_length, 355*cm)"/>
<constant name="HcalEndcapN_length" value="105.0*cm"/>
<comment> HcalEndcapN needs to clear the straight beampipe with 1 * crossing angle + its radius of 22.25 mm </comment>
<constant name="HcalEndcapN_rmin" value="max((HcalEndcapN_zmin + HcalEndcapN_length) * tan(abs(CrossingAngle)) + 22.25 * mm, 11 * cm)"/>
<constant name="HcalBarrel_thickness" value="100.0*cm "/>
<constant name="HcalBarrel_rmin" value="Solenoid_rmax"/>
<constant name="HcalBarrel_rmin" value="max(Solenoid_rmax, 230*cm)"/>
<constant name="HcalBarrel_rmax" value="HcalBarrel_rmin + HcalBarrel_thickness"/>
<constant name="HcalBarrel_length" value="HcalEndcapP_zmin + HcalEndcapN_zmin "/>
<constant name="HcalBarrelForward_zmax" value="HcalEndcapP_zmin - ForwardServiceGap_length - EcalEndcapP_length"/>
<constant name="HcalBarrelBackward_zmax" value="HcalEndcapN_zmin - BackwardServiceGap_length"/>
<comment>
These are used by ddsim, the region where we store all secondaries
......
......@@ -10,16 +10,46 @@
<comment>
Tracking Visualizations
</comment>
<vis name="TrackerVis" ref="AnlRed" />
<vis name="TrackerVis" ref="AnlRed" />
<vis name="TrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="true" />
<vis name="TrackerServiceVis" ref="AnlGold" showDaughters="false" />
<vis name="TrackerLayerVis" ref="AnlGray" visible="true" showDaughters="true" />
<vis name="TrackerModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="false" />
<vis name="TrackerMPGDVis" ref="AnlRed" visible="true" showDaughters="false" />
<comment> Visualization for Barrel MMGAS (apply to layers) and GEM endcap (apply to modules) </comment>
<vis name="TrackerGEMModuleVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="TrackerMMGASLayerVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="VertexSupportVis" ref="AnlBlue" showDaughters="false" />
<vis name="VertexSupportLayerVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="VertexSupportVis" ref="VertexSupportLayerVis" visible="true" showDaughters="true" />
<vis name="VertexLayerVis" ref="AnlGray" visible="true" showDaughters="true" />
<vis name="VertexModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="false" />
<vis name="TOFVis" ref="AnlGreen" showDaughters="true" />
<vis name="TOFVis" ref="AnlTeal" visible="true" showDaughters="true"/>
<vis name="TOFLayerVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFModuleVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFSupportVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFSensorVis" ref="TOFVis" visible="true" showDaughters="true"/>
<comment> By default don't display the barrel module details </comment>
<vis name="TOFBarrelModuleVis" ref="TOFVis" visible="true" showdaughters="true"/>
<comment> extra detailed vizualizations for the barrel </comment>
<vis name="TOFHybridVis" ref="AnlGold" visible="true" showDaughters="true"/>
<vis name="TOFCoolingTube" ref="AnlRed" visible="true" showDaughters="true"/>
<vis name="TOFCoolant" ref="TrackerServiceVis" visible="true" showDaughters="true"/>
<vis name="TOFCSkinVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFCFoamVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFCHoneycombVis" ref="TrackerServiceVis" visible="true" showDaughters="true"/>
<vis name="FFTrackerVis" ref="AnlRed" />
<vis name="FFTrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="FFTrackerShieldingVis" ref="AnlGray" visible="true" showDaughters="false" />
<vis name="FFTrackerServiceVis" ref="AnlGold" visible="true" showDaughters="false" />
<vis name="FFTrackerLayerVis" ref="TrackerVis" visible="true" showDaughters="true" />
<vis name="FFTrackerModuleVis" ref="FFTrackerLayerVis" visible="true" showDaughters="true" />
<vis name="FFTrackerSurfaceVis" ref="FFTrackerLayerVis" visible="true" showDaughters="true" />
<comment> For shielded modules by default just display to module instead of 6 layers </comment>
<vis name="FFTrackerShieldedModuleVis" ref="FFTrackerModuleVis" visible="true" showDaughters="false" />
<comment>
ECal Vis
......@@ -39,6 +69,12 @@
<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>
......@@ -51,10 +87,15 @@
<vis name="HcalSensorVis" ref="AnlBlue" showDaughters="false" visible="false"/>
<vis name="HcalAbsorberVis" ref="AnlGray" showDaughters="false" visible="false"/>
<comment>
Passive steel for flux return
</comment>
<vis name="PassiveSteelVis" ref="AnlViolet" showDaughters="false" visible="true"/>
<comment>
Solenoid
</comment>
<vis name="SolenoidCoilVis" ref="AnlLight_Gray" showDaughters="true" visible="true" lineStyle="solid" drawingStyle="solid" />
<vis name="SolenoidCoilVis" ref="AnlLightGray" showDaughters="true" visible="true" lineStyle="solid" drawingStyle="solid" />
<vis name="SolenoidCryostatVis" ref="AnlGray" showDaughters="true" visible="true" lineStyle="solid" drawingStyle="solid" />
<vis name="SolenoidYokeVis" ref="AnlLight_Gray" showDaughters="false" visible="true" lineStyle="solid" drawingStyle="solid" />
......@@ -72,23 +113,23 @@
<vis name="DIRCBarVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<comment>
Beam line
Beam line with magnets
</comment>
<vis name="BeamPipeVis" ref="AnlLightGray" showDaughters="true" visible="true"/>
<vis name="FFMagnetVis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="FFMagnetCoilVis" ref="AnlRed" showDaughters="true" visible="true"/>
<comment>
ZDC visualization
</comment>
<vis name="ffi_ZDC_ECAL_Vis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_module_Vis" ref="AnlRed" showDaughters="false" visible="true"/>
<vis name="ffi_ZDC_HCAL_Vis" ref="AnlBlue" showDaughters="true" visible="true"/>
<comment>
PID visualization
</comment>
<vis name="BeamPipeVis" ref="AnlLight_Gray" showDaughters="true" visible="true"/>
<vis name="cb_SolenoidVis" alpha="0.4" r= "0.1" g="0.0" b="0.1" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_Vis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_module_Vis" alpha="1.0" r= "0.1" g="1.0" b="0.9" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_HCAL_Vis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_CTDVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_CTD_Si_layerVis" alpha="1.0" r= "0.9" g="1.0" b="0.1" showDaughters="true" visible="true"/>
<vis name="ce_GEMVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_GEM_layerVis" alpha="0.8" r= "0.8" g="0.4" b="0.3" showDaughters="true" visible="true"/>
<vis name="cb_VTX_BarrelVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_VTX_Barrel_layerVis" alpha="2.0" r= "0.0" g="0.2" b="0.8" showDaughters="true" visible="true"/>
<vis name="ci_GEMVis" r= "0.8" g="0.4" b="0.3" alpha="0.8" showDaughters="true" visible="true"/>
<vis name="ci_HCALVis" r= "0.6" g="0" b="0.6" alpha="1.0" showDaughters="true" visible="true"/>
<vis name="DRICH_vessel_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="DRICH_gas_vis" ref="AnlGreen" alpha="0.5" showDaughters="true" visible="true" />
......@@ -96,12 +137,15 @@
<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="AnlBlue" showDaughters="true" visible="true" />
<vis name="PFRICH_sensor_vis" ref="AnlBlue" showDaughters="true" visible="true" />
<vis name="MRICH_aerogel_vis" ref="AnlTeal" showDaughters="true" visible="true" />
<vis name="MRICH_frame_vis" ref="AnlGold" showDaughters="true" visible="true" />
<vis name="MRICH_lens_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="MRICH_mirror_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="RICHServiceVis" ref="AnlGray" showDaughters="true" visible="true" />
</display>
<comment>
......
......@@ -11,42 +11,83 @@
<comment>
Tracking Visualizations
</comment>
<vis name="TrackerSupportVis" ref="AnlBlue" showDaughters="false" />
<vis name="TrackerLayerVis" ref="AnlTeal" visible="true" showDaughters="true" />
<vis name="TrackerModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="false" />
<vis name="VertexSupportVis" ref="AnlBlue" showDaughters="false" />
<vis name="VertexLayerVis" ref="AnlTeal" visible="true" showDaughters="true" />
<vis name="VertexModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="false" />
<vis name="TOFVis" ref="AnlGreen" showDaughters="true" />
<vis name="TrackerVis" ref="AnlRed" />
<vis name="TrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="TrackerServiceVis" ref="AnlGold" showDaughters="false" />
<vis name="TrackerLayerVis" ref="AnlGray" visible="true" showDaughters="true" />
<vis name="TrackerModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="true" />
<vis name="TrackerMPGDVis" ref="AnlRed" visible="true" showDaughters="true" />
<comment> Layer-based visualization for MPGD detectors as it looks better </comment>
<vis name="TrackerGEMModuleVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="TrackerMMGASLayerVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="VertexLayerVis" ref="AnlGray" visible="true" showDaughters="false" />
<vis name="VertexSupportLayerVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="VertexSupportVis" ref="VertexSupportLayerVis" visible="true" showDaughters="true" />
<vis name="VertexModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="true" />
<vis name="TOFVis" ref="AnlTeal" visible="true" showDaughters="true"/>
<vis name="TOFLayerVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFModuleVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFSupportVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFSensorVis" ref="TOFVis" visible="true" showDaughters="true"/>
<vis name="TOFBarrelModuleVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFHybridVis" ref="AnlGold" visible="true" showDaughters="true"/>
<vis name="TOFCoolingTube" ref="AnlRed" visible="true" showDaughters="true"/>
<vis name="TOFCoolant" ref="TrackerServiceVis" visible="true" showDaughters="true"/>
<vis name="TOFCSkinVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFCFoamVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFCHoneycombVis" ref="TrackerServiceVis" visible="true" showDaughters="true"/>
<vis name="FFTrackerVis" ref="AnlRed" />
<vis name="FFTrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="FFTrackerShieldingVis" ref="AnlGray" visible="true" showDaughters="false" />
<vis name="FFTrackerServiceVis" ref="AnlGold" visible="true" showDaughters="false" />
<vis name="FFTrackerLayerVis" ref="TrackerVis" visible="true" showDaughters="true" />
<vis name="FFTrackerModuleVis" ref="FFTrackerLayerVis" visible="true" showDaughters="true" />
<vis name="FFTrackerSurfaceVis" ref="FFTrackerLayerVis" visible="true" showDaughters="true" />
<comment> Display shielded modules in all their glory </comment>
<vis name="FFTrackerShieldedModuleVis" ref="FFTrackerModuleVis" visible="true" showDaughters="true" />
<comment>
ECal Vis
</comment>
<vis name="EcalVis" ref="AnlGold" showDaughters="true" visible="true"/>
<vis name="EcalEndcapVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalBarrelVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalBarrelStaveVis" ref="AnlViolet" showDaughters="false" visible="true" />
<vis name="EcalBarrelEnvelopeVis" ref="AnlViolet" showDaughters="false" visible="true" />
<vis name="EcalBarrelSupportVis" ref="AnlOrange" showDaughters="false" visible="true"/>
<vis name="EcalBarrelLayerVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="EcalBarrelSliceVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="EcalBarrelLayerVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalBarrelEnvelopeVis" ref="AnlGold" showDaughters="true" visible="false" />
<vis name="EcalBarrelStaveVis" ref="AnlGold" showDaughters="true" visible="true" />
<vis name="EcalBarrelFiberLayerVis" ref="AnlGold" showDaughters="false" visible="true" />
<vis name="EcalBarrelSliceVis" ref="AnlGray"/>
<vis name="EcalBarrelSupportVis" ref="AnlOrange"/>
<vis name="EcalVis" ref="AnlGold" showDaughters="true" visible="false"/>
<vis name="EcalEndcapVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapLayerVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapBlockVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalEndcapNModuleVis" ref="AnlTeal" showDaughters="false" visible="true"/>
<vis name="EcalEndcapNModuleVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="FFPreVis" ref="AnlGold" showDaughters="true" visible="true"/>
<vis name="FFPreLayerVis" ref="FFPreVis" showDaughters="true" visible="true"/>
<vis name="FFPreModuleVis" ref="FFPreLayerVis" showDaughters="true" visible="true"/>
<vis name="FFPreRadiatorVis" ref="FFPreModuleVis" showDaughters="true" visible="true"/>
<vis name="FFPreReadoutVis" ref="FFTrackerSurfaceVis" showDaughters="true" visible="true"/>
<comment>
HCal Vis
</comment>
<vis name="HcalVis" ref="AnlViolet" showDaughters="true" visible="true"/>
<vis name="HcalBarrelVis" ref="AnlViolet" showDaughters="true" visible="true"/>
<vis name="HcalBarrelStaveVis" ref="AnlViolet" showDaughters="true" visible="true"/>
<vis name="HcalBarrelLayerVis" ref="AnlViolet" showDaughters="false" visible="true"/>
<vis name="HcalEndcapVis" ref="AnlViolet" showDaughters="true" visible="true"/>
<vis name="HcalEndcapLayerVis" ref="AnlViolet" showDaughters="false" visible="true"/>
<vis name="HcalSensorVis" ref="AnlBlue" showDaughters="false" visible="false"/>
<vis name="HcalAbsorberVis" ref="AnlViolet" showDaughters="false" visible="false"/>
<vis name="HcalVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalBarrelVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalBarrelStaveVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="HcalBarrelLayerVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalEndcapVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="HcalEndcapLayerVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalSensorVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalAbsorberVis" ref="AnlGray" showDaughters="true" visible="true"/>
<comment>
Passive steel for flux return
</comment>
<vis name="PassiveSteelVis" ref="AnlViolet" showDaughters="false" visible="true"/>
<comment>
Solenoid
......@@ -59,43 +100,65 @@
<comment>
PID Detectors
</comment>
<vis name="RICHVis" ref="AnlViolet" showDaughters="true"/>
<vis name="RICHVis" ref="AnlTeal" showDaughters="true"/>
<vis name="DIRCVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<vis name="DIRCLayerVis" ref="AnlTeal" showDaughters="false" visible="true"/>
<vis name="DIRCModuleVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<vis name="DIRCSupportVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<vis name="DIRCFrameVis" ref="AnlOrange" showDaughters="true" visible="true"/>
<vis name="DIRCBarVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<comment>
Beam line with magnets
</comment>
<vis name="BeamPipeVis" ref="AnlLightGray" showDaughters="true" visible="true"/>
<vis name="FFMagnetVis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="FFMagnetCoilVis" ref="AnlRed" showDaughters="true" visible="true"/>
<comment>
ZDC visualization
</comment>
<vis name="ffi_ZDC_ECAL_Vis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_module_Vis" ref="AnlRed" showDaughters="false" visible="true"/>
<vis name="ffi_ZDC_HCAL_Vis" ref="AnlBlue" showDaughters="true" visible="true"/>
<comment>
Beam line
PID visualization
</comment>
<vis name="BeamPipeVis" ref="AnlLight_Gray" showDaughters="true" visible="true"/>
<vis name="cb_SolenoidVis" alpha="0.4" r= "0.1" g="0.0" b="0.1" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_Vis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_module_Vis" alpha="1.0" r= "0.1" g="1.0" b="0.9" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_HCAL_Vis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_CTDVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_CTD_Si_layerVis" alpha="1.0" r= "0.9" g="1.0" b="0.1" showDaughters="true" visible="true"/>
<vis name="ce_GEMVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_GEM_layerVis" alpha="0.8" r= "0.8" g="0.4" b="0.3" showDaughters="true" visible="true"/>
<vis name="cb_VTX_BarrelVis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="cb_VTX_Barrel_layerVis" alpha="2.0" r= "0.0" g="0.2" b="0.8" showDaughters="true" visible="true"/>
<vis name="ci_GEMVis" r= "0.8" g="0.4" b="0.3" alpha="0.8" showDaughters="true" visible="true"/>
<vis name="ci_HCALVis" r= "0.6" g="0" b="0.6" alpha="1.0" showDaughters="true" visible="true"/>
<vis name="DRICH_vessel_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="DRICH_gas_vis" ref="AnlLightGray" alpha="0.2" showDaughters="true" visible="true" />
<vis name="DRICH_aerogel_vis" ref="AnlTeal" showDaughters="true" visible="true" />
<vis name="DRICH_filter_vis" alpha="1.0" r="1.0" g="1.0" b="0.0" showDaughters="true" visible="true" />
<vis name="DRICH_mirror_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="DRICH_sensor_vis" ref="AnlGreen" showDaughters="true" visible="true" />
<vis name="PFRICH_sensor_vis" ref="AnlGreen" showDaughters="true" visible="true" />
<vis name="MRICH_aerogel_vis" ref="AnlTeal" showDaughters="true" visible="true" />
<vis name="MRICH_frame_vis" ref="AnlGold" showDaughters="true" visible="true" />
<vis name="MRICH_lens_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="MRICH_mirror_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="RICHServiceVis" ref="AnlGray" showDaughters="true" visible="true" />
<comment>
Deprecated colors.
vis name="GreenVis" alpha="1.0" r= "0.0" g="1.0" b="0.0" showDaughters="true" visible="true"/
vis name="RedVis" alpha="0.2" r= "1.0" g="0.0" b="0.0" showDaughters="true" visible="true"/
vis name="RPVis" alpha="0.99" r= "1.0" g="0.0" b="0.0" showDaughters="true" visible="true"/
vis name="RPLayerVis" alpha="0.99" r= "0.0" g="0.7" b="0.3" showDaughters="true" visible="true" lineStyle="solid" drawingStyle="solid" /
vis name="BlueVis" alpha="1.0" r= "0.0" g="0.0" b="1.0" showDaughters="true" visible="true"/
vis name="OrangeVis" alpha="1.0" r= "1.0" g="0.45" b="0.0" showDaughters="true" visible="true"/
vis name="RedGreenVis" alpha="0.5" r= "1.0" g="1.0" b="0.0" showDaughters="true" visible="true"/
vis name="BlueGreenVis" alpha="0.5" r= "0.0" g="1.0" b="1.0" showDaughters="true" visible="true"/
vis name="PurpleVis" alpha="1.0" r= "1.0" g="0.0" b="1.0" showDaughters="true" visible="true"/
vis name="DoubleRedG" alpha="0.5" r= "2.0" g=".10" b="0.0" showDaughters="true" visible="true"/
vis name="RBG015" alpha="0.5" r= "0.0" g=".2" b="1.0" showDaughters="true" visible="true"/
vis name="RBG510" alpha="0.5" r= "1.0" g=".2" b="0.0" showDaughters="true" visible="true"/
vis name="RBG" alpha="0.5" r= "1.0" g="1.0" b="1.0" showDaughters="true" visible="true"/
vis name="GrayVis" alpha="1.0" r= "0.75" g="0.75" b="0.75" showDaughters="true" visible="true"/
Deprecated values used for IP6 vis
</comment>
<vis name="GreenVis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="RedVis" ref="AnlRed" showDaughters="true" visible="true"/>
<vis name="RPVis" ref="AnlDelta_Red" showDaughters="true" visible="true"/>
<vis name="RPLayerVis" ref="AnlTeal" showDaughters="true" visible="true" lineStyle="solid" drawingStyle="solid" />
<vis name="BlueVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="OrangeVis" ref="AnlOrange" showDaughters="true" visible="true"/>
<vis name="BlueGreenVis" alpha="0.5" r= "0.0" g="1.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="PurpleVis" alpha="1.0" r= "1.0" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="DoubleRedG" alpha="0.5" r= "2.0" g=".10" b="0.0" showDaughters="true" visible="true"/>
<vis name="RBG015" alpha="0.5" r= "0.0" g=".2" b="1.0" showDaughters="true" visible="true"/>
<vis name="RBG510" alpha="0.5" r= "1.0" g=".2" b="0.0" showDaughters="true" visible="true"/>
<vis name="RBG" alpha="0.5" r= "1.0" g="1.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="GrayVis" alpha="1.0" r= "0.75" g="0.75" b="0.75" showDaughters="true" visible="true"/>
<vis name="AnlRed_1" alpha="0.5" r="205/256" g="32/256" b="44/256"/>
</display>
......@@ -11,23 +11,49 @@
Tracking Visualizations
</comment>
<vis name="TrackerVis" ref="AnlRed" />
<vis name="TrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="true" />
<vis name="TrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="TrackerServiceVis" ref="AnlGold" showDaughters="false" />
<vis name="TrackerLayerVis" ref="AnlGray" visible="true" showDaughters="true" />
<vis name="TrackerSubassemblyVis" ref="TrackerLayerVis"/>
<vis name="TrackerModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="true" />
<vis name="VertexSupportVis" ref="AnlBlue" visible="true" showDaughters="true" />
<vis name="VertexLayerVis" ref="AnlGray" visible="true" showDaughters="true" />
<vis name="VertexModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="true" />
<vis name="TOFVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<vis name="TrackerMPGDVis" ref="AnlRed" visible="true" showDaughters="true" />
<comment> Simple visualization for Barrel MMGAS (apply to layers) and GEM endcap (apply to modules) for better performance </comment>
<vis name="TrackerGEMModuleVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="TrackerMMGASLayerVis" ref="TrackerMPGDVis" visible="true" showDaughters="false" />
<vis name="VertexLayerVis" ref="AnlGray" visible="true" showDaughters="false" />
<vis name="VertexSupportLayerVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="VertexSupportVis" ref="VertexSupportLayerVis" visible="true" showDaughters="true" />
<vis name="VertexModuleVis" ref="TrackerLayerVis" visible="true" showDaughters="true" />
<vis name="TOFVis" ref="AnlTeal" visible="true" showDaughters="true"/>
<vis name="TOFLayerVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFModuleVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFSupportVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFSensorVis" ref="TOFVis" visible="true" showDaughters="true"/>
<vis name="TOFBarrelModuleVis" ref="TOFVis" visible="true" showdaughters="true"/>
<vis name="TOFHybridVis" ref="AnlGold" visible="true" showDaughters="true"/>
<vis name="TOFCoolingTube" ref="AnlRed" visible="true" showDaughters="true"/>
<vis name="TOFCoolant" ref="TrackerServiceVis" visible="true" showDaughters="true"/>
<vis name="TOFCSkinVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFCFoamVis" ref="TrackerSupportVis" visible="true" showDaughters="true"/>
<vis name="TOFCHoneycombVis" ref="TrackerServiceVis" visible="true" showDaughters="true"/>
<vis name="FFTrackerVis" ref="AnlRed" />
<vis name="FFTrackerSupportVis" ref="AnlBlue" visible="true" showDaughters="false" />
<vis name="FFTrackerShieldingVis" ref="AnlGray" visible="true" showDaughters="false" />
<vis name="FFTrackerServiceVis" ref="AnlGold" visible="true" showDaughters="false" />
<vis name="FFTrackerLayerVis" ref="TrackerVis" visible="true" showDaughters="true" />
<vis name="FFTrackerModuleVis" ref="FFTrackerLayerVis" visible="true" showDaughters="true" />
<vis name="FFTrackerSurfaceVis" ref="FFTrackerLayerVis" visible="true" showDaughters="true" />
<comment> For shielded modules by default just display to module instead of 6 layers </comment>
<vis name="FFTrackerShieldedModuleVis" ref="FFTrackerModuleVis" visible="true" showDaughters="false" />
<comment>
ECal Vis
</comment>
<vis name="EcalBarrelLayerVis" ref="AnlGold"/>
<vis name="EcalBarrelLayerVis" ref="AnlGold" showDaughters="false" visible="true"/>
<vis name="EcalBarrelEnvelopeVis" ref="AnlGold" showDaughters="true" visible="false" />
<vis name="EcalBarrelStaveVis" ref="AnlOrange" showDaughters="true" visible="false" />
<vis name="EcalBarrelStaveVis" ref="AnlGold" showDaughters="true" visible="true" />
<vis name="EcalBarrelFiberLayerVis" ref="AnlGold" showDaughters="false" visible="true" />
<vis name="EcalBarrelSliceVis" ref="AnlGray"/>
<vis name="EcalBarrelSupportVis" ref="AnlOrange"/>
......@@ -39,6 +65,12 @@
<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>
......@@ -48,9 +80,14 @@
<vis name="HcalBarrelLayerVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalEndcapVis" ref="AnlBlue" showDaughters="false" visible="true"/>
<vis name="HcalEndcapLayerVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalSensorVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalSensorVis" ref="AnlBlue" showDaughters="true" visible="true"/>
<vis name="HcalAbsorberVis" ref="AnlGray" showDaughters="true" visible="true"/>
<comment>
Passive steel for flux return
</comment>
<vis name="PassiveSteelVis" ref="AnlViolet" showDaughters="false" visible="true"/>
<comment>
Solenoid
</comment>
......@@ -72,26 +109,38 @@
<vis name="DIRCBarVis" ref="AnlTeal" showDaughters="true" visible="true"/>
<comment>
Beam line
Beam line with magnets
</comment>
<vis name="BeamPipeVis" ref="AnlLight_Gray" showDaughters="true" visible="true"/>
<vis name="BeamPipeVis" ref="AnlLightGray" showDaughters="true" visible="true"/>
<vis name="FFMagnetVis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="FFMagnetCoilVis" ref="AnlRed" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_Vis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_module_Vis" alpha="1.0" r= "0.1" g="1.0" b="0.9" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_HCAL_Vis" alpha="0.1" r= "0.1" g="0.0" b="1.0" showDaughters="true" visible="true"/>
<comment>
ZDC visualization
</comment>
<vis name="ffi_ZDC_ECAL_Vis" ref="AnlGreen" showDaughters="true" visible="true"/>
<vis name="ffi_ZDC_ECAL_module_Vis" ref="AnlRed" showDaughters="false" visible="true"/>
<vis name="ffi_ZDC_HCAL_Vis" ref="AnlBlue" showDaughters="true" visible="true"/>
<comment>
PID visualization
</comment>
<vis name="DRICH_vessel_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="DRICH_gas_vis" ref="AnlGreen" alpha="0.5" showDaughters="true" visible="true" />
<vis name="DRICH_gas_vis" ref="AnlLightGray" alpha="0.2" showDaughters="true" visible="true" />
<vis name="DRICH_aerogel_vis" ref="AnlTeal" showDaughters="true" visible="true" />
<vis name="DRICH_filter_vis" alpha="1.0" r="1.0" g="1.0" b="0.0" showDaughters="true" visible="true" />
<vis name="DRICH_mirror_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="DRICH_sensor_vis" ref="AnlGreen" showDaughters="true" visible="true" />
<vis name="PFRICH_sensor_vis" ref="AnlGreen" showDaughters="true" visible="true" /> <!-- invisible, to speedup graphics -->
<vis name="MRICH_aerogel_vis" ref="AnlTeal" showDaughters="true" visible="true" />
<vis name="MRICH_frame_vis" ref="AnlGold" showDaughters="true" visible="true" />
<vis name="MRICH_lens_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="MRICH_mirror_vis" ref="AnlGray" showDaughters="true" visible="true" />
<vis name="RICHServiceVis" ref="AnlGray" showDaughters="true" visible="true" />
<comment>
Deprecated values used for IP6 vis
......