Back to home page

EIC code displayed by LXR

 
 

    


Warning, /athena/compact/pfrich.xml is written in an unsupported language. File is not indexed.

0001 <?xml version="1.0" encoding="UTF-8"?>
0002 <lccdd>
0003 
0004 <define>
0005 <!-- vessel geometry -->
0006 <constant name="PFRICH_Length"             value="BackwardRICHRegion_length"/>  <!-- vessel z-length -->
0007 <constant name="PFRICH_zmin"               value="-BackwardRICHRegion_zmin"/> <!-- vessel front -->
0008 <constant name="PFRICH_zmax"               value="PFRICH_zmin - PFRICH_Length"/>  <!-- vessel back -->
0009 <constant name="PFRICH_rmin0"              value="BackwardPIDRegion_tan * BackwardRICHRegion_zmin"/>  <!-- bore radius at vessel frontplane -->
0010 <constant name="PFRICH_rmin1"              value="BackwardPIDRegion_tan * (BackwardRICHRegion_zmin + BackwardRICHRegion_length)"/>  <!-- bore radius at vessel backplane -->
0011 <constant name="PFRICH_rmax"               value="BackwardPIDRegion_rmax - 2*cm"/>  <!-- vessel backplane radius -->
0012 <constant name="PFRICH_wall_thickness"     value="0.5*cm"/>  <!-- thickness of radial walls -->
0013 <constant name="PFRICH_window_thickness"   value="0.1*cm"/>  <!-- thickness of entrance and exit walls -->
0014 <!-- additional parameters -->
0015 <constant name="PFRICH_aerogel_thickness"  value="3.0*cm"/>  <!-- aerogel thickness -->
0016 <constant name="PFRICH_sensor_active_size_default" value="24.0*mm"/> <!-- sensor side length (effective area) -->
0017 <constant name="PFRICH_sensor_full_size_default"   value="25.8*mm"/> <!-- sensor side length (full size, with enclosure) -->
0018 <!-- lores values are used for global vizualizations _only_ -->
0019 <constant name="PFRICH_sensor_active_size_lores" value="PFRICH_sensor_active_size_default * 4"/>
0020 <constant name="PFRICH_sensor_full_size_lores"   value="PFRICH_sensor_full_size_default * 4"/>
0021 <!-- actual values used by the parametrization -->
0022 <constant name="PFRICH_sensor_active_size" value="PFRICH_sensor_active_size_default"/>
0023 <constant name="PFRICH_sensor_full_size"   value="PFRICH_sensor_full_size_default"/>
0024 
0025 
0026 <constant name="PFRICH_sensor_thickness"   value="1.5*mm"/> <!-- sensor thickness -->
0027 <constant name="PFRICH_sensor_dist"        value="40*cm"/> <!-- distance between aerogel exit plane and sensor entrance plane -->
0028 <constant name="PFRICH_num_px"             value="8"/> <!-- number of pixels along one side of the sensor -->
0029 <!-- debugging switches -->
0030 <comment>
0031 - `PFRICH_debug_optics`:  1 = all components become vacuum; test opticalphotons from IP
0032                          2 = all components become vacuum, except for `gasvol`, test charged particles from IP
0033                          0 = off
0034 </comment>
0035 <constant name="PFRICH_debug_optics"  value="0"/>
0036 </define>
0037 
0038 
0039 <detectors>
0040 
0041 
0042 <!-- /detectors/detector -->
0043 <documentation level="10">
0044 ### pfRICH: Proximity Focusing RICH
0045 </documentation>
0046 <detector
0047   id="BackwardRICH_ID"
0048   name="PFRICH"
0049   type="athena_PFRICH"
0050   readout="PFRICHHits"
0051   gas="C4F10_PFRICH"
0052   material="Aluminum"
0053   vis_vessel="DRICH_vessel_vis"
0054   vis_gas="DRICH_gas_vis"
0055   debug_optics="PFRICH_debug_optics"
0056   >
0057 
0058 
0059 <!-- /detectors/detector/dimensions -->
0060 <documentation level="10">
0061 #### Vessel
0062 - dimensions:
0063   - `zmin`: z-position of vessel front plane
0064   - `length`: overall z-length of the full vessel
0065   - `rmin0` and `rmin1`: bore radius at front plane and back plane, respectively
0066   - `rmax0` and `rmax1`: outer radius of vessel, at front plane and back plane, respectively
0067   - `wall_thickness`: thickness of radial walls
0068   - `window_thickness`: thickness of entrance and exit disks
0069 </documentation>
0070 <dimensions
0071   zmin="PFRICH_zmin"
0072   zmax="PFRICH_zmax"
0073   length="PFRICH_Length"
0074   rmin0="PFRICH_rmin0"
0075   rmin1="PFRICH_rmin1"
0076   rmax0="PFRICH_rmax"
0077   rmax1="PFRICH_rmax"
0078   wall_thickness="PFRICH_wall_thickness"
0079   window_thickness="PFRICH_window_thickness"
0080   />
0081 
0082 
0083 <!-- /detectors/detector/radiator -->
0084 <documentation level="10">
0085 #### Radiator
0086 - radiator is defined in a wedge of azimuthal space, composed of aerogel and a
0087   filter; the filter is applied to the back of the aerogel, so that it separates
0088   the aerogel and gas radiators
0089 - dimensions:
0090   - `frontplane`: front of the aerogel, w.r.t. front plane of the vessel envelope
0091   - `rmin` and `rmax`: inner and outer radius (at the front plane; radial bounds are conical)
0092   - `phiw`: azimuthal width of wedge
0093   - `thickness`: radiator thickness, defined separately for aerogel and filter
0094   - `pitch`: controls the angle of the radiator (0=vertical)
0095 </documentation>
0096 <radiator
0097   frontplane="-PFRICH_window_thickness"
0098   rmin="PFRICH_rmin0 + PFRICH_wall_thickness + 0.2*cm"
0099   rmax="(PFRICH_rmax/PFRICH_zmax)*PFRICH_zmin + 8.0*cm"
0100   phiw="60*degree"
0101   pitch="0*degree"
0102   >
0103   <aerogel
0104     material="Aerogel_DRICH"
0105     vis="DRICH_aerogel_vis"
0106     thickness="PFRICH_aerogel_thickness"
0107     />
0108   <filter
0109     material="Acrylic_DRICH"
0110     vis="DRICH_filter_vis"
0111     thickness="0.3*mm"
0112     />
0113 </radiator>
0114 
0115 
0116 
0117 <!-- /detectors/detector/sensors -->
0118 <documentation level="10">
0119 #### Sensors
0120 </documentation>
0121 <sensors>
0122 
0123 
0124 <!-- /detectors/detector/sensors/module -->
0125 <documentation level="10">
0126 ##### Sensor module
0127 - based on Hamamatsu S13361-3050AE-08
0128   - effective area: 24.0 x 24.0 mm
0129   - enclosure size: 25.8 x 25.8 mm
0130   - pixel size: 3x3 mm (8x8 matrix)
0131   - thickness: 1.5 mm
0132 - dimensions:
0133   - `side`: side length of the square module
0134   - `thickness`: thickness of the sensor module
0135   - `gap`: provides room between the squares, to help prevent them from overlapping
0136   - note: the values of `side` and `gap` will determine how many sensors there are, since the
0137     sensor placement algorithm will try to place as many as it can in the specified region
0138 </documentation>
0139 <module
0140   material="Silicon"
0141   surface="SensorSurface_DRICH"
0142   vis="PFRICH_sensor_vis"
0143   side="PFRICH_sensor_active_size"
0144   thickness="PFRICH_sensor_thickness"
0145   gap="0.5*(PFRICH_sensor_full_size-PFRICH_sensor_active_size) + 0.5*mm"
0146   />
0147 
0148 
0149 <!-- /detectors/detector/sensors/plane -->
0150 <documentation level="10">
0151 ##### Sensor plane
0152 - sensors will be placed on a plane
0153   - plane dimensions:
0154     - `sensordist`: distance between sensor plane active surface (e.g., photocathode) and aerogel backplane
0155     - `rmin`: minimum radial position of a sensor's centroid
0156     - `rmax`: maximum radial position of a sensor's centroid
0157 </documentation>
0158 <plane
0159   sensordist="PFRICH_sensor_dist"
0160   rmin="PFRICH_rmin1 + 2*cm"
0161   rmax="PFRICH_rmax  - 4*cm"
0162   />
0163 
0164 <services>
0165   <comment> 
0166     Material should be equivallent with 3x0.5cm Al, spread over the entire available distance.
0167     This was confirmed by Silvia.
0168   </comment>
0169   <component name="aluminum" thickness="5*mm" vis="RICHServiceVis" material="Aluminum"/>
0170   <component name="air" thickness="40*mm" vis="InvisibleNoDaughters" material="Air"/>
0171   <component name="aluminum" thickness="5*mm" vis="RICHServiceVis" material="Aluminum"/>
0172   <component name="air" thickness="40*mm" vis="InvisibleNoDaughters" material="Air"/>
0173   <component name="aluminum" thickness="5*mm" vis="RICHServiceVis" material="Aluminum"/>
0174 </services>
0175 
0176 </sensors>
0177 </detector>
0178 </detectors>
0179 
0180 <documentation level="10">
0181 #### Readout
0182 - segmentation: square matrix of pixels
0183   - `grid_size_x,y`: size of each sensor, but note we must divide sensor size
0184     by 1 less than the number of pixels, to account for fenceposting
0185   - `offset_x,y`: specified such that the `x` and `y` indicators are unsigned
0186 - indicators and `cellID` bits:
0187 
0188   | indicator | offset | length |
0189   |-----------|--------|--------|
0190   | pfRICH ID | 0      | 8      |
0191   | sensor    | 8      | 12     |
0192   | x pixel   | 20     | 16     |
0193   | y pixel   | 36     | 16     |
0194 
0195 </documentation>
0196 <readouts>
0197   <readout name="PFRICHHits">
0198     <segmentation
0199       type="CartesianGridXY"
0200       grid_size_x="PFRICH_sensor_active_size/(PFRICH_num_px-1)"
0201       grid_size_y="PFRICH_sensor_active_size/(PFRICH_num_px-1)"
0202       offset_x="-PFRICH_sensor_active_size/2.0"
0203       offset_y="-PFRICH_sensor_active_size/2.0"
0204       />
0205     <id>system:8,module:12,x:20:16,y:16</id>
0206   </readout>
0207 </readouts>
0208 
0209 
0210 </lccdd>