NAME

scatter - apply a scattering distribution to incoming photons


SYNOPSIS

scatter [option=value]


OPTIONS

Parameters for scatter.par

input string

Input photon stream in bpipe format. The string 'stdin' causes scatter to read from standard input.

output string

Output photon stream in bpipe format. The string 'stdout' causes scatter to write to standard output.

logfile string

Log file. The string 'stderr' causes scatter to write the log to standard error.

seed1 integer

The first seed for the random number generator. It must be in the range [1,214748339].

seed2 integer

The second seed for the random number generator. It must be in the range [1,214748339].

block integer

The random number block to start at. It must be in the range [1,1048575].

scatter_db string

Database of scattering distributions. This is an RDB formatted file. See FILES

mirror_db string

Database of mirror positions. This is an RDB formatted file. See FILES

scat_iter_lim integer

Maximum number of iterations to try to scatter a photon.

in_plane boolean

Apply the in plane scatter.

out_of_plane boolean

Apply the out of plane scatter.

min_cumulative_probability real

Minumum cumulative probability.

max_cumulative_probability real

Maxumum cumulative probability.

shell integer

Mirror shell number.

surf_no integer

Mirror surface number; 1=P, 2=H.

theta real

Default value for theta, in arcseconds

phi real

Default value for phi, in arcseconds.

debug string

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.

angles

Prints photon id, in-plane, and out-of-plane scatter offsets.

extrapolated

Prints photon id, energy, random number, and sin of the incident angle.

offzone

Prints photon id and z position.

offzone2

Prints photon id, z position, and offset from nearest mirror section.

help boolean

Print brief usage information and exit.

usage boolean

Print usage information and exit.

version boolean

Print version and exit.

mode string

Mode of operation.


DESCRIPTION

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.

NEW STYLE SCATTER

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.

OLD STYLE SCATTER

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.


FILES

SCATTER_DB

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

Mirror name, i.e. p1, p3, p4, p6, h1, h3, h4, or h6.

zone

Mirror zone name.

zone_geom

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:

zmin

Z min of the zone for ZLinear geometry.

zmax

Z max of the zone for ZLinear geometry.

scat_alg

Scattering algorithm specifier, EsaLinPowSym or EsaLinAsym are currently accepted.

EsaLinPowSym represents the algorithm developed by LVS.

EsaLinAsym represents the algorithm develeped by Zhao.

scat_file

FITS binary table containing scattering distributions.

MIRROR_DB

The mirror_db parameter provides a lookup table which contains, at least, the following columns:

mirror

Name of the mirror, i.e. p1, p3, p4, p6, h1, h3, h4, or h6.

z0

Z position of the mirror.


COPYRIGHT & LICENSE

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


VERSION

This documents version 1.3.7_01 of scatter.


AUTHOR

tibbetts@head.cfa.harvard.edu