NORMRAY - dynamic ray tracing for normal incidence rays in a sloth model normray 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 outparfile contains parameters for the plotting software. default is 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. /