Task: Convert Between CLR and ND
A conversion from the continuous layer representation to a discrete layering
is necessary for the computation of travel times, since all the computational
routines are based on MODEL structures and .nd files.
To compute travel times for a velocity model that is stored in a .clr file, do the
following:
- load the .clr file by executing clr=mkreadclr('path/to/your/clr_file.clr','silent');
clr is now a structure variable containing all information
about the velocity model.
- convert the CLR structure into a MODEL structure by executing
model=mkclr2model(clr,deltaz,mode);
where
- clr
- is the structure variable obtained in step 1
- deltaz
- is either the depth
sampling width in km or a list of depths at which the model will be sampled.
- mode
- a string "spherical" or "flat" which denotes the
sampling method: "spherical" denotes a sampling which is equidistant in spherical
coordinates, whereas "flat" sampling is equidistant in flat earth coordinates. The
latter produces a larger number of samples, resulting in longer computation times
for ray paths and travel times, but also much better results especially for core
phases. (The mode will be ignored if deltaz is a depth list)
- model
- is then a structure variable containing a discrete layer model
as needed by the routines for travel time computation.
- Perform your computations with model as input data (see the
section on routine tasks to learn how).
Or
execute mkwritend(model,'path/to/save/nd_file.nd');
to store the model in an .nd file for later use.
Currently not supported.
A conversion from the discrete model representation in MODEL structures and .nd files
requires a polynomial fitting of the discrete layers in a way that exactly reproduces
the given parameter values.
eof.