[ Identification | Description | Input parameters | Output parameters | Links ]

# The `PSD_Detector` Component

Position-sensitive gas-filled detector with gaseous thermal-neutron converter (box, cylinder or 'banana').

## Identification

- Author: Thorwald van Vuure
- Origin: ILL
- Date: Feb 21st, 2005
- Version: 0.9

## Description

    An n times m pixel Position Sensitive Detector (PSD).
    A flat rectangular box of given depth is simulated, or alternatively
    a cylinder (when giving radius), or a horizontal cylindrical 'banana'
    detector (when giving the width along the arc) filled with a mixture
    of thermal-neutron converter gas and stopping gas.
    Box and cylinder are centered around the origin, the 'banana' has the
    origin as focus point.

    The converter gas can be specified as He-3, BF3 or N2.
    The filling pressure of converter gas must be specified along
    with the depth: this gives an absorption probability (e.g. ~90% for
    0.18 nm neutrons at depth 3 cm and He-3 pressure 5 bar).
    The stopping gas can be specified as one of the following gases:
    CF4, C3H8, CO2, Xe/TMA or He, or any for which a table of stopping
    powers is available. NB: each stopping gas table has specific
    data on a pair of particles (from thermal-neutron absorptions in
    either He-3, BF3 or N2) in a specific gas. Unusual choices like N2
    as a converter and He as a stopping gas probably require the
    calculation of a new table.
    Tip: to do a simulation in pure He-3, specify 0 bar for the stopping gas.
    The pressures of the two gases together put a lower limit on the
    achievable spatial resolution, no matter what pixel size is
    specified.
    Example: 1 bar CF4 gives ~2.5 mm spatial resolution, 3 bar CF4 gives
    ~1 mm. C3H8 requires more pressure for the same resolution, then
    Xe/TMA, then CO2 and finally He.
    Taken into account are the following effects:
    - (rectangularly distributed) error in the recorded position due to
      the range of the neutron capture products in the gas
    - angular dependence of absorption efficiency
    - border effect (events outside the sensitive volume tend to be
      counted in the border pixels)
    - parallax effect (with, if desired, an electrostatic lens to
      partially correct for this - use "algoLens=1")
    - wall effect
    To correctly take the wall effect into account, a value must be
    specified for the energy threshold for acceptance of an event as a
    valid neutron event. This normally serves to discriminate from
    gammas. Because these are not simulated in McStas, a value of 0 keV
    can be chosen for this threshold if one is interested in seeing the
    maximum number of neutrons; however, a more realistic value would be
    100 keV. This implies seeing the maximum number of neutrons as well,
    except in geometries with dominating wall effect.
    The border effect is a considerably complex phenomenon: it depends
    on the precise electric field configuration near the border. It is
    simulated here simply by introducing a dead zone, gas-filled,
    bordering the sensitive volume. Events in there can still cause
    signals in the detector. The dead zone can cause a shadow in the
    sensitive volume, just as in reality.
    The algorithm simply adds all events on the first 'pixel' in the
    dead zone to the border pixels. This is a coarse approximation,
    because the physical effect depends on the orientation of the
    tracks and the energy threshold setting. The bottom line is that
    tracking the position of the Center Of Gravity of the charge
    deposition in the detector does not allow for accurate modeling of
    the border effect, and therefore the border pixels should be
    ignored, just as in a real detector.
    Note that specifying 0 width of the dead zone next tot the
    sensitive volume, apart from being unrealistic, does not allow
    accurate simulation of the border effect: in this case, there will
    be a relative lack of events on the border pixels due to the wall
    effect.
    This component determines the position of the Center Of Gravity of
    the charge cloud in the detector. It does not simulate independent
    channels.
    Manufacturing imperfections such as wire diameter variations and
    spread in electronic amplifier component properties are not simulated.
    This should allow an experimenter to identify these manufacturing
    imperfections in his physical machine and correct for them.

    Example: PSD_Detector(xwidth=0.192, yheight=0.192, nx=64, ny=64,
                          zdepth=0.03, threshold=100, borderx=-1, bordery=-1,
                          PressureConv=5, PressureStop=1,
                          FN_Conv="Gas_tables/He3inHe.table", FN_Stop="Gas_tables/He3inCF4.table",
                          xChDivRelSigma=0, yChDivRelSigma=0,
                          filename="BIDIM19.psd")

    Example: PSD_Detector(xwidth=0.26, yheight=0.26, nx=128, ny=128,
                          zdepth=0.03, threshold=100, borderx=-1, bordery=-1,
                          PressureConv=5, PressureStop=1,
                          FN_Conv="Gas_tables/He3inHe.table", FN_Stop="Gas_tables/He3inCF4.table",
                          xChDivRelSigma=0, yChDivRelSigma=0,
                          filename="BIDIM26.psd")

    Example: PSD_Detector(radius=0.0127, yheight=0.20, nx=1, ny=128,
                          threshold=100, borderx=-1,
                          PressureConv=9.9, PressureStop=0.1,
                          FN_Conv="Gas_tables/He3inHe.table", FN_Stop="Gas_tables/He3inCO2.table",
                          yChDivRelSigma=0.006,
                          filename="ReuterStokes.psd")

    Example: PSD_Detector(awidth=1.533, yheight=0.4, na=640, ny=256,
                          radius=0.73, zdepth=0.032, dc=0.026, threshold=100,
                          borderx=-1, bordery=-1,
                          PressureConv=5, PressureStop=1,
                          FN_Conv="Gas_tables/He3inHe.table", FN_Stop="Gas_tables/He3inCF4.table",
                          xChDivRelSigma=0, yChDivRelSigma=0.0037,
                          LensOn=1, filename="D19.psd")

WARNING: This is a contributed Component.

## Input parameters

Parameters in boldface are required; the others are optional.

Name | Unit | Description | Default
--- | --- | --- | ---
nx | 1 | Number of pixel columns | 128
ny | 1 | Number of pixel rows | 128
filename | text | Name of file in which to store the detector image | 0
FN_Conv | text | Filename of the stopping power table of the converter gas | "He3inHe.table"
FN_Stop | text | Filename of the stopping power table of the stopping gas | "He3inCF4.table"
xwidth | - | Width of detector opening (m), in the case of a flat box | 0
radius | m | Radius of detector for cylindrical shape | 0
awidth | - | Width of detector opening along the horizontal arc of the detector (m), measured along the inside arc of the sensitive volume in the case of a 'banana' detector | 0
yheight | m | Height of detector opening | 0
depth | m | Depth of the sensitive volume of the detector | 0.03
re | m | Distance from center of detector to entry plane in case of banana shape | 0.73
thres | keV | Energy threshold for acceptance of an event | 100
PressureConv | bar | Pressure of gaseous thermal-neutron converter (e.g. He-3) | 5
PressureStop | bar | Pressure of stopping gas | 1
interpolate | 1 | Performs energy interpolation if true | 1
frac | 1 | Fraction of statistical events to be treated by component. Set it to 0 to use real absorption probability | 0
verbose | 1 | Gives more information and spectrum | 0
LensOn | - | =1 to simulate an electrostatic lens according to P. Van Esch, NIM A 540 (2005) pp. 361-367 | 1
dc | m | Distance from the entrance window to the cathode plane, where the correction zone of the lens ends | 0
borderx | - | Width of (gas-filled) border on the side of the detector | -1
bordery | m | Height of (gas-filled) border on the top/bottom of the detector giving rise to various border effects. Set to -2 to obtain the height of one pixel, -1 for the depth of the detector (default), or specify a non-negative distance | -1
xChDivRelSigma | 1 | Sigma of the error in position determination along the x axis (relative to xwidth), uniquely due to charge division readout. Set to 0 in case of independent channel readout along the x dimension | 0
yChDivRelSigma | relative to yheight | Relative sigma due to charge division in y direction (1), | 0
restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0

## Output parameters

Name | Unit | Description | Default
--- | --- | --- | ---
PSD_N | - | Array of neutron counts |
PSD_p | - | Array of neutron weight counts |
PSD_p2 | - | Array of second moments |
EAP |  |  |
M1P1 |  |  |
PosAP |  |  |
EAT |  |  |
M1T1 |  |  |
PosAT |  |  |
CrossSectionHe |  |  |
CountNeutrons |  |  |
GeomCumul |  |  |
AbsCumul |  |  |
DetCumul |  |  |
PHSpectrum |  |  |
PHSpectrum2 |  |  |
PHSpectrum_n |  |  |
nH_p |  |  |
nH_t |  |  |
FullEnergyP |  |  |
FullEnergyT |  |  |
VariousErrors |  |  |
SensVolCumul |  |  |

## Links

- Source code for `PSD_Detector.comp`.
- The test/example instrument Test_PSD_Detector.instr.

[ Identification | Description | Input parameters | Output parameters | Links ]