Fortran 77 package NET version 3.10

General description

Programming language, error messages, screen output, etc.
Unified memory management.

New in version 3.10

History files.

Compiling and linking programs of package NET

(a) Program NET: (b) Additional program NETIND for network ray tracing within Fresnel volumes:

Running programs of package NET

It is recommended to run the programs from the history files. The history files may contain the information how to execute the programs, the data read from standard input (Fortran) or from the command line (Perl) and the data read from the SEP parameter files.
Data from standard input *:
Main input data of each program are read from the standard input, and mostly consist of a single line containing filenames and at most few numerical parameters.
Description of input data for the NET program
Regular network ray tracing.
Description of input data for the NETIND program
Network ray tracing inside Fresnel volumes.

Two-point network ray tracing within Fresnel volumes

Description of the algorithm employing programs NET and NETIND.

List of error messages

File list of package NET

(A) Documentation:
net.htm
This file (main HTML file containing basic description and links the files of this package).
netdoc.htm
General documentation to NET. File containing a brief overview of the NET package. The detailed description of input data, procedures, and other important topics is included within the individual FORTRAN77 source code files.
netver.htm
List of released versions.
neterr.htm
List of error messages with the links to their descriptions.
(B) Network ray tracing program NET:
FORTRAN77 codes listed herein, together with auxiliary data files 'net.fs2' and 'net.fs3' containing template forward stars, form the complete and functional network ray tracing program 'NET'. Usually, no other files of this package are required to perform network ray tracing.
net.for
FORTRAN77 source code of the network ray tracing program. The source code also contains the description of the input and output data, and the brief comments on the program.
net.inc
Include file with most COMMON blocks for 'net.for'.
netnode.inc
Include file with a COMMON block for 'net.for'.
ttt.for
Part of the FORTRAN77 source code of the NET program responsible for the 2-D "second-order" grid travel-time tracing acording to Klimes (1996).
ttt.inc
Include file with a COMMON block for 'ttt.for'.
net.fs2
Optimized circular 2-D forward stars.
net.fs3
Optimized spherical 3-D forward stars.
(C) Programs designed to generate forward stars for the NET program:
These programs are not required when using the NET program, because the forward stars for the net program are already generated and stored in 'net.fs2' and 'net.fs3'. They may be used if (1) larger forward stars than stored in the current versions of 'net.fs2' or 'net.fs3' are required (unlikely for most applications on most nowadays computers), or (2) if other than optimized forward stars are required for the purposes of comparing the performances of different algorithms or programs.
fs (subdirectory)
fs-opt2.for
Program generating 2-D optimized circular forward stars according to Section 4.3 of the paper by Klimes and Kvasnicka (1994).
fs-opt3.for
Program generating 3-D optimized spherical forward stars according to Section 4.3 of the paper by Klimes and Kvasnicka (1994).
fs-mcir2.for
Program generating 2-D circular Moser-Saito forward stars, containing all nodes within a circle except for the end nodes of the edges that would be parallel with shorter edges in a homogeneous medium.
fs-msph3.for
Program generating 3-D spherical Moser-Saito forward stars, containing all nodes within a sphere except for the end nodes of the edges that would be parallel with shorter edges in a homogeneous medium.
fs-msqr2.for
Program generating 2-D square Moser-Saito forward stars, containing all nodes within a square except for the end nodes of the edges that would be parallel with shorter edges in a homogeneous medium. Such forward stars have been used, e.g., by T-J.Moser or H.Saito.
fs-mcub3.for
Program generating 3-D cubic Moser-Saito forward stars, containing all nodes within a cube except for the end nodes of the edges that would be parallel with shorter edges in a homogeneous medium. Such forward stars have been used, e.g., by T-J.Moser or H.Saito.
(D) Demo data files for the network ray tracing program itself:
net.h
SEP parameter file describing the grid dimensions.
net.dat
Sample input data file for the 'net.for' program, to perform 2-D network ray tracing in a simple model without interfaces. The velocities are gridded in 'vel.dat'. The data correspond to the example described in Subsection 6.1 of Klimes and Kvasnicka (1994).
src.dat
Coordinates of a point source.
rec.dat
Receiver coordinates.
vel.dat
Grid velocities in a 1-D constant velocity gradient model by P.Podvin and I.Lecomte (1991), Geophys.J.int., 105, 271-284.
(E) Subdirectories with data files for network ray tracing in models specified by means of the FORMS or MODEL subroutine packages:
n2 (subdirectory)
n2-net.h
SEP history file describing the grid dimensions and program execution.
n2-mod.dat
Input data for the MODEL subroutine package to specify the model used in the example described in Subsection 6.2 of Klimes and Kvasnicka (1994).
n2-grid.dat
Main input data file for the 'grid.for' program of the package 'MODEL'. The data file refers files 'n2-mod.dat' and 'n2-net.dat' of this package. The two referred files should be located in the current directory. Program 'grid.for' should generate output file 'vel.out'.
n2-net.dat
Main input data file for the 'net.for' program of the package 'NET'. The data file refers two files 'n2-src.dat' and 'n2-rec.dat' of this package, and to output file 'vel.out' of the 'grid.for' program. The three referred files should be located in the current directory. Program 'net.for' should generate four output files 'rays.out', 'end.out', 'tt.out', and 'err.out', containing rays, the first-arrival travel times at the receivers (endpoints), and the first-arrival travel times and their estimated errors in the rectangular grid of points. The data correspond to the example described in Subsection 6.2 of Klimes and Kvasnicka (1994) with the exception of the number of gridpoints and maximum forward-star size. Whereas 100*100*50 gridpoints are used in the paper, only 50*50*25 gridpoints are considered within the demo data in order to comply with the array dimensions of the basic version of 'net.for'.
n2-src.dat
Additional input data file for the 'net.for' program with the coordinates of a source point.
n2-rec.dat
Additional input data file for the 'net.for' program with the coordinates of receiver points.
n2-sec.dat
Main input data file for the 'sec.for' program of the package MODEL to generate the velocity isolines in Fig.6 of Klimes and Kvasnicka (1994). The data file refers file 'n2-mod.dat' of this package. The referred file should be located in the current directory.
len (subdirectory)
len-net.h
SEP history file describing the grid dimensions and program execution.
len-grid.dat
Main input data file for the 'grid.for' program of package MODEL. The data file refers files 'model.dat' of package MODEL, and 'len-net.dat' of this package. The two referred files should be located in the current directory. Program 'grid.for' should generate output files 'vel.out' and 'icb.out'.
len-net.dat
Input data file for the 'net.for' program of package NET. The data file refers two files 'lenn-src.dat' and 'lenn-rec.dat' of this package, and two output files 'vel.out' and 'icb.out' of the 'grid.for' program. The four referred files should be located in the current directory. Program 'net.for' should generate four output files 'rays.out', 'end.out', 'tt.out', and 'err.out', containing rays, the first-arrival travel times at the receivers (endpoints), and the first-arrival travel times and their estimated errors in the rectangular grid of points. The data correspond to the example described in Subsection 6.3 of Klimes and Kvasnicka (1994) with the exception of the number of gridpoints and maximum forward-star size. Whereas 120*80*60 gridpoints are used in the paper, only 60*40*30 gridpoints are considered within the demo data in order to comply with the array dimensions of the basic version of 'net.for'.
lenn-src.dat
Additional input data file for the 'net.for' program with the coordinates of a source point.
lenn-rec.dat
Additional input data file for the 'net.for' program with the coordinates of receiver points.
ran (subdirectory)
Data and script files to generate a representation of a random medium and to calculate the first-arrival travel times in it.
(F) Indexing of Fresnel volumes (accuracy enhancement of two-point rays by means of network ray tracing within Fresnel volumes):
fv (subdirectory)
netfv.htm
Notes on two-point network ray tracing within Fresnel volumes.
netind.for
Program to generate the index file mapping gridpoints onto the network nodes situated within the Fresnel volume corresponding to the maximum two-point travel-time error. It also may adjust the grid density in the input data for the 'net.for' program in order to achieve the best possible accuracy of network ray tracing.
fv.pl
Perl script designed to control two-point network ray tracing within Fresnel volumes. It repeatedly runs programs 'grid.for' (package MODEL), 'net.for', and 'netind.for'. If another operating system is used, the batch file may be used as a guide how to run these three programs to complete the task. Then it may be useful to know that only the label ':FV' (1 line), command 'GOTO :FV' (1 line), commands running the programs (6 lines with piping), and the COPY commands (6 lines) are important. All other lines may simply be deleted in order not to be confusing. The only important batch file parameter is the first one. The first batch file parameter is the prefix of the name of 6 input data files required by the batch file. The names of the data files are composed of the prefix immediately followed by 'gri1.dat', 'net1.dat', 'net2.dat', 'gri3.dat', 'net3.dat', and 'net4.dat', respectively. The first 3 files are for the first iteration and specify the data for model gridding, the data for network ray tracing from the first given point to the second given point, and the data for network ray tracing from the second given point to the first given point. The other 3 files are used for all subsequent iterations. Important note: Data '...gri3.dat' for the subsequent iterations should refer to '...net3.out' instead of '...net3.dat'. File '...net3.out' is created from '...net3.dat' by adjusting the numbers of gridpoints. For example refer to the demo data files.
(G) Demo data files for network ray tracing within Fresnel volumes:
For network ray tracing within Fresnel volumes, dimension MIND in 'net.for' has to be adjusted properly (MIND=1 in the basic version). If there are no structural interfaces in the model, that is also the case of the following data, dimension MICB in 'net.for' may be decreased to NICB=1 to save the memory (MICB=MGRID in the basic version). Dimension MGRID in 'net.for' may be adjusted according to the memory available (MGRID=666666 in the basic version roughly corresponds to 16 MB of RAM). When having adjusted the dimensions in 'net.for', it is recommended to adjust the dimensions in 'netind.for' accordingly. The following data may be run by entering
perl go.pl fv-net.h
or, alternatively, by entering
perl fv.pl fv-
from the command line (the first method is recommended). Here 'fv-' is the prefix of the input data files for the 'fv.pl' Perl script.
fv (subdirectory)
fv-net.h
SEP history file describing the grid dimensions and program execution.
vgr-mod.dat
Data for the MODEL package specifying a 1-D constant velocity gradient model used by P.Podvin and I.Lecomte (1991), Geophys.J.int., 105, 271-284.
fv-gri1.dat
The data controlling model gridding for the first iteration. In particular, the data specify the model and the names of output files with gridded velocities and, if needed, indices of geological blocks. File 'fv-gri1.dat' refers model data file 'vgr-mod.dat', and file 'fv-net1.dat' to specify the grid dimensions which has to be, of course, the same as in 'fv-net2.dat'. The referred data files has to be located in current directory. Output file 'fv-vel.out' with gridded velocities will be generated.
fv-net1.dat
The data for network ray tracing from the first given point (file 'fv-src.dat') to the second given point (file 'fv-rec.dat') during the first iteration when no volume indexing is applied (no index file is specified). Velocities gridded in 'fv-vel.out' are referred. Output files 'fv-rays1.out' containing the two-point ray, 'fv-end1.out' containing the two-point travel time and its error, and 'fv-tt1.out' containing the travel-time field will be generated.
fv-net2.dat
The data for network ray tracing from the second given point (file 'fv-rec.dat') to the first given point (file 'fv-src.dat') during the first iteration when no volume indexing is applied (no index file is specified). Velocities gridded in 'fv-vel.out' are referred. Output files 'fv-rays2.out' containing the two-point ray, 'fv-end2.out' containing the two-point travel time and its error, and 'fv-tt2.out' containing the travel-time field will be generated.
fv-gri3.dat
The data controlling model gridding during all subsequent iterations. File 'fv-gri3.dat' refers model data file 'vgr-mod.dat', and file 'fv-net3.out' specifying the grid dimensions which has to be, of course, the same as in 'fv-net4.out'. Files 'fv-net3.out' and 'fv-net4.out' are created from 'fv-net3.dat' and 'fv-net4.dat' by adjusting the numbers of gridpoints according to the results of the previous iteration. Unlike 'fv-gri1.dat', 'fv-gri3.dat' refers to input index file 'fv-ind.out' describing the Fresnel volume. The Fresnel volume corresponding to the two-point travel-time error, and the updated grid density are determined by program 'netind.for'. The referred data files has to be located in current directory. Output file 'fv-vel.out' with gridded velocities will be generated.
fv-net3.dat
The data for network ray tracing from the first given point (file 'fv-src.dat') to the second given point (file 'fv-rec.dat') during the subsequent iterations. File 'fv-net3.dat' differs from 'fv-net1.dat' only by specifying input index file 'fv-ind.out' generated by program 'netind.for' according to the results of the previous iteration. The numbers of gridpoints in this file are not important. They are updated by program 'netind.for' and new updated file 'fv-net.out' is used for network ray tracing during each subsequent iteration.
fv-net4.dat
The data for network ray tracing from the second given point (file 'fv-rec.dat') to the first given point (file 'fv-src.dat') during the subsequent iterations. The numbers of gridpoints in this file are not important. They are updated by program 'netind.for' and new updated file 'fv-net.out' is used for network ray tracing during each subsequent iteration.