0 ratings 0% found this document useful (0 votes) 419 views 27 pages Simqke II v2
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content,
claim it here .
Available Formats
Download as PDF or read online on Scribd
Go to previous items Go to next items
Save Simqke II v2 For Later SIMQKE-II
Conditioned Earthquake Ground Motion Simulator
User’s Manual, Version 2
Erik H. Vanmarcke
Gordon A. Fenton
Emesto Heredia-Zavoni
Feb 19, 1997
Copyright ©Princeton University 1996
All rights reserved.This software program and documentation are copyrighted by Princeton University.
Through special arrangement, the availability of software licenses from Princeton
University for this software program and its documentation, is being marketed by The
Regents of the University of California (UC Regents), “as is”, as a public service,
without any additional services from, or licensing by, the UC Regents. UC Regents
and Princeton University does not warrant that the operation of the program will be
uninterrupted or error-free
INNO EVENT SHALL THE UNIVERSITY OF CALIFORNIA OR PRINCETON
UNIVERSITY BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
SPECIAL , INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING
LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS
DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA OR
PRINCETON UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
THE UNIVERSITY OF CALIFORNIA AND PRINCETON UNIVERSITY
SPECIFICALLY DISCLAIM ANY WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED
HEREUNDER IS ON AN “AS IS” BASIS, AND THE UNIVERSITY OF
CALIFORNIA AND PRINCETON UNIVERSITY HAVE NO OBLIGATIONS TO
PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR
MODIFICATIONS.‘SIMQKE-II User’s Manual 2
Abstract
Simgke-II generates an array of differing yet spatially correlated earthquake ground motions at
an arbitrary set of points, optionally statistically compatible with known or prescribed motions at
other locations. The simulated motions can be used for more realistic earthquake resistant design
of extended structures such as bridges, power plants, dams, shopping malls, etc., where the input
motions during an earthquake event are not expected to be identical at all points in contact with the
ground. It can also be used for the post-analysis of earthquake damaged structures given recorded
motions in the vicinity. Other potential applications include liquefaction analysis, slope stability
evaluation, etc.
‘Supplied with a target ground motion spectral density function, which may be evolutionary in nature,
the program employs Covariance Matrix Decomposition in the frequency domain followed by Best.
Linear Unbiased Estimation and an inverse Fast Fourier Transform to efficiently produce the non-
stationary, spatially correlated, conditioned or unconditioned ground motions. The evolutionary
nature of the motion is modeled by subdividing the motion into a sequence of time windows, within
each of which a target spectral density function is specified. An averaging algorithm is applied to
smoothly connect the sequential windows. The spatial correlation is based on the phase aligned
motions and is conveniently specified through simple parameters supplied to one of a number of
typical space-frequency correlation functions.
‘Simgke-II can also act as a complementary product to the original Simgke program (see NISEE
Computer Software for Earthquake Engineering, 1993). The original program has a number of
pre-processing options related to target response spectra that are not currently part of the Simqke-IT
suite of capabilities. In particular, the original Simgke can be used to generate target spectral
density functions from desired response spectra. These can then be used in Simqke-II to provide
the simulated spatially variable ground motions.SIMQKE-II User's Manual 3
‘Table of Contents
Page
1. Introduction. ©... 2... ee ee 24
2. Theoretical Background 4
3. Running the Program aa
4, Input Data Files 8
4.1 JCDAT: Job Control Data File . . .9
42 GWDAT: Spectral Density Function Data File 12
43 TMDAT: Known Time History Data File . . 16
5. OutputFiles 2.2... eee 19
6. SystemSpecifics .. 2.2.22... 2.00 ee 19
7 Example 2... 0 eee 20
8& References 2... eee 25SIMQKE-II User's Manual 4
1. Introduction
Large, spatially extended structures will experience different ground motions at different support
points during an earthquake event. Itis only in recent years that detailed studies of ground motion
spatial variability have been undertaken (see, for example, Harichandran and Vanmarcke, 1986,
and Boissidres and Vanmarcke, 1995) leading to estimates of typical space-frequency correlation
functions. At the same time a number of ground motion generation methods have been developed,
culminating in the computer program Simgke-II. This program is designed to take advantage of
current progress in earthquake statistical estimation, providing the means to simulate realistic
space-time fields of ground motion for use in structural analysis. The program operates in one of
two modes;
1) conditional simulation: in this mode, generated ground motions are statistically compatible
with, or conditioned by, recorded ground motions at nearby points. Simulated motions become
increasingly similar to the recorded motions as they become more correlated, and conversely,
become statistically independent as their correlation drops to zero. At the same time, simulated
motions are properly correlated with one another.
2) unconditional simulation: in this mode the ground motions are simulated using only the user
prescribed space-time statistics - the simulated motions are still properly inter-correlated, but
they are not conditioned on any recorded motions.
In either mode, the task is to simulate ground motions at a set of spatial points where motions are
unknown but desired. The ground motions are phase aligned, which is to say that the motions
do not account for any possible travel time between points. This assumption corresponds to
vertically propagating earthquake waves, shear or compressional. Only one component of motion
may be generated at a time which implies that the program can be used to produce independent
‘components of motion only. Point-wise cross-correlated motions can, in principle, be subsequently
formed through linear combinations of the independent components.
‘The program has been run on the following platforms;
1) DEC workstations running OSF/1 (DEC UNIX),
2) Sun workstations running Solaris,
3) HP workstations running HP-UX,
4) Linux using £2c and gee compilers.
‘Simgke-II is written in standard Fortran 77, except for a few extensions in the form of BSD type
system calls (see the last Section for details) which are supported by virtually all Fortran compilers
implemented on UNIX operating systems.
2. Theoretical Background
According to the spectral representation theorem, if the ground motion at a point «; is a homo-
geneous mean-square continuous real time process Z;(t), then it can be expressed as a sum of
independent sinusoidal processes as,
Ka
Zi) = STAs, cos (uxt) + Bix sin(wyt)], a
r=‘SIMQKE-II User's Manual 5
at K discrete frequencies each separated by Aw. The random coefficients Aj, and By, are mean
zero, implying that the resultant process 2,(t) is also mean zero. A non-zero mean can always
be added to the final realizations. For a finite duration segment, the average of Z;(t) need not be
equivalent to the prescribed mean, that is, Z,(t) is only asymptotically ergodic as t + oo. This,
makes sense since one does not expect the average of earthquake ground motion over 1 millisecond
to be zero, nor the average over 1 second. The rate at which the time average approaches the
true mean depends on the spectral density function describing the process, in particular on the low
frequency power content.
From the point of view of simulation, it is convenient to discretize time and generate Z,(t;) at the
times t; = jAt, j =0,1,...,K — 1. In this case, the coefficients Aj, and By, are related to Z;(t;)
through the discrete Direct Fourier Transform (DFT),
as anki ie (Unkj
dane 2cne0(7F), mgr zcasn(*) — @
where At = t,/(K — 1), wy = kAw, Aw = 2x/(KAt), k = 0,1,...,K — 1, and ty is the time
duration of the process Z(t). The basic concepts pertinent to simulation using Fourier transforms
can be found in Fenton (1994). The following symmetry conditions about the Nyquist frequency,
x2 = */At, apply to the Fourier coefficients Aj, and Bi, when the process 2;(t,) is real,
An=Aix-i Br=—Bix-k for k=1,2,...,K/2 @)
Itcan be shown (Fenton, 1990; Heredia-Zavoni, 1993) that by making use of Eq. (2) and the above
symmetry conditions, the covariance C,;(w,) = E [A Ajz] =E [BieBjx] (A and B are mutually
independent) between coefficients at two spatial points #; and x; can be written as follows,
dpa (PsGlAw, fork =0
Cislon) = 4 Hay (risVG We) + Pas (TisGx-s)}Aw, fork=1,2,...,K/2-1 (4)
Pan TisJGp)Aw, fork=K/2
where r,; = 2; — 2; is the relative position vector, G(w) is the one-sided “point” spectral density
function, and p.,,(r:;) is the frequency-dependent spatial correlation function. Note that the above
relationships implicitly assume that the ground motion is statistically homogeneous both in space
and time. This is not a severe restriction since correlation structures with component scales larger
than the space or time domains will result in apparently non-stationary realizations. Deterministic
trends in the mean and/or variance can always be applied to the final simulation in any case.
Consider now the simulation of earthquake ground motion at a set of m target (‘unknown’) points
2, given that some motions have been recorded at a set of n = NV — m recording (‘known’) points
2, where NV is the total number of spatial locations under consideration. Using Eq. (4), the 1V x NV
covariance matrix Ci, = [C,j(wy)], i,j = 1,2,.--yn,.-..n +m, for each Fourier frequency, w,,
k=0,1,...,.K/2, can be assembled and expressed as the symmetric matrix
=| Car Cap
C= [ Ch Gn l ©
where Ca is the covariance matrix between known (recording) points, Cgs is the covariance matrix
between unknown (target) points, and Cg is the covariance matrix between known and unknownSIMQKE-II User’s Manual 6
points, all at frequency w,. Let A, = {Ay,,A,e} denote the set of simulated Fourier coefficients
at frequency wz, where the subsets A,, = (Ate, Aziy--+yAnk} aNd Ayg = {Anetay s+ Anemeh
correspond to coefficients at known and unknown target points, respectively. The set of coefficients
B, can be defined similarly. Now, for admissible spatial correlation and spectral density functions,
po,(r) and G(,), the matrix C,, is positive and can be expressed as the product of a lower
triangular matrix L, and its transpose by means of a Cholesky decomposition (or an appropriate
modification thereof in the case where C, is singular):
Cy=LyLE ©
Assuming that Z(t) is normally distributed (Gaussian), then A, and B, can be generated from
A,=LiU, Be=LiM M
where each element of UZ = {U1x, Uae, -.-, Una} and Vir = {Vix, Vox,--+, Vax} are independent
standard normal random Variables. Under these definitions, A, and B, have the correct distribu-
tions, since, for example, E[A,] = 0, Cov[A,] = L,{Cov[U,]}L7 = C,, since E[U;] = 0 and
Cov [U;] = I, the identity matrix, etc. Thus, the generation of the correlated set of Fourier coeffi-
cients can proceed using K sets of independent random numbers and the Cholesky decomposition
of C;, ateach frequency w,, k = 0, 1,....K — 1, to yield the correlated set of ground motions.
To produce motions which are conditioned on the recordings at points «,, a set of Best Linear
Unbiased Estimators (BLUE) must be employed for each of the unknown points 25 (Heredia-
Zavonii, 1993);
Aig = CipCoaAvar 9 = CipCaa Bray 8
so that A3, and Bis are the best linear unbiased estimates of the simulated Fourier coefficients
at the unknown target points. Similarly, given the actual Fourier coefficients at the known points
(obtained by Fourier decomposition of the recordings), A, and B,, the BLUE coefficients at the
unknown points are given by
Ap=CipCztAa, Bh = C2022 Bas 0
Finally, the conditioned Fourier coefficients may be obtained by combining all three forms;
A.=A}+Ay—Alg, B. = B3+Byp— Big (10)
‘The use of the BLUE coefficients in Equation (AAJ) guarantees that the conditioned Fourier
coefficients A, and B. have the proper covariance structure (Heredia-Zavoni, 1993). Conceptually,
the last two terms in each equation cancel each other as a point 7s approaches one of the points 2,
leaving just the ‘recorded’ Fourier coefficient. Thus, the conditioned random field exactly matches
the known motions at the known points and becomes increasingly ‘random’ with distance from the
known points (or, more precisely, with decreasing correlation with the known points).
The Fourier coefficients of Eq. (10) are produced for each frequency w,, k = 0, 1,...,K/2, The
remaining coefficients, up to frequency «2,1, are then obtained using the symmetry relationships
of Eq. (3). Once the entire suite of coefficients have been generated, an inverse FFT is applied to
yield a set of (conditioned) ground motions at the unknown target points.
‘The above concepts result in the following algorithm which has been implemented in Simgke-II,
1) For each frequency wy, k =0,1,...,K/2:
~ Assemble the frequency specific covariance matrix C, as in Eq’s (4) and (5).SIMQKE-II User’s Manual 7
~ Simulate the sets of unconditioned Fourier coefficients A, and B, according to Eq. (7). If
there are no ‘known’ recordings skip to step (2).
~ Obtain from the recorded motions the known Fourier coefficients, A, and B., by means
of an FFT as in Eq, (2). (This can be done for all frequencies simultaneously prior to this
‘loop’.)
- Compute the BLUE estimators, A3 and Bj, using the known coefficients, A, and Ba,
according to Eq. (9).
- Compute the BLUE estimators, A7, and Bz,, using the simulated coefficients, A,, and
Bq, at the known points according to Eq, (8).
- Generate the conditional Fourier coefficients at the unknown points, A. and B., using Eq.
0).
2) Generate the remaining Fourier coefficients at frequencies w,, k = K/2+1,...,K — Lusing
the symmetry conditions of Eq. (3).
3) Apply an inverse FFT to construct the field of time histories at the unknown target points.
To account for non-stationarity or evolving spectral density function, steps 1 through 3 may be
repeated for a sequence of adjoining time windows (each having different spectral density and/or
correlation functions) to generate time segments of ground motion. These segments are then pieced
together by means of a linear interpolation algorithm (Fenton, 1990).
Although not included in the program, the simulated motions may be post-processed to introduce
non-stationarity in the mean and/or variance. This may be accomplished by a simple addition
(mean) and multiplication (standard deviation) of the simulation by known functions of space and
time.
3. Running the Program
‘Simgke-Ilis invoked from the command line as follows
simgke2 [-q] filel [file2 ...]
where optional arguments are enclosed in square brackets (do not include the brackets on the
command line). The -q option simply tells Simqke-II not to send anything to standard output
(the screen) except for terminal error messages. Without this option, a limited amount of progress.
information is reported to the screen. The filename argument(s) is the name of the governing, or job
control, data file. If the data file is not in the current directory, it's full pathname must be specified,
If more than one input filename is specified, they are processed sequentially. For example, the
command line
simgke2 -q run4.dat run5.dat
would ‘quietly’ produce two sets of simulations, one for the problem specified in the data file
rund. dat and the second for the problem specified in run5 .dat. The limit on the number of
input files given on the command line is system dependent, but typically a large number.
In order to perform a simulation run, the following steps must be performed by the user;
1) create the job control data file, as discussed in Section 4.1, including the names of the following
files (where appropriate),
2) set up the spectral density function data file as discussed in Section 4.2,
3) for a conditional simulation, create the known time history data file (see Section 4.3),
4) invoke Simgke-II with the name of the job control data file as an argument.‘SIMQKE-II User's Manual 8
4, Input Data Files
‘The data required by this program is input through two or three data files which are described in
more detail in the following subsections. The data files are referred to as follows, although they
may actually have any name;
JCDAT — — defines the job control parameters
GWDAT —— contains the spectral density function data
TMPAT —_— contains the known, or recorded, time history data. This file is optional and
will be absent/ignored if no known time histories are specified in JCDAT.
‘The name of the JCDAT file is obtained from the command line argument. For example, if
Simgke-I is invoked as
simgke2 run4.dat
then the job control parameters are read from the file run4.dat. The extension ‘.dat’ is not
necessary. Note, however, that output files having the basename ‘run4’ (as derived from the
basename of the argument filename) are created having extensions
*.stats — job status/debug/error information
*.gwplt — output spectral density function plots (PLOTPS format, optional)
*.tmplt — output time history plots (PLOTPS format, optional)
*.tmraw — output time histories (free format, ASCIL, optional)
and so it is not advisable to use one of these extensions for an input data file name since it may be
overwritten. See Output Files for more details on the above files.SIMQKE-II User’s Manual 9
4.1 JCDAT: Job Control Data File
The job control data file has the following format (optional quantities are shown in square brackets
= do not include the brackets);
Description Variable Name(s) ‘Type
1) job title job (Character string)
2) data echo flag ‘echo logical vf)
3) debug flag debug ogical vf)
4) no. of field points npt Ginteger)
5) no. of known time histories nkp integer)
6) name of time hist file tmdat (character string)
7) name of SDF data file gwdat (character string)
8) time step increment at (real)
9) number of time steps nts (integer)
10) number of time windows [sizes] nev [nvl, nv2 ...] (integers)
11) name of correlation function cornm (character string)
12) cor function parameters [Pr Pa Ps] (reals)
13) plot time history flag Iplot logical vf)
14) combine time history plots flag 1combn (logical vf)
15) plot SDF flag Igplot logical vf)
16) generator seed (0 for random) kseed integer)
17) coordinate title
18) point coordinates ixyz Gintyeals multi-line)
‘The file is set up in such a way that the first 49 columns of each line (except the first line and those
containing the point coordinates) are informational and are ignored by this program. ‘The lines
must remain in the order listed above, and all reads beyond the 49th column are free-format, A
typical example data file might appear as follows;
Four Point Simlation, No Known Points
Echo job control data to stats file (t/f)?... t
Dump debug data to stats file (t/f)?.....- £
Total number of field points. ....-.-.- 4
Number of known time histories... .. 2... 0
Name of time history data file... .....- none
Name of spectral density data file... ... - 4step.gsaf
Time step increment (seconds) ........- 0.02
Total number of time steps... -.-- +... 2304
No. of time windows [sizes] .... ~~ + + 4 286 1024 512 512
Correlation structure function name... .. - exprw
parameters... ee ee eee 8168.14
Time histories to be plotted (t/f)?.... .. - ©‘SIMQKE-II User's Manual 10
‘Time histories combined on single plot(t/f)? ..
Power spectra to be plotted (t/f)?.....- £
Generator seed (0 = chosen internally)... .. °
Point X coordinate Y coordinate 2 coordinate (Line ignored)
1 0. 0. 0.
2 100.000 °. 0.
3 0. 100.000 0.
4 100.000 100.000 0. (npt entries)
Each record, according to line number, is described as follows;
1) The job title (job) is a character string which is echoed in its entirety to the * .stats and
plot output files.
2) Set the logical flag echo to true (T) if the input data in the JCDAT file is to be echoed to the
* stats output file. This may be used to ensure that Simqke-II has properly read the input
data.
3) Set the logical flag debug to true if debug information is to be logged to the *.. stats output
file. This may result in a lot of output, so debugging should be restricted to ‘small’ runs,
4) The positive integer npt specified on this line represents the total number of spatial points of
interest, including both the known (recording) and unknown (target) points.
5) The non-negative integer nkp specified on this line represents the number of known points at
which ground motions have been recorded. If this number is non-zero, then the recorded time
history data must appear in the file specified on line 6.
6) The character string tmdat contains the name (or pathname, if not in the current directory)
of the file containing the recorded time history data. If the number specified on line 5 is zero,
then this name is not used, however this record (line 6) must still be present in the JCDAT data
file.
7) The character string gwdat: contains the name (or pathname, if not in the current directory) of
the file containing the spectral density data for this field.
8) The time step increment dt is a positive real number which denotes the time increment to be
used in the output time histories. This increment is taken to be constant over the duration of
the simulation and is assumed to apply also to the known time histories. An error message is
issued if the time step used in the known time histories does not agree with that provided here.
9) The number of time steps nt s is a positive integer denoting the total number of time steps to
take in the simulation. Thus, the simulation duration is the product of nts and dt. Because
the simulation is obtained using an inverse FFT, the value of nts cannot be selected entirely
arbitrarily — it must be the sum of nev powers of 2 (see next). For example, if nev is 3, then
nts must equal 2* +2 + 2* for three positive integers i, j, and k. In addition, the number of
time steps specified on this line must agree with the number of time steps found in the known
time history data files. An error message will be issued if not.
10) To allow for a pseudo-evolving spectral density, the overall time interval (0, t,] may be split
into a sequence of subintervals within each of which a different spectral density function may
be prescribed. On this line the first integer specified, nev, is the number of subintervals to
use. This value must be provided and cannot be less than one. Optionally following nev are
up tonev more integers specifying the number of time steps to use in each subwindow. These
numbers must all be powers of 2. If there are fewer values provided than nev, the remaining
windows are evenly divided into the remaining number of time steps. Thus, for example, if
lines 9 and 10 readSIMQKE-L User's Manual u
Total number of time steps... .... - 2048
Number of time windows [sizes]... . . - 1 4 256
then the 4 time windows consist of 256, 597, 597, and 598 time steps each. Notice that the
last window is adjusted so that the sum of window sizes is equal to that specified on line 9
(deviation in window sizes is due to integer truncation). However, these particular numbers
will result in failure of the program since each time window must be a powers of 2 in length.
This limitation is checked internally and error messages issued, where appropriate.
11) To provide for spatial correlation between time histories, the user must specify (and, for special
cases, implement) a space-frequency correlation function, which computes the correlation
coefficient between two points at a given separation distance and for a particular ground
motion component frequency. The character string provided for cornmis the name (as known
to the program) of the function to be used. At this time, two space-frequency correlation
functions are provided with the program having names
exprw
alnrw
and so one of the above strings would normally be specified on this line. See next line for a
discussion of the parameters passed to these functions. Users with access to the source code
for Simgke-II may write their own correlation function in which case its name must be added
to the externa] list in the main routine simqke2 . £ and the program must be recompiled
with the new module. Arguments to the correlation function are (r,w), where x is the
separation distance between the two points for which the correlation is desired, and w is the
wave frequency under consideration in rad/sec.
12) On this line, up to 3 real values may be specified. These values are passed to the space-
frequency correlation function via the labeled common block /evopar/ and are treated
within the function as parameters controlling the correlation decay rate with respect to the two
formal function arguments r and w (see above). Note that the units of w are rad/sec and the
units of r are whatever units are used to specify the target point locations (see line 18). The
parameters passed to the correlation function must have units which are consistent with the
units of wand r. If echo is true (see line 2), then the values of all three parameters are reported
inthe * .statss file (any unset parameters are assumed to be zero).
If one of the provided space-frequency correlation functions is selected on the above line
(exprw or alnxw) then the parameters entered here have the following interpretation;
for exprw parameter #1 (P;) is the correlation scale factor. The correlation returned is
exp{—vwr/P;} where w is the frequency of the particular component of motion
under consideration, and r is the absolute distance between the two points for
which the correlation is desired. The value of P; can be expressed as 2xcs,
where c is the shear wave velocity in the medium, and s is a dimensionless
distance-scale parameter. The degree of correlation between points can be
controlled by varying s. The other two parameters are unused.
for alnrw _ parameters#1 and#2(P, and P;) are correlation scale velocities and parameter
#3 (Ps) is the local wave velocity through the medium. The correlation at
frequency w between two points separated by r is given by
In(P, +8) —In(P+ He)
In(P,/P,)
where In(.) is the natural logarithm.SIMQKE-II User’s Manual 12
13) Set the logical flag 1p1ot to true if the simulated time histories are to be output to a file having
plotps format. Plotps is a program which translates its input file into a PostScript graphics
file. It can be obtained by anonymous FIP to
random. field.tuns.ca:pub/progs/plotps4.0.tar.gz
(Avoid the plotps.min program unless you already have the PSLIB library, found in
pub/GAF1ibs, installed. This library is already included directly in the
plotps.4.0. tar.gz distribution.)
14) Set the logical flag 1 combn to true if all the time histories produced are to appear on the same
plot axes with first time history shown using a solid line, second with a dashed line, ete. For
‘more than two time histories, or for rapidly varying time histories, this option is probably not
appropriate. It is mainly useful for comparing motions visually.
15) Set the logical flag 1gp1ot to true if the provided spectral density function is to be plotted.
The output file produced must be post-processed by plot ps to convert it into PostScript.
16) The specified generator seed, kseed, is used to initialize the random number generator
‘randu’ (Press et al., 1992, from RAN1 program, pg 271). If two subsequent runs are
invoked with identical generator seeds, then the sequence of random numbers which go into
the simulation will be identical. However, the time histories may not be identical if the
correlation structure is changed. If the random number generator seed is specified as 0, then a
seed is produced internally using the current process system ID (see iseed. f).
17) This line contains a title for the following coordinate data. It is ignored although it must be
present.
18) On this Tine and continuing for a total of npt: records, provide the point number and spatial
coordinates of each point in the field. For conditioned simulations, read the following notes;
4) the point number given in the first column of each record of the spatial coordinate data
must be unique and, overall, the point numbers must count from 1 to npt.
ii) the point numbers associated with known points must count from 1 to nkp. The point
numbers associated with the unknown points must count from (nkp + 1) to npt. In this
way the coordinates of the known points and unknown points are determined.
iii) the numbering of the known points must correspond to the ordering of the recorded time
histories appearing in the TMDAT data file. This is the only link between the known points
and their associated recordings.
42 GWDAT: Spectral Density Function Data File
‘This data file contains the points defining the one-sided marginal spectral density function, G(),
‘governing the temporal behaviour of the time histories. Since the field is assumed homogeneous,
the same spectral density function is used at all field points. If the spectral density is evolving
with time, a sequence of functions may be prescribed in this data file (see JCDAT, line 10) so
that if the i’th time window spans the time interval {f;, 1), then Gy.) = G,(w) for t € [ti tisn)
i=1,2,nev.
‘The individual functions are specified by a discrete sequence of real value pairs [w, G;(w)], enabling
the use of discrete spectral analyses of actual recordings. If the spectral density function is only
known in functional form, it must first be sampled at discrete values of w — the samples then placed
in this data file. The values of w need not be equispaced, nor do they need to be the same as the‘SIMQKE-II User's Manual B
Fourier frequencies used in the simulation. The value of G,(w) is obtained by linear interpolation
at the Fourier frequency using the provided data. If the provided data is very coarsely spaced in
the Fourier frequency range (0 to /At rad/sec), then the representation of the spectral density
function by the simulation may be poor, so it is best to ensure reasonably fine resolution in the
Fourier frequency range.
‘The spectral ordinate data in the GWDAT file is converted to have length units of m?. The units of the
raw data provided in the file are specified in the file header as acharacter string. Recognizable length
units are "m" (the default), "cm", "ft" or "feet", and "in". Length units other than one of these result
inno conversion, in which case the user must ensure that spectral and (any) known time history units
are consistent. For length units L, the spectral data has units L?/sec’ for acceleration simulations,
L?/sec for velocity simulations, and L? - sec for displacement simulations. To ensure consistency,
the length units of the known time histories are similarly converted to metres. The length units of
the spatial coordinates of the field points are not converted because they do not directly affect the
simulation — the coordinate units must, however, be consistent with the prescribed space/frequency
correlation function parameters.
‘The units specified in the spectral density function data file are also used to determine if the
simulation is to be one of (which are searched for in the given order);
1) acceleration, in which case one of the strings ‘sec™3’ or ‘sec**3" must be found in the
units character string, or
2) velocity, in which case the string ‘/sec’ must be found, or
3) displacement, in which case the string ‘*sec’ or‘ sec’ must be found.
‘The spectral data is read from a file having one of the following two forms (A or B);
A) Free format (ASCID) with lines;
for each j = 1,2,
1) nev, nw;
2) type
3) units
4) wi), Gli),
nev
ser BW
end for
which is arranged in nev identically structured blocks. The blocks may be separated by blank
lines if desired. The values of nev, type, and units are only actually recorded from the
first block that is read — in subsequent blocks, lines 2 and 3 may be blank, although the lines
themselves must be provided, and nev may take on other values since it is ignored except as
a placeholder. The individual le component are described as follows
nev is the total number of spectral density functions provided in the file. This number
‘must match that provided in the JCDAT data file on line 10. The value of nev in each of
the 2’nd to nev’th block is ignored but must be present.
+ nw; is the number of points defining the spectral density function specified in this (j"th)
block. For blocks 2 through nev this is the only pertinent piece of information, beyond
the spectral data itself. This approach allows different spectral sample rates in the various
time windows.
+ type is a character string containing either ‘Period’ or ‘Frequency’ depending on whether
the units of w; (4) are seconds (for period) or rad/sec (for frequency). If type is ‘Period’,SIMQKE-II User's Manual 14
then w; (i) is converted to the corresponding frequency 2 /w; (i) in rad/sec. The value
of type encountered in the first block is assumed to hold for all subsequent blocks.
+ unit's isa character string containing the units of the following G(w) data. Typically this
is something like ‘m*2 /sec%3’ but length units ‘cm’, ‘ft’ or ‘feet’, and ‘in’ are also
acceptable. If any of the latter length units are found in the string unit's, then G(w) is
converted to units m/sec? for acceleration simulations, m/sec for velocity simulations,
orm? sec for displacement simulations. (Note, however, that this means if type contains
the string
G(w) in m*2/sec*3
then, because of the substring ’ in’, the data will be converted from in?/sec? to m?/sec?,
which is probably not as intended.)
+ the real number pairs (w; (i), Gj(i)), i = 1, 2, ..., nw; may be input one
pair per line or up to 128 pairs per line (maximum 1024 characters) with spaces, tabs, or
newlines (carriage returns) separating the individual numbers. In each block, the program
continues reading numbers until it has found nw; pairs in total.
B) PLOTPS format:
Here the input file is assumed to be in a format suitable also for processing by plot ps, whose
‘manual pages should be consulted in conjunction with the following description, The input
file consists of two parts, the first part being a header describing how the data is to be plotted
and the second part being the raw data, that is the actual (., G(w)) data pairs. In detail, the file
contains;
(11 +2enev) lines of header information. Only lines 1, 6, 10, and 11 contain information.
pertinent to this program;
ine 1: if the first integer (np Lot) provided is a 1, then the spectral data is assumed
to follow model (1) or (2) below. Otherwise the first integer should equal
nev and model (3) below is followed. Note that if model (3) is used, the
header consists of only 13 lines of plotting information.
line 6: if the first integer in line is a 1, then line 6 is checked to see how the data is
provided. If line 6 is an integer (k) equal to negative nev, then model (2)
is used, otherwise model (1) is used.
line 10: denotes by the word ‘Period’ or ‘Frequency’ whether the ‘frequency’ data,
WG, has units ‘seconds’ or ‘rad/sec’. The default is ‘rad/sec’. If line 10
contains the word ‘Period’, the data is converted to frequency (rad/sec). A
period of 0.0 is assigned a frequency of 1 x 10" rad/sec (arbitrarily).
Tine 11: contains the units of G(w). The default length unit is m?. Only the length
units are converted, and recognizable strings are ‘cm’, ‘ft’, ‘feet’, or ‘in’.
If one of these strings are found on line 11, then G(w) data is converted to
length units m? using the appropriate conversion factor.
Models: In the following, the frequency data is denoted by WG(i,j), i = 1, 2,
., nw(j), 3 = 1, 2, ..+, nev and the corresponding spectral density values
asG(i,j), § = 1, 2, ..., nw(3), 3 2, ..., nev, where nevis the
‘number of subwindows into which the simulation duration is divided, and nw (j) is the number
of spectral data points provided in the j'th subwindow.
() if plot = 1, k > 0, then the spectral data has the following form;
(11 + 2*nev) lines of header information (see above)
WG(1) G(1,1) G(1,2) ... G(1,nev)‘SIMQKE-II User's Manual 15
WG(2) (2,1) G(2,2) ... 6(2,nev)
WG(nw) Ginw,1) Ginw.2) ... G(nw,nev)
( blank line or end-of-file1
‘Note that in this case, all spectral density functions are prescribed by the same number of
discrete observations (nw).
Q) ifnplot = 1, k = —nev, then the spectral data has the following form;
(11 + 2*nev) lines of plotting information (see above)
wo(1,1) san)
WG(2,1) (2,2)
WG(nw(1),1) G(nw(1),1)
{ blank line}
we(1,2) 6(1,2)
WG(2,2) 6(2,2)
WG (nw(2),2) G(nw(2),2)
( blank line)
( blank line}
WG(1,nev) (1 nev)
WG (2, nev) G(2,nev)
WG (nw (nev) ;nev) G(nw(nev) ,nev)
{ blank line or end-of file}
Note that in this case, each spectral density function may be prescribed by a different
number of discrete observations (nw (1), nw(2), ... nw(nev)).
@) if nplot = ney, then the spectral data has the following form;
13 lines of plotting information (see above)
wet, 1) (1,1)
wo(2,1) (2,1)
WG(nw(1),1) G(nw(1),1)
{ blank line}
13 lines of plotting information (ignored)
we(1, 2) (1,2)
WG(2,2) G(2,2)
we (nw(2),2) G(aw(2),2)
{ blank line}
13 lines of plotting information (ignored)‘SIMQKE-L User's Manual 16
{ blank line}
13 lines of plotting information (ignored)
WG(1,nev) (1, nev)
WG(2,nev) (2, nev)
WG(nw (nev) nev) G{nw(nev) ;mev)
( blank line or end-of file)
Again, in this case, each spectral density function may be prescribed by a different number
of discrete observations (nw(1), nw(2), ... nw(nev)). The only basic differ-
ence between models (2) and (3) is that in model (3) the plot header information is repeated
between blocks of data.
NOTES:
1) The file type is determined by consulting the second line of the data file to see if it contains one
or other of the strings ‘Period’ or ‘Frequency’ (if so, then the file is ‘Free format’, see above).
2) The number of spectral density function data sets provided in this data file must agree with the
number of time windows specified in the control data file (nev).
3) The elements of WG as read in may be either frequency (rad/sec) or period (sec) as specified
earlier in the data file by the word ‘Period’ or ‘Frequency’ appearing in the preamble. If WG
is a period, then itis converted to frequency internally (0 period is converted to a frequency of
1.0%), Itis also assumed that the same units for G and WG are used in all spectral function data
sets provided in the file.
43 'TMDAT: Known Time History Data File
This file contains the time history data corresponding to the spatial locations at which recordings
were made. The time histories are input as data pairs (TL, TH), where TT is the time in seconds,
and TH is the comesponding motion value. The length units of TH are converted into metres from
recognizable units of ‘cm’, ‘ft’ or ‘feet’, or ‘in’. Length units other than one of these are left
unconverted. Simulated motions will generally be one of displacement, velocity, or acceleration
and the user must ensure that the provided spectral density function is consistent with the time
history data. If the units of TH are U, then units of G must be U? - sec. For example, if TH is
acceleration in m/sec, then G must have (or be converted to) units of m?/sec*,
‘The parameters nt s (number of time steps) and nkp (number of known time histories) in this data
file must agree with that specified in the job control data file. The known time history(s) are read
from a data file having one of two forms (A or B);
A) Free format (ASCII) with lines;
1) title (ob title)
2) units (string containing length units)
3) nts, nkp (number of; time steps, known points)
4) (X(i,1), X(i,2), X(i,3), i = 1, nkp ) (currently ignored, coordinates of
known points)
5) TE(1) -TH(L,1) TH(2,1)_—s.- THnkp, 1)‘SIMQKE-II User's Manual 7
TI(2) TH(L,2) TH(2,2) = TH(nkp, 2)
Ti(nts) TH(L,nts) TH(2,nts) ... TH(nkp,nts)
Lend of file
B) PLOTPS format:
Here the input file is assumed to be in a format suitable also for processing by plot ps, whose
manual pages should be consulted in conjunction with the following description. ‘The input
file consists of two parts, the first part being a header describing how the data is to be plotted
and the second part being the raw data, that is the actual (TT , TH) data pairs, where TT is the
time in seconds, and TH is the motion value. In detail, the file contains;
(11+2enkp) lines of header information. Only lines 1, 6, and 11 contain information
pertinent to this program;
line 1: if the first integer (npLot) provided is a 1, then the time history data is
assumed to follow model (1) or (2) below. Otherwise the first integer should
equal nkp and model (3) below is followed. Note that if model (3) is used,
the header consists of only 13 lines of plotting information.
line 6: ifline 1 specified a 1, then line 6 is checked to see how the data is provided.
If line 6 is an integer (k) equal to negative nkp, then model (2) is used,
otherwise model (1) is used.
line 11: contains the units of the time history, assumed to length unit with default ‘m”
(metres). Only the length units may be changed, and recognizable stings
are ‘cm’, ‘ft’, ‘feet’, of ‘in’. If one of these strings are found on line 11,
then the length units are converted to ‘m’ using the appropriate conversion
factor. In all models to follow, the number of time steps must be the same
and equal to the prescribed nts (which must be the same here and in the
{job control file).
‘Models:
(1) ifnplot = 1,k > 0, then time history data has the following form;
(11 + 2*nkp) lines of header information (see above)
TI(1) TH(L,1)— TH(2,1) . TH(nkp, 1)
TI(2) TH(L,2)— TH(2,2) TH(nkp, 2)
TI (nts) TH(1,nts) TH(2,nts) ... TH(nkp, nts)
( blank line or end-of-file\
(2) ifnplot = 1, k = —nkp, then the time history data has the following form;
(11 + 2*nkp) lines of plotting information (see above)
r()) TH(1,1)
TI(2) TH(1,2)
TI(nts) —-TH(1,nts)
( blank line}
Tr(1) TH(2,1)
TI (2) TH(2,2)SIMQKE-I User’s Manual 18
TI(nts) —TH(2,nts)
( blank line}
( blank line}
Tr(a) TH(nkp. 1)
TI(2) TH(nkp. 2)
TI(nts) _TH(nkp, nts)
( blank line or end-offile\
3) ifnp1ot = nkp, then the time history data has the following form;
13 lines of plotting information (see above)
TI(1) TH(1,1)
TI(2) TH(1,2)
TI(nts) —‘TH(1,nts)
( blank line}
13 lines of plotting information (ignored)
TI(1) TH(2,1)
71 (2) TH (2,2)
TI(nts) —TH(2,nts)
{ blank line)
13 lines of plotting information (ignored)
{ blank line}
13 lines of plotting information (ignored)
Tr() TH(nkp,1)
Tr(2) ‘TH (nkp,2)
Tr(nts) —_TH(nkp nts)
{ blank line or end-of fle)
‘The only basic difference between models (2) and (3) is that in model 3 the plot header
information is repeated between blocks of data.
NOTES:
1) The time increment is assumed to be uniform throughout the sequences.
2) The file format is determined by consulting the third line of the data file to see if it contains
‘two leading integers (nt's and nkp). If nor then the file is assumed to be in PLOTPS format.‘SIMQKE-II User’s Manual 19
5. Output Files
Output is made to the files;
* .statss - job status/debug/error information
* .gwplt - spectral density function plots (PLOTPS format)
*.tmp1t - time history plots (PLOTPS format)
* .tmraw - time histories (free format, ASC)
where the last 3 are optional, depending on user defined options in the job control data file. The
basename ‘*” is obtained from the name of the CDAT file. Ensure that basenames are unique — if
output files of the same name already exist, they are simply overwritten with no warning.
‘The free format saved time history, * . tmwcaw (which is produced if the time history plotting option.
is not selected), will have the format
1) title (character string)
2) units (character string)
3) nts, npt, nkp (number of; time steps, points, known points)
4) (X(1,i),X(2,i), X(3,i), i = 1, npt) (spatial coordinates)
5) (TE(5), (TH(4,5), i = 1, mpt), 5 = 1, nts) (time, time history)
While all other plots are in PLOTPS format (see plotps(1)). The units are expressed in the
form ‘m/sec” for acceleration time histories and ‘m*/sec*” for the corresponding spectral density
functions Similarly, ‘m/sec’ and ‘m’ are the units used for velocity and displacement time histories,
respectively, with corresponding spectral density function plots in °m?/sec’ and ‘m? - sec’.
6. System Specifies
A number of system specific function calls are made by this program which may need to be
replicated on certain platforms. In particular, these routines may not be available under certain
DOS Fortran compilers. These system routines are described as follows;
1) call fdate(rdate) — retums current date/time in a 24 character string stored in
rdate (called by simgke2 . £)
2) call getarg(n,arg) retumsthen’thcommand line argumentin the string arg (on
HP’s use the +U77 flag when compiling and linking) (called
by simake2.£)
3) getpid() returns current process ID. Called by iseed.. £, this function
is used to generate a pseudo-random number generator seed
in the event that the user specifies a seed of 0. This function
should at least return different integers on each invocation of
‘Simgke-II. Wall clock time could also be used.
4) etime(t) retums the elapsed execution time of the running program.
The argument t is a single precision real vector of length 2,
however, itisnotused. This functioniscalled by second. f.SIMQKE-II User's Manual 20
7. Example
Inthis section an example is presented to illustrate the use of Simgke-II. The exponentially decaying
isotropic frequency-dependent spatial correlation function exprw has been used,
Pax Pi) = EXP {gil} an
nes
where 7;; is the relative position vector between points x; and 2;, c is the shear wave velocity in
the medium, and s is a distance-scale parameter. The job control data file examp . dat used in the
simulation is as follows
‘Three Point Simulation, One Known Point, scale = 5.0
Echo control data to stats file (t/f)? ai
Dump debug data to stats file (t/f)?.....- e
Total number of field points. ........- 3
Number of known time histories... .....- 1
Name of time history data file... .....- compl.tmraw
Name of spectral density data file... ...- pedel.sdraw
Time step increment»... - 2-2-7. 00 0.008
Total number of time steps... .....-.- 3328
Number of subwindows [sizes]... .- 2... 3 256 1024 2048
Correlation structure function name . . . + exprw
parameter(s)-- 2 eee ee 4084-1
Time histories to be plotted (t/f)?......- t
‘Time history plots combined (t/f)?.. 2... . £
Power spectra to be plotted (t/f}?... 2... £
Peeudo-random number generator seed... -.. 0
Point — X coord. Y Coord. 2 Coord
1 0.0 0.0 0.0
2 10.0 0.0 0.0
3 500.0 0.0 0.0
which is a 3 point problem having points arranged along the x axis at 0.0, 10.0, and 500.0, with
motion recorded at the first point. The recorded time history is stored in the file comp1 . tmraw.
‘The spectral density function is defined in 3 unequal length subwindows as shown in Figure 1 and
stored in the file psdc1 .sdaw. Figures 2, 3, and 4 show excerpts from the comp1 . tmraw,
psde1. sdraw, and the output examp . stats file respectively.
A distance scale of s = 5 has been used in the example data file, so that a simulated motion at
a distance of 10 m from the recording should look fairly similar, at least in the lower frequency
components. On the other hand, a simulated motion at a distance of 500 m will be largely
independent of the recording. The simulated motions for this problem are shown in Figure 5.‘SIMQKE-II User’s Manual
2
TS Fortime window [0, 2.04] seconds
g.4
fe
z
Ss
° a a a a
ob » » © © ow 100
Frequency (radlsec)
sg _Fortime window (2.048, 10.232] seconds
34
a8
“e
z
5
° en
ob » » © 0 & 100
Frequency (rad/see)
Te Fortime window (10.24, 26.616] seconds
&
fe
=
6
. T T T T TT
o> b » » © © © 100
Frequency (adlsec)
Figure 1. Power spectral density function used in each of three subwindows. Note
that the vertical scales are considerably different.SIMQKE-II User’s Manual
Horizontal Component 1 at 20.00 degrees clockwise from North
m/sec*2
3328 1
0.0 0.0 0.0
0.0000008+00 -0.218960E+00
0.800000E-02 -0.271767E+00
0.160000E-01 -0.328865E+00
0.240000E-01 -0.350127E+00
0.320000E-01 -0.301266E+00
0.400000E-01 -0.167549E+00
0.480000E-01 -0.299566E-01
0.560000E-01 0.747209E-01
0.640000E-01 0.126518E+00
0.720000E-01 0.128547E+00
Figure 2. Heading of prescribed time history file comp1 . t maw.
3 200
Frequency
m°2/sec"3
0.0000E+00 0.2635E-03
0.3157E+01 0.2643E-03
0.6315E+01 0.2670E-03
0.9472E+01 0.2714E-03
0.1263E+02 0.2776E-03
0.1579E+02 0.2857E-03
0.1894E+02 0.2955E-03
0.2210E+02 0.3069E-03
0.2526E+02 0.3196E-03
Figure 3 Heading of spectral density function file psdc1 . sdraw.‘SIMQKE-II User's Manual
This is SIMQKE2 (Version 2.6): Wed Feb 19 09:10:09 1997
Control file
examp.dat
sessse=see=: Job Control
Three Point Simulation, One Known Point,
Echo control data to stats file (t/f)? -
Dump debug data to stats file (t/£)?
Total number of field points... . 1. -
Number of known time histories ||) |. !
Name of time history data file |) 1!!!
Name of spectral density data file | |. -
Time step increment ... . ei
Total number of time steps | | | |
Number of subwindows [sizes]. ¢ 0 0.1
Correlation structure function name
parameter(s) 0s. ee ee ee
Time histories to be plotted (t/f)?. | |
Time history plots combined (t/f)? . <<
Power spectra to be plotted (t/f)? 5
Pseudo-random number generator seed | | | |:
Point —_X Coord. Y Coord. 2 Coord.
1 0,000000E+00 0.000000B+00 0.000000E+00
2 0,100000E+02 0:000000E+00 0:000000E+00
3 0.500000E+03 0.000000E+00 0.0000008+00
s=asz2z== End of Control Data
Reading spectral data file psdcl.sdraw .
(ASCII format)
(SDF units: m°2/sec”3)
Target Variance:
Data
seale
For Window 1 = 0.0220256 (m/sec2)72
For Window 2 = 0.7707890 (m/sec2)*2
For Window 3 = 0.0144998 (m/sec2)*2
Reading time history data file compi.tmraw
(ASCII format)
(Time history units: m/sec*2)
For pseudo-random number generator seed
Generating acceleration time histories .
window:
initializing...
1% variance above wmax in subwindow 1
-2% variance above wimax in subwindow 2
0& variance above wimax in subwindow 3
npt,nkp,ynev = 313.
nstw = | 256 1024 2048
nstw 8 10° 1
nw 200 257 257
aw 3.06796 “0.76699 0.38350
nv,av 32 0.01563
sg(1-->5) for each window;
0.00081 0.00020 0.00020 0.00021
0104001 0.00990 0.00979 0.00968
9:00040 0.00010 0.00010 0.00010
Inter-Point Distance Matrix
0.000000 10.0000000 500.0000000
10:0000000 "0.000000 490.0000000
500.0000000 490.0000000 0.000000
generating window 1
generating window 2
generating window 3
took 0.215696 seconds.
Time history plot written to file examp.tmplt
Figure 4 Output file examp. stats.
Beas
compl .tmraw
psdelsdraw
0.800000B-02
3328
3 256 1024 2048
exprw
0.40841E+04 0.0 0.0
om
6459
0.00021
0.00943,
0.00010‘SIMQKE-II User's Manual
‘Known motion at recording point
° 5 10 5 2 %
Time (2)
‘Simulated motion a target point, r= 10m
By
° 3 a 15 »
Time (see)
Simulated motion at target point, r= 500m
® 5 0 5 > z
Time (see)
Figure 5. Conditionally simulated ground acceleration,‘SIMQKE-II User's Manual 25
8
1.
10.
References
Borsstéres, H.P., and VANMARCKE, E.H., Spatial correlation of earthquake ground
‘motion: Non-parametric estimation, Soi! Dynamics and Earthquake Engineering, 14,
23-31, 1995,
Borssiénes, H.P.. Estimation of the Correlation Strucure of Random Field, thesis pre~
‘sented to Priniceton University, at Princeton, New Jersey, in partial fulfillment of the
requirements for the degree of Doctor of Philosophy, 187 pg., Jun. 1992.
FENTON, G.A., Error evaluation of three random field generators, ASCE Journal of Engi-
neering Mechanics, 120(12), 2487-2497, 1994,
FENTON, G. A., Simulation and Analysis of Random Fields, thesis presented to Princeton
University at Princeton, New Jersey, in paral fulfilment ofthe requirements for the
degree of Doctor of Philosophy, 178 pg., Jan. 1990.
HARICHANDRAN, R.S., and VANMARCKE, E.H., Stochastic variation of earthquake
ound motion in space and time, ASCE Journal of Engineering Mechanics, 112(2),
Fsatt74 1986.
Henepia-Zavont, B., Siuctural Response to Spatially Varying Earthquake Ground Motion,
thesis presenied to Princeton University, at Princeton, New Jersey, in partial fulfillment
of the requirements for the degree of Doctor of Philosophy, 178 pg., Jun. 1993.
Press, W.H., TEUKOLSKY, S.A., VETTERLING, W.T., and FLANNERY, B.P., Nu-
merical Recipes in Foriran, 3nd Bd. Cambridge University Press, New York, NY,
Vanmancre, BH, Henepis-Zavont, E.» Np FENTON, A, Conditional simula.
tion of spatially correlated earthquake ground motion, journal of Engineering
Mechanies, 1I3(11), 2333-2352, 1993.
Varmancke, BE. H., AND FENTON, Cae Conditioned simulation of logal elds of
earthquake ground motion, Structural Safety, Special Issue on Spatial Variation of
Earthquake Ground Motion, Jan. 1991.
VANMARCKE, E.H., Random Fields: Analysis and Synthesis, The MIT Press, Cambridge,
Massachusetts, 1984.