scattbl - generate scattering table from random rough surfaces
scattbl [OPTIONS]
scattbl generates scattering distributions for random rough surfaces.
The output generated is a FITS binary table containing a double precision column, scat_np. The table consists scattering probability distribution scaled between [0,1] and sampled in 1/1000 step size.
See NOTES for information on memory usage, which can be quite large.
For info on the algorithm implemented by the code see SEE ALSO.
The following options are supported:
scattbl \
--degree 9 \
--density 1 \
--energy 4.51 \
--grazeangle 51.259 \
--nfft 16 \
--num_grazeangle 101 \
--offset_grazeangle 5.0 \
--output junk-4.51.fits \
--power 21 \
--section M \
--seed 1 \
--shell p1 \
--sroughness hx_p1_M_2-21_s1.fits \
--synchrotron 065o_optconsts_merged.rdb
Surface roughness files should be FITS binary tables. The keywords SPATFREQ and SURFPOS are required in the header, they are doubles representing the spatial frequency of the data and the surface position increment of the data in the table repsectively. The table must contain two columns, height and tangent, both of which are doubles. These columns contain surface height and tangent respectively.
SPIE paper outlining the algorithm implemented by this code:
http://hea-www.harvard.edu/MST/simul/software/docs/pkg/scattbl/spie02.ps
The program is very memory intensive, it requires a minimum of 2**nfft * 2**power * ( 8 / 1024 ) MByte of memore. The user is advised to run on a machine which exceeds the aforementioned amount of memory.
There is a debug option which allows the user to specify a ``wisdom'' file for the Fourier transform library to read and or write information to.
--debug readwisdom=/tmp/g.wis --debug writewisdom=/tmp/g.wis
This is of use when comparing output as it removes any random variations that the underlying Fourier transform library introduces.