📄 rayinvr.doc
字号:
space - an array which determines the spacing of take-off angles between the minimum and maximum values for each ray group in the array ray. For space=1, the take-off angles will be equally spaced; for space>1, the take-off angles will be concentrated near the minimum value; for 0<space<1, the take-off angles will be concentrated near the maximum value (default: 1; however, space=2 for a reflected ray group if specified as L.2 in the array ray)amin, amax - arrays containing minimum and maximum take-off angles (degrees); measured from the horizontal, positive downward and negative upward (for rays traveling left to right or right to left); used for ray groups specified by ray=1.0nsmax - an array containing the maximum number of rays traced when searching for the take-off angles of the ray groups in the array ray (default: 10; however, the default is the first element of nsmax for all ray groups if only one value is specified)n2pt - maximum number of iterations during two-point ray tracing (i2pt>0); this is the maximum number of rays traced for each receiver to determine the take-off angle of the ray that connects the source and receiver (default: 5)x2pt - distance tolerance (km) for two-point ray tracing; less than n2pt rays will be traced for a particular receiver if a ray end point is within x2pt of the receiver location (default: (xmax-xmin)/2000)crit - head waves are generated if a down-going ray in the search mode has an angle of incidence at the bottom of the Lth layer within crit degrees of the critical angle when ray=L.3 (default: 1)hws - the spacing (km) of rays emerging upward from the bottom of the Lth layer when ray=L.3 (default: (xmax-xmin)/25)nhray - maximum number of rays traced for a head wave ray group (default: pnrayf)aamin - minimum take-off angle (degrees) for the refracted ray group in the first layer (default: 5)aamax - maximum take-off angle (degrees) for reflected ray groups specified as L.2 in the array ray (default: 85)stol - if a ray traced in the search mode is of the correct type and its end point is within stol (km) of the previous ray traced in the search mode, then the search for that ray type is terminated; a value of stol=0 will ensure that nsmax rays are always traced in the search mode (default: (xmax-xmin)/3500)xsmax - for reflected ray groups specified as L.2 in the array ray, determine the minimum take-off angle using the search mode so that the maximum range for this ray group is xsmax (km) if iturn=0 or the maximum offset of the reflection point is xsmax/2 (km) if iturn=1; for head wave ray groups specified as L.3 in the array ray, the maximum offset of the point of emergence from the head wave boundary is xsmax (km); xsmax=0 will ensure that the take-off angle of the reflected ray which grazes off the bottom of the Lth layer is determined and head waves are traced along the Lth boundary until the edge of the model is reached (default: 0.0)nrbnd - an array containing the number of reflecting boundaries for each ray group in the array ray (default: 0)rbnd - an array containing the reflecting boundaries specified in the array nrbnd; the following code is used: (1) L - ray traveling downward is reflected upward off the bottom of the Lth layer (2) -L - ray traveling upward is reflected downward off the top of the Lth layerncbnd - an array containing the number of converting (P to S or S to P) boundaries for each ray group in the array ray (default: 0)cbnd - an array containing the converting boundaries specified in the array ncbnd; the following code is used: (1) i - ray will convert from its present wave type (P or S) at the ith layer boundary encountered (2) 0 - ray will leave the source as an S-wavefrbnd - an array containing the floating reflecting boundaries for each ray group in the array ray; the values of frbnd correspond to the order in which the reflectors are listed in the file f.in (default: 0)pois - an array containing the value of Poisson's ratio for each model layer; a value of 0.5 signifies a water layer with a corresponding S-wave velocity of zero (default: 0.25; however, the default is the first element of pois for all layers if only one value is specified)poisl, poisb - arrays specifying the layers and block numbers, respectively, of model trapezoids within which Poisson's ratio is modified over that given by pois using the array poisbl; for poisb, the trapezoids with a layer are numbered from left to rightpoisbl - an array containing the value of Poisson's ratio for the model trapezoids specified in the arrays poisl and poisb overriding the values assigned using the array poisnpbnd - number of points at which each layer boundary is uniformly sampled for smoothing if ibsmth=1 or 2 (default: 100)nbsmth - number of applications of a three-point averaging filter to each layer boundary if ibsmth=1 or 2 (default: 10)xminns, xmaxns - minimum and maximum model distance over which the layer boundaries listed in the array insmth are not to be smoothed using ibsmth=1 or 2 (defaults: smooth boundaries between xmin and xmax) step - controls the ray step length in the solution of the ray tracing equations according to the relationship step length (km) = step*v/(|vx|+|vz|) where v is velocity and vx and vz are its partial derivatives with respect to x and z (default: 0.05)smin, smax - minimum and maximum allowable ray step length (km) (defaults: (xmax-xmin)/4500, (xmax-xmin)/15)4) Inversion parameters (INVPAR namelist):a) Switches (usually 0 = off, 1 = on):invr - calculate partial derivatives of the selected model parameters and write these to the file i.out (default: 0)b) Other inversion parameters:ivray - an array of non-zero integers corresponding to the ray groups listed in the array ray used to identify the type of arrival in the file tx.out if itxout=2 or 3 and to allow for the appropriate comparison with the observed travel times in the file tx.in if invr=1 or i2pt>0ximax - the maximum allowable distance (km) between the nearest ray end point and an observed seismogram location for one of the rays used to interpolate the partial derivatives and travel time at that observed seismogram location (default: (xmax-xmin)/20)ttunc - uncertainty of the calculated travel times (s) written to the file tx.out if itxout>0 (default: 0.01)bndunc, velunc - estimated uncertainty of the depth of boundary nodes (km) and velocities (km/s) written to the file i.out (defaults: 0.1, 0.1) Additional NotesArray defaults: if a single default value is indicated for an array parameter, all elements of the array have that default value.Layer boundaries: must begin at xmin and end at xmax even if the layer above and/or below is pinched out (unless the boundary is defined by only one point, then it is specified at xmax).Bottom layer boundary: should consist of at most ten points.Near-vertical layer boundaries: should be avoided because they may result in large velocity gradients nearby. If necessary, the adjacent trapezoids should have zero velocity gradient.Shot point locations: may be anywhere in the model, but locating them directly on a model boundary may cause problems.Ray group: is defined as a set of rays specified by a ray code in the array ray, possibly modified to include multiple reflections and/or conversions, whose take-off angles are determined by an iterative search mode or specified by the user using ray=1.0 and the arrays amin and amax.Zero velocity gradient: if the four corner velocities of a model trapezoid are equal, then there is a zero velocity gradient inside and no ray bending will occur. It is preferable to have a zero gradient in all or part of a layer rather than a very small gradient so that the Runge Kutta routine can be avoided and straight ray paths are used.Large velocity gradients: ray tracing becomes inaccurate if the velocity gradient is large and the ray step length is not small enough. In this case a warning message is given and the value of smin and/or step should be reduced.Ray code: listed in the file r1.out for each ray traced is supplied as an internal check to ensure that the correct rays specified in the array ray or the arrays amin and amax have been traced. This ray code is determined by the program as follows: the number to the left of the decimal refers to the deepest layer encountered by the ray; the number to the right of the decimal will be one, unless (1) the ray was reflected upward from a layer boundary, in which case it will be two, or (2) the ray travelled as a head wave, in which case it will be three (assuming the ray was not reflected upward from a layer boundary after traveling as a head wave).Shot point located at depth: in this case, the array ray should not contain ray codes corresponding to layers above the shot point.Ray step length: a very small value of step may not result in increased ray tracing accuracy due to round-off errorRay changes direction: a ray traveling left to right can reflect or refract and change direction and travel right to left, or vice versa.Terminating a ray: if istop=0, a ray will be traced until it encounters the top, bottom, left or right of the model, unless it is reflected off the top of the model using nrbnd and rbnd.Ray stopped warning: the warnings which begin "ray stopped -" are included in the file r1.out directly before the summary information for that particular ray is listed.Failure of ray search mode: it is possible that the iterative shooting/bisection algorithm used in the ray search mode may fail, or find a limited range of take-off angles that only sample a part of a layer, if either (1) the model has large lateral variations, (2) the range of take-off angles defining the desired ray group is very small, (3) the value of nsmax is too small or stol is too large, or (4) it is not possible to trace the desired type of rays through a particular part of the model (i.e., violates Snell's law). In any case, increase the value of nsmax first and then decrease the value of stol if necessary and this should work (unless the problem is case 4). If this fails, take-off angles can be supplied manually using ray=1.0 and the arrays amin and amax. Use irays=1 to see why the search mode is failing.Travel time curves: join successive points of the same ray code in the same ray group. Prograde and retrograde branches will be separated if ibreak=1.Ray search mode and multiple reflections: for ray groups specified by L.2 in the array ray, the take-off angles determined in the search mode will correspond to rays which reflect off the Lth layer boundary only and may or may not give rise to the multiple reflections specified by nrbnd and rbnd .Integer code in the file tx.out: is used to identify each travel time to allow for the appropriate comparison with the rays traced during inversion It will begin at one and be incremented one for each ray group if itxout=1. In addition, the integer will be incremented by one for a change from a prograde to retrograde branch or vice versa if ibreak=1. This may be undesirable if the prograde and retrograde branches should be identified by a single number for inversion or if more than one ray group should be identified by the same number, in which case itxout=2 or 3 and the array ivray should be used when writing to the file tx.out.Laterally homogeneous layer: if a layer boundary is to be horizontal or the upper or lower velocity of a layer is to be constant, then only a single point is required in the velocity model and it should be specified at an x-coordinate equal to xmax. If two or more points are required, then the first and last point must be specified at xmin and xmax, respectively.Constant velocity layer: to specify a layer with constant velocity, assign a single upper layer velocity at xmax and assign a lower layer velocity of zero at xmax.Zero vertical velocity gradient layer: to specify a layer with zero vertical velocity gradient, assign one or more upper layer velocities as usual and assign a lower layer velocity of zero at xmax.Zero velocity discontinuity across layer boundary: to specify a layer boundary with no associated velocity discontinuity, assign an upper layer velocity of zero at xmax for the layer directly beneath the boundary.Fixed vertical velocity gradient: if the vertical velocity
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -