Back to home page

EIC code displayed by LXR

 
 

    


Warning, /epic/compact/tracking/mpgd_outerbarrel.xml is written in an unsupported language. File is not indexed.

0001 <!-- SPDX-License-Identifier: LGPL-3.0-or-later -->
0002 <!-- Copyright (C) 2022 Matt Posik, Wouter Deconinck -->
0003 
0004 <lccdd>
0005 <documentation>
0006   Title: Micro-Pattern Gas Detector Planar Barrel Layer
0007   Author: @mposik1983
0008   Status: development
0009   Version: 1.0
0010 </documentation>
0011 
0012 <define>
0013     <comment> Frames </comment>
0014     <constant name="MPGDOuterBarrelFrame_width"            value="15*mm"/>
0015     <constant name="MPGDOuterBarrelFrame_thickness"        value="7*mm"/>
0016 
0017     <comment> Module constants </comment>
0018     <constant name="MPGDOuterBarrelModule_roverlap"                value="0*cm"/>
0019     <constant name="MPGDOuterBarrelModule_zoverlap"                value="0*MPGDOuterBarrelFrame_width"/>
0020     <constant name="MPGDOuterBarrelModule_count"                   value="12" />
0021     <constant name="MPGDOuterBarrelModule_allowed_space"           value="25*mm"/>
0022     <constant name="MPGDOuterBarrelModule_rmax"                    value="MPGDOuterBarrelModule_rmin + MPGDOuterBarrelModule_allowed_space" />
0023     <constant name="MPGDOuterBarrelModule_roffset"                 value="0.5*cm" />
0024     <constant name="MPGDOuterBarrelModule_width"                   value="360*mm"/>
0025     <constant name="MPGDOuterBarrel_length"                        value="MPGDOuterBarrelModule_zmin1 + MPGDOuterBarrelModule_zmin2"/>
0026     <constant name="MPGDOuterBarrelModule_length"                  value="0.5*(MPGDOuterBarrelModule_zmin1 + MPGDOuterBarrelModule_zmin2 + MPGDOuterBarrelModule_zoverlap)"/>
0027     <constant name="MPGDOuterBarrelModule_offset"                  value="0.5*(MPGDOuterBarrelModule_zmin2 - MPGDOuterBarrelModule_zmin1)"/>
0028     <constant name="MPGDOuterBarrelModule_PCB_offset"                 value="110*mm"/>
0029     <constant name="MPGDOuterStrip_range"                          value="(MPGDOuterBarrelModule_length + MPGDOuterBarrelModule_width)/2.0*sqrt(2)"/>
0030 
0031     <comment> Layer parameters </comment>
0032     <constant name="MPGDOuterBarrelWindow_thickness"             value="50*um"/>
0033     <constant name="MPGDOuterBarrelWindowGap_thickness"          value="2*mm"/>
0034     <constant name="MPGDOuterBarrelDriftGap_thickness"           value="3*mm"/>
0035     <constant name="MPGDOuterBarrelFoilCu_thickness"             value="5*um"/>
0036     <constant name="MPGDOuterBarrelReadOutElectrode_thickness"   value="10*um"/>
0037     <constant name="MPGDOuterBarrelFoilKapton_thickness"         value="50*um"/>
0038     <constant name="MPGDOuterBarrelReadOutNomex_thickness"       value="50*um"/>
0039     <constant name="MPGDOuterBarrelReadOutKapton_thickness"      value="50*um"/>
0040     <constant name="MPGDOuterBarrelPCB_thickness"                value="2.8*mm"/>
0041   </define>
0042 
0043    <detectors>
0044    <detector id="TrackerBarrel_5_ID" name="MPGDOuterBarrel" type="epic_OuterMPGDBarrel" readout="OuterMPGDBarrelHits" vis="TrackerVis">
0045      <type_flags type="DetType_TRACKER + DetType_BARREL"/>
0046      <dimensions width="MPGDOuterBarrelModule_width" length="MPGDOuterBarrelModule_length" height="MPGDOuterBarrelModule_allowed_space" />
0047      <position x="0" y="0" z="MPGDOuterBarrelModule_offset" />
0048 
0049      <comment> MPGD DIRC module components</comment>
0050 
0051     <module name="MPGDOuterBarrelModule" vis="TrackerVis">
0052 
0053         <module_component name="DriftGap"
0054                material="Ar90IsoButane"
0055                sensitive="true"
0056                width="MPGDOuterBarrelModule_width"
0057                thickness="MPGDOuterBarrelDriftGap_thickness"
0058                vis="TrackerMPGDGasVis"
0059                offset="0"
0060                length="MPGDOuterBarrelModule_length - MPGDOuterBarrelModule_PCB_offset"/>
0061 
0062         <module_component name="WindowGasGap"
0063                material="Ar90IsoButane"
0064                sensitive="false"
0065                width="MPGDOuterBarrelModule_width"
0066                thickness="MPGDOuterBarrelWindowGap_thickness"
0067                vis="TrackerMPGDGasVis"
0068                offset="0"
0069                length="MPGDOuterBarrelModule_length - MPGDOuterBarrelModule_PCB_offset"/>
0070         <module_component name="Window"
0071                material="Kapton"
0072                sensitive="false"
0073                width="MPGDOuterBarrelModule_width"
0074                thickness="MPGDOuterBarrelWindow_thickness"
0075                vis="TrackerVis"
0076                offset="0"
0077                length="MPGDOuterBarrelModule_length - MPGDOuterBarrelModule_PCB_offset"/>
0078         <module_component name="Cathode_Kapton"
0079                material="Kapton"
0080                sensitive="false"
0081                width="MPGDOuterBarrelModule_width"
0082                thickness="MPGDOuterBarrelFoilKapton_thickness"
0083                vis="TrackerVis"
0084                offset="0"
0085                length="MPGDOuterBarrelModule_length - MPGDOuterBarrelModule_PCB_offset"/>
0086         <module_component name="Cathode_Cu"
0087                material="Copper"
0088                sensitive="false"
0089                width="MPGDOuterBarrelModule_width"
0090                thickness="MPGDOuterBarrelFoilCu_thickness"
0091                vis="TrackerVis"
0092                offset="0"
0093                length="MPGDOuterBarrelModule_length - MPGDOuterBarrelModule_PCB_offset"/>
0094         <module_component name="RWELL_Cu"
0095                material="Copper"
0096                sensitive="false"
0097                width="MPGDOuterBarrelModule_width"
0098                thickness="MPGDOuterBarrelFoilCu_thickness"
0099                vis="TrackerVis"
0100                offset="0"
0101                length="MPGDOuterBarrelModule_length - MPGDOuterBarrelModule_PCB_offset"/>
0102         <module_component name="RWELL_Kapton"
0103                material="Kapton"
0104                sensitive="false"
0105                width="MPGDOuterBarrelModule_width"
0106                thickness="MPGDOuterBarrelFoilKapton_thickness"
0107                vis="TrackerVis"
0108                offset="0"
0109                length="MPGDOuterBarrelModule_length - MPGDOuterBarrelModule_PCB_offset"/>
0110         <module_component name="Nomex"
0111                material="Nomex"
0112                sensitive="false"
0113                width="MPGDOuterBarrelModule_width"
0114                thickness="MPGDOuterBarrelReadOutNomex_thickness"
0115                vis="TrackerVis"
0116                offset="0"
0117                length="MPGDOuterBarrelModule_length - MPGDOuterBarrelModule_PCB_offset"/>
0118         <module_component name="ReadOutElectrodes"
0119                material="Copper"
0120                sensitive="false"
0121                width="MPGDOuterBarrelModule_width"
0122                thickness="MPGDOuterBarrelReadOutElectrode_thickness"
0123                vis="TrackerVis"
0124                offset="0"
0125                length="MPGDOuterBarrelModule_length - MPGDOuterBarrelModule_PCB_offset"/>
0126         <module_component name="ReadOutKapton"
0127                material="Kapton"
0128                sensitive="false"
0129                width="MPGDOuterBarrelModule_width"
0130                thickness="MPGDOuterBarrelReadOutKapton_thickness"
0131                offset="0"
0132                vis="TrackerVis"
0133                length="MPGDOuterBarrelModule_length - MPGDOuterBarrelModule_PCB_offset"/>
0134         <module_component name="PCB"
0135                material="Fr4"
0136                sensitive="false"
0137                width="MPGDOuterBarrelModule_width"
0138                thickness="MPGDOuterBarrelPCB_thickness"
0139                vis="TrackerVis"
0140                offset="MPGDOuterBarrelModule_PCB_offset"
0141                length="MPGDOuterBarrelModule_length"/>
0142 
0143    <comment> Frame width gets subtracted from the gas module volumes
0144       see src/BarrelPlanarMPGDTracker_geo.cpp
0145         </comment>
0146 
0147         <frame material="Fr4"
0148                width="MPGDOuterBarrelFrame_width"
0149                vis="TrackerSupportVis"
0150                thickness="MPGDOuterBarrelFrame_thickness"/>
0151 
0152 </module>
0153 
0154 <comment> Layout for MPGD DIRC layers </comment>
0155   <layer module="MPGDOuterBarrelModule" id="0" vis="TrackerSupportVis">
0156     <envelope_tolerance r_min="0*mm" r_max="0*mm" z_min="0*mm" z_max="0*mm"/>
0157     <layer_material surface="inner" binning="binPhi,binZ" bins0="MPGDOuterBarrelModule_count*10" bins1="100" />
0158     <layer_material surface="outer" binning="binPhi,binZ" bins0="MPGDOuterBarrelModule_count*10" bins1="100" />
0159     <rphi_layout
0160           phi_tilt="0"
0161           nphi="MPGDOuterBarrelModule_count"
0162           phi0="0"
0163           rc="MPGDOuterBarrelModule_rmin + MPGDOuterBarrelModule_roffset"
0164           dr="0" />
0165     <z_layout
0166           dr = "MPGDOuterBarrelModule_roverlap"
0167           z0 = "MPGDOuterBarrelModule_zoverlap"/>
0168    </layer>
0169 </detector>
0170 </detectors>
0171 
0172   <readouts>
0173     <readout name="OuterMPGDBarrelHits">
0174       <segmentation type="MultiSegmentation" key="strip">
0175         <comment> Strip segmentations ("strip" field !=0) are not used at simulation time but only in digitization at reconstruction time, see digitization class, "MPGDTrackerDigi". </comment>
0176         <segmentation name="Pixels"  type="CartesianGridUV" key_value="0" grid_size_u="0.150*mm*sqrt(12)"    grid_size_v="0.150*mm*sqrt(12)"    grid_angle="pi*rad/4" />
0177         <segmentation name="UStrips" type="CartesianGridUV" key_value="1" grid_size_u="0.150*mm*sqrt(12)"    grid_size_v="MPGDOuterStrip_range" grid_angle="pi*rad/4" />
0178         <segmentation name="VStrips" type="CartesianGridUV" key_value="2" grid_size_u="MPGDOuterStrip_range" grid_size_v="0.150*mm*sqrt(12)"    grid_angle="pi*rad/4"/>
0179       </segmentation>
0180       <id>system:8,layer:4,module:12,sensor:2,strip:30:2,u:-16,v:-16</id>
0181     </readout>
0182   </readouts>
0183 
0184   <plugins>
0185     <plugin name="DD4hep_ParametersPlugin">
0186       <argument value="MPGDOuterBarrel"/>
0187       <argument value="layer_pattern: str=MPGDOuterBarrel_layer\d"/>
0188     </plugin>
0189   </plugins>
0190 
0191   <fields>
0192   </fields>
0193 </lccdd>