scatter - apply a scattering distribution to incoming photons
scatter [option=value]
Parameters for scatter.par
Input photon stream in bpipe format. The string 'stdin' causes scatter to read from standard input.
Output photon stream in bpipe format. The string 'stdout' causes scatter to write to standard output.
Log file. The string 'stderr' causes scatter to write the log to standard error.
The first seed for the random number generator. It must be in the range [1,214748339].
The second seed for the random number generator. It must be in the range [1,214748339].
The random number block to start at. It must be in the range [1,1048575].
Database of scattering distributions. This is an RDB formatted file. See FILES
Database of mirror positions. This is an RDB formatted file. See FILES
Maximum number of iterations to try to scatter a photon.
Apply the in plane scatter.
Apply the out of plane scatter.
Minumum cumulative probability.
Maxumum cumulative probability.
Mirror shell number.
Mirror surface number; 1=P, 2=H.
Default value for theta, in arcseconds
Default value for phi, in arcseconds.
Print various types of debug information to logfile or enables non-standard operation. The strings listed below may be given singly or in a colon separated list.
Prints photon id, in-plane, and out-of-plane scatter offsets.
Prints photon id, energy, random number, and sin of the incident angle.
Prints photon id and z position.
Prints photon id, z position, and offset from nearest mirror section.
Print brief usage information and exit.
Print usage information and exit.
Print version and exit.
Mode of operation.
scatter takes an input bpipe photon stream and applies a offset to the photon direction. The offset is read from the scatter_db, interpolated between values in the scatter_db, or extrapolated from the scatter_db depending on the situation.
Required fields in the input bpipe stream are position, direction, surface_norm, energy, id, and surf_missed.
The output bpipe stream has the direction field modified to include the scatter offset.
The log file contains output triggered by the various debug flags.
This behavior is triggered by the presence of the EsaLinAsym value in the scat_alg field of the scatter_db for a given zone. See FILES.
This style of scattering assumes that the scattering distributions in the scatter_db cover the full range of possibilities. No extrapolation is performed. All values come from the table or from interpolating between two values in the table.
This mode of operation is triggered by the presence of the value EsaLinPowSym in the scat_alg field of the scatter_db. See FILES.
This mode duplicates the older style scattering algorithm used in the pre 2004/08 time frame. Essentially the scattering distributions in the scatter_db file have lower and upper limits. So for random numbers that fall outsie the limits, the scattering angle ends up being extrapolated from the distrution using a powerlaw.
The scatter_db provides a lookup table mapping scattering distribution files(FITS formatted) with mirrors and zones. It also influences which scattering algorithm scatter uses. A list of the columns required is given below:
Mirror name, i.e. p1, p3, p4, p6, h1, h3, h4, or h6.
Mirror zone name.
Zone geometry specifier, currently only a linear geometry along the z axis is handles. ZLinear is the specifier used for this geometry.
If ZLinear is specified, the following additional columns are required:
Z min of the zone for ZLinear geometry.
Z max of the zone for ZLinear geometry.
Scattering algorithm specifier, EsaLinPowSym or EsaLinAsym are currently accepted.
EsaLinPowSym represents the algorithm developed by LVS.
EsaLinAsym represents the algorithm develeped by Zhao.
FITS binary table containing scattering distributions.
The mirror_db parameter provides a lookup table which contains, at least, the following columns:
Name of the mirror, i.e. p1, p3, p4, p6, h1, h3, h4, or h6.
Z position of the mirror.
Copyright 2006 Smithsonian Astrophysical Observatory
This software is released under the GNU General Public License. You may find a copy at http://www.fsf.org/copyleft/gpl.html
This documents version 1.3.10 of scatter.