Back to home page

EIC code displayed by LXR

 
 

    


Warning, /epic/compact/ecal/barrel_interlayers.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, Chao Peng, Maria Zurek, Jihee Kim -->
0003 <!-- Active AstroPix layers: 1-3-4-6 -->
0004 
0005 
0006 <lccdd>
0007 
0008     <display>
0009     </display>
0010   <define>
0011     <comment>
0012       ---------------------------------------
0013       EM Calorimeter Parameters with AstroPix
0014       ---------------------------------------
0015     </comment>
0016     <comment>
0017       To change the number of imaging layer slots from, e.g., 9 to 6,
0018       change EcalBarrelImagingLayers_nMax variable
0019     </comment>
0020     <!-- Number of imaging layer slots -->
0021     <constant name="EcalBarrelImagingLayers_num"     value="6"/>
0022     <comment>
0023       Active part of the calorimeter is
0024       435 cm long
0025       -41.25 cm offset
0026     </comment>
0027     <constant name="EcalBarrel_Calorimeter_zmin"
0028       value="min(258.75*cm, EcalBarrelBackward_zmax)"/>
0029     <constant name="EcalBarrel_Calorimeter_zmax"
0030       value="min(176.25*cm, EcalBarrelForward_zmax)"/>
0031     <constant name="EcalBarrel_Readout_zmin"          value="273.75*cm"/>
0032     <constant name="EcalBarrel_Readout_zmax"          value="191.25*cm"/>
0033     <constant name="EcalBarrel_Calorimeter_length"
0034       value="EcalBarrel_Calorimeter_zmax + EcalBarrel_Calorimeter_zmin"/>
0035     <constant name="EcalBarrel_Calorimeter_offset"
0036       value="(EcalBarrel_Calorimeter_zmax - EcalBarrel_Calorimeter_zmin)/2.0"/>
0037 
0038     <constant name="EcalBarrel_FrontSupportThickness" value="0.5*cm"/>
0039     <constant name="EcalBarrel_BackSupportThickness"  value="3*cm"/>
0040     <constant name="EcalBarrel_SiliconThickness"      value="500*um"/>
0041     <constant name="EcalBarrel_ElectronicsThickness"  value="150*um"/>
0042     <constant name="EcalBarrel_CopperThickness"       value="100*um"/>
0043     <constant name="EcalBarrel_KaptonThickness"       value="200*um"/>
0044     <constant name="EcalBarrel_EpoxyThickness"        value="100*um"/>
0045     <constant name="EcalBarrel_CarbonFrameThickness"  value="2*mm"/>
0046     <constant name="EcalBarrel_CarbonStaveThickness"  value="0.5*mm"/>
0047 
0048     <constant name="EcalBarrel_AstroPix_width"        value="2*cm"/>
0049     <constant name="EcalBarrel_AstroPix_length"       value="2*cm"/>
0050     <constant name="EcalBarrel_AstroPix_margin"       value="200*um"/>
0051     <constant name="EcalBarrel_AstroPix_thickness"
0052       value="EcalBarrel_SiliconThickness
0053       + EcalBarrel_ElectronicsThickness
0054       + EcalBarrel_CopperThickness
0055       + EcalBarrel_KaptonThickness
0056       + EcalBarrel_EpoxyThickness"/>
0057 
0058     <constant name="EcalBarrel_Stave_width"           value="EcalBarrel_AstroPix_width + 2. * EcalBarrel_AstroPix_margin"/>
0059     <constant name="EcalBarrel_Stave_length"          value="EcalBarrel_Calorimeter_length"/>
0060     <constant name="EcalBarrel_Stave_thickness"       value="EcalBarrel_AstroPix_thickness + EcalBarrel_CarbonStaveThickness"/>
0061     <constant name="EcalBarrel_StaveTilt_angle"       value="10*degree"/>
0062     <constant name="EcalBarrel_Stave_ModuleRepeat"    value="floor(EcalBarrel_Calorimeter_length / (EcalBarrel_AstroPix_length + EcalBarrel_AstroPix_margin))"/>
0063 
0064     <constant name="EcalBarrel_FiberRadius"           value="0.5*mm"/>
0065     <constant name="EcalBarrel_FiberXSpacing"         value="1.34*mm"/>
0066     <constant name="EcalBarrel_FiberZSpacing"         value="1.22*mm"/>
0067     <constant name="EcalBarrel_CladdingThickness"     value="0.04*mm"/>
0068     <constant name="EcalBarrel_SpaceBetween"          value="0.01*mm"/>
0069     <comment>
0070       For Pb/SiFi (GlueX):  X0 ~ 1.45 cm
0071       For W/SiFi (sPHENIX): X0 ~ 0.7 cm (but different fiber orientation)
0072     </comment>
0073     <constant name="EcalBarrel_RadiatorThickness"      value="EcalBarrel_FiberZSpacing * 17"/>
0074     <constant name="EcalBarrel_TotalFiberLayers_num"   value="12"/>
0075     <constant name="EcalBarrel_RadiatorEdgeThickness"  value="0.61*mm"/>
0076     <constant name="EcalBarrel_SectorRepeat"           value="EcalBarrelSectorsN"/>
0077     <constant name="EcalBarrel_AvailThickness"         value="EcalBarrelRegion_thickness - EcalBarrel_BackSupportThickness - EcalBarrel_FrontSupportThickness"/>
0078 
0079     <constant name="EcalBarrel_ImagingLayerThickness"  value="1.7*cm"/>
0080 
0081     <constant name="EcalBarrel_ImagingLayerThickness_WithoutFrame"
0082       value="EcalBarrel_ImagingLayerThickness
0083       - 2*EcalBarrel_CarbonFrameThickness"/>
0084 
0085     <constant name="EcalBarrel_ScFiLayerThickness_Imaging"
0086       value="EcalBarrel_RadiatorThickness + 2*EcalBarrel_RadiatorEdgeThickness"/>
0087 
0088     <comment>
0089       Adjusting size of the ScFi back chunk to match number of imaging layers
0090       and ~17.1 radiation lengths in total
0091     </comment>
0092     <constant name="EcalBarrel_FiberBulkLayers_num" value = "EcalBarrel_TotalFiberLayers_num-EcalBarrelImagingLayers_num+1"/>
0093 
0094     <constant name="EcalBarrel_ImagingPartThickness"
0095         value="EcalBarrelImagingLayers_num * (EcalBarrel_ImagingLayerThickness + EcalBarrel_ScFiLayerThickness_Imaging + EcalBarrel_SpaceBetween)
0096          - EcalBarrel_ScFiLayerThickness_Imaging"/>
0097     <constant name="EcalBarrel_ScFiPartThickness"
0098         value="EcalBarrel_RadiatorThickness*EcalBarrel_FiberBulkLayers_num"/>
0099     <constant name="EcalBarrelDetector_rmax"
0100         value="EcalBarrel_rmin + EcalBarrel_FrontSupportThickness
0101          + EcalBarrel_ImagingPartThickness + EcalBarrel_ScFiPartThickness + EcalBarrel_BackSupportThickness"/>
0102 
0103   </define>
0104 
0105   <limits>
0106   </limits>
0107 
0108   <regions>
0109   </regions>
0110 
0111   <display>
0112   </display>
0113 
0114   <detectors>
0115 
0116     <comment>
0117       ---------------------------------------
0118       Imaging Layers of Barrel EM Calorimeter
0119       ---------------------------------------
0120       Silicon (Astropix) readout layers for imaging 3d showers
0121     </comment>
0122     <detector
0123       id="EcalBarrel_ID"
0124       name="EcalBarrelImaging"
0125       type="epic_EcalBarrelImaging"
0126       readout="EcalBarrelImagingHits"
0127       calorimeterType="EM_BARREL"
0128       vis="EcalBarrelEnvelopeVis"
0129       offset="EcalBarrel_Calorimeter_offset">
0130       <dimensions numsides="EcalBarrel_SectorRepeat"
0131         rmin="EcalBarrel_rmin"
0132         z="EcalBarrel_Calorimeter_length"/>
0133       <sectors vis="EcalBarrelSectorVis"/>
0134 
0135       <module name="AstroPix_Module"
0136               vis="EcalBarrelModuleVis">
0137         <module_component name="AstroPix_Chip"
0138                           material="Silicon"
0139                           width="EcalBarrel_AstroPix_width"
0140                           length="EcalBarrel_AstroPix_length"
0141                           thickness="EcalBarrel_AstroPix_thickness"
0142                           vis="EcalBarrelModuleVis">
0143           <slice material="Silicon" thickness="EcalBarrel_SiliconThickness"     vis="EcalBarrelSliceVis" sensitive="yes" limits="cal_limits"/>
0144           <slice material="Silicon" thickness="EcalBarrel_ElectronicsThickness" vis="EcalBarrelSliceVis"/>
0145           <slice material="Copper" thickness="EcalBarrel_CopperThickness"       vis="EcalBarrelSliceVis"/>
0146           <slice material="Kapton" thickness="EcalBarrel_KaptonThickness"       vis="EcalBarrelSliceVis"/>
0147           <slice material="Epoxy" thickness="EcalBarrel_EpoxyThickness"         vis="EcalBarrelSliceVis"/>
0148         </module_component>
0149       </module>
0150 
0151       <support thickness="EcalBarrel_FrontSupportThickness" material="Aluminum" vis="EcalBarrelSupportVis"/>
0152 
0153       <layer repeat="1" vis="EcalBarrelLayerVis"
0154              thickness="EcalBarrel_ImagingLayerThickness"
0155              space_before="EcalBarrel_FrontSupportThickness">
0156         <frame material="CarbonFiber" fill="Air" thickness="EcalBarrel_CarbonFrameThickness" height="EcalBarrel_ImagingLayerThickness" vis="EcalBarrelSliceVis"/>
0157         <stave repeat="6"
0158                width="EcalBarrel_Stave_width"
0159                length="EcalBarrel_Stave_length"
0160                thickness="EcalBarrel_Stave_thickness"
0161                angle="EcalBarrel_StaveTilt_angle"
0162                module="AstroPix_Module"
0163                vis="EcalBarrelStaveVis">
0164           <xy_layout
0165             dx="EcalBarrel_AstroPix_width + EcalBarrel_AstroPix_margin"
0166             dy="EcalBarrel_AstroPix_length + EcalBarrel_AstroPix_margin"
0167           />
0168         </stave>
0169       </layer>
0170 
0171       <layer repeat="1" vis="EcalBarrelLayerVis"
0172              thickness="EcalBarrel_ImagingLayerThickness"
0173              space_before="EcalBarrel_ScFiLayerThickness_Imaging + EcalBarrel_SpaceBetween">
0174         <frame material="CarbonFiber" fill="Air" thickness="EcalBarrel_CarbonFrameThickness" height="EcalBarrel_ImagingLayerThickness" vis="EcalBarrelSliceVis"/>
0175       </layer>
0176 
0177       <layer repeat="2" vis="EcalBarrelLayerVis"
0178              thickness="EcalBarrel_ImagingLayerThickness"
0179              space_between="EcalBarrel_ScFiLayerThickness_Imaging + EcalBarrel_SpaceBetween"
0180              space_before="EcalBarrel_ScFiLayerThickness_Imaging + EcalBarrel_SpaceBetween">
0181         <frame material="CarbonFiber" fill="Air" thickness="EcalBarrel_CarbonFrameThickness" height="EcalBarrel_ImagingLayerThickness" vis="EcalBarrelSliceVis"/>
0182         <stave repeat="6"
0183                width="EcalBarrel_Stave_width"
0184                length="EcalBarrel_Stave_length"
0185                thickness="EcalBarrel_Stave_thickness"
0186                angle="-EcalBarrel_StaveTilt_angle"
0187                module="AstroPix_Module"
0188                vis="EcalBarrelStaveVis">
0189           <xy_layout
0190             dx="EcalBarrel_AstroPix_width + EcalBarrel_AstroPix_margin"
0191             dy="EcalBarrel_AstroPix_length + EcalBarrel_AstroPix_margin"
0192           />
0193         </stave>
0194       </layer>
0195 
0196       <layer repeat="1" vis="EcalBarrelLayerVis"
0197              thickness="EcalBarrel_ImagingLayerThickness"
0198              space_before="EcalBarrel_ScFiLayerThickness_Imaging + EcalBarrel_SpaceBetween">
0199         <frame material="CarbonFiber" fill="Air" thickness="EcalBarrel_CarbonFrameThickness" height="EcalBarrel_ImagingLayerThickness" vis="EcalBarrelSliceVis"/>
0200       </layer>
0201 
0202       <layer repeat="EcalBarrelImagingLayers_num-5" vis="EcalBarrelLayerVis"
0203              thickness="EcalBarrel_ImagingLayerThickness"
0204              space_between="EcalBarrel_ScFiLayerThickness_Imaging + EcalBarrel_SpaceBetween"
0205              space_before="EcalBarrel_ScFiLayerThickness_Imaging + EcalBarrel_SpaceBetween">
0206         <frame material="CarbonFiber" fill="Air" thickness="EcalBarrel_CarbonFrameThickness" height="EcalBarrel_ImagingLayerThickness" vis="EcalBarrelSliceVis"/>
0207         <stave repeat="7"
0208                width="EcalBarrel_Stave_width"
0209                length="EcalBarrel_Stave_length"
0210                thickness="EcalBarrel_Stave_thickness"
0211                angle="EcalBarrel_StaveTilt_angle"
0212                module="AstroPix_Module"
0213                vis="EcalBarrelStaveVis">
0214           <xy_layout
0215             dx="EcalBarrel_AstroPix_width + EcalBarrel_AstroPix_margin"
0216             dy="EcalBarrel_AstroPix_length + EcalBarrel_AstroPix_margin"
0217           />
0218         </stave>
0219       </layer>
0220     </detector>
0221 
0222     <comment>
0223       ---------------------------------------
0224       Pb/ScFi Layers of Barrel EM Calorimeter
0225       ---------------------------------------
0226     </comment>
0227     <detector
0228       id="EcalBarrel2_ID"
0229       name="EcalBarrelScFi"
0230       type="epic_EcalBarrelScFi"
0231       readout="EcalBarrelScFiHits"
0232       calorimeterType="EM_BARREL"
0233       vis="EcalBarrelEnvelopeVis"
0234       offset="EcalBarrel_Calorimeter_offset">
0235       <dimensions numsides="EcalBarrel_SectorRepeat"
0236         rmin="EcalBarrel_rmin"
0237         z="EcalBarrel_Calorimeter_length"/>
0238       <sectors vis="EcalBarrelSectorVis"/>
0239 
0240       <layer repeat="EcalBarrelImagingLayers_num-1" vis="EcalBarrelLayerVis"
0241              space_between="EcalBarrel_ImagingLayerThickness + EcalBarrel_SpaceBetween"
0242              space_before="EcalBarrel_FrontSupportThickness + EcalBarrel_ImagingLayerThickness + EcalBarrel_SpaceBetween/2.">
0243         <slice material="SciFiPb_PbGlue_Edge" thickness="EcalBarrel_RadiatorEdgeThickness" vis="EcalBarrelSliceVis"/>
0244         <slice material="SciFiPb_PbGlue" thickness="EcalBarrel_RadiatorThickness" vis="EcalBarrelFiberLayerVis">
0245           <fiber material="SciFiPb_Scintillator"
0246             sensitive="yes"
0247             grid_n_phi="5"
0248             grid_dr="2*cm"
0249             radius="EcalBarrel_FiberRadius"
0250             cladding_thickness="EcalBarrel_CladdingThickness"
0251             spacing_x="EcalBarrel_FiberXSpacing"
0252             spacing_z="EcalBarrel_FiberZSpacing"
0253             vis="EcalBarrelFiberLayerVis">
0254           </fiber>
0255         </slice>
0256         <slice material="SciFiPb_PbGlue_Edge" thickness="EcalBarrel_RadiatorEdgeThickness" vis="EcalBarrelSliceVis"/>
0257       </layer>
0258 
0259       <layer repeat="1" vis="EcalBarrelLayerVis"
0260              space_before="EcalBarrel_ImagingLayerThickness + EcalBarrel_SpaceBetween">
0261         <slice material="SciFiPb_PbGlue_Edge" thickness="EcalBarrel_RadiatorEdgeThickness" vis="EcalBarrelSliceVis"/>
0262         <slice material="SciFiPb_PbGlue" thickness="EcalBarrel_RadiatorThickness" vis="EcalBarrelFiberLayerVis">
0263           <fiber material="SciFiPb_Scintillator"
0264             sensitive="yes"
0265             grid_n_phi="5"
0266             grid_dr="2*cm"
0267             radius="EcalBarrel_FiberRadius"
0268             cladding_thickness="EcalBarrel_CladdingThickness"
0269             spacing_x="EcalBarrel_FiberXSpacing"
0270             spacing_z="EcalBarrel_FiberZSpacing"
0271             vis="EcalBarrelFiberLayerVis">
0272           </fiber>
0273         </slice>
0274       </layer>
0275 
0276       <layer repeat="EcalBarrel_FiberBulkLayers_num-2" vis="EcalBarelLayerVis">
0277         <slice material="SciFiPb_PbGlue"
0278           thickness="EcalBarrel_RadiatorThickness"
0279           vis="EcalBarrelFiberLayerVis">
0280           <fiber material="SciFiPb_Scintillator"
0281             sensitive="yes"
0282             grid_n_phi="5"
0283             grid_dr="2*cm"
0284             radius="EcalBarrel_FiberRadius"
0285             cladding_thickness="EcalBarrel_CladdingThickness"
0286             spacing_x="EcalBarrel_FiberXSpacing"
0287             spacing_z="EcalBarrel_FiberZSpacing"
0288             vis="EcalBarrelFiberLayerVis">
0289           </fiber>
0290         </slice>
0291       </layer>
0292 
0293       <layer repeat="1" vis="EcalBarrelLayerVis">
0294         <slice material="SciFiPb_PbGlue" thickness="EcalBarrel_RadiatorThickness" vis="EcalBarrelFiberLayerVis">
0295           <fiber material="SciFiPb_Scintillator"
0296             sensitive="yes"
0297             grid_n_phi="5"
0298             grid_dr="2*cm"
0299             radius="EcalBarrel_FiberRadius"
0300             cladding_thickness="EcalBarrel_CladdingThickness"
0301             spacing_x="EcalBarrel_FiberXSpacing"
0302             spacing_z="EcalBarrel_FiberZSpacing"
0303             vis="EcalBarrelFiberLayerVis">
0304           </fiber>
0305         </slice>
0306         <slice material="SciFiPb_PbGlue_Edge" thickness="EcalBarrel_RadiatorEdgeThickness" vis="EcalBarrelSliceVis"/>
0307       </layer>
0308 
0309       <support thickness="EcalBarrel_BackSupportThickness" material="Aluminum" vis="EcalBarrelSupportVis"/>
0310     </detector>
0311   </detectors>
0312 
0313   <readouts>
0314     <readout name="EcalBarrelImagingHits">
0315       <segmentation type="CartesianGridXY" grid_size_x="0.5 * mm" grid_size_y="0.5 * mm"/>
0316       <id>system:8,sector:6,layer:4,stave:4,module:8,slice:2,x:32:-16,y:-16</id>
0317     </readout>
0318     <readout name="EcalBarrelScFiHits">
0319       <segmentation type="CartesianStripZ" strip_size_x="1.0*cm" identifier_x="z"/>
0320       <id>system:8,sector:6,layer:6,slice:4,grid:10,fiber:16,z:-14</id>
0321     </readout>
0322   </readouts>
0323 
0324 </lccdd>