Warning, /epic/compact/tracking/mpgd_forward_endcap.xml is written in an unsupported language. File is not indexed.
0001 <!-- SPDX-License-Identifier: LGPL-3.0-or-later -->
0002 <!-- Copyright (C) 2022 Nicolas Schmidt -->
0003
0004 <lccdd>
0005 <define>
0006 <comment>
0007 --------------------------
0008 Forward MPGD Parameters
0009 --------------------------
0010 </comment>
0011 <comment> Forward MPGD position </comment>
0012 <constant name="ForwardMPGD_nlayers" value="2"/>
0013 <constant name="ForwardMPGD_AllowedSpace" value="2.5*cm"/>
0014
0015 <comment> Parameters for the endcap MPGDs </comment>
0016 <constant name="ForwardMPGDEndcapMod_count" value="48" />
0017 <constant name="ForwardMPGDEndcapMod_dz" value="0" />
0018 <constant name="ForwardMPGDEndcapMod_overlap" value="0" />
0019
0020 <comment> Layer definitions around the sensor for the endcap MPGDs </comment>
0021 <constant name="ForwardMPGDDriftGap_thickness" value="3.0*mm" />
0022 <constant name="ForwardMPGDWindow_thickness" value="50*um"/>
0023 <constant name="ForwardMPGDWindowGap_thickness" value="2*mm"/>
0024 <constant name="ForwardMPGDFoilCu_thickness" value="5*um"/>
0025 <constant name="ForwardMPGDReadOutElectrode_thickness" value="10*um"/>
0026 <constant name="ForwardMPGDFoilKapton_thickness" value="50*um"/>
0027 <constant name="ForwardMPGDReadOutNomex_thickness" value="50*um"/>
0028 <constant name="ForwardMPGDReadOutKapton_thickness" value="50*um"/>
0029 <constant name="ForwardMPGDPCB_thickness" value="1.5*mm"/>
0030 </define>
0031
0032 <comment>
0033 Actual detector implementation.
0034 </comment>
0035 <define>
0036 <constant name="ForwardMPGDEndcapMod_angle" value="360.0*degree/ForwardMPGDEndcapMod_count*(1.0 + ForwardMPGDEndcapMod_overlap)" />
0037 <comment> 1 um padding to not have layer and module touch (ACTS requirement) </comment>
0038 <constant name="ForwardMPGDLayerPad" value="0*um"/>
0039 <comment> Detector thickness </comment>
0040 <constant name="ForwardMPGDCathode_thickness" value="ForwardMPGDFoilKapton_thickness + ForwardMPGDFoilCu_thickness"/>
0041 <constant name="ForwardMPGDRWell_thickness" value="ForwardMPGDFoilKapton_thickness + ForwardMPGDFoilCu_thickness"/>
0042 <constant name="ForwardMPGDReadOut_thickness" value="ForwardMPGDReadOutNomex_thickness + ForwardMPGDReadOutElectrode_thickness + ForwardMPGDReadOutKapton_thickness "/>
0043 <comment>@TODO: have space for 3 frames (2mm + 2mm + 3mm) need to add frame material </comment>
0044 <constant name="ForwardMPGDFrame_thickness" value="2*ForwardMPGDWindowGap_thickness + ForwardMPGDDriftGap_thickness"/>
0045 <constant name="ForwardMPGDEndcapMod_thickness" value="ForwardMPGDCathode_thickness + ForwardMPGDRWell_thickness + ForwardMPGDReadOut_thickness + ForwardMPGDFrame_thickness"/>
0046 <constant name="ForwardMPGDEndcapLayer_thickness" value="ForwardMPGDEndcapMod_thickness + 2 * ForwardMPGDEndcapMod_dz + ForwardMPGDLayerPad" />
0047
0048 <constant name="ForwardMPGDMod1_zmin" value="ForwardMPGD_zmin" />
0049 <constant name="ForwardMPGDMod2_zmin" value="ForwardMPGD_zmin + ForwardMPGDMod_offset" />
0050 <constant name="ForwardMPGDLayer1_rmin" value="ForwardMPGDMod1_rmin - ForwardMPGDLayerPad" />
0051 <constant name="ForwardMPGDLayer2_rmin" value="ForwardMPGDMod2_rmin - ForwardMPGDLayerPad" />
0052 <constant name="ForwardMPGDLayer1_rmax" value="ForwardMPGDMod1_rmax + ForwardMPGDLayerPad" />
0053 <constant name="ForwardMPGDLayer2_rmax" value="ForwardMPGDMod2_rmax + ForwardMPGDLayerPad" />
0054 <constant name="ForwardMPGDLayer1_zmin" value="ForwardMPGDMod1_zmin - ForwardMPGDLayerPad" />
0055 <constant name="ForwardMPGDLayer2_zmin" value="ForwardMPGDMod2_zmin + ForwardMPGDLayerPad" />
0056
0057 <constant name="ForwardMPGDMod1_x1" value="2 * ForwardMPGDMod1_rmin * tan(ForwardMPGDEndcapMod_angle/2)" />
0058 <constant name="ForwardMPGDMod1_x2" value="2 * ForwardMPGDMod1_rmax * sin(ForwardMPGDEndcapMod_angle/2)" />
0059 <constant name="ForwardMPGDMod1_y" value="ForwardMPGDMod1_rmax * cos(ForwardMPGDEndcapMod_angle/2) - ForwardMPGDMod1_rmin" />
0060 <constant name="ForwardMPGDMod2_x1" value="2 * ForwardMPGDMod2_rmin * tan(ForwardMPGDEndcapMod_angle/2)" />
0061 <constant name="ForwardMPGDMod2_x2" value="2 * ForwardMPGDMod2_rmax * sin(ForwardMPGDEndcapMod_angle/2)" />
0062 <constant name="ForwardMPGDMod2_y" value="ForwardMPGDMod2_rmax * cos(ForwardMPGDEndcapMod_angle/2) - ForwardMPGDMod2_rmin" />
0063 </define>
0064
0065 <detectors>
0066 <detector
0067 id="TrackerEndcapP_5_ID"
0068 name="ForwardMPGD"
0069 type="epic_TrapEndcapTracker"
0070 actsType="endcap"
0071 readout="ForwardMPGDEndcapHits"
0072 vis="MPGDVis"
0073 reflect="false">
0074 <type_flags type="DetType_TRACKER + DetType_ENDCAP"/>
0075 <module name="ForwardModule1" vis="MPGDModuleVis">
0076 <trd x1="ForwardMPGDMod1_x1/2.0" x2="ForwardMPGDMod1_x2/2.0" z="ForwardMPGDMod1_y/2"/>
0077 <comment> Window and drift region </comment>
0078 <module_component thickness="ForwardMPGDDriftGap_thickness" material="Ar90IsoButane" sensitive="true" vis="MPGDVis"/>
0079 <module_component thickness="ForwardMPGDWindowGap_thickness" material="Ar90IsoButane" sensitive="false" vis="MPGDVis"/>
0080 <module_component thickness="ForwardMPGDWindow_thickness" material="Kapton" sensitive="false" vis="MPGDVis"/>
0081 <comment> HV Cathode </comment>
0082 <module_component name="Cathode Kapton" thickness="ForwardMPGDFoilKapton_thickness" material="Kapton" sensitive="false" vis="MPGDVis"/>
0083 <module_component name="Cathode Cu" thickness="ForwardMPGDFoilCu_thickness" material="Copper" sensitive="false" vis="MPGDVis"/>
0084 <comment> Amplification foil (urwell) </comment>
0085 <module_component name="RWell Cu" thickness="ForwardMPGDFoilCu_thickness" material="Copper" sensitive="false" vis="MPGDVis"/>
0086 <module_component name="RWell Kapton" thickness="ForwardMPGDFoilKapton_thickness" material="Kapton" sensitive="false" vis="MPGDVis"/>
0087 <comment> Readout/Backboard </comment>
0088 <module_component name="Readout Nomex" thickness="ForwardMPGDReadOutNomex_thickness" material="Nomex" sensitive="false" vis="MPGDVis"/>
0089 <module_component name="Readout Electrodes" thickness="ForwardMPGDReadOutElectrode_thickness" material="Copper" sensitive="false" vis="MPGDVis"/>
0090 <module_component name="Readout Kapton" thickness="ForwardMPGDReadOutKapton_thickness" material="Kapton" sensitive="false" vis="MPGDVis"/>
0091 <module_component name="Readout PCB" thickness="ForwardMPGDPCB_thickness" material="Fr4" sensitive="false" vis="MPGDVis"/>
0092 </module>
0093 <module name="ForwardModule2" vis="MPGDModuleVis">
0094 <trd x1="ForwardMPGDMod2_x1/2.0" x2="ForwardMPGDMod2_x2/2.0" z="ForwardMPGDMod2_y/2"/>
0095 <comment> Window and drift region </comment>
0096 <module_component thickness="ForwardMPGDDriftGap_thickness" material="Ar90IsoButane" sensitive="true" vis="MPGDVis"/>
0097 <module_component thickness="ForwardMPGDWindowGap_thickness" material="Ar90IsoButane" sensitive="false" vis="MPGDVis"/>
0098 <module_component thickness="ForwardMPGDWindow_thickness" material="Kapton" sensitive="false" vis="MPGDVis"/>
0099 <comment> HV Cathode </comment>
0100 <module_component name="Cathode Kapton" thickness="ForwardMPGDFoilKapton_thickness" material="Kapton" sensitive="false" vis="MPGDVis"/>
0101 <module_component name="Cathode Cu" thickness="ForwardMPGDFoilCu_thickness" material="Copper" sensitive="false" vis="MPGDVis"/>
0102 <comment> Amplification foil (urwell) </comment>
0103 <module_component name="RWell Cu" thickness="ForwardMPGDFoilCu_thickness" material="Copper" sensitive="false" vis="MPGDVis"/>
0104 <module_component name="RWell Kapton" thickness="ForwardMPGDFoilKapton_thickness" material="Kapton" sensitive="false" vis="MPGDVis"/>
0105 <comment> Readout/Backboard </comment>
0106 <module_component name="Readout Nomex" thickness="ForwardMPGDReadOutNomex_thickness" material="Nomex" sensitive="false" vis="MPGDVis"/>
0107 <module_component name="Readout Electrodes" thickness="ForwardMPGDReadOutElectrode_thickness" material="Copper" sensitive="false" vis="MPGDVis"/>
0108 <module_component name="Readout Kapton" thickness="ForwardMPGDReadOutKapton_thickness" material="Kapton" sensitive="false" vis="MPGDVis"/>
0109 <module_component name="Readout PCB" thickness="ForwardMPGDPCB_thickness" material="Fr4" sensitive="false" vis="MPGDVis"/>
0110 </module>
0111
0112 <layer id="1">
0113 <envelope vis="MPGDLayerVis"
0114 rmin="ForwardMPGDLayer1_rmin"
0115 rmax="ForwardMPGDLayer1_rmax"
0116 length="ForwardMPGDEndcapLayer_thickness"
0117 zstart="ForwardMPGDLayer1_zmin" />
0118 <layer_material surface="inner" binning="binPhi,binR" bins0="ForwardMPGDEndcapMod_count" bins1="30"/>
0119 <layer_material surface="outer" binning="binPhi,binR" bins0="ForwardMPGDEndcapMod_count" bins1="30"/>
0120
0121 <ring
0122 r="ForwardMPGDMod1_rmin + ForwardMPGDMod1_y/2.0"
0123 zstart="0"
0124 nmodules="ForwardMPGDEndcapMod_count"
0125 dz="ForwardMPGDEndcapMod_dz"
0126 module="ForwardModule1" />
0127 </layer>
0128
0129 <layer id="2">
0130 <envelope vis="MPGDLayerVis"
0131 rmin="ForwardMPGDLayer2_rmin"
0132 rmax="ForwardMPGDLayer2_rmax"
0133 length="ForwardMPGDEndcapLayer_thickness"
0134 zstart="ForwardMPGDLayer2_zmin" />
0135 <layer_material surface="inner" binning="binPhi,binR" bins0="ForwardMPGDEndcapMod_count" bins1="30"/>
0136 <layer_material surface="outer" binning="binPhi,binR" bins0="ForwardMPGDEndcapMod_count" bins1="30"/>
0137
0138 <ring
0139 r="ForwardMPGDMod2_rmin + ForwardMPGDMod2_y/2.0"
0140 zstart="0"
0141 nmodules="ForwardMPGDEndcapMod_count"
0142 dz="ForwardMPGDEndcapMod_dz"
0143 module="ForwardModule2" />
0144 </layer>
0145 </detector>
0146 </detectors>
0147
0148 <plugins>
0149 <plugin name="DD4hep_ParametersPlugin">
0150 <argument value="ForwardMPGD"/>
0151 <argument value="layer_pattern: str=ForwardMPGD_layer\d_P"/>
0152 </plugin>
0153 </plugins>
0154
0155 <readouts>
0156 <readout name="ForwardMPGDEndcapHits">
0157 <segmentation type="CartesianGridXZ" grid_size_x="sqrt(12)*150*um" grid_size_z="sqrt(12)*150*um" />
0158 <id>system:8,layer:2,module:6,sensor:16,x:32:-16,z:-16</id>
0159 </readout>
0160 </readouts>
0161
0162 </lccdd>