Fortran 77 package FORMS version 5.10
Package FORMS is designed to facilitate the data exchange between
individual programs and to simplify the writing, reading, comparing
and plotting the various kinds of data.
Package FORMS contains specifications of data forms,
subroutines to write and read them,
programs to perform simple operations with the data,
programs to generate the data of given properties,
simple graphics subroutines and programs, etc.
General description of package FORMS
General description of data forms
- SEP (parameter files):
- SEP (Stanford Exploration Project) parameter files
are convenient for the specification of input parameters of programs,
and especially for the description of grid dimensions for the
gridded data (data forms GRD and MGRD).
Subroutines to read and write the SEP data are collected in file
sep.for.
- GSE (seismograms):
- GSE waveform data exchange files are one of many seismological
standards used to store end exchange seismograms, and are very
simple and readable ASCII files.
Subroutines to read and write the GSE files are collected in file
gse.for.
- GRD (GRiDed data):
- Singlevalued data on regular rectangular grids are written
gridpoint-by-gridpoint into formatted files.
N1*N2*N3 grid values are stored in the Fortran manner, i.e.
with the inner loop corresponding to N1 and outer loop
corresponding to N3.
The files are designed to be read by the list-directed input
(free format). The null values are generated in place of undefined
travel times in a free space. The null values are treated as default
values when read by list-directed input (free format).
Example: 124 null values are written as ' 124* '.
The grid dimensions are usually assumed to be specified by
parameters N1, N2, N3 (numbers of gridpoints),
D1, D2, D3 (grid intervals),
O1, O2, O3 (grid origin = first gridpoint).
Subroutines
WARRAY to write real-valued gridded data,
WARRAI to write integer gridded data,
RARRAY to read real-valued gridded data,
and
RARRAI to read integer gridded data,
are collected in file forms.for.
- MGRD (Multivalued GRiDed data):
- Multivalued data on regular rectangular grids are given
by a couple of files:
(a) Integer gridded data file (form GRD) containing for each gridpoint
the number of data values.
(b) Formatted file containing all data values at the first,
second, ..., last gridpoints.
The subroutines to write and read singlevalued gridded data GRD
may be used to write and read these files.
- LIN (LINes):
- Subroutine FORM2
of file forms.for may be useful when writing
these data.
- PTS (PoinTS):
- Subroutine FORM2
of file forms.for may be useful when writing
these data.
- FTT (Travel Times):
- Subroutine FORM2
of file forms.for may be useful when writing
these data.
Compiling and linking programs of package FORMS
- Copy all files (or at least all *.for and *.inc
files) of package FORMS
into your working directory.
All the files may also be extracted using
pkunzip -d forms.zip or
tar -xvf forms.tar
On a computer with a very small memory (less than 16 MB), you may
need to decrease array dimension MRAM in the include file
ram.inc.
- If you wish to compile program grdran2d.for,
you need also subroutines
fourn.for and
ran2.for or
ran3.for
of the Numerical Recipes and the corresponding licence.
Refer to package NR.
- Now you may compile and link following programs of package FORMS:
All necessary subroutine files and include files are included
by the Fortran 90 INCLUDE command.
Fortran 77 subroutine files are included at the end of above
listed files containing main programs.
Under Unix, you may perform the above task by editing script
f
designed to compile and link a single file, and then running script
fforms.
The scripts must be made executable.
Under MS-DOS, you may perform the above task by editing script
f.bat
designed to compile and link a single file, and then running batch file
fforms.bat.
Running programs of package FORMS
- 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 PALLET
- Interpolation of colour tables.
-
Description of input data for SRP
- Translating the system of points (e.g., sources or receivers)
to a new position determined by the given configuration parameters.
-
Description of input data for GRDPTS
- Generating the file of form PTS, containing the coordinates of all
gridpoints of the given grid.
-
Description of input data for MGRD
- Converting multivalued grid data into several singlevalued grids.
-
Description of input data for GRDNEW
- Interpolating grid values into a new grid of different
dimensions or density.
-
Description of input data for GRDCAL
- Performing vectorial calculations with real-valued arrays
stored in disk files (i.e., with singlevalued gridded data).
-
Description of input data for GRDRAN2D
- Generating a 2-D rectangular grid of random real numbers
having a desired spatial correlation function.
-
Description of input data for GRDMERGE
- Merging two nonoverlapping sets of values given on the same
grid into a single set, especially to display the data together.
-
Description of input data for GRDPS
- Displaying GRiD values in Post Script.
-
Description of input data for CREMOVE
- Splitting a Fortran code into executable statements and
comment lines.
List of error messages
File list of package FORMS
- (A) Documentation:
- forms.htm (this file)
- formsdoc.htm (general documentation to FORMS)
- formserr.htm (list of error messages)
- (B) Unified memory management:
- ram.inc
- (C) Subroutines dealing with data forms:
- sep.for
- sep.inc
- gse.for
- forms.for
- length.for
- (D) Calcomp plotting subroutines:
- calcomp.for
- calcomp.inc
- calcops.for
- calcops.inc
- calcops.rgb
- (F) Sample application programs:
- pallet.for
- srp.for
- grdpts.for
- mgrd.for
- grdnew.for
- grdcal.for
- copy.cal
- abs.cal
- add.cal
- sub.cal
- mul.cal
- div.cal
- absdif.cal
- reldif.cal
- relerr.cal
- atan2.cal
- norm2.cal
- grdran2d.for
- grdmerge.for
- grdps.for
- (G) Auxiliary programs:
- cremove.for
- (H) Demo data:
- grd.h
- grdran2d.dat
- grdps.dat
- (I) Batch files and scripts:
- corfun.bat
- run.bat
- f.bat
- f
- fforms.bat
- fforms