Warning, /epic/compact/tracking/deprecated/vertex_tracker.xml is written in an unsupported language. File is not indexed.
0001 <!-- SPDX-License-Identifier: LGPL-3.0-or-later -->
0002 <!-- Copyright (C) 2022 Whitney Armstrong, Sylvester Joosten, Shujie Li -->
0003
0004 <lccdd>
0005 <define>
0006 <comment>
0007 THis value probably can live in the file that includes this one.
0008 </comment>
0009 <constant name="ITS3Thickness" value="40*um"/>
0010 <constant name="VertexCarbon_thickness" value="0.12*mm"/>
0011 <constant name="VertexEndcapAluminumThickness" value="0.15*mm"/>
0012
0013 <documentation>
0014 #### Vertex Tracker Barrel Parameters
0015
0016 - The sensor modules are 2 half-cylinders.
0017 - There are 2 sensitive layers
0018 - Each sensor has a thickness is 40um
0019 - There is an outer shell for structural support 300um thick.
0020 - The ID of this shell is set (arbitrarily) to 10 cm.
0021
0022 ##### Sensor layers
0023
0024 Currently there are 2 sensor layers. Each is composed of 2 half-cylinders modules with only 40um of silicon thickness.
0025
0026 ##### Support shell
0027
0028 Simple carbon fiber support shell.
0029
0030 </documentation>
0031
0032 <constant name="VertexBarrel_length" value="300.0*mm"/>
0033 <constant name="VertexTrackerEndcapP_rmin" value="VertexTrackingRegion_rmin"/>
0034 <constant name="VertexTrackerEndcapN_rmin" value="VertexTrackingRegion_rmin"/>
0035 <constant name="VertexTrackerEndcapP_rmax" value="VertexTrackingRegion_rmax"/>
0036 <constant name="VertexTrackerEndcapN_rmax" value="VertexTrackingRegion_rmax"/>
0037 <constant name="VertexTrackerEndcapP_zmax" value="VertexTrackingRegionP_zmax"/>
0038 <constant name="VertexTrackerEndcapN_zmax" value="VertexTrackingRegionN_zmax"/>
0039
0040 <constant name="VertexBarrelLayer_length" value="VertexBarrel_length - 1*mm"/>
0041 <constant name="VertexBarrelMod_length" value="VertexBarrel_length - 2*mm"/>
0042
0043 <constant name="VertexBarrelSensor_thickness" value="ITS3Thickness"/>
0044 <constant name="VertexBarrelLayer_thickness" value="0.2*cm"/>
0045 <constant name="VertexBarrelMod_thickness" value="0.1*cm"/>
0046 <constant name="VertexBarrelMod1_rmin" value="3.4*cm"/>
0047 <constant name="VertexBarrelMod2_rmin" value="5.7*cm"/>
0048 <constant name="VertexBarrelLayer_rmin1" value="VertexBarrelMod1_rmin - VertexBarrelLayer_thickness/2.0"/>
0049 <constant name="VertexBarrelLayer_rmin2" value="VertexBarrelMod2_rmin - VertexBarrelLayer_thickness/2.0"/>
0050 <constant name="VertexBarrelLayer_rmax1" value="VertexBarrelLayer_rmin1 + VertexBarrelLayer_thickness"/>
0051 <constant name="VertexBarrelLayer_rmax2" value="VertexBarrelLayer_rmin2 + VertexBarrelLayer_thickness"/>
0052
0053 <comment>
0054 "Support" is to "shell" like "layer" is to "module", and is need for the flat stave barrel implementation.
0055 </comment>
0056 <constant name="VertexBarrelShell_rmin" value="10.0*cm"/>
0057 <constant name="VertexBarrelShell_thickness" value="300*um"/>
0058 <constant name="VertexBarrelShell_rmax" value="VertexBarrelShell_rmin + VertexBarrelShell_thickness"/>
0059 <constant name="VertexBarrelShell_length" value="VertexBarrelLayer_length-VertexBarrelShell_thickness"/>
0060
0061 <constant name="VertexBarrelSupport_thickness" value="1.0*cm"/>
0062 <constant name="VertexBarrelSupport_rmin" value="VertexBarrelShell_rmin-VertexBarrelSupport_thickness/2.0"/>
0063 <constant name="VertexBarrelSupport_rmax" value="VertexBarrelSupport_rmin + VertexBarrelSupport_thickness"/>
0064 <constant name="VertexBarrelSupport_length" value="VertexBarrelLayer_length"/>
0065
0066 <constant name="VertexTrackerEndcapN_zmin" value="25*cm"/>
0067 <constant name="VertexTrackerEndcapP_zmin" value="25*cm"/>
0068
0069 <constant name="VertexEndcap_NLayers" value="1"/>
0070 <constant name="VertexTrackerEndcap_delta" value="(VertexTrackerEndcapP_zmax - VertexTrackerEndcapP_zmin)/VertexEndcap_NLayers"/>
0071 <constant name="VertexEndcapLayer_dz" value="2*cm"/>
0072 <constant name="VertexEndcapLayer_thickness" value="min(3*cm,VertexEndcapLayer_dz-0.5*cm)"/>
0073
0074 <constant name="VertexEndcap_NModules" value="12"/>
0075 <constant name="VertexEndcapMod_dz" value="2.5*mm"/>
0076 <constant name="VertexEndcapModOpeningAngle" value="360.0/VertexEndcap_NModules*degree + 0.5*degree"/>
0077 <constant name="VertexEndcapMod1_x1" value="2.0*VertexTrackerEndcapP_rmin*sin(VertexEndcapModOpeningAngle/2.0)"/>
0078 <constant name="VertexEndcapMod1_x2" value="2.0*VertexTrackerEndcapP_rmax*sin(VertexEndcapModOpeningAngle/2.0)"/>
0079 <constant name="VertexEndcapMod1_y" value="VertexTrackerEndcapP_rmax*cos(VertexEndcapModOpeningAngle/2.0) - VertexTrackerEndcapP_rmin"/>
0080
0081 <comment> cone connecting vertex barrel to endcap </comment>
0082 <!-- <constant name="VertexEndcapCone_zmax" value="VertexEndcapShell_zmin-0.2*cm"/> -->
0083 <constant name="VertexSupportCarbon_thickness" value="2*mm"/>
0084
0085 <constant name="VertexEndcapCone_zmin" value="VertexBarrelLayer_length/2.0 + 0.1*cm"/>
0086 <constant name="VertexEndcapCone_zmax" value="VertexTrackerEndcapN_zmin - 0.1*cm"/>
0087 <constant name="VertexEndcapCone_rmin1" value="VertexEndcapCone_zmin * 36.26/49"/>
0088 <!-- <constant name="VertexEndcapCone_rmin1" value="TrackerEndcapInner_rmax1"/> -->
0089 <constant name="VertexEndcapCone_rmin2" value="VertexTrackerEndcapP_rmax"/>
0090 <constant name="VertexEndcapConeService_rmin1" value="VertexEndcapCone_rmin1+VertexSupportCarbon_thickness+0.1*mm"/>
0091 <constant name="VertexEndcapConeService_rmin2" value="VertexEndcapCone_rmin2+VertexSupportCarbon_thickness+0.1*mm"/>
0092 <constant name="VertexEndcapConeService_thickness" value="0.6*mm"/>
0093 <constant name="VertexEndcapCone_length" value="VertexEndcapCone_zmax - VertexEndcapCone_zmin"/>
0094
0095
0096 <comment>
0097 Extra parameters to approximate a cylinder as a set of skinny staves
0098 due to ACTS limitations.
0099 </comment>
0100 <constant name="VertexBarrelStave_count" value="128"/>
0101 <constant name="VertexBarrelStave1_width" value="2*VertexBarrelMod1_rmin * tan(180*degree/VertexBarrelStave_count)"/>
0102 <constant name="VertexBarrelStave2_width" value="2*VertexBarrelMod2_rmin * tan(180*degree/VertexBarrelStave_count)"/>
0103 <constant name="VertexBarrelShellStave_width" value="2*VertexBarrelShell_rmin * tan(180*degree/VertexBarrelStave_count)"/>
0104 </define>
0105
0106 <display>
0107 </display>
0108
0109 <detectors>
0110 <documentation level="5">
0111 ### Actual detectors
0112 </documentation>
0113 <detector
0114 id="VertexBarrel_0_ID"
0115 name="VertexBarrel"
0116 type="epic_VertexBarrel"
0117 readout="VertexBarrelHits"
0118 insideTrackingVolume="true">
0119 <dimensions
0120 rmin="VertexBarrelLayer_rmin1"
0121 rmax="VertexBarrelSupport_rmax"
0122 length="VertexBarrel_length" />
0123 <comment>Vertex Barrel Modules</comment>
0124 <module name="Module1" vis="VertexLayerVis">
0125 <module_component name="ITS3"
0126 material="Silicon"
0127 sensitive="true"
0128 width="VertexBarrelStave1_width"
0129 length="VertexBarrelMod_length"
0130 thickness="VertexBarrelSensor_thickness"
0131 vis="VertexLayerVis" />
0132 </module>
0133 <module name="Module2" vis="VertexLayerVis">
0134 <module_component name="ITS3"
0135 material="Silicon"
0136 sensitive="true"
0137 width="VertexBarrelStave2_width"
0138 length="VertexBarrelMod_length"
0139 thickness="VertexBarrelSensor_thickness"
0140 vis="VertexLayerVis" />
0141 </module>
0142 <module name="SupportShell" vis="VertexSupportVis">
0143 <module_component name="CF Shell"
0144 material="CarbonFiber"
0145 sensitive="false"
0146 width="VertexBarrelShellStave_width"
0147 length="VertexBarrelShell_length"
0148 thickness="VertexBarrelShell_thickness"
0149 vis="VertexSupportVis" />
0150 </module>
0151 <comment> Layers composed of many arrayed modules </comment>
0152 <layer module="Module1" id="1" vis="VertexLayerVis">
0153 <barrel_envelope
0154 inner_r="VertexBarrelLayer_rmin1"
0155 outer_r="VertexBarrelLayer_rmax1"
0156 z_length="VertexBarrelLayer_length" />
0157 <layer_material surface="outer" binning="binPhi,binZ" bins0="VertexBarrelStave_count" bins1="100" />
0158 <comment>
0159 phi0 : Starting phi of first module.
0160 phi_tilt : Phi tilt of a module.
0161 rc : Radius of the module center.
0162 nphi : Number of modules in phi.
0163 rphi_dr : The delta radius of every other module.
0164 z0 : Z position of first module in phi.
0165 nz : Number of modules to place in z.
0166 dr : Radial displacement parameter, of every other module.
0167 </comment>
0168 <rphi_layout phi_tilt="0.0*degree" nphi="VertexBarrelStave_count" phi0="0.0" rc="VertexBarrelMod1_rmin" dr="0.0 * mm"/>
0169 <z_layout dr="0.0 * mm" z0="0.0 * mm" nz="1"/>
0170 </layer>
0171 <layer module="Module2" id="2" vis="VertexLayerVis">
0172 <barrel_envelope
0173 inner_r="VertexBarrelLayer_rmin2"
0174 outer_r="VertexBarrelLayer_rmax2"
0175 z_length="VertexBarrelLayer_length" />
0176 <layer_material surface="outer" binning="binPhi,binZ" bins0="VertexBarrelStave_count" bins1="100" />
0177 <rphi_layout phi_tilt="0.0*degree" nphi="VertexBarrelStave_count" phi0="0.0" rc="VertexBarrelMod2_rmin" dr="0.0 * mm"/>
0178 <z_layout dr="0.0 * mm" z0="0.0 * mm" nz="1"/>
0179 </layer>
0180 <layer module="SupportShell" id="3" vis="VertexSupportVis">
0181 <barrel_envelope
0182 inner_r="VertexBarrelSupport_rmin"
0183 outer_r="VertexBarrelSupport_rmax"
0184 z_length="VertexBarrelSupport_length" />
0185 <layer_material surface="outer" binning="binPhi,binZ" bins0="VertexBarrelStave_count" bins1="100" />
0186 <rphi_layout phi_tilt="0.0*degree" nphi="VertexBarrelStave_count" phi0="0.0" rc="VertexBarrelShell_rmin" dr="0.0 * mm"/>
0187 <z_layout dr="0.0 * mm" z0="0.0 * mm" nz="1"/>
0188 </layer>
0189 </detector>
0190
0191 <detector
0192 id="VertexEndcapP_0_ID"
0193 name="VertexEndcapP"
0194 type="epic_TrapEndcapTracker"
0195 readout="VertexEndcapHits"
0196 vis="TrackerVis"
0197 reflect="false">
0198
0199 <support material="CarbonFiber" name="sup_cone" vis="TrackerSupportVis">
0200 <shape type="Cone"
0201 rmin1="VertexEndcapCone_rmin1" rmax1="VertexEndcapCone_rmin1+VertexSupportCarbon_thickness"
0202 rmin2="VertexEndcapCone_rmin2" rmax2="VertexEndcapCone_rmin2+VertexSupportCarbon_thickness" z="VertexEndcapCone_length/2.0"/>
0203 <position x="0*cm" y="0*cm" z="(VertexEndcapCone_zmin+VertexEndcapCone_zmax)/2.0"/>
0204 </support>
0205 <support material="Aluminum" name="sup_cone_service" vis="TrackerSupportVis">
0206 <shape type="Cone"
0207 rmin1="VertexEndcapConeService_rmin1" rmax1="VertexEndcapConeService_rmin1+VertexEndcapConeService_thickness"
0208 rmin2="VertexEndcapConeService_rmin2" rmax2="VertexEndcapConeService_rmin2+VertexEndcapConeService_thickness" z="VertexEndcapCone_length/2.0"/>
0209 <position x="0*cm" y="0*cm" z="(VertexEndcapCone_zmin+VertexEndcapCone_zmax)/2.0"/>
0210 </support>
0211
0212
0213 <module name="Module1" vis="AnlProcess_Blue">
0214 <trd x1="VertexEndcapMod1_x1/2.0" x2="VertexEndcapMod1_x2/2.0" z="VertexEndcapMod1_y/2"/>
0215 <module_component thickness="ITS3Thickness" material="Silicon" sensitive="true"/>
0216 <module_component thickness="VertexEndcapAluminumThickness" material="Aluminum"/>
0217 <module_component thickness="VertexCarbon_thickness" material="CarbonFiber"/>
0218 </module>
0219 <layer id="1">
0220 <envelope vis="TrackerVis"
0221 rmin="VertexTrackerEndcapP_rmin"
0222 rmax="VertexTrackerEndcapP_rmax"
0223 length="VertexEndcapLayer_thickness"
0224 zstart="VertexTrackerEndcapP_zmin + VertexEndcapLayer_dz/2.0" />
0225 <layer_material surface="representing" binning="binPhi,binR" bins0="20*VertexEndcap_NModules" bins1="256"/>
0226 <ring vis="TrackerVis"
0227 r="VertexTrackerEndcapP_rmin+VertexEndcapMod1_y/2.0"
0228 zstart="0.0"
0229 nmodules="VertexEndcap_NModules" dz="VertexEndcapMod_dz" module="Module1" />
0230 </layer>
0231 </detector>
0232
0233
0234 <detector
0235 id="VertexEndcapN_0_ID"
0236 name="VertexEndcapN"
0237 type="epic_TrapEndcapTracker"
0238 readout="VertexEndcapHits"
0239 vis="TrackerVis"
0240 reflect="true">
0241
0242 <support material="CarbonFiber" name="sup_cone" vis="TrackerSupportVis">
0243 <shape type="Cone"
0244 rmin2="VertexEndcapCone_rmin1" rmax2="VertexEndcapCone_rmin1+VertexSupportCarbon_thickness"
0245 rmin1="VertexEndcapCone_rmin2" rmax1="VertexEndcapCone_rmin2+VertexSupportCarbon_thickness" z="VertexEndcapCone_length/2.0"/>
0246 <position x="0*cm" y="0*cm" z="-1.0*(VertexEndcapCone_zmin+VertexEndcapCone_zmax)/2.0"/>
0247 </support>
0248 <support material="Aluminum" name="sup_cone_service" vis="TrackerSupportVis">
0249 <shape type="Cone"
0250 rmin2="VertexEndcapConeService_rmin1" rmax2="VertexEndcapConeService_rmin1+VertexEndcapConeService_thickness"
0251 rmin1="VertexEndcapConeService_rmin2" rmax1="VertexEndcapConeService_rmin2+VertexEndcapConeService_thickness" z="VertexEndcapCone_length/2.0"/>
0252 <position x="0*cm" y="0*cm" z="-1.0*(VertexEndcapCone_zmin+VertexEndcapCone_zmax)/2.0"/>
0253 </support>
0254
0255 <module name="Module1" vis="AnlProcess_Blue">
0256 <trd x1="VertexEndcapMod1_x1/2.0" x2="VertexEndcapMod1_x2/2.0" z="VertexEndcapMod1_y/2"/>
0257 <module_component thickness="ITS3Thickness" material="Silicon" sensitive="true"/>
0258 <module_component thickness="VertexEndcapAluminumThickness" material="Aluminum"/>
0259 <module_component thickness="VertexCarbon_thickness" material="CarbonFiber"/>
0260 </module>
0261 <layer id="1">
0262 <envelope vis="TrackerVis"
0263 rmin="VertexTrackerEndcapN_rmin"
0264 rmax="VertexTrackerEndcapN_rmax"
0265 length="VertexEndcapLayer_thickness"
0266 zstart="VertexTrackerEndcapN_zmin + VertexEndcapLayer_dz/2.0" />
0267 <layer_material surface="representing" binning="binPhi,binR" bins0="20*VertexEndcap_NModules" bins1="256"/>
0268 <ring vis="TrackerVis"
0269 r="VertexTrackerEndcapN_rmin+VertexEndcapMod1_y/2.0"
0270 zstart="0.0"
0271 nmodules="VertexEndcap_NModules" dz="VertexEndcapMod_dz" module="Module1" />
0272 </layer>
0273 </detector>
0274
0275 </detectors>
0276
0277 <readouts>
0278 <readout name="VertexBarrelHits">
0279 <segmentation type="CartesianGridXY" grid_size_x="0.010*mm" grid_size_y="0.010*mm" />
0280 <id>system:8,layer:4,module:12,sensor:2,x:32:-16,y:-16</id>
0281 </readout>
0282 <readout name="VertexEndcapHits">
0283 <segmentation type="CartesianGridXZ" grid_size_x="0.010*mm" grid_size_z="0.010*mm" />
0284 <id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
0285 </readout>
0286 </readouts>
0287
0288
0289 </lccdd>