Description of the program S Y N F A N
Program SYNFAN is designed for the computation of ray
synthetic seismograms at a system of receivers situated along the
Earth's surface, an internal interface or vertical profile.
Short description of the program SYNFAN
Program SYNFAN is a modification of the program SYNT from
program package BEAM87 written by V.Cerveny. The seismograms are
computed from the frequency responses stored in the file LU8,
generated in the program FRESAN. Program SYNFAN generates file
LU9 containing tables of synthetic seismograms which can be
plotted in the form of seismograms in the program BPLOT or in the
form of particle motion diagrams in the program POLARPLOT. Both
programs are included in the program package ANRAY.
The fast Fourier transform algorithm is used to compute the
synthetic seismograms corresponding to individual components of
the displacement vector (vertical, radial, transverse) from
frequency responses. Various source-time functions (input
signals) can be optionally used in the program SYNFAN: Gabor
signal, Ricker signal, Berlage signal, Muller signal,etc. Any
other signal may be easily introduced in a discrete form by a
table of points. The input signal may be filtered in various ways
to introduce some required frequency domain effects (recording
instruments, etc.). Moreover, filterring should be applied to
exclude very low frequencies from the source-time functions,
since the ray method is a high-frequency method and does not
yield sufficiently accurate results for very low frequencies.
Such filtration can be suitably performed by the double cosine
filter, see input data No.11. The application of the double
cosine filter is also suitable to select only the frequency range
of interest and to increase the numerical efficiency and speed of
computations. Positive polarity of pulses in seismograms is to
the left of vertical time axis.
Some plotting possibilities are available in the program
SYNFAN. For each receiver under consideration the computed
synthetic seismogram may be optionally plotted in a single frame.
Moreover, it is also possible to plot optionally the modulus of
the frequency response and/or the amplitude spectrum of the
synthetic seismograms. All these curves are plotted individually,
one curve in one frame. Such figures may serve for a detailed
investigation of the wave field at selected receiver positions.
Several figures may be also plotted to investigate in detail
the properties of the source-time function: the input signal, its
amplitude spectrum, the amplitude spectrum after filtering, and
the input signal after filtering. The last figure is very
important since it enables to see the actual shape of the input
signal used to construct synthetic seismograms. The program
SYNFAN also offers a possibility to investigate systematically
the properties of various input signals and the effects of
frequency filtration of these signals on their shape, without
computation of synthetic seismograms.
Note that the program SYNFAN does not depend on the way in
which the frequency response was obtained. Thus any frequency
response stored in the prescribed way can be used for computing
synthetic seismograms. As the program synt uses the fast Fourier
transform algorithm, attention should be paid to possible
aliasing effects.
Description of input and output data
Input data consist partially of the data generated by the
program FRESAN, stored in the formatted form in the file LU8, and
partially of the additional input data prepared by the user and
stored in the file LIN. Output data describing the computations
are stored in the file LOU. Output data for plotting synthetic
seismograms are stored in the file LU9. Specification of the
files LIN, LOU, LU8 and LU9 can be made through the routine
SERV, which is part of this program package. If the routine SERV
is not used (put 'C' in front of 'CALL SERV' in the beginning of
the main program), the files LIN and LOU are automatically
specified LIN=5, LOU=6, the file with plot has number 7 and the
number LU8 is read from the file LIN, see below. For plotting
purposes, the CALCOMP routines PLOTS, PLOT, SYMBOL and NUMBER are
used in the program SYNFAN. These routines are not included in
the package, but must be linked with FRESAN.
The data stored in LU8
The data are stored in LU8 in a formatted form. For details
see the description of the content of the file LU8 in program
FRESAN.
1) MPRINT FORMAT(A)
2) IPRINT FORMAT(A)
3) XSOUR,YSOUR,ZSOUR,TSOUR,RSTEP,FL,FD FORMAT(5F10.5,2E15.7)
4) NDST,NFS,ILS,MCOMP,ILOC FORMAT(26I3)
5) DST,AA FORMAT(F10.3,E12.5)
6) (IS(I),I=1,2*NFS) FORMAT(12I6)
The additional input data
These data are specified by the user. The data control the
computation of synthetic seismiograms. The places, where the data
from LU8 are read in are denoted by **LU8/1, **LU8/2, etc.
1) Arbitrary alphanumeric text describing the data set.
TITLE FORMAT(A)
2) Switches controlling the output of results into the output
file LOU and specifying the input and output files LU2 and LU8.
IPR1,IPR2,LU8,LU9 FORMAT(16I5)
IPR1... controls the storage of a general information.
IPR1=0... input data are stored.
IPR1=1... tables of input signal, its amplitude
spectrum, filtered amplitude spectrum, and filtered
input signal are stored.
IPR2... controls storage of synthetic frequency responses,
spectrum of synthetic seismograms and synthetic
seismograms.
IPR2=0... no data are stored.
IPR2=1... synthetic seismograms are stored.
IPR2=2... synthetic seismograms and frequency
responses are stored.
IPR2=3... synthetic seismograms,frequency responses
and spectra of synthetic seismograms are
stored.
Warning: The above tables for IPR.NE.0 are stored
for all epicentral distances. Print is heavy,
particullarly for IPR1=1 or IPR2=3.
LU8... the number of the file generated in FRESAN,in which
the data for constructing synthetic seismograms are
stored.
LU9... the number of the file in which tables of synthetic
seismograms computed in SYNFAN are stored.
3) Various switches controlling the computations.
NSIG,NPTS,NT,NWIN,NFILT,NPLOT,NSTOP,NSH,NDER,NINT
FORMAT(16I5)
NSIG... controls the input of the source-time function.
NSIG=0... analytical signal.
NSIG.GT.0... source-time function introduced by a
table, see input data No.10.
NPTS... number of points in the definition of the signal.
Use NPTS.LE.2048.
NT... number of points in the FFT. Use 2048,1024,512,256
or 128. Default value, NT=1024.
NWIN... controls the filtration of the input signal.
NWIN=0... no filtration.
NWIN=1... Fuchs' double cosine filter, see
additional input data No.11.
NFILT... controls an additional filtering in the routine
FILTER.
NFILT=0... no filtration.
NFILT=1... filtration.
NPLOT... controls the plotting of results.
NPLOT=0... no plotting.
NPLOT.GT.0... plotting required.
NSTOP... NSTOP=0... standard computation of synthetic
seismograms.
NSTOP=1... investigation and plotting of input
signal, its amplitude spectrum, filtered spectrum
and filtered input signal. No computation of
synthetic seismograms.
NSH... shift between individual figures, in cm. Default
value NSH=5.
NDER... derivative of the input signal.
NINT... integral of the input signal.
4) Specifies the receivers for which plots of frequency response,
amplitude spectrum and synthetic seismogram are to be
performed. Specified only for NPLOT.NE.0.
NNPLOT,(NDIS(I),I=1,NNPLOT) FORMAT(16I5)
NNPLOT... number of receivers for which plots are to be made.
NDIS(I)... successive number of the receiver, for which plots
are to be made.
**LU8/1
**LU8/2
**LU8/3
**LU8/4
5) Data for plots of frequency responses. Under the frequency
response, the modulus of the frequency response is understood
here. The phase of the frequency response is not plotted.
ARESP(1)-ARESP(6),JRESP(1)-JRESP(4) FORMAT(6F10.5,4I5)
ARESP(1)... horizontal (frequency) axis: minimum frequency,
in Hz.
ARESP(2)... horizontal (frequency) axis: maximum frequency,
in Hz..
ARESP(3)... length of the horizontal axis, in cm.
ARESP(4)... vertical (frequency response) axis: minimum
value.
ARESP(5)... vertical (frequency response) axis: maximum
value.
ARESP(6)... length of the vertical axis, in cm.
JRESP(1)... number of intervals along the horizontal axis.
JRESP(2)... number of intervals along the vertical axis.
JRESP(3),JRESP(4)... control the precision of numbers
describing the coordinate axes in the plots.
JRESP(3) corresponds to the horizontal axis,
JRESP(4) to the vertical axis.
JRESP.GT.0... the number of digits to the right of
the decimal point.
JRESP=0... only integer portions of the numbers
with decimal points.
JRESP.LT.0... integers.
6) Data for plots of amplitude spectra of input signal and/or
synthetic seismograms. Phase spectra are not plotted.
ASPECT(1)-ASPECT(6),JSPECT(1)-JSPECT(4) FORMAT(6F10.5,4I5)
The meaning of the parameters is analogous to the
parameters specified in additional input data No.5,
horizontal axis corresponds to frequency, vertical
axis to spectral values.
7) Data for plots of synthetic seismograms and/or input signals.
ASYNT(1)-ASYNT(6),JSYNT(1)-JSYNT(4) FORMAT(6F10.5,4I5)
The meaning of the parameters is analogous to the
parameters specified in additional input data No.5,
horizontal axis corresponds to time, vertical axis
to values in which seismogram (impulse) is measured.
8) Controls the plotting of the input signal (source-time
function) and related functions.
NPL1,NPL2,NPL3,NPL4 FORMAT(16I5)
NPL1... controls input signal (source-time function).
NPL2... amplitude spectrum of the input signal.
NPL3... amplitude spectrum of the filtered and/or windowed
input signal.
NPL4... filtered and/or windowed input signal.
NPL=0... no plot.
NPL=1... reduced plot, with unit maximum.
NPL=2... non-reduced plot.
9) Data for input signal given analytically. Included only for
NSIG=0. The computations are performed in the routine SFUN.
The user is free to add to the routine SFUN its own analytical
signals.
IAUX(1)-IAUX(4),AUX(1)-AUX(4),TO FORMAT(4I5,5F10.5)
IAUX(1)... specifies the type of the input signal.
IAUX(1)=1... Gabor signal:
F(T)=EXP(-(2*PI*FM*(T-TI)/GAMMA)**2)
*COS(2*PI*FM*(T-TI)+VNI)
IAUX(2)-IAUX(4)... no meaning.
AUX(1)=FM (prevailing frequency)
AUX(2)=GAMMA
AUX(3)=VNI
AUX(4)=TI
IAUX(1)=2... Berlage signal:
F(T)=EXP(-BETA*(T-TI))*SIN(2*PI*FM*(T-TI))*
*(T-TI)**VNI
IAUX(2)-IAUX(4)... no meaning.
AUX(1)=FM
AUX(2)=BETA
AUX(3)=VNI
AUX(4)=TI
IAUX(1)=3... Muller signal:
F(T)=SIN(N*PI*T/TP)-(N/(N+2))*SIN((N+2)*PI*T/TP)
for 0.LE.T.LE.TP,
F(T)=0 for T.LT.0 AND FOR T.GT.TP
IAUX(2)=N
IAUX(3),IAUX(4)... no meaning.
AUX(1)=TP
IAUX(1)=4... Ricker signal:
F(T)=(1-2*((T-TI)*BETA)**2)*EXP(-(BETA*(T-TI))**2)
F(T) is the normalized second time derivative
of the Gaussian signal EXP(-(BETA*(T-TI))**2)
IAUX(2)-IAUX(4)... no meaning.
AUX(1)=BETA
AUX(2)=TI
IAUX(1)=5... Box-car signal:
F(T)=0 for T.LT.AUX(1) and T.GT.AUX(2)
F(T)=AUX(3) for AUX(1).LE.T.LE.AUX(2)
IAUX(1)=6... Ramp function:
F(T)=0 for T.LE.AUX(1) and T.GT.AUX(3)
F(T)=AUX(4) for AUX(2).LE.T.LE.AUX(3)
F(T) is linear between AUX(1) and
AUX(2)
IAUX(1)=7... Triagonal function:
F(T)=0 for T.LE.AUX(1) and T.GE.AUX(3)
F(T)=AUX(4) for T=AUX(2)
F(T) is linear between AUX(1) and
AUX(2) and between AUX(2) and
AUX(3).
IAUX(1)=8... One sample function:
F(I)=AUX(1) for I=IAUX(2)
F(I)=0 for I.NE.IAUX(2).
TO... initial time in the plot.
The last four signals serve only for special purposes. Please, do
not use them without a suitably chosen frequency window.
10) Data for input signal given discretly by a table. Included
only for NSIG.GT.0
IS(I),I=1,NPTS FORMAT(16I5)
IS(I)... I-th sample of the discretly specified source-time
function (input signal). The actual signal is given
by the relation:
F(I)=IS(I)*10**(-NSIG),
where F(I) corresponds to the time
T=T0+DT*FLOAT(I-1).
11) Data for the frequency filter (double cosine Fuchs filter).
Included only if NWIN=1.
FLO,FLEFT,FRIGHT,FRO,FEXP FORMAT(8F10.5)
FLO,FLEFT,FRIGHT,FRO,FEXP... parameters of the filter.
FLO.LE.FLEFT.LE.FRIGHT.LE.FRO.
Outside the interval , the filter is zero.
Inside the interval , the filter is
equal one. Within the intervals and
, cosine smoothing with the exponent
FEXP is applied.
For example, for FLO.LT.F.LT.FLEFT:
W(F)=(0.5+0.5*COS(PI*(F-FLO))/(FLEFT-FLO))**FEXP,
with PI=3.14159.
Choose FLO.GE.FL and FRO.LE.FR, where FL and FR are
lower and upper limit of frequency range in which
frequency response was computed.
**LU8/5
**LU8/6
Data LU8/6 and LU8/7 are successively read in from LU8 for all
receivers (NDST times).
12) Data for plots of frequency responses, synthetic seismograms,
etc., for individual receivers.
NPR1,NPR2,NPR3 FORMAT(16I5)
NPR1... index controlling frequency response (modulus).
NPR2... index controlling amplitude spectrum of the
synthetic seismogram.
NPR3... index controlling synthetic seismogram.
NPR=0... no plot.
NPR=1... reduced plot,maximum=1.
NPR=2... non-reduced plot.
The input data sub 12 are repeated NNPLOT times, see input
data sub 4 for NNPLOT, for each receiver for which plots are re-
quired. The selection of receivers is performed as follows: The
data LU8/7 are read successively for all receivers. For each
reading, it is checked whether DST from LU8/7 corresponds to some
NDIS(I). If yes, input data sub 12 are read in and plotting is
performed. Thus, the order of readings 12 must correspond to the
order of receivers NDIS(I).
OUTPUT TABLES
Output to the file LOU (information about computations)
All the input data are automatically stored in the file LOU.
In addition the data LU8/1-LU8/5 are also automatically stored.
C
C THE ADDITIONAL PRINT IS CONTROLLED BY THE INPUT PA-
C RAMETERS IPR1 AND IPR2.
C
C IF IPR1.NE.0, FOUR TABLES RELEVANT TO THE INPUT SIGNAL
C ARE PRINTED, WITH THE FOLLOWING HEADINGS AND QUANTITIES:
C A) INPUT SIGNAL,TO,DT,AREDUC,NPTS
C B) AMPLITUDE SPECTRUM OF THE INPUT SIGNAL,DF,AREDUC,IRS
C C) AMPLITUDE SPECTRUM OF THE INPUT SIGNAL, WINDOW APPLI-
C ED,DF,AREDUC,IRS
C D) INPUT SIGNAL,FREQUENCY WINDOW APPLIED,TO DT,AREDUC,NPTS
C
C IF IPR2.NE.0, ONE OR TWO OR THREE TABLES ARE PRINTED
C FOR EACH RECEIVER POSITION.
C A) FOR IPR2=1, SYNTHETIC SEISMOGRAMS ARE PRINTED.THE HEA-
C DING SHOWS THE QUANTITIES DST,TO,DT,AREDUC,NT
C B) FOR IPR2=2, MODULUS OF THE FREQUENCY RESPONSE IS PRIN-
C TED IN ADDITION TO THE TABLE OF SYNTHETIC SEISMOGRAMS.
C HEADING SHOWS DST,DF,AREDUC,IRSS.
C C) FOR IPR2=3, AMPLITUDE SPECTRUM OF THE SYNTHETIC SEISMO-
C GRAMS ARE PRINTED, IN ADDITION TO A AND B.
C HEADING ALSO SHOWS THE QUANTITIES DST,DF,AREDUC,IRSS.
C
C
C OUTPUT ON THE FILE LUO
C **********************
C
C TO PLOT THE SYNTHETIC SEISMOGRAM SECTION IN THE PROGRAM
C BPLOT AND/OR THE PARTICLE MOTION DIAGRAMS IN THE PROGRAM
C PMPLOT, THE SYNTHETIC SEISMOGRAMS CALCULATED IN THE PROGRAM
C SYNT ARE STORED ON THE FILE LUO, TOGETHER WITH SOME OTHER
C NECESSARY OR INFORMATIVE DATA.
C THE DATA ON LUO ARE STORED IN THE FOLLOWING SUCCESION:
C
C 1) RTTEXT FORMAT(20A4)
C ALPHANUMERIC TEXT, DESCRIBING THE INPUT DATA FILE FROM
C THE PROGRAM RT
C
C 2) GBTEXT FORMAT(20A4)
C ALPHANUMERIC TEXT, DESCRIBING THE INPUT DATA FILE FROM
C THE PROGRAM GB
C
C 3) STEXT FORMAT(20A4)
C ALPHANUMERIC TEXT, DESCRIBING THE INPUT DATA FILE FROM
C THE PROGRAM SYNT
C
C 4) XSOUR,ZSOUR,TSOUR,RSTEP,DT,DF FORMAT(4F10.5,2E15.7)
C XSOUR,ZSOUR... COORDINATES OF THE SOURCE
C TSOUR... INITIAL TIME
C RSTEP... THE DISTANCE BETWEEN RECIEVERS FOR A REGU-
C LARLY DISTRIBUTED SYSTEM OF RECEIVERS.
C THE AVERAGE DISTANCE BETWEEN RECIEVERS FOR
C AN IRREGULARLY DISTRIBUTED SYSTEM OF RECE-
C IVERS.
C DT... TIME STEP
C DF... FREQUENCY STEP
C
C 5) NDST,NT,MBEAM,MCOMP FORMAT(14I5)
C NDST... NUMBER OF RECEIVERS
C NT... NUMBER OF POINTS IN THE FAST FOURIER TRANS-
C FORM ALGORITHM (2048,1024,512... ).
C MBEAM... SPECIFIES THE CHOICE OF PARAMETERS OF GAUSSI-
C AN BEAMS USED IN THE SUMMATION PROCEDURE
C THE CHOICE MBEAM=0 CORRESPONDS TO THE RAY METHOD
C MCOMP... MCOMP=0... VERTICAL COMPONENT
C MCOMP=1... RADIAL COMPONENT
C MCOMP=1... TRANSVERSE COMPONENT
C
C 6) SH1,SH2,SH3 FORMAT(3E10.8)
C THESE QUANTITIES HAVE BEEN USED IN THE SELECTION OF PARA-
C METERS OF GAUSSIAN BEAMS USED IN THE SUMMATION
C
C 7) DIST,DEPTH,TO,AREDUC,NT FORMAT(3F10.3,1E12.5,I5)
C DST... X-COORDINATE OF THE RECEIVER
C DEPTH... Z-COORDINATE OF THE RECEIVER
C TO... INITIAL TIME CORRESPONDING TO THE FIRST POINT
C OF SYNTHETIC SEISMOGRAM
C AREDUC... MAXIMUM AMPLITUDE IN THE SYNTHETIC SEISMO-
C GRAMS CORRESPONDS TO NT GIVEN IN LUO/5.
C NT... NUMBER OF POINTS OF THE SYNTHETIC SEISMOGRAMS
C
C 8) IS(I),I=1,NT FORMAT(20I4)
C SYNTHETIC SEISMOGRAM CORRESPONDING TO THE RECIEVER SITU-
C ATED AT THE X-COORDINATE GIVEN BY DST, IN A REDUCED FORM.
C
C NOTE THAT THE QUANTITIES RTTEXT, GBTEXT, STEXT,XSOUR,ZSOUR,
C TSOUR,MBEAM,SH1,SH2,SH3 AND DEPTH HAVE ONLY AN INFOR-
C MATIVE MEANING AND ARE NOT USED IN THE COMPUTATIONS IN THE
C PROGRAMS BPLOT AND PMPLOT.
C
C
C GRAPHICAL OUTPUT
C ****************
C
C THE GRAPHICAL OUTPUT HAS MANY OPTIONS WHICH ARE WELL DES-
C CRIBED IN THIS DOCUMENTATION, SEE ABOVE.IN FACT, MOST OF
C COMPUTED QUANTITIES CAN BE PLOTTED.FOR EACH RECEIVER POSITION
C THREE PICTURES CAN BE OPTIONALLY PLOTTED.THUS THE MAXIMUM
C NUMBER OF GENERATED FIGURES IS 3*NDST+4.IN PLOTTING SYNTHETIC
C SEISMOGRAMS, PAY ATTENTION MAINLY TO A CORRECT CHOICE OF TMM
C IN THE INPUT RECORD 12.FOR INCORRECTLY CHOSEN TMM, ONLY A NUME-
C RICAL NOISE WITHOUT ANY ACTUAL SIGNAL MAY BE OBTAINED.THIS
C MISTAKE MAY BE EASILY RECOGNIZED FROM THE REDUCTION FACTOR,
C PRINTED IN ALL CASES ABOVE THE RIGHT HAND CORNER OF THE FRAME.
C
C ****************************************************************
C