NORMRAY - dynamic ray tracing for normal
incidence rays in a sloth model
normray
<modelfile >rayends [optional parameters]
Optional Parameters:
caustic
0: show all rays 1: show only caustic rays
nonsurface
0: show rays which reach surface 1: show all rays
surface 0: shot ray from subsurface 1: from
surface
nrays number of location to shoot rays
dangle increment of ray angle for one location
nangle number of rays shot from one location
ashift shift first taking off angle
xs1 x of shooting location
zs1 z of shooting location
nangle=101 number of takeoff angles
fangle=-45 first takeoff angle (in degrees)
rayfile file of ray
x,z coordinates of ray-edge intersections
nxz=101 number of (x,z) in optional rayfile (see notes below)
wavefile file of ray
x,z coordinates uniformly sampled in time
nt=101 number of (x,z) in optional wavefile (see notes below)
infofile ASCII-file
to store useful information
fresnelfile used if you want to plot the fresnel volumes.
default is <fresnelfile.bin>
outparfile contains parameters for the plotting software.
default is <outpar>
krecord if
specified, only rays incident at interface with index
krecord are displayed and
stored
prim =1, only single-reflected rays are plotted ",
=0, only direct hits are displayed
ffreq=-1 FresnelVolume frequency
refseq=1,0,0 index of reflector followed by sequence of reflection (1)
transmission(0) or ray
stops(-1).
The default rayend is at the
model boundary.
NOTE:refseq must be defined
for each reflector
NOTES:
The rayends file contains ray parameters for
the locations at which
the rays terminate.
The rayfile is useful for making plots of ray
paths.
nxz should be larger than twice the number of
triangles intersected
by the rays.
The wavefile is useful for making plots of
wavefronts.
The time sampling interval in the wavefile is
tmax/(nt-1),
where tmax is the maximum time for all rays.
The infofile is useful for collecting
information along the
individual rays. The fresnelfile contains
data used to plot
the Fresnel volumes. The outparfile stores
information used
for the plotting software.
AUTHOR:
Dave Hale, Colorado School of Mines, 02/16/91
MODIFIED:
Andreas Rueger, Colorado School of Mines, 08/12/93
Modifications include: functions
writeFresnel, checkIfSourceIsOnEdge;
options
refseq=, krecord=, prim=, infofile=;
computation
of reflection/transmission losses, attenuation.
MODIFIED: Boyi Ou, Colorado School of Mines, 4/14/95
Notes:
This code can shoot rays from specified interface by users,
normally you
need to use gbmodel2 to generate interface parameters for
this code, both
code have a parameter named nrays, it should be same. If
you just want to
shoot rays from one specified location, you need to
specify xs1,zs1,
otherwise, leave them alone. If you want to shoot rays
from surface, you need
to define surface equal to 1. The rays from one
location will be
approximately symetric with direction Normal_direction -
ashift.(if nangle is
odd, it is symetric, even, almost symetric. The
formula for the first take
off angle is:
angle=normal_direction-nangle/2*dangle-ashift. If you only want to
see
caustics, you specify caustic=1, if you want to see rays which does not
reach
surface, you specify nonsurface=1.
/