Skip to content
Snippets Groups Projects

Compare revisions

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

Source

Select target project
No results found

Target

Select target project
  • EIC/detectors/athena
  • zwzhao/athena
  • FernandoTA/athena
  • palspeic/athena
4 results
Show changes
Showing
with 1904 additions and 0 deletions
# subsytem_views
These compact detector files are copies of the main `athena.xml` compact description file, modified to only show certain subsystems.
To add or update a subsystem:
1. Copy `athena.xml` to this directory (`compact/subsystem_views`) with the appropriate name.
2. Remove all the undesired detectors from this xml file. **Do not modify any of the included xml files** -- only modify the top level xml file here.
3. Check that that you have the desired color scheme (eg. `colors.xml`) and display attributes (eg. `display_detailed.xml`) included.
These compact detector files should not be used for any real simulations or studies.
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="0">
## Detector Subsystems
### IP Subsystems
The interaction point subsystems are included before the central detector subsystems.
This is becuase the IP subsystems, for exmaple the beampipe, will define paramters
which are subsquently used in the central detector construction -- e.g. the vertex tracker
uses the beampipe OD to help define its placement.
The IP subsystems include the Far forward and backward regions. The list of subsystem includes:
- Interaction region beampipe
- B0 tracker
- Off-momentum tracker
- Far forward roman pots
- Zero Degree Calorimeter
- Beam line magnets.
- and more...
</documentation>
<comment>
Beamline elements
-----------------
</comment>
<include ref="ip6/central_beampipe.xml" />
<documentation level="5">
## Main magnet
Note: When changing magnet, also select dimensions in definitions.xml.
</documentation>
<include ref="compact/solenoid.xml"/>
<documentation level="10">
## Central calorimetry
</documentation>
<include ref="compact/ecal.xml"/>
<include ref="compact/hcal.xml"/>
<readouts>
</readouts>
</lccdd>
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="0">
## Detector Subsystems
### IP Subsystems
The interaction point subsystems are included before the central detector subsystems.
This is becuase the IP subsystems, for exmaple the beampipe, will define paramters
which are subsquently used in the central detector construction -- e.g. the vertex tracker
uses the beampipe OD to help define its placement.
The IP subsystems include the Far forward and backward regions. The list of subsystem includes:
- Interaction region beampipe
- B0 tracker
- Off-momentum tracker
- Far forward roman pots
- Zero Degree Calorimeter
- Beam line magnets.
- and more...
</documentation>
<!-- <include ref="ip6/forward_ion_beamline.xml"/>-->
<!-- <include ref="ip6/beampipe.xml"/>-->
<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>-->
<!-- <detector id="TOFSubAssembly_ID"-->
<!-- name="TOFSubAssembly"-->
<!-- type="DD4hep_SubdetectorAssembly"-->
<!-- vis="TOFSubAssemblyVis">-->
<!-- <composite name="BarrelTOF"/>-->
<!-- <composite name="ForwardTOF"/>-->
<!-- <composite name="BackwardTOF"/>-->
<!-- </detector>-->
</detectors>
<include ref="compact/fake_dirc.xml"/>
<readouts>
</readouts>
</lccdd>
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="10">
## dRICh only
</documentation>
<include ref="ip6/central_beampipe.xml" />
<include ref="compact/drich.xml" />
</lccdd>
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<!--include ref="compact/colors2.xml"/-->
<include ref="compact/display.xml"/>
</display>
<documentation level="0">
## Detector Subsystems
### IP Subsystems
The interaction point subsystems are included before the central detector subsystems.
This is becuase the IP subsystems, for exmaple the beampipe, will define paramters
which are subsquently used in the central detector construction -- e.g. the vertex tracker
uses the beampipe OD to help define its placement.
The IP subsystems include the Far forward and backward regions. The list of subsystem includes:
- Interaction region beampipe
- B0 tracker
- Off-momentum tracker
- Far forward roman pots
- Zero Degree Calorimeter
- Beam line magnets.
- and more...
</documentation>
<comment>
Beamline elements
-----------------
</comment>
<include ref="ip6/central_beampipe.xml" />
<documentation level="5">
## Main magnet
Note: When changing magnet, also select dimensions in definitions.xml.
</documentation>
<documentation level="10">
## Central tracking detectors
</documentation>
<include ref="compact/tracking_config_deathvalley.xml"/>
<documentation level="10">
### PID detectors
</documentation>
<include ref="compact/pid_config_deathvalley.xml"/>
<readouts>
</readouts>
</lccdd>
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<!--include ref="compact/colors2.xml"/-->
<include ref="compact/display.xml" />
<!--include ref="compact/display_detailed.xml"/-->
</display>
<documentation level="0">
## Detector Subsystems
### IP Subsystems
The interaction point subsystems are included before the central detector subsystems.
This is becuase the IP subsystems, for exmaple the beampipe, will define paramters
which are subsquently used in the central detector construction -- e.g. the vertex tracker
uses the beampipe OD to help define its placement.
The IP subsystems include the Far forward and backward regions. The list of subsystem includes:
- Interaction region beampipe
- B0 tracker
- Off-momentum tracker
- Far forward roman pots
- Zero Degree Calorimeter
- Beam line magnets.
- and more...
</documentation>
<documentation level="11">
## Far foward detectors
</documentation>
<include ref="ip6/central_beampipe.xml"/>
<documentation level="11">
## Far foward detectors
</documentation>
<include ref="ip6/far_forward.xml"/>
<documentation level="11">
## Far backward detectors
</documentation>
<include ref="ip6/far_backward.xml"/>
</lccdd>
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="10">
## pfRICH only
</documentation>
<include ref="ip6/central_beampipe.xml" />
<include ref="compact/pfrich.xml" />
</lccdd>
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="0">
## Detector Subsystems
### IP Subsystems
The interaction point subsystems are included before the central detector subsystems.
This is becuase the IP subsystems, for exmaple the beampipe, will define paramters
which are subsquently used in the central detector construction -- e.g. the vertex tracker
uses the beampipe OD to help define its placement.
The IP subsystems include the Far forward and backward regions. The list of subsystem includes:
- Interaction region beampipe
- B0 tracker
- Off-momentum tracker
- Far forward roman pots
- Zero Degree Calorimeter
- Beam line magnets.
- and more...
</documentation>
<comment>
Beamline elements
-----------------
</comment>
<include ref="ip6/central_beampipe.xml" />
<comment>
PID detectors
-------------
</comment>
<include ref="compact/pid_config_deathvalley.xml"/>
<readouts>
</readouts>
</lccdd>
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="10">
## TOF only
</documentation>
<include ref="ip6/central_beampipe.xml" />
<include ref="compact/tof_barrel.xml" />
</lccdd>
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="0">
## Detector Subsystems
### IP Subsystems
The interaction point subsystems are included before the central detector subsystems.
This is becuase the IP subsystems, for exmaple the beampipe, will define paramters
which are subsquently used in the central detector construction -- e.g. the vertex tracker
uses the beampipe OD to help define its placement.
The IP subsystems include the Far forward and backward regions. The list of subsystem includes:
- Interaction region beampipe
- B0 tracker
- Off-momentum tracker
- Far forward roman pots
- Zero Degree Calorimeter
- Beam line magnets.
- and more...
</documentation>
<comment>
Beamline elements
-----------------
</comment>
<include ref="ip6/central_beampipe.xml" />
<comment>
Central tracking detectors
--------------------------
</comment>
<!--include ref="compact/tracking_config_canyonlands.xml"/-->
<include ref="compact/tracking_config_deathvalley.xml"/>
<comment>
PID detectors
-------------
</comment>
<include ref="compact/tof_barrel.xml"/>
<readouts>
</readouts>
</lccdd>
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="0">
## Detector Subsystems
### IP Subsystems
The interaction point subsystems are included before the central detector subsystems.
This is becuase the IP subsystems, for exmaple the beampipe, will define paramters
which are subsquently used in the central detector construction -- e.g. the vertex tracker
uses the beampipe OD to help define its placement.
The IP subsystems include the Far forward and backward regions. The list of subsystem includes:
- Interaction region beampipe
- B0 tracker
- Off-momentum tracker
- Far forward roman pots
- Zero Degree Calorimeter
- Beam line magnets.
- and more...
</documentation>
<comment>
Central tracking detectors
--------------------------
</comment>
<include ref="compact/vertex_tracker_3layers.xml"/>
<readouts>
</readouts>
</lccdd>
<lccdd>
<display>
</display>
<define>
</define>
<documentation level="10">
### Time-of-flight detectors
document here
</documentation>
<!--include ref="tof_endcap.xml"/-->
<include ref="tof_barrel.xml"/>
<include ref="tof_forward.xml"/>
<include ref="tof_backward.xml"/>
</lccdd>
<?xml version="1.0" encoding="UTF-8"?>
<lccdd>
<define>
<comment>
--------------------------
Barrel TOF Parameters
--------------------------
</comment>
<constant name="BarrelTOF_Sensor_thickness" value="0.3*mm"/>
<constant name="BarrelTOF_Hybrid_thickness" value="2*0.008125*cm"/>
<constant name="BarrelTOF_CFSkin_thickness" value="2*0.0075*cm"/>
<constant name="BarrelTOF_CFoam_thickness" value="2*0.29*cm"/>
<constant name="BarrelTOF_CHoneycomb_thickness" value="2*0.29*cm"/>
<constant name="BarrelTOF_CoolingTube_thickness" value="0.08*cm"/>
<constant name="BarrelTOF_Coolant_thickness" value="0.08*cm"/>
<constant name="BarrelTOF_Module_thickness" value="BarrelTOF_Sensor_thickness+2*BarrelTOF_Hybrid_thickness+2*BarrelTOF_CFSkin_thickness+BarrelTOF_CFoam_thickness+BarrelTOF_CoolingTube_thickness+BarrelTOF_Coolant_thickness"/>
<constant name="BarrelTOF_radius_design" value="50.0*cm"/>
<constant name="BarrelTOF_Module_width_design" value="56.0*mm"/>
<constant name="BarrelTOF_Sensor_width_design" value="32.0*mm"/>
<constant name="BarrelTOF_CFoam_width_design" value="BarrelTOF_Sensor_width_design-5.0*mm"/>
<constant name="BarrelTOF_CHoneycomb_width_design" value="BarrelTOF_Module_width_design-BarrelTOF_CFoam_width_design"/>
<constant name="BarrelTOF_CoolingTube_width_design" value="0.75*cm"/>
<constant name="BarrelTOF_Coolant_width_design" value="0.75*cm"/>
<constant name="BarrelTOF_Sensor_position_design" value="0.5*(BarrelTOF_Sensor_width_design-BarrelTOF_Module_width_design)"/>
<constant name="BarrelTOF_CFoam_position_design" value="0.5*(BarrelTOF_CFoam_width_design-BarrelTOF_Module_width_design)"/>
<constant name="BarrelTOF_CHoneycomb_position_design" value="0.5*(BarrelTOF_Module_width_design-BarrelTOF_CHoneycomb_width_design)"/>
<constant name="BarrelTOF_CoolingTube_position_design" value="BarrelTOF_CHoneycomb_position_design"/>
<constant name="BarrelTOF_Coolant_position_design" value="BarrelTOF_CHoneycomb_position_design"/>
<constant name="BarrelTOF_Service_position_design" value="0.0*mm"/>
<constant name="BarrelTOF_scale" value="1.05"/>
<constant name="BarrelTOF_radius" value="BarrelTOF_scale * BarrelTOF_radius_design"/>
<constant name="BarrelTOF_Sensor_width" value="BarrelTOF_scale * BarrelTOF_Sensor_width_design"/>
<constant name="BarrelTOF_CFoam_width" value="BarrelTOF_scale * BarrelTOF_CFoam_width_design"/>
<constant name="BarrelTOF_CHoneycomb_width" value="BarrelTOF_scale * BarrelTOF_CHoneycomb_width_design"/>
<constant name="BarrelTOF_CoolingTube_width" value="BarrelTOF_scale * BarrelTOF_CoolingTube_width_design"/>
<constant name="BarrelTOF_Coolant_width" value="BarrelTOF_scale * BarrelTOF_Coolant_width_design"/>
<constant name="BarrelTOF_Sensor_position" value="BarrelTOF_scale * BarrelTOF_Sensor_position_design"/>
<constant name="BarrelTOF_CFoam_position" value="BarrelTOF_scale * BarrelTOF_CFoam_position_design"/>
<constant name="BarrelTOF_CHoneycomb_position" value="BarrelTOF_scale * BarrelTOF_CHoneycomb_position_design"/>
<constant name="BarrelTOF_CoolingTube_position" value="BarrelTOF_scale * BarrelTOF_CoolingTube_position_design"/>
<constant name="BarrelTOF_Coolant_position" value="BarrelTOF_scale * BarrelTOF_Coolant_position_design"/>
<constant name="BarrelTOF_Service_position" value="BarrelTOF_scale * BarrelTOF_Service_position_design"/>
<constant name="BarrelTOF_Module_width" value="BarrelTOF_scale*BarrelTOF_Module_width_design"/>
<constant name="BarrelTOF_Module_tiltangle" value="18.0*degree"/>
<constant name="BarrelTOF_Module_nphi" value="108"/>
<constant name="BarrelTOF_Module_nz" value="1"/>
<constant name="BarrelTOF_rmin" value="BarrelTOF_radius"/>
<constant name="BarrelTOF_rmax" value="BarrelTOF_rmin+BarrelTOF_Module_width*tan(BarrelTOF_Module_tiltangle)"/>
<constant name="BarrelTOF_thickness" value="BarrelTOF_rmax-BarrelTOF_rmin"/>
<constant name="BarrelTOF_rOffset" value="16.0*mm"/>
<constant name="BarrelTOF_length1" value="2 * BarrelTOF_rmin / CentralTrackingBarrel_tan * 0.995"/>
<constant name="BarrelTOF_length2" value="2 * BarrelTOF_rmax / CentralTrackingBarrel_tan * 0.995"/>
<constant name="BarrelTOF_length" value="BarrelTOF_length2"/>
</define>
<display>
</display>
<detectors>
<detector
id="BarrelTOF_ID"
name="BarrelTOF"
type="athena_TOFBarrel"
readout="TOFBarrelHits"
insideTrackingVolume="true">
<dimensions
rmin="BarrelTOF_rmin-BarrelTOF_rOffset"
rmax="BarrelTOF_rmax+BarrelTOF_rOffset"
length="BarrelTOF_length"/>
<comment>
Tracker Barrel Modules
</comment>
<module name="BarrelTOF_Module1" vis="TOFBarrelModuleVis">
<module_component name="sensor" material="Silicon" sensitive="true" width="BarrelTOF_Sensor_width" length="BarrelTOF_length1" thickness="BarrelTOF_Sensor_thickness" vis="TOFSensorVis" >
<position x="BarrelTOF_Sensor_position" y="0" z="0" />
</module_component>
<module_component name="hybridtop" material="Kapton" sensitive="false" width="BarrelTOF_Module_width" length="BarrelTOF_length1" thickness="BarrelTOF_Hybrid_thickness" vis="TOFHybridVis" >
<position x="BarrelTOF_Service_position" y="0" z="0" />
</module_component>
<module_component name="cfskintop" material="CFRPMix2" sensitive="false" width="BarrelTOF_Module_width" length="BarrelTOF_length1" thickness="BarrelTOF_CFSkin_thickness" vis="TOFCSkinVis" >
<position x="BarrelTOF_Service_position" y="0" z="0" />
</module_component>
<module_component name="coolingtube" material="Aluminum" sensitive="false" width="BarrelTOF_CoolingTube_width" length="BarrelTOF_length1" thickness="BarrelTOF_CoolingTube_thickness" vis="TOFCoolingTubeVis" >
<position x="BarrelTOF_CoolingTube_position" y="0" z="0" />
</module_component>
<module_component name="coolant" material="NOVEC7200" sensitive="false" width="BarrelTOF_Coolant_width" length="BarrelTOF_length1" thickness="BarrelTOF_Coolant_thickness" vis="TOFCoolantVis" >
<position x="BarrelTOF_Coolant_position" y="0" z="0" />
</module_component>
<module_component name="cfoam" material="CarbonFoam" sensitive="false" width="BarrelTOF_CFoam_width" length="BarrelTOF_length1" thickness="BarrelTOF_CFoam_thickness" vis="TOFCFoamVis" >
<position x="BarrelTOF_CFoam_position" y="0" z="0" />
</module_component>
<module_component name="choneycomb" material="CFRPMix" sensitive="false" width="BarrelTOF_CHoneycomb_width" length="BarrelTOF_length1" thickness="BarrelTOF_CHoneycomb_thickness" vis="TOFCHoneycombVis" >
<position x="BarrelTOF_CHoneycomb_position" y="0" z="-1*BarrelTOF_CFoam_thickness" />
</module_component>
<module_component name="cfskinbottom" material="CFRPMix2" sensitive="false" width="BarrelTOF_Module_width" length="BarrelTOF_length1" thickness="BarrelTOF_CFSkin_thickness" vis="TOFCSkinVis" >
<position x="BarrelTOF_Service_position" y="0" z="0" />
</module_component>
<module_component name="hybridbottom" material="Kapton" sensitive="false" width="BarrelTOF_Module_width" length="BarrelTOF_length1" thickness="BarrelTOF_Hybrid_thickness" vis="TOFHybridVis" >
<position x="BarrelTOF_Service_position" y="0" z="0" />
</module_component>
</module>
<layer module="BarrelTOF_Module1" id="1" vis="TOFLayerVis">
<barrel_envelope
inner_r="BarrelTOF_rmin-BarrelTOF_rOffset"
outer_r="BarrelTOF_rmax+BarrelTOF_rOffset"
z_length="BarrelTOF_length"/>
<rphi_layout phi_tilt="BarrelTOF_Module_tiltangle" nphi="BarrelTOF_Module_nphi" phi0="0.0" rc="BarrelTOF_rmin" dr="0.0*mm"/>
<z_layout dr="0.0*mm" z0="0.0*mm" nz="BarrelTOF_Module_nz"/>
</layer>
</detector>
</detectors>
<readouts>
<readout name="TOFBarrelHits">
<segmentation type="CartesianGridXY" grid_size_x="0.05*mm" grid_size_y="BarrelTOF_length1/48" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,y:-16</id>
</readout>
</readouts>
</lccdd>
<?xml version="1.0" encoding="UTF-8"?>
<lccdd>
<define>
<comment>
--------------------------
Forward TOF Parameters
--------------------------
</comment>
<comment> Forward/backward TOF position </comment>
<constant name="ForwardTOF_length" value="min(ForwardTOFRegion_length, 2.*cm)"/>
<constant name="ForwardTOF_zmin" value="ForwardTOFRegion_zmin + ForwardTOFRegion_length - ForwardTOF_length - 1*cm"/>
<constant name="ForwardTOF_nlayers" value="2"/>
<constant name="ForwardTOFMod_offset" value="1.2*cm"/>
<constant name="BackwardTOF_length" value="min(BackwardTOFRegion_length, 2.*cm)"/>
<constant name="BackwardTOF_zmin" value="BackwardTOFRegion_zmin + 0.5*cm"/>
<constant name="BackwardTOF_nlayers" value="2"/>
<constant name="BackwardTOFMod_offset" value="1.2*cm"/>
<comment> LGAD parameters for the endcap TOFs </comment>
<constant name="TOFEndcapSensor_thickness" value="300*um" />
<constant name="TOFEndcapService_thickness" value="5.00/100*9.37*cm-TOFEndcapSensor_thickness" />
<constant name="TOFEndcapMod_count" value="36" />
<constant name="TOFEndcapMod_dz" value="0" />
<constant name="TOFEndcapMod_overlap" value="0" />
</define>
<documentation>
## Forward and backward TOF double-disks,
## a potential ATHENA upgrade
</documentation>
<comment>
Actual detector implementation.
</comment>
<define>
<constant name="TOFEndcapMod_thickness" value="TOFEndcapSensor_thickness + TOFEndcapService_thickness" />
<constant name="TOFEndcapMod_angle" value="360.0*degree / TOFEndcapMod_count * (1 + TOFEndcapMod_overlap)" />
<comment> 1 um padding to not have layer and module touch (ACTS requirement) </comment>
<constant name="TOFEndcapLayer_thickness" value="TOFEndcapMod_thickness + 2 * TOFEndcapMod_dz + 1 * um" />
<constant name="ForwardTOFMod_rmin" value="ForwardTOFRegion_tan * ForwardTOF_zmin" />
<constant name="ForwardTOFMod_rmax" value="ForwardTOFRegion_rmax" />
<constant name="ForwardTOFMod_x1" value="2 * ForwardTOFMod_rmin * tan(TOFEndcapMod_angle/2)" />
<constant name="ForwardTOFMod_x2" value="2 * ForwardTOFMod_rmax * sin(TOFEndcapMod_angle/2)" />
<constant name="ForwardTOFMod_y" value="ForwardTOFMod_rmax * cos(TOFEndcapMod_angle/2) - ForwardTOFMod_rmin" />
<constant name="ForwardTOFMod1_zmin" value="ForwardTOF_zmin" />
<constant name="ForwardTOFMod2_zmin" value="ForwardTOF_zmin + ForwardTOFMod_offset" />
<constant name="ForwardTOFLayer_rmin" value="ForwardTOFMod_rmin - 1*um" />
<constant name="ForwardTOFLayer_rmax" value="ForwardTOFMod_rmax + 1*um" />
<constant name="ForwardTOFLayer1_zmin" value="ForwardTOFMod1_zmin - TOFEndcapLayer_thickness / 2" />
<constant name="ForwardTOFLayer2_zmin" value="ForwardTOFMod2_zmin - TOFEndcapLayer_thickness / 2" />
<constant name="BackwardTOFMod_rmin" value="BackwardPIDRegion_tan * BackwardTOF_zmin" />
<constant name="BackwardTOFMod_rmax" value="BackwardPIDRegion_rmax" />
<constant name="BackwardTOFMod_x1" value="2 * BackwardTOFMod_rmin * tan(TOFEndcapMod_angle/2)" />
<constant name="BackwardTOFMod_x2" value="2 * BackwardTOFMod_rmax * sin(TOFEndcapMod_angle/2)" />
<constant name="BackwardTOFMod_y" value="BackwardTOFMod_rmax * cos(TOFEndcapMod_angle/2) - BackwardTOFMod_rmin" />
<constant name="BackwardTOFMod1_zmin" value="BackwardTOF_zmin" />
<constant name="BackwardTOFMod2_zmin" value="BackwardTOF_zmin + BackwardTOFMod_offset" />
<constant name="BackwardTOFLayer_rmin" value="BackwardTOFMod_rmin - 1*um" />
<constant name="BackwardTOFLayer_rmax" value="BackwardTOFMod_rmax + 1*um" />
<constant name="BackwardTOFLayer1_zmin" value="BackwardTOFMod1_zmin - TOFEndcapLayer_thickness / 2" />
<constant name="BackwardTOFLayer2_zmin" value="BackwardTOFMod2_zmin - TOFEndcapLayer_thickness / 2" />
</define>
<detectors>
<detector
id="ForwardTOF_ID"
name="ForwardTOF"
type="athena_TrapEndcapTracker"
readout="TOFEndcapHits"
vis="TOFVis"
reflect="false">
<module name="ForwardModule" vis="TOFModuleVis">
<trd x1="ForwardTOFMod_x1/2.0" x2="ForwardTOFMod_x2/2.0" z="ForwardTOFMod_y/2"/>
<comment> TRDs are built back-to-front </comment>
<module_component thickness="TOFEndcapService_thickness" material="Silicon" vis="TOFVis"/>
<module_component thickness="TOFEndcapSensor_thickness" material="Silicon" sensitive="true" vis="TOFSensorVis"/>
</module>
<layer id="1">
<envelope vis="TOFLayerVis"
rmin="ForwardTOFLayer_rmin"
rmax="ForwardTOFLayer_rmax"
length="TOFEndcapLayer_thickness"
zstart="ForwardTOFLayer1_zmin" />
<ring
r="ForwardTOFMod_rmin + ForwardTOFMod_y/2.0"
zstart="0"
nmodules="TOFEndcapMod_count"
dz="TOFEndcapMod_dz"
module="ForwardModule" />
</layer>
<layer id="2">
<envelope vis="TOFLayerVis"
rmin="ForwardTOFLayer_rmin"
rmax="ForwardTOFLayer_rmax"
length="TOFEndcapLayer_thickness"
zstart="ForwardTOFLayer2_zmin" />
<ring
r="ForwardTOFMod_rmin + ForwardTOFMod_y/2.0"
zstart="0"
nmodules="TOFEndcapMod_count"
dz="TOFEndcapMod_dz"
module="ForwardModule" />
</layer>
</detector>
<detector
id="BackwardTOF_ID"
name="BackwardTOF"
type="athena_TrapEndcapTracker"
readout="TOFEndcapHits"
vis="TOFVis"
reflect="true">
<module name="BackwardModule" vis="TOFModuleVis">
<trd x1="BackwardTOFMod_x1/2.0" x2="BackwardTOFMod_x2/2.0" z="BackwardTOFMod_y/2"/>
<comment> TRDs are built back-to-front </comment>
<module_component thickness="TOFEndcapService_thickness" material="Silicon" vis="TOFVis"/>
<module_component thickness="TOFEndcapSensor_thickness" material="Silicon" sensitive="true" vis="TOFSensorVis"/>
</module>
<layer id="1">
<envelope vis="TOFLayerVis"
rmin="BackwardTOFLayer_rmin"
rmax="BackwardTOFLayer_rmax"
length="TOFEndcapLayer_thickness"
zstart="BackwardTOFLayer1_zmin" />
<ring
r="BackwardTOFMod_rmin + BackwardTOFMod_y/2.0"
zstart="0"
nmodules="TOFEndcapMod_count"
dz="TOFEndcapMod_dz"
module="BackwardModule" />
</layer>
<layer id="2">
<envelope vis="TOFLayerVis"
rmin="BackwardTOFLayer_rmin"
rmax="BackwardTOFLayer_rmax"
length="TOFEndcapLayer_thickness"
zstart="BackwardTOFLayer2_zmin" />
<ring
r="BackwardTOFMod_rmin + BackwardTOFMod_y/2.0"
zstart="0"
nmodules="TOFEndcapMod_count"
dz="TOFEndcapMod_dz"
module="BackwardModule" />
</layer>
</detector>
</detectors>
<readouts>
<readout name="TOFEndcapHits">
<segmentation type="CartesianGridXZ" grid_size_x="50*um" grid_size_z="50*um" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
</readout>
</readouts>
</lccdd>
<lccdd>
<display>
</display>
<define>
</define>
<documentation level="10">
### Silicon tracking configuration
</documentation>
<documentation level="5">
### Tracker subassemblies for ACTS
</documentation>
<detectors>
<detector id="VertexSubAssembly_0_ID"
name="VertexBarrelSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexEndcapN" />
<composite name="VertexBarrel" />
<composite name="VertexEndcapP" />
</detector>
<detector id="TrackerSubAssembly_0_ID"
name="TrackerBarrelSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerEndcapN_Inner"/>
<composite name="TrackerBarrel_Inner"/>
<composite name="TrackerEndcapP_Inner"/>
</detector>
<detector id="TrackerSubAssembly_1_ID"
name="TrackerSubAssembly_Outer"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Outer"/>
<composite name="TrackerEndcapP_Outer"/>
<composite name="TrackerEndcapN_Outer"/>
</detector>
<detector id="TrackerSubAssembly_1_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="SubAssemblyVis">
<composite name="GEMTrackerEndcapP"/>
<composite name="GEMTrackerEndcapN"/>
</detector>
</detectors>
<documentation>
### Material map for ACTS
https://eicweb.phy.anl.gov/EIC/detectors/athena/-/issues/128
</documentation>
<plugins>
<plugin name="FileLoader">
<arg value="file:calibrations/materials-map.cbor"/>
<arg value="url:https://eicweb.phy.anl.gov/EIC/detectors/athena/uploads/458fee1b8c95bf408159fe70d654b8c0/material-maps.cbor"/>
</plugin>
</plugins>
<include ref="vertex_tracker.xml"/>
<include ref="central_tracker.xml"/>
<include ref="gem_tracker_endcap.xml"/>
</lccdd>
<lccdd>
<display>
</display>
<define>
</define>
<documentation level="10">
### Silicon tracking configuration
</documentation>
<documentation level="5">
### Tracker subassemblies for ACTS
</documentation>
<detectors>
<detector id="VertexSubAssembly_0_ID"
name="VertexBarrelSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexBarrel" />
</detector>
<detector id="TrackerSubAssembly_0_ID"
name="InnerTrackerSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="InnerTrackerEndcapN"/>
<composite name="InnerTrackerBarrel"/>
<composite name="InnerTrackerEndcapP"/>
</detector>
<detector id="TrackerSubAssembly_1_ID"
name="MedialTrackerSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="MedialTrackerEndcapN"/>
<composite name="MedialTrackerBarrel"/>
<composite name="MedialTrackerEndcapP"/>
</detector>
<detector id="TrackerSubAssembly_2_ID"
name="OuterTrackerSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="OuterTrackerCompositeEndcapN"/>
<composite name="OuterTrackerBarrel"/>
<composite name="OuterTrackerCompositeEndcapP"/>
</detector>
<!--
<detector id="TrackerSubAssembly_3_ID"
name="EcalBarrelSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
</detector>
-->
<detector id="TrackerSubAssembly_4_ID"
name="ForwardBackwardTrackerSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="ForwardGEM"/>
<composite name="BackwardNullTracker"/>
</detector>
<detector id="TrackerCompositeEndcapN_0_ID"
name="OuterTrackerCompositeEndcapN"
type="athena_CompositeTracker"
actsType="endcap"
vis="TrackerSubAssemblyVis">
<position x="0*cm" y="0*cm" z="-1*um" />
<composite name="OuterTrackerEndcapN"/>
<composite name="GEMEndcapN"/>
</detector>
<detector id="TrackerCompositeEndcapP_0_ID"
name="OuterTrackerCompositeEndcapP"
type="athena_CompositeTracker"
actsType="endcap"
vis="TrackerSubAssemblyVis">
<position x="0*cm" y="0*cm" z="0*cm" />
<composite name="OuterTrackerEndcapP"/>
<composite name="GEMEndcapP"/>
</detector>
<detector id="TrackerCompositeEndcapN_1_ID"
name="BackwardNullTracker"
type="athena_CompositeTracker"
actsType="endcap"
vis="TrackerSubAssemblyVis">
<position x="0*cm" y="0*cm" z="-1*um" />
</detector>
</detectors>
<documentation>
### Material map for ACTS
https://eicweb.phy.anl.gov/EIC/detectors/athena/-/issues/127
</documentation>
<plugins>
<plugin name="FileLoader">
<arg value="file:calibrations/materials-map.cbor"/>
<arg value="url:https://eicweb.phy.anl.gov/EIC/detectors/athena/uploads/979a4ed2d01a023b70237e39670bd31b/material-maps.cbor"/>
</plugin>
</plugins>
<include ref="vertex_tracker_3layers.xml"/>
<include ref="central_tracker_hybrid_v2.xml"/>
</lccdd>
<lccdd>
<display>
</display>
<define>
</define>
<documentation level="10">
### Silicon tracking configuration
</documentation>
<documentation level="5">
### Tracker subassemblies for ACTS
</documentation>
<detectors>
<detector id="VertexSubAssembly_0_ID"
name="VertexBarrelSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexBarrel" />
</detector>
<detector id="TrackerSubAssembly_0_ID"
name="InnerTrackerSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="InnerTrackerEndcapN"/>
<composite name="InnerTrackerBarrel"/>
<composite name="InnerTrackerEndcapP"/>
</detector>
<detector id="TrackerSubAssembly_1_ID"
name="MedialTrackerSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="MedialTrackerEndcapN"/>
<composite name="MedialTrackerCompositeBarrel"/>
<composite name="MedialTrackerEndcapP"/>
</detector>
<detector id="TrackerSubAssembly_2_ID"
name="OuterTrackerSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="OuterTrackerCompositeEndcapN"/>
<composite name="OuterTrackerBarrel"/>
<composite name="OuterTrackerCompositeEndcapP"/>
</detector>
<!--
<detector id="TrackerSubAssembly_3_ID"
name="EcalBarrelSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
</detector>
-->
<detector id="TrackerSubAssembly_4_ID"
name="ForwardBackwardTrackerSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="ForwardGEM"/>
<composite name="BackwardNullTracker"/>
</detector>
<detector id="TrackerCompositeBarrel_0_ID"
name="MedialTrackerCompositeBarrel"
type="athena_CompositeTracker"
actsType="barrel"
vis="TrackerSubAssemblyVis">
<position x="0*cm" y="0*cm" z="0*um" />
<composite name="MedialTrackerBarrel"/>
<composite name="BarrelTOF"/>
</detector>
<detector id="TrackerCompositeEndcapN_0_ID"
name="OuterTrackerCompositeEndcapN"
type="athena_CompositeTracker"
actsType="endcap"
vis="TrackerSubAssemblyVis">
<position x="0*cm" y="0*cm" z="-1*um" />
<composite name="OuterTrackerEndcapN"/>
<composite name="GEMEndcapN"/>
</detector>
<detector id="TrackerCompositeEndcapP_0_ID"
name="OuterTrackerCompositeEndcapP"
type="athena_CompositeTracker"
actsType="endcap"
vis="TrackerSubAssemblyVis">
<position x="0*cm" y="0*cm" z="0*cm" />
<composite name="OuterTrackerEndcapP"/>
<composite name="GEMEndcapP"/>
</detector>
<detector id="TrackerCompositeEndcapN_1_ID"
name="BackwardNullTracker"
type="athena_CompositeTracker"
actsType="endcap"
vis="TrackerSubAssemblyVis">
<position x="0*cm" y="0*cm" z="-1*um" />
</detector>
</detectors>
<documentation>
### Material map for ACTS
https://eicweb.phy.anl.gov/EIC/detectors/athena/-/issues/127
</documentation>
<plugins>
<plugin name="FileLoader">
<arg value="cache:$DETECTOR_PATH"/>
<arg value="file:calibrations/materials-map.cbor"/>
<arg value="url:https://eicweb.phy.anl.gov/EIC/detectors/athena/uploads/4a4e7c8eb6089b634d762d112c89bd5d/material-maps.cbor"/>
</plugin>
</plugins>
<include ref="vertex_tracker_3layers.xml"/>
<include ref="central_tracker_hybrid_v2.xml"/>
</lccdd>
<lccdd>
<define>
<constant name="CrystalModule_sx" value="20.00*mm"/>
<constant name="CrystalModule_sy" value="20.00*mm"/>
<constant name="CrystalModule_sz" value="200.00*mm"/>
<constant name="CrystalModule_wrap" value="0.50*mm"/>
<constant name="GlassModule_sx" value="40.00*mm"/>
<constant name="GlassModule_sy" value="40.00*mm"/>
<constant name="GlassModule_sz" value="400.00*mm"/>
<constant name="GlassModule_wrap" value="1.00*mm"/>
<constant name="CrystalModule_z0" value="10.*cm"/>
<constant name="GlassModule_z0" value="0.0*cm"/>
<constant name="EcalEndcapN_z0" value="-EcalEndcapN_zmin-max(CrystalModule_sz,GlassModule_sz)/2."/>
<constant name="CrystalModule_dx" value="CrystalModule_sx + CrystalModule_wrap"/>
<constant name="CrystalModule_dy" value="CrystalModule_sy + CrystalModule_wrap"/>
<constant name="GlassModule_dx" value="GlassModule_sx + GlassModule_wrap"/>
<constant name="GlassModule_dy" value="GlassModule_sy + GlassModule_wrap"/>
</define>
<detectors>
<comment> </comment>
<documentation level="10">
#### Backwards Endcap EM Calorimeter
Backwards Endcap EM Calorimeter, placements generated by script
</documentation>
<detector id="ECalEndcapN_ID" name="EcalEndcapN" type="HomogeneousCalorimeter" readout="EcalEndcapNHits">
<position x="0" y="0" z="EcalEndcapN_z0"/>
<rotation x="0" y="0" z="0"/>
<placements>
<lines sector="1" mirrorx="true" mirrory="true">
<module sizex="CrystalModule_sx" sizey="CrystalModule_sy" sizez="CrystalModule_sz" material="PbWO4" vis="EcalEndcapNModuleVis"/>
<wrapper thickness="CrystalModule_wrap" material="Epoxy" vis="InvisibleWithDaughters"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*1/2." z="CrystalModule_z0" begin="5" nmods="21"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*3/2." z="CrystalModule_z0" begin="5" nmods="21"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*5/2." z="CrystalModule_z0" begin="5" nmods="21"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*7/2." z="CrystalModule_z0" begin="4" nmods="22"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*9/2." z="CrystalModule_z0" begin="3" nmods="23"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*11/2." z="CrystalModule_z0" begin="0" nmods="26"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*13/2." z="CrystalModule_z0" begin="0" nmods="24"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*15/2." z="CrystalModule_z0" begin="0" nmods="24"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*17/2." z="CrystalModule_z0" begin="0" nmods="24"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*19/2." z="CrystalModule_z0" begin="0" nmods="24"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*21/2." z="CrystalModule_z0" begin="0" nmods="24"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*23/2." z="CrystalModule_z0" begin="0" nmods="24"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*25/2." z="CrystalModule_z0" begin="0" nmods="22"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*27/2." z="CrystalModule_z0" begin="0" nmods="22"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*29/2." z="CrystalModule_z0" begin="0" nmods="20"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*31/2." z="CrystalModule_z0" begin="0" nmods="20"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*33/2." z="CrystalModule_z0" begin="0" nmods="18"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*35/2." z="CrystalModule_z0" begin="0" nmods="18"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*37/2." z="CrystalModule_z0" begin="0" nmods="16"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*39/2." z="CrystalModule_z0" begin="0" nmods="16"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*41/2." z="CrystalModule_z0" begin="0" nmods="14"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*43/2." z="CrystalModule_z0" begin="0" nmods="14"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*45/2." z="CrystalModule_z0" begin="0" nmods="12"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*47/2." z="CrystalModule_z0" begin="0" nmods="12"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*49/2." z="CrystalModule_z0" begin="0" nmods="6"/>
<line axis="x" x="CrystalModule_dx/2." y="CrystalModule_dy*51/2." z="CrystalModule_z0" begin="0" nmods="6"/>
</lines>
<lines sector="2" mirrorx="true" mirrory="true">
<module sizex="GlassModule_sx" sizey="GlassModule_sy" sizez="GlassModule_sz" material="PbGlass" vis="EcalEndcapNModuleVis"/>
<wrapper thickness="GlassModule_wrap" material="Epoxy" vis="InvisibleWithDaughters"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*1/2." z="GlassModule_z0" begin="13" nmods="10"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*3/2." z="GlassModule_z0" begin="13" nmods="10"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*5/2." z="GlassModule_z0" begin="13" nmods="10"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*7/2." z="GlassModule_z0" begin="12" nmods="10"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*9/2." z="GlassModule_z0" begin="12" nmods="10"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*11/2." z="GlassModule_z0" begin="12" nmods="10"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*13/2." z="GlassModule_z0" begin="11" nmods="11"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*15/2." z="GlassModule_z0" begin="10" nmods="11"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*17/2." z="GlassModule_z0" begin="9" nmods="12"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*19/2." z="GlassModule_z0" begin="8" nmods="13"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*21/2." z="GlassModule_z0" begin="7" nmods="13"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*23/2." z="GlassModule_z0" begin="6" nmods="14"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*25/2." z="GlassModule_z0" begin="3" nmods="16"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*27/2." z="GlassModule_z0" begin="0" nmods="18"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*29/2." z="GlassModule_z0" begin="0" nmods="18"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*31/2." z="GlassModule_z0" begin="0" nmods="16"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*33/2." z="GlassModule_z0" begin="0" nmods="16"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*35/2." z="GlassModule_z0" begin="0" nmods="14"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*37/2." z="GlassModule_z0" begin="0" nmods="13"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*39/2." z="GlassModule_z0" begin="0" nmods="11"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*41/2." z="GlassModule_z0" begin="0" nmods="10"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*43/2." z="GlassModule_z0" begin="0" nmods="7"/>
<line axis="x" x="GlassModule_dx/2." y="GlassModule_dy*45/2." z="GlassModule_z0" begin="0" nmods="3"/>
</lines>
</placements>
</detector>
</detectors>
<readouts>
<comment>Effectively no segmentation, the segmentation is used to provide cell dimension info</comment>
<readout name="EcalEndcapNHits">
<segmentation type="MultiSegmentation" key="sector">
<segmentation name="CrystalSeg" key_value="1" type="CartesianGridXY" grid_size_x="CrystalModule_dx" grid_size_y="CrystalModule_dy"/>
<segmentation name="GlassSeg" key_value="2" type="CartesianGridXY" grid_size_x="GlassModule_dx" grid_size_y="GlassModule_dy"/>
</segmentation>
<id>system:8,sector:4,module:20,x:32:-16,y:-16</id>
</readout>
</readouts>
</lccdd>
<lccdd>
<display>
<vis name="EcalBarrelEnvelope_vis" alpha="0.9" r="0.99" g="0.5" b="0" showDaughters="true" visible="false" />
<vis name="EcalBarrelStave_vis" alpha="0.9" r="0.99" g="0.5" b="0" showDaughters="true" visible="false" />
<vis name="EcalBarrelFiberLayerVis" alpha="1.0" r="102/256" g="102/256" b="102/256" showDaughters="false" visible="true" />
<vis name="EcalBarrelFiberVis" alpha="1.0" r="0/256" g="130/256" b="202/256" showDaughters="false" visible="false" />
</display>
<define>
<comment>
---------------------------------------
EM Calorimeter Parameters with AstroPix
---------------------------------------
</comment>
<constant name="EcalBarrel_Support_thickness" value="5*cm"/>
<constant name="EcalBarrel_SiliconThickness" value="500*um"/>
<constant name="EcalBarrel_ElectronicsThickness" value="150*um"/>
<constant name="EcalBarrel_CopperThickness" value="100*um"/>
<constant name="EcalBarrel_KaptonThickness" value="200*um"/>
<constant name="EcalBarrel_EpoxyThickness" value="100*um"/>
<constant name="EcalBarrel_CarbonThickness" value="0.5*mm"/>
<constant name="EcalBarrel_CarbonSpacerWidth" value="4*mm"/>
<constant name="EcalBarrel_LayerSpacing" value="6.0*mm"/>
<constant name="EcalBarrel_FiberRadius" value="0.5*mm"/>
<constant name="EcalBarrel_FiberXSpacing" value="1.34*mm"/>
<constant name="EcalBarrel_FiberZSpacing" value="1.22*mm"/>
<comment>
For Pb/SiFi (GlueX): X0 ~ 1.45 cm
For W/SiFi (sPHENIX): X0 ~ 0.7 cm (but different fiber orientation)
</comment>
<constant name="EcalBarrel_RadiatorThickness" value="EcalBarrel_FiberZSpacing*12"/>
<constant name="EcalBarrel_ModRepeat" value="CaloSides"/>
<constant name="EcalBarrel_ModLength" value="0.5*m"/>
<constant name="EcalBarrel_ModWidth" value="0.5*m"/>
<constant name="EcalBarrel_AvailThickness" value="EcalBarrelEnvelope_thickness-EcalBarrel_Support_thickness"/>
<constant name="EcalBarrel_ImagingLayerThickness"
value="EcalBarrel_SiliconThickness
+ EcalBarrel_ElectronicsThickness
+ EcalBarrel_CopperThickness
+ EcalBarrel_KaptonThickness
+ EcalBarrel_EpoxyThickness
+ EcalBarrel_CarbonThickness
+ EcalBarrel_LayerSpacing
+ EcalBarrel_RadiatorThickness"/>
<constant name="EcalBarrelImagingLayers_max" value="6"/>
<constant name="EcalBarrelImagingLayers" value="min(EcalBarrelImagingLayers_max, floor(EcalBarrel_AvailThickness/EcalBarrel_ImagingLayerThickness))"/>
<constant name="EcalBarrel_FiberLayerThickness_max" value="max(0, EcalBarrel_AvailThickness-(EcalBarrelImagingLayers*EcalBarrel_ImagingLayerThickness-EcalBarrel_RadiatorThickness))"/>
<constant name="EcalBarrel_FiberLayerThickness" value="EcalBarrel_FiberZSpacing*12*15"/>
</define>
<limits>
</limits>
<regions>
</regions>
<display>
</display>
<detectors>
<comment>
---------------------
Barrel EM Calorimeter
---------------------
A layered EM calorimeter with tungsten and silicon (AstroPix)
</comment>
<detector
id="ECalBarrel_ID"
name="EcalBarrel"
type="athena_EcalBarrelHybrid"
readout="EcalBarrelHits"
calorimeterType="EM_BARREL"
vis="EcalBarrelEnvelope_vis"
offset="EcalBarrel_offset">
<dimensions numsides="EcalBarrel_ModRepeat"
rmin="EcalBarrel_rmin"
z="EcalBarrel_length"/>
<staves vis="EcalBarrelStave_vis">
<support inside="true" material="Steel235" vis="AnlOrange"
thickness="EcalBarrel_Support_thickness"
n_beams="3" grid_size="25.0*cm" >
</support>
</staves>
<comment>
---------------------------
Imaging layers with silicon
---------------------------
</comment>
<layer repeat="EcalBarrelImagingLayers-1" vis="AnlBlue">
<slice material="Silicon" thickness="EcalBarrel_SiliconThickness" sensitive="yes" limits="cal_limits" vis="AnlGray"/>
<slice material="Silicon" thickness="EcalBarrel_ElectronicsThickness" vis="AnlGold"/>
<slice material="Copper" thickness="EcalBarrel_CopperThickness" vis="AnlGray"/>
<slice material="Kapton" thickness="EcalBarrel_KaptonThickness" vis="AnlGold"/>
<slice material="Epoxy" thickness="EcalBarrel_EpoxyThickness" vis="AnlGray"/>
<slice material="CarbonFiber" thickness="EcalBarrel_CarbonThickness" vis="AnlGold"/>
<slice material="Lead" thickness="EcalBarrel_RadiatorThickness" vis="EcalBarrelFibersVis">
<fiber material="PlasticScint"
sensitive="yes"
vis="EcalBarrelFiberVis"
radius="EcalBarrel_FiberRadius"
spacing_x="EcalBarrel_FiberXSpacing"
spacing_z="EcalBarrel_FiberZSpacing"/>
</slice>
<slice material="CarbonFiber" thickness="EcalBarrel_CarbonThickness" vis="AnlGold"/>
<slice material="Air" thickness="EcalBarrel_LayerSpacing" vis="AnlGold"/>
</layer>
<comment>
---------------------------
Last imiging layer with thick scint fiber layer
---------------------------
</comment>
<layer repeat="1" vis="AnlBlue">
<slice material="Silicon" thickness="EcalBarrel_SiliconThickness" sensitive="yes" limits="cal_limits" vis="AnlGray"/>
<slice material="Silicon" thickness="EcalBarrel_ElectronicsThickness" vis="AnlGold"/>
<slice material="Copper" thickness="EcalBarrel_CopperThickness" vis="AnlGray"/>
<slice material="Kapton" thickness="EcalBarrel_KaptonThickness" vis="AnlGold"/>
<slice material="Epoxy" thickness="EcalBarrel_EpoxyThickness" vis="AnlGray"/>
<slice material="CarbonFiber" thickness="EcalBarrel_CarbonThickness" vis="AnlGold"/>
<slice material="Lead" thickness="min(EcalBarrel_FiberLayerThickness_max, EcalBarrel_FiberLayerThickness)"
vis="EcalBarrelFiberLayerVis">
<fiber material="PlasticScint"
sensitive="yes"
vis="EcalBarrelFiberVis"
radius="EcalBarrel_FiberRadius"
spacing_x="EcalBarrel_FiberXSpacing"
spacing_z="EcalBarrel_FiberZSpacing">
</fiber>
</slice>
</layer>
</detector>
</detectors>
<readouts>
<readout name="EcalBarrelHits">
<segmentation type="MultiSegmentation" key="fiber">
<segmentation name="LongiSeg" key_value="0x0" type="CartesianGridXY" grid_size_x="0.5*mm" grid_size_y="0.5*mm"/>
<segmentation name="RadialSeg" key_min="0x1" key_max="0xffffffff" type="NoSegmentation"/>
</segmentation>
<hits_collections>
<hits_collection name="EcalBarrelHits" key="fiber" key_value="0x0"/>
<hits_collection name="EcalBarrelScFiHits" key="fiber" key_min="0x1" key_max="0xffffffff"/>
</hits_collections>
<id>system:8,module:5,layer:4,slice:4,grid:9,fiber:9,x:39:-11,y:-14</id>
</readout>
</readouts>
</lccdd>
<lccdd>
<define>
</define>
<limits>
</limits>
<regions>
</regions>
<!-- Common Generic visualization attributes -->
<comment>Common Generic visualization attributes</comment>
<display>
</display>
<detectors>
<comment>
------------------------------------------
Forward (Positive Z) Endcap EM Calorimeter
------------------------------------------
An EM calorimeter with shashlik hexagon modules
</comment>
<detector id="ECalEndcapP_ID"
name="EcalEndcapP"
type="ShashlikCalorimeter"
readout="EcalEndcapPHits">
<position x="0" y="0" z="EcalEndcapP_zmin"/>
<placements>
<disk rmin="EcalEndcapP_rmin" rmax = "EcalEndcapP_rmax" sector="1">
<wrapper thickness="2*mm" material="Epoxy" vis="WhiteVis"/>
<module shape="square" side_length="50*mm" vis="EcalEndcapVis">
<layer repeat="EcalEndcapPLayer1_NRepeat" vis="EcalEndcapVis">
<slice material="Silicon" thickness="EcalSiliconThickness" sensitive="yes" limits="cal_limits"/>
<slice material="Copper" thickness="EcalCopperThickness"/>
<slice material="Kapton" thickness="EcalKaptonThickness"/>
<slice material="Air" thickness="EcalAir1Thickness"/>
</layer>
<layer repeat="EcalEndcapPLayer2_NRepeat">
<slice material="TungstenDens24" thickness="EcalThinTungstenThickness"/>
<slice material="Air" thickness="EcalAir2Thickness"/>
<slice material="Silicon" thickness="EcalSiliconThickness" sensitive="yes" limits="cal_limits"/>
<slice material="Copper" thickness="EcalCopperThickness"/>
<slice material="Kapton" thickness="EcalKaptonThickness"/>
<slice material="Air" thickness="EcalAir1Thickness"/>
</layer>
<layer repeat="EcalEndcapPLayer3_NRepeat">
<slice material="TungstenDens24" thickness="EcalThickTungstenThickness"/>
<slice material="Air" thickness="EcalAir2Thickness"/>
<slice material="Silicon" thickness="EcalSiliconThickness" sensitive="yes" limits="cal_limits"/>
<slice material="Copper" thickness="EcalCopperThickness"/>
<slice material="Kapton" thickness="EcalKaptonThickness"/>
<slice material="Air" thickness="EcalAir1Thickness"/>
</layer>
</module>
</disk>
</placements>
</detector>
</detectors>
<!-- Definition of the readout segmentation/definition -->
<readouts>
<readout name="EcalEndcapPHits">
<segmentation type="NoSegmentation"/>
<id>system:8,sector:4,module:24,layer:8,slice:8</id>
</readout>
</readouts>
<plugins>
</plugins>
</lccdd>