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>