Released versions of package FORMS

5.10 (1997, October): 'formsdoc.htm','gse.for','forms.for','length.for', 'srp.for', 'calcomp.for','calcomp.inc','calcops.for', 'calcops.inc', 'pallet.for': Moved from package MODEL. 'calcomp.for','calcops.for': BLOCK DATA subprograms canceled. All error descriptions moved towards the corresponding reporting statements. 'gse.for': *** Considerably revised version. *** *** new *** All Fortran files supplemented with HTML references. 'grdpts.for' 'mgrd.for' 'grdnew.for' 'grdcal.for' 'grdran2d.for' 'grdmerge.for' 'grdps.for' 'cremove.for' 5.20 (1998, October): All error messages in the Fortran files, previously generated by statements like PAUSE 'Error ...', are now generated by CALL ERROR('...') in order to enable to fit the error handling for a particular computer by editting file 'error.for' (the date of subroutines not updated). Most warning messages in the Fortran files, previously generated by statements like PAUSE 'Warning ...', are now generated by CALL WARN('...'). 'ss.for','sp.for': *** Moved from package CRT. *** 'eigen.for': *** Moved from package NET. *** 'formsdoc.htm' split into 'formsdoc.htm', 'formsver.htm' and 'formsdat.htm', list of files moved to 'forms.htm'. 'forms.for': New subroutines to write and read 3-D data cubes for several time levels (4-D data cubes). Incorrect handling of FORMATTED/UNFORMATTED files for lowercase arguments of subroutines fixed. 'length.for': Subroutine LOWER moved from 'sep.for'. 'sep.for': New subroutines WSEP1, RSEP3Q, WSEP3R and WSEP3I. Subroutine WSEPR updated (some reals written in integer format). 'gse.for','grdcal.for','grdpts.for': Some bugs fixed. 'calcops.inc','srp.for','grdran2d.for': Minor updates. 'mgrd.for': *** All output grids (data cubes) now written into a single file by default, N4 appended to input SEP file. *** 'grdnew.for': *** Input data changed *** (second input SEP file discarded). 'grdran2d.for': *** Input data changed *** (second input SEP file discarded, ISEED moved to the SEP file). *** new *** All MS-DOS batch files '*.bat' and Unix scripts '*' replaced by corresponding Perl scripts '*.pl' or by history files '*.h' containing the lines specifying how to run the programs. 'error.for': Subroutines to handle errors and warnings. 'ss.for': *** Input data changed to SEP format *** Calculating all 3 components within a single run. Taking PS filenames from input history file. EXTERNAL statements fixed problems with some compilers. Some other corrections and updates. 'sp.for': *** Input data changed to SEP format *** Overlaying seismograms of several GSE files. Plotting all 3 components within a single run. Selecting receivers according to the receiver file. Taking PS filenames from input history file. Some other corrections and updates. 'calcops.for': New entry PLOTN enables to specify the name of the output PostScript file. Now, spaces plotted by subroutine SYMBOL are not included into the bounding box. 'grdcal.for': Updated from 3-D to 4-D data cubes. 3-D data cubes may be also be used for 4-D calculations. Values of constants may now be taken from the input SEP parameter file. Conversion to integer data cubes introduced. 'grdfd.for', 'grdnorm.for': New programs. 'grdps.for': Considerable revisions: Updated from 3-D to 4-D data cubes (snaphot generation). Multiple input data cubes may now be displayed in the same figure (e.g., colours from the first data file and shades from the other data file). Various length units (cm,in,pt) enabled to facilitate bitmap generation. *** Input data changed. *** 'sep.pl', 'forms.pl', 'go.pl', 'echo.pl', 'append.pl', 'chk.pl', 'compdel.pl': New programs and subroutines coded in Perl. 5.30 (1999, June): 'error.for': *** Errors and warning messages are written to file 'error.out'. *** 'go.pl': *** Execution is terminated if an error warning is encountered in file 'error.out'. Subroutine CHK writes error messages to file 'error.out'. *** Few bugs fixed. Documentation improved. 'forms.for': A minor bug fixed. 'pallet.for': Hue domain changed from 2*pi to 1. 'ss.for': Two bugs fixed. 'gse.for','grdfd.for': Comment lines with data description updated. 'grdcal.for', 'grdnorm.for': *** Several bad bugs fixed. *** 'grdps.for': Specification of the colour of undefined values enabled. Some bugs fixed. *** new *** 'colors.for': Subroutines to linearly interpolate discrete colour maps in RGB space 'hsv.dat': Data for 'colors.for' specifying the HSV (HSB) colour scale for interpolation in the RGB colour space. 'wrl.for': Subroutines to facilitate writing VRML and POV files. 'iniwrl.for': Program to initialize a VRML file. 'ptswrl.for': Program to convert points into VRML. 'linwrl.for': Program to convert lines into VRML. 'srfwrl.for': Program to convert triangulated surfaces into VRML. 'trgl.for': Program to divide polygons on a curved surface into triangles, right-handed with respect to the surface normals. 'plgn.for': Program to convert polygons described by names of the vertices into the same polygons described by indices of the vertices. 'ptsgrd.for': Program to generate grid file containing undefined values at gridpoints closest to the given points and zeros elswhere. 'do-test.for': Program to test compilation of DO loops 'copy.pl': Perl script to copy files. 5.40 (2000, May): 'pallet.for', 'srp.for': *** Input data changed to SEP format. *** 'grdpts.for', 'mgrd.for', 'grdnew.for', 'grdmerge.for', 'grdcal.for', 'grdnorm.for', 'grdfd.for', 'grdran2d.for', 'grdps.for': *** Input data changed. *** Multiple files from * device moved to the history file. 'forms.htm': Considerably revised. 'formsdoc.htm' discarded (information moved to 'forms.htm'). 'formsdat.htm': Slightly revised (defaults for coordinates of points and lines). 'forms.for': New subroutines WMAT and RMAT for matrix elements. Subroutine FORM1 considerably updated. Comments corrected. 'wrl.for', 'iniwrl.for', 'ptswrl.for', 'linwrl.for', 'srfwrl.for': Extended to write GOCAD format (not debugged). Description corrected. 'trgl.for': Several bugs fixed. Cosmetic changes. 'ss.for': Updated and corrected (parameter SMALL, error SS-05, SIGPLOT=' ', cosmetic changes, comments, etc.). 'srp.for': Maximum number of generated files increased. 'grdpts.for': Description corrected. 'mgrd.for': Numbers in generated filenames decreased by 1. 'grdnew.for': Corrected. 'grdcal.for': Program for grid calculations extended to include also operations with vector and matrix elements. Two bugs fixed. 'grdnorm.for': *** Considerably corrected. *** 'gels.for': Moved from package MODEL to FORMS. 'go.pl': *** Default input data for programs enabled. *** The default data is the name of the history file. 'compdel.pl': Missing description supplemented. 'corfun.h': Corrected. 'grdran2d.dat' and 'grdps.dat' deleted (not used even in version 5.30). 'plgn.for', 'sp.for', 'ptsgrd.for': Cosmetic changes. 'grdps.for': New parameter SHOWPAGE useful to disable the PostScript 'showpage' command. 'error.for', 'color.for': Comments corrected. *** new *** 'gksps.for': GKS to PostScript interface. 'pictures.for': Program to draw lines and points. 'trglps.for': Program to display triangulated 2-D velocity and other sections in PostScript. 'linden.for': Program to make LINes more DENsely sampled. 'inv.cal','sqrt.cal','invsub.cal', 'reldev.cal', 'addsob.cal' and 'eq.cal': New command files for 'grdcal.for'. 'loc0.cal','loc1.cal','loc2.cal': New command files for 'grdcal.for' to perform nonlinear kinematic location of seismic hypocentre. 'grdfft.for': Program to compute the 1-D, 2-D or 3-D Fourier transform of a real or complex function defined on 1-D, 2-D or 3-D grid of points. 'grdran.for': Program to compute the pseudorandom numbers on a given grid, distributed uniformly between -0.5 and 0.5. 'grdcor.for': Program to compute the values of the spectral filters corresponding the typical correlation functions of random media on a given grid. 'grdstat.for': Program to rescale gridded data to given statistical properties. 'grdckn.for': Program to compute the values of the Von Karman correlation functions. 'grdte.for': Program to compute the values of a real or complex function, described in terms of the Taylor expansions of its amplitude and phase, on a given grid. 'binasc.for': Program to convert gridded data (data cubes) from binary files to formatted ascii files. 'ascbin.for': Program to convert gridded data (data cubes) from formatted ascii files to direct-access binary files. 'gmt.for','gmgm.for','smgm.for','dmgm.for','smsm.for', 'smsmsm.for','gmdmgmt.for','sminv.for','smpower.for', 'smeigen.for': Programs to perform operations with general matrices (gm), symmetric matrices (sm) and diagonal matrices (dm). 'sinv.for' and 'mfsd.for': Subroutines of the IBM Scientific Subroutine Package employed by program 'sminv.for'. 'eigennr.for': Subroutine to compute eigenvalues and eigenvectors of a real symmetric matrix, using subroutines of Numerical Recipes. 'corfft.h': Analogue to 'corfun.h', but using 3-D programs 'grdran.for', 'grdfft.for', 'grdcor.for', 'grdcal.for' and 'grdstat.for'. 'cknfft.h': History file to compare medium correlation functions calculate the by FFT and analytically. 5.50 (2001, June): 'ram.inc': New variables MINRAM, MAXRAM included for cases when the program calls a subroutine which needs to use a part of array RAM. 'sep.inc': Dimension MPAR enlarged. 'forms.for', 'grdcal.for': *** New parameters FORMM, FORMMR, FORMMW included to switch the form of the files with matrices between formatted and unformatted. The parameters are used by all programs working with matrices. *** 'wrl.for','iniwrl.for','ptswrl.for','linwrl.for', 'srfwrl.for': *** Output to GOCAD debugged and upgraded. *** 'srfwrl.for': *** New parameter KOLSRF to specify the colour of the surfaces. *** 'trgl.for': A bug fixed. 'trglps.for': *** Parameter LRIGHT changed to LEFT, default value of VDIV changed. *** 'pictures.for': The program now uses array RAM. 'ss.for','sp.for': Parameter names in the comment lines of waveform identification section of the GSE file changed. 'sp.for': *** Upgraded to supplement seismograms with field travel times, to combine several sets of seismograms in a single plot, to combine several components in a single plot, to specify different positions for different sets of seismograms in individual plots, to select amplidude scaling according to the maximum amplitude calculated over the plotted part of a seismogram, to label seismograms by receiver names, to describe individual plots by given text strings, etc. Many new SEP parameters corresponding to the upgrades. *** 'srp.for': *** Input parameters C1, C2 renamed to CPAR1, CPAR2. *** 'grdpts.for': *** Upgraded to supplement output points with input gridded values, and to triangulate the grid. New SEP parameters GRD, KOLUMN, PLGN, TRGL. *** 'grdnew.for': *** Considerably wrong interpolation fixed.*** 'grdfd.for': Upgraded to calculate second derivatives. 'grdran2d.for': Comments updated. 'binasc.for': Upgraded to optionally output a sparser grid. 'binasc.for','ascbin.for': *** Input parameter ASC renamed to GRD. *** 'smgm.for': Program speeded up. 'smsm.for': *** Fatal read error fixed. *** 'smsmsm.for': *** Program significantly speeded up. *** 'gmdmgmt.for': Memory requirements information included. 'eigennr.for', 'smpower.for', 'smeigen.for': Subroutine EIGENNR uses array RAM for auxiliary quantities. 'go.pl': Upgraded. 'calcops.for','gksps.for': Minor updates. 'append.pl','copy.pl': Comments corrected. *** new *** 'grdwrl.for': Converts gridded data into the GOCAD representation. 'trglsort.for': Sorts triangles according to the values at their vertices. 'trglnorm.for': Program to compute normal vectors to given triangles. 'tsurf.for': Program to convert GOCAD triangulated surfaces into a file with points and a file with triangles. 'grdtrans.for': Transposes the coordinate axes of the gridded data. 'neg.cal': New command file for 'grdcal.for'. 'grdiso.for': Calculates points at isosurfaces of 3-D gridded values. 'swap.for': Program to swap bytes, i.e., to convert binary gridded data between little-endian and big-endian hardware. 'trsmsm.for': Calculating the trace of the product of two symmetric matrices. 'grd2d3d.for': Extends 2-D grid into 3-D grid. 5.60 (2002, May): 'forms.for': Subroutine WMAT speeded up. 'sep.for','sep.inc': *** Several independent sets of SEP parameters may be handled. *** New subroutines for writing text-valued parameters into the SEP files. 'gksps.for','pictures.for': Text alignment setting enabled. 'pictures.for': Initialization of variable LU1 fixed, declaration of many variables fixed. 'sp.for': Several bad bugs fixed. 'ptswrl.for','srfwrl.for': Colour coding of coordinate values fixed. 'linwrl.for': Colour coding of coordinate values fixed and memory management fixed. 'ptswrl.for','linwrl.for','srfwrl.for','grdwrl.for': Output to GOCAD modified. 'grdfft.for': Multiplication factor of FFT updated. 'grdcor.for': Nulling infinite value corresponding to zero wavenumber fixed. 'grdps.for': Default value and usage of input parameter VSIGN fixed. 5.70 (2003, May): 'pictures.for': *** Initialization of the GKS to CALCOMP interface fixed. *** 'ss.for': A bug fixed. 'gse.for': Format of coordinates updated. 'go.pl': New perl subroutine to delete a file. *** new *** 'rtcoef.for','coef52.for': Calculation of the displacement R/T coefficients of inhomogeneous P, SV and SH plane waves at a stack of homogeneous isotropic dissipative layers between two homogeneous isotropic dissipative halfspaces. 'del.pl': New perl script to delete a file. 5.80 (2004, May): 'forms.for': Wrong formatted writing in subroutine WMAT fixed by returning back to 'forms.for' version 5.50. Comments updated. 'ss.for': Comments updated. 'sp.for': Bugs at the first and at the last seismogram sample fixed. Comments updated. 'ptswrl.for': Control of the kind and size of points in GOCAD coded. Comments updated. 'linwrl.for','plgn.for','trglsort.for','tsurf.for', 'mgrd.for': Comments updated. 'addsob.cal': Modified to consider the sign of SOBMUL. 'grdfft.for','grdiso.for','grdran2d.for': Comments updated. 'binasc.for','grdps.for': Comments updated. 'rtcoef.for','coef52.for': Comments updated. 'go.pl': Error messages updated. *** new *** 'subsob.cal': New command file for 'grdcal.for'. 5.90 (2005, June): 'forms.for': New SEP parameters MINDIG and MAXDIG to control formatted writing introduced. The value returned by function UARRAY changed to -3.4E+38. 'length.for': New subroutine STRIND. 'calcops.for','pictures.for','sp.for','ss.for': New SEP parameter CALCOPS for PostScript file setup. 'ptswrl.for','linwrl.for','srfwrl.for','grdwrl.for', 'trglsort.for','trglnorm.for','trglps.for','tsurf.for', 'srp.for','linden.for','grdpts.for','mgrd.for', 'grdtrans.for','grdnew.for','grdmerge.for','grdcal.for', 'grdnorm.for','grdfft.for','grdfd.for','grd2d3d.for', 'grdiso.for','grdran2d.for','grdran.for','grdcor.for', 'grdstat.for','grdte.for','binasc.for','ptsgrd.for': New SEP parameters MINDIG and MAXDIG (without change of dates and versions) enabled. 'tsurf.for': Comments updated. 'ss.for': Ricker signal for source time function added. 'sp.for': The maximum number of input files with seismograms can be adjusted. 'grdcal.for': Undefined value UNDEF is now determined by function UARRAY of file 'forms.for'. 'grdpts.for': New option to write output file with gridpoints in the form of lines. 'grdfft.for': *** Several serious bugs fixed. *** 'f.pl': Comments updated. *** new *** 'gse2segy.for': Program to convert seismograms in GSE format to SEGY format. 'grdgse.for': Program to convert gridded data into GSE format. 'grdmigr.for': Program for common-shot Kirchhoff migration using gridded travel times and amplitudes. 6.00 (2006, June): 'calcops.for','calcops.inc': Plotting area limited according to the format specification used in output writes. 'iniwrl.for','linwrl.for','trglsort.for','trglnorm.for', 'ss.for','sp.for','linden.for','grdpts.for','mgrd.for', 'grdtrans.for','grdnew.for','grdmerge.for','grdnorm.for', 'grdfft.for','grdfd.for','grd2d3d.for','grdiso.for', 'grdgse.for','ptsgrd.for','grdps.for': Undefined value UNDEF is now determined by function UARRAY of file 'forms.for'. 'ptswrl.for': Redundant declarations removed. 'ss.for': Poor declarations improved. Formating of subroutine FCOOLR improved. Description of Ricker signal according to Sheriff added. 'sp.for': Input parameter SPPAR described. *** New possibility to plot travel-time curves. *** 'grdran.for','grdran2d.for': New parameter RANDIS specifying the distribution. 'grdcor.for': New parameter ASOB added. Comments updated. 'cknfft.h','corfft.h','corfun.h': Moved to directory CORFUN of package DATA. 'grdpts.for', 'grdckn.for', 'append.pl','f.pl': Comments updated. *** new *** 'grdcros.for': New program to calculate autocorrelations and crosscorrelations of given grid values. 6.10 (2007, June): 'sep.for': New file opening error message added. 'forms.for': Subroutines OMAT, RMAT and WMAT moved to new file 'mat.for'. 'linwrl.for': Redundant reading of parameter COLORS removed. 'grdckn.for': Calculation of power-law correlation function coded, calculation of Dirac distribution for the case of D/2+N=0 coded. Redundant declaration of RMAT and WMAT as external functions removed. 'binasc.for','grd2d3d.for','grdcal.for','grdcor.for', 'grdcros.for','grdfd.for','grdfft.for','grdmerge.for', 'grdmigr.for','grdnew.for','grdran.for','grdran2d.for', 'grdstat.for','grdte.for','mgrd.for','ptsgrd.for', 'grdnorm.for','grdtrans.for': New SEP parameter NUMLIN (no change in file dates). 'go.pl','chk.pl': Comments updated. *** new *** 'mat.for': New subroutine file for dealing with matrices. 'matmul.for': New program for matrix multiplication. 'matlin.for': New program for calculation of linear combination of two matrices . 'matfun.for': New program to calculate a function of a matrix. 'matinv.for': New program for calculation of inverse matrix. 'sminv.for': Replaced by 'matinv.for'. 'gmt.for','gmgm.for','smgm.for','dmgm.for','smsm.for', 'smsmsm.for','gmdmgmt.for': Replaced by 'matmul.for'. 'grdcal.for','smpower.for','smeigen.for','trsmsm.for': Updated to be compatible with new formats of matrices. 6.20 (2008, June): 'sep.for': Format 'G12.6' changed to 'G13.6'. Declaration of LENGTH improved. 'forms.for': *** Output format 'G', which is erroneous in the Fortran norm, changed to 'E'. *** 'ss.for': Comments updated. 'sp.for','gse2segy.for': SEP parameters read from GSE files moved to separate SEP parameter sets. Comments updated. 'grdte.for': Incorrect usage of the mixed partial derivatives fixed, comments updated. 'mat.for': Description of input and output parameters of all the subroutines improved. 'matmul.for','matlin.for','matinv.for','matfun.for', 'smpower.for','smeigen.for','trsmsm.for': Modified to conform to the new versions of subroutines of file 'mat.for'. Attribute TYPE="..." added into all HTML links to text/html or text/plain files with extension other than .htm (without date or version change). *** new *** 'sep.for': Subroutine SSEP may now determine indices of a new SEP parameter sets. It may also delete the values of already stored SEP parameters. 'length.for': New subroutine UPPER. 'hg.for': New subroutines to calculate some hypergeometric functions. 'sgfhom.for': New program to generate the structural Gabor functions which shape is optimized for a zero-offset surface seismic reflection survey in a homogeneous 2-D velocity model. 'sgfgrd.for': New program to calculate the grid values of a real-valued quantity decomposed into the structural Gabor functions. 'sgfmat.for': New program to generate the system of linear equations for the complex-valued coefficients of the structural Gabor functions in decomposing a given gridded real-valued quantity. 'grdpts.for': Possibility to work with more grids added. 'mat.for': Posibility to read and write sparse matrices in the compressed sparse column format. 6.30 (2009, June): E-mail addresses replaced by WWW addresses (without date or version change). 'iniwrl.for','grdwrl.for': Comments updated. 6.40 (2010, June): Subroutine 'indexi.for' moved from package NR to FORMS, comments updated. 'grdcal.for','smpower.for','smeigen.for': Comments related to 'indexi.for' updated. 6.50 (2011, May): 'fortran.htm': Code comment lines with HTML longer than 72 characters allowed. 'forms.for': Comments corrected. 'sp.for': New SEP parameters to control the decimal places of numbers written to seismogram axes. Comments updated. 'calcops.for','pictures.for','sp.for','ss.for': New parameter SHOWPAGE useful to disable the PostScript 'showpage' command. 'gse2segy.for': Comments corrected. *** new *** 'grdcal.for': Operations with multivalued grids enabled. 'gsecal.for': New program to calculate a linear combination of seismograms stored in the GSE data exchange format. 'grdborn.for','fforms.pl': New program GRDBORN to calculate the Born approximation of the wavefield at specified receivers. 6.60 (2012, June): 'append.pl,'copy.pl': Comments updated. 'grdborn.for': Comments updated. 'gse.for': Writing start time as a SEP parameter OT into the comment line of waveform identification section coded. 'gse.for','gsecal.for','grdgse.for','ss.for': New parameter GSEWIDTH to control the width of the output field reserved for one integer value of the seismogram. 'gsecal.for': Incorrect version replaced by the correct one. Reading and writing of source coordinates to the comment line of waveform identification section coded. 'gse2segy.for': Comments updated. 'mgrd.for': Description of input data updated. 'sp.for': New SEP parameters for seismogram axes labels. Different amplitude scaling for individual receivers coded. 7.00 (2013, June): 'sep.htm': Minor change of the format. 'sep.for','error.for','wrl.for': Erroneous writing after the end of an output file corrected. 'pictures.for': Error messages updated to report the name of the file which caused the error message. 'grdmigr.for': *** Serious error generating spurious images has been corrected. *** 'sp.for': Comments updated. 'eigennr.for','grdckn.for','grdcor.for','grdfft.for', 'grdgse.for','grdiso.for','grdstat.for','linden.for', 'mat.for','matfun.for','matinv.for','matlin.for', 'matmul.for','smeigen.for','smpower.for','trglnorm.for', 'trglps.for','trglsort.for','trsmsm.for': Comments updated. *** new *** 'anirot.for': New program to rotate the tensor of elastic moduli of an anisotropic elastic medium. 7.10 (2014, June): 'f.pl': Instructions for Windows compiler gfortran added. Instructions concerning general usage of 'f.pl' added. 'forms.htm': Compiling instructions updated. 'forms.for': Comments updated. 'ss.for': Comments updated. 'anirot.for': Comments corrected. 'fforms.pl': Compiling also new program anisrf.for. *** new *** 'anisrf.for': New program to triangularize the phase- slowness surface or the ray-velocity surface.