Warning, /epic/templates/epic.xml.jinja2 is written in an unsupported language. File is not indexed.
0001 {#
0002 This is the master template for the geometry description
0003
0004 Template variables can be defined in yml or json files,
0005 or they can be applied on the command line with `-D`.
0006 -#}
0007
0008 <lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
0009 xmlns:xs="http://www.w3.org/2001/XMLSchema"
0010 xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
0011
0012 <debug>
0013 <type name="surface" value="0"/>
0014 <type name="material" value="0"/>
0015 <type name="readout" value="0"/>
0016 <type name="segmentation" value="0"/>
0017 <type name="limits" value="0"/>
0018 <type name="region" value="0"/>
0019 <type name="includes" value="0"/>
0020 </debug>
0021
0022 <documentation level="-1">
0023 # EPIC Detector
0024 - https://github.com/eic/epic
0025 - https://github.com/eic/ip6
0026 </documentation>
0027
0028 <!-- Some information about detector -->
0029 <info name="EPIC Detector" title="EPIC Detector"
0030 author="EPIC Collaboration"
0031 url="https://github.com/eic/epic"
0032 status="development"
0033 version="v1 2021-03-16">
0034 <comment> EPIC </comment>
0035 </info>
0036
0037 <!-- Standard environmental conditions: 20 °C, 1 atm -->
0038 <std_conditions type="NTP"/>
0039
0040 <define>
0041 <documentation level="2">
0042 ## Main Constant Definitions
0043
0044 The ip6 (or other ip) defines should be included first.
0045 These files have only a define tags.
0046 </documentation>
0047 <include ref="${DETECTOR_PATH}/compact/fields/beamline_{{ ebeam | default("18", true) }}x{{ pbeam | default("275", true) }}.xml" />
0048 <include ref="${DETECTOR_PATH}/compact/far_forward/definitions.xml" />
0049 <include ref="${DETECTOR_PATH}/compact/far_backward/definitions.xml" />
0050 <include ref="${DETECTOR_PATH}/compact/definitions.xml" />
0051 <include ref="${DETECTOR_PATH}/compact/version.xml"/>
0052 <include ref="${DD4hepINSTALL}/DDDetectors/compact/detector_types.xml"/>
0053 </define>
0054
0055
0056 <includes>
0057 <gdmlFile ref="${DD4hepINSTALL}/DDDetectors/compact/elements.xml"/>
0058 <gdmlFile ref="${DETECTOR_PATH}/compact/materials.xml"/>
0059 </includes>
0060 <include ref="${DETECTOR_PATH}/compact/optical_materials.xml"/>
0061
0062 <include ref="${DETECTOR_PATH}/compact/calibrations.xml"/>
0063
0064 <limits>
0065 <limitset name="world_limits">
0066 </limitset>
0067 <limitset name="beamline_limits">
0068 <limit name="step_length_max" particles="*" value="1.0" unit="mm" />
0069 <limit name="track_length_max" particles="*" value="1.0" unit="mm" />
0070 <limit name="time_max" particles="*" value="0.1" unit="ns" />
0071 <limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
0072 <limit name="range_min" particles="*" value="0.1" unit="mm" />
0073 </limitset>
0074 <limitset name="kill_limits">
0075 <limit name="time_max" particles="*" value="0.0" unit="ns"/>
0076 </limitset>
0077 <limitset name="cal_limits">
0078 <limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
0079 </limitset>
0080 </limits>
0081
0082 <regions>
0083 <region name="world_region" eunit="MeV" lunit="mm" cut="0.001" threshold="0.001">
0084 <limitsetref name="world_limits"/>
0085 </region>
0086 </regions>
0087
0088 <display>
0089 <include ref="${DETECTOR_PATH}/compact/{{colors | default("colors.xml", true) }}"/>
0090 <include ref="${DETECTOR_PATH}/compact/{{display | default("display.xml", true) }}"/>
0091 </display>
0092
0093 <documentation level="0">
0094 ## World Volume
0095
0096 The world is a simple box, but could be a union of multiple regions.
0097 </documentation>
0098 <world material="Air">
0099 <shape type="Box" dx="world_dx" dy="world_dy" dz="world_dz"/>
0100 <!--regionref name="world_region"/-->
0101 <!--limitsetref name="world_limits"/-->
0102 </world>
0103
0104 <documentation level="0">
0105 ## Detector Subsystems
0106
0107 ### IP Subsystems
0108
0109 The interaction point subsystems are included before the central detector subsystems.
0110 This is becuase the IP subsystems, for example the beampipe, will define paramters
0111 which are subsquently used in the central detector construction -- e.g. the vertex tracker
0112 uses the beampipe OD to help define its placement.
0113
0114 The IP subsystems include the Far forward and backward regions. The list of subsystem includes:
0115 - Interaction region beampipe
0116 - B0 tracker
0117 - Off-momentum tracker
0118 - Far forward roman pots
0119 - Zero Degree Calorimeter
0120 - Beam line magnets.
0121 - and more...
0122 </documentation>
0123
0124 {% if 'solenoid' in features %}
0125 <documentation level="5">
0126 ## Main magnet and its field
0127 </documentation>
0128 <include ref="${DETECTOR_PATH}/compact/solenoid.xml"/>
0129 <include ref="${DETECTOR_PATH}/compact/fields/marco.xml"/>
0130 {% endif -%}
0131
0132 {% if 'fields' in features %}
0133 <documentation level="5">
0134 ## Electric and magnetic fields
0135 </documentation>
0136 {% for field in features['fields'] -%}
0137 <include ref="${DETECTOR_PATH}/compact/fields/{{ field }}.xml"/>
0138 {% endfor -%}
0139 {% endif -%}
0140
0141 {% if 'tracking' in features %}
0142 <documentation level="10">
0143 ## Central tracking detectors
0144 </documentation>
0145
0146 {% for tracker in features['tracking'] -%}
0147 <include ref="${DETECTOR_PATH}/compact/tracking/{{ tracker }}.xml"/>
0148 {% endfor -%}
0149 {% endif -%}
0150
0151 {% if 'pid' in features %}
0152 <documentation level="10">
0153 ## PID detectors
0154 </documentation>
0155 {% for pid in features['pid'] -%}
0156 <include ref="${DETECTOR_PATH}/compact/pid/{{ pid }}.xml"/>
0157 {% endfor -%}
0158 {% endif -%}
0159
0160 {% if 'ecal' in features %}
0161 <documentation level="10">
0162 ## Central EM calorimetry
0163 </documentation>
0164 {% for ecal in features['ecal'] -%}
0165 <include ref="${DETECTOR_PATH}/compact/ecal/{{ ecal }}.xml"/>
0166 {% endfor -%}
0167 {% endif -%}
0168
0169 {% if 'hcal' in features %}
0170 <documentation level="10">
0171 ## hadronic calorimetry
0172 </documentation>
0173
0174 {% for hcal in features['hcal'] -%}
0175 <include ref="${DETECTOR_PATH}/compact/hcal/{{ hcal }}.xml"/>
0176 {% endfor -%}
0177 {% endif -%}
0178
0179 {% if 'beampipe' in features %}
0180 <documentation level="11">
0181 ## Central beam pipe
0182 </documentation>
0183 <include ref="${DETECTOR_PATH}/compact/central_beampipe.xml"/>
0184 {% endif -%}
0185
0186 {% if 'far_forward' in features %}
0187 <documentation level="11">
0188 ## Far foward detectors
0189 </documentation>
0190 {% for ff in features['far_forward'] -%}
0191 <include ref="${DETECTOR_PATH}/compact/far_forward/{{ ff }}.xml"/>
0192 {% endfor -%}
0193 {% endif -%}
0194
0195 {% if 'far_backward' in features %}
0196 <documentation level="11">
0197 ## Far backward detectors
0198 </documentation>
0199 {% for fb in features['far_backward'] -%}
0200 <include ref="${DETECTOR_PATH}/compact/far_backward/{{ fb }}.xml"/>
0201 {% endfor -%}
0202 {% endif -%}
0203
0204 </lccdd>