 Research
 Open Access
 Published:
An algorithm to simulate nonstationary and nonGaussian stochastic processes
Journal of Infrastructure Preservation and Resilience volume 2, Article number: 17 (2021)
Abstract
We proposed a new iterative power and amplitude correction (IPAC) algorithm to simulate nonstationary and nonGaussian processes. The proposed algorithm is rooted in the concept of defining the stochastic processes in the transform domain, which is elaborated and extend. The algorithm extends the iterative amplitude adjusted Fourier transform algorithm for generating surrogate and the spectral correction algorithm for simulating stationary nonGaussian process. The IPAC algorithm can be used with different popular transforms, such as the Fourier transform, Stransform, and continuous wavelet transforms. The targets for the simulation are the marginal probability distribution function of the process and the power spectral density function of the process that is defined based on the variables in the transform domain for the adopted transform. The algorithm is versatile and efficient. Its application is illustrated using several numerical examples.
Introduction
Observed time histories of the seismic ground motions [31], wind velocity [48], wave height [32], etc. fluctuate randomly in time and space. The time histories are used as the input to carry out the structural analysis. Since the available recorded time histories of the random phenomena are limited, their synthetics are generated and used in practice. The simulation is based on the theory of stochastic processes [7, 22, 25]. The simulated ground motions are used to assess seismic risk of infrastructures such as dams and portfolio of buildings (e.g., [3, 24]). The simulated winds are employed to assess the performance structures and infrastructure system [55, 60].
For stationary Gaussian processes, and evolutionary processes [38], the simulation can be carried out using the spectral representation method [23, 47], developed based on the ordinary Fourier transform (FT). A stationary process is defined by its power spectral density (PSD) function, and an evolutionary process is defined by the evolutionary PSD that is a function of an amplitude modulation function. The evolutionary process with timedependent amplitude modulation is widely used in generating seismic ground motions [1, 10] and fluctuating wind velocity for highintensity wind events [5, 17, 20, 21].
Masters and Gurley [27] proposed an iterative spectral correction algorithm to simulate the stationary nonGaussian processes, where the spectral representation method is used in each iteration to generate the time history. They showed that their algorithm outperforms the SRMbased simulation techniques presented in Yamazaki and Shinozuka [58], Gurley and Kareem [15], Grigoriu [14], and Deodatis and Micaletti [11]. It is noted that an algorithm similar to the spectral correction algorithm, namely the iterative amplitude adjusted Fourier transform (IAAFT) algorithm, was proposed by Schreiber and Schmitz [43, 44] in the context of generating surrogate for statistical hypothesis testing. The use of the translation process for the stationary nonGaussian process proposed in Grigoriu [14] was extended for the nonstationary processes by others, including Ferrante et al. [12] and Shields et al. [46].
The evolutionary PSD is often assessed using (timedependent) windowed Fourier transform, such as the shorttime Fourier transform [6]. The resolution of such a transform is controlled by the width of the window. As the width of the window increases, a better resolution is obtained at the low frequencies, and the resolution in time deteriorates. A good resolution in both time and frequency (i.e., scale) can be obtained by applying the continuous wavelet transforms (WT) [9, 35]. A procedure to estimate the evolutionary PSD by applying the continuous WT was proposed by Spanos and Failla [50]. However, an algorithm that directly applies the continuous WT to simulate the nonstationary stochastic processes with a prescribed wavelet spectrum or timescale PSD was unavailable. Recently, an iterative algorithm was presented by Chavez and Cazelles [4] to generate surrogate for statistical hypothesis testing. We will point out, in the following sections, a potential weakness of the algorithm, as well as the link between this algorithm and an interesting way of defining nonstationary processes in the wavelet domain introduced by Maraun et al. [26]. The lack of continuous WTbased algorithm to simulate time histories is partly due to that the use of continuous WT does not lead to the decomposed signal to be represented by a set of orthogonal basis functions. Rather than using the continuous WT, the application of the discrete WT and wavelet packet transform that have orthogonal basis functions is presented in Gurley and Kareem [16], and Yamamoto and Baker [57]. The resolution obtained by using these discrete transforms is less refined than that obtained by using the continuous WT.
The phase information in WT is local, while the phase information in the Fourier transform refers to the harmonics at zero time [52]. Stockwell et al. [53] (see also [37]) developed the Stransform (ST) that provides the timefrequency representation of the analyzed signal. It is a hybrid of continuous WT and windowed FT. The Stransform provides frequencydependent resolution. Similar to the continuous WT, ST does not lead to a decomposed signal to be represented by a set of orthogonal basis functions. Stockwell [52] proposed a discrete orthonormal Stransform. The simulation of the seismic ground motions by using the discrete orthonormal Stransform or combination with ST was presented in Cui and Hong [8] and Hong and Cui [19]. However, an algorithm by using ST alone to simulate nonstationary stochastic processes has not been reported in the literature.
There are other techniques used to simulate the nonstationary processes. These include the application of autoregressive movingaverage (ARMA) [42], Karhunen–Loéve expansion [36, 49, 51], and polynomial chaos [41], and HilbertHuang transform [56]. The ARMA uses the recursive relations that connect the random quantity to be simulated at successive time increments. The application of the Karhunen–Loéve expansion uses the eigenfunctions that are obtained by solving Fredholm integral equation of the second kind. In the HilbertHuang transform, a random process is decomposed into intrinsic mode functions by the method of empirical mode decomposition. A review of these simulation procedures is beyond the present study since these techniques involve varieties of mathematical concepts and algorithms.
In the present study, we exam and extend the definition of the nonstationary processes in the transform domain. We proposed an iterative power and amplitude correction (IPAC) algorithm to simulate nonstationary and nonGaussian processes. The algorithm could be viewed as an extension of IAAFT [43] and the spectral correction algorithm [27] and is rooted in the concept of defining the stochastic processes in the transform domain. In particular, we provide details of using the proposed algorithm with FT, ST and WT, where the energy distribution in the transform domain that satisfies energy preservation is prescribed, and the marginal probability distribution function of the process is given. We provide numerical examples to show the proposed algorithm and compare the simulated time histories obtained by using the STbased and (continuous) WTbased approach.
Fourier transform, Stransform, and wavelet transforms
This section summarizes some basic properties of FT [6, 30], ST [37, 53], and continuous WT [9]. Only the continuous WT, including its discretized form (which differs from the discrete wavelet transform), is used in the present study. Unless otherwise indicated, WT refers to the continuous WT and its discretized form in the following. The summary provides the basis for the proposed iterative simulation algorithm to be described in the next sections.
Let x(t) denote a realization of a stochastic process such as the ground motion record, X(t). FT of x(t), and its inverse (IFT) can be expressed as
and,
where FT(•) and IFT(•) denote the FT and IFT operations, the subscript associated with these operators indicates the domain or the index where the operation is carried out; \( \hat{x}(f) \) denotes FT of x(t); f is the frequency in Hz, \( \hat{x}(f)={\hat{x}}^{\ast}\left(f\right) \), and * denotes the complex conjugate. A symbol or function with a circumflex is used to represent its FT throughout the present study. If x(t) is given in the discrete form x(jΔ_{t}), j = 0, …, N − 1, with a sampling time interval Δ_{t} and the duration T, T = NΔ_{t}, the (discretized) FT pair is given by,
and,
where Δ_{f} = 1/T, and the operators FT(•) and IFT(•) that are used for continuous FT are used for discrete FT as well. It is considered implicitly in the following that the numerical calculations of \( \hat{x}\left(p{\Delta}_f\right) \) and x(jΔ_{t}) are to be carried by using the fast Fourier transform (FFT) [30] for computational efficiency. Moreover, the notation {•}_{N} is used for the collection of its argument of length N. For example, {x(jΔ_{t})}_{N} represents all x(jΔ_{t}) for j = 0, …, N − 1.
ST of x(t) is defined as [37, 53],
where \( {x}_{\mathbf{\mathcal{S}}}\left(f,\tau \right) \) is the ST coefficient, ST(·) denotes the Stransform of its argument, and τ is the center of the window function w(f, τ − t) defined as,
The parameter κ in Eq. (6) controls the effective width of the window in ST. It can be shown [53] that,
and,
where IST(·) is the inverse Stransform (IST). Using Eqs. (7) and (8), the discretized version of x(t) and \( {x}_{\mathbf{\mathcal{S}}}\left(f,\tau \right) \), represented by x(jΔ_{t}) and \( {x}_{\mathbf{\mathcal{S}}}\left(q{\Delta}_f,p{\Delta}_t\right) \) pair, can be written as,
and,
indicating that the evaluation of the ST coefficients at (pΔ_{f}, qΔ_{t}) and its inverse at jΔ_{t} is based on FT.
where \( {x}_{\mathbf{\mathcal{W}}}\left(s,\tau \right) \) is the wavelet coefficient, the operator WT(•) denotes WT, ψ(⋅) is the mother wavelet and, s is the scaling or dilation factor, and τ is the translation or position parameter. Eq. (11) can be expressed as [9, 35],
to facilitate its computation by using FFT for signals given in the discretized form. If the admissibility condition 0 < C_{ψ} < ∞ is satisfied, where \( {C}_{\psi }=\underset{\infty }{\overset{\infty }{\int }}\left(1/\leftf\right\right)\times {\left\hat{\psi}(f)\right}^2 df \), x(t) can be obtained using the following inverse WT [9],
where IWT(•) is the inverse of WT(•). If ψ(t) = ψ ∗ (−t), Eq. (13) becomes,
Moreover, if the analytical wavelet – complexvalued wavelet function that its FT is null for negative frequency – is used, Eq. (13) can be expressed in Morlet formulation [45],
where \( {C}_{1\psi }=\underset{0}{\overset{\infty }{\int }}\left({\hat{\psi}}^{\ast }(f)/\leftf\right\right) df \) and Re() denotes the real part of a complex number.
There are several wellknown wavelet families [9, 33, 35], including Daubechies wavelets, generalized Morse wavelets, and Morlet wavelets.
Eqs. (14), (15) and (12) can be written in the following discretized form,
and,
where c_{0} and s_{0} are parameters for the numerical computation; K is the total number of scales considered for the numerical integration; T_{L} = − L_{l}Δ_{t} and T_{U} = L_{U}Δ_{t} define the lower and upper limits for the integral over time τ, and \( {C}_{1\psi }=\underset{0}{\overset{\infty }{\int }}\left({\hat{\psi}}^{\ast }(f)/\leftf\right\right) df \). In the following, we restrict ourselves to the realvalued signal and the analytical wavelets or wavelets with ψ(t) = ψ^{∗}(−t).
Gaussian process, power spectral density, and defining process in the transform domain
According to the spectral representation method [47] with the use of FFT [59], a sample of a Gaussian stationary process, x(t), can be simulated by transforming Gaussian white noise w(t) to the Fourier domain, multiplying it with an intensity function \( \left\hat{y}(f)\right \), and transforming it back to the time domain. That is,
where \( {e}^{i{\theta}_{\mathbf{\mathcal{F}}}\left(w(t)\right)}=\eta \left( FT\left(w(t)\right)\right) \), in which the function η(C) = C/C is introduced to normalize the complex number C. Based on FT pair, \( \hat{x}(f)=\lefty(f)\right{e}^{i{\theta}_{\mathbf{\mathcal{F}}}\left(w(t)\right)} \). Since, by definition, the doublesided PSD function of the process x(t) with duration T, \( {S}_{\mathbf{\mathcal{F}}x}(f) \), is given by,
it indicates that given the target PSD function \( {S}_{\mathbf{\mathcal{F}}x}(f) \), one could define a stationary Gaussian process in the Fourier domain by assigning \( \left\hat{y}(f)\right=\left\hat{x}(f)\right=\sqrt{S_{\mathbf{\mathcal{F}}x}(f)T} \). The samples of the process so defined can be obtained using,
and the expected PSD of the sampled signals equals the prescribed \( {S}_{\mathbf{\mathcal{F}}x}(f) \). The use of the definition given in Eq. (20) preserves the energy of x(t) according to Parseval’s theory.
We note that by assigning \( \left\hat{y}(f)\right \) equal to \( M(t)\left\hat{x}(f)\right \), Eq. (19) becomes,
which simulates a uniformly amplitude modulated evolutionary process [38]. Such a process has an evolutionary PSD function equals \( {\leftM(t)\right}^2\left(\hat{x}(f){\hat{x}}^{\ast }(f)/T\right) \), and M(t) is the amplitude modulation function, which will be considered to be positive. However, the use of y(f) equal to \( M\left(t,f\right)\left\hat{x}(f)\right \) in Eq. (19) does not lend itself to be interpreted as a proper inverse Fourier transform because the modulation function depends on the frequency. This reduces the computational efficiency that otherwise can be gained by using FFT; it also makes the distinction between the modulation function and intensity function more blurred. We will concentrate only on the case where the modulation function is defined outside of the transform domain. However, the consideration of modulation that depends on variables in the transform domain could be a valid assumption.
Maraun et al. [26] emphasized the usefulness of using Eq. (19) to obtain samples of stationary Gaussian process, and extended it to define a class of nonstationary Gaussian processes in the wavelet domain by the wavelet multipliers \( \left{y}_{\mathbf{\mathcal{W}}}\left(s,\tau \right)\right \), indicating that an individual process is defined by its multipliers and a synthesizing wavelet pair. Samples of x(t) based on such a definition are then given as,
where \( {e}^{i{\theta}_{\mathbf{\mathcal{W}}}\left(w(t)\right)}=\eta \left( WT\left(w(t)\right)\right) \). We use the intensity function \( \left{y}_{\mathbf{\mathcal{W}}}\left(s,\tau \right)\right \) and \( {e}^{i{\theta}_{\mathbf{\mathcal{W}}}\left(w(t)\right)} \) in Eq. (23) instead of using \( {y}_{\mathbf{\mathcal{W}}}\left(s,\tau \right) \) and WT(w(t)) as suggested in Maraun et al. [26]. The use of \( {e}^{i{\theta}_{\mathbf{\mathcal{W}}}\left(w(t)\right)} \) instead of WT(w(t)) is aimed at not biasing the energy arising from the intensity function since [WT(w(t))][WT(w(t))]^{∗} is not a constant in the wavelet domain by using WT defined in Eq. (12). The use of \( \left{y}_{\mathbf{\mathcal{W}}}\left(s,\tau \right)\right \) (as well as \( \left\hat{y}(f)\right \) in Eqs. (21) and (22)) is more restrictive than \( {y}_{\mathbf{\mathcal{W}}}\left(s,\tau \right) \) but is adequate for the proposed algorithm in the following section since we are focused on realvalued signals. However, a negatively valued intensity and complexvalued intensity may be considered for other applications.
Similar to the use of M(t) in defining the uniformly modulated evolutionary process mentioned earlier, we include M(t) in Eq. (23),
to define a modulated and intensity function adjusted (MODIF) process. The intensity function gives timescale characteristics of the process, and the modulation function provides additional timevarying characteristics of the process.
We further extend the concept of defining the MODIF process in the timefrequency domain according to ST, denoted as the Sdomain, where samples of x(t) are given as,
where \( {y}_{\mathbf{\mathcal{S}}}\left(f,\tau \right) \) is an intensity function in the Sdomain, and \( {e}^{i{\theta}_{\mathbf{\mathcal{S}}}\left(w(t)\right)}=\eta \left( ST\left(w(t)\right)\right) \).
It is noted that besides the abovementioned transforms, there are other transforms used for signal analysis and modeling; for example, the generalized Fourier family transforms [2]. Therefore, it is relevant and straightforward to conceptually generalize the approach in defining the MODIF processes in the transform domain if other transform pair is considered. The definitions lend themselves to an easily understandable and almost trivial algorithm to simulate stochastic processes:

A)
Sample Gaussian white noise, w(t), and calculate the normalized coefficients of w(t) in the transform domain (e.g., \( {e}^{i{\theta}_{\mathbf{\mathcal{F}}}\left(w(t)\right)} \), or \( {e}^{i{\theta}_{\mathbf{\mathcal{W}}}\left(w(t)\right)} \), or \( {e}^{i{\theta}_{\mathbf{\mathcal{S}}}\left(w(t)\right)} \) if FT, or WT, or ST is used, respectively).

B)
Apply the inverse transform to the product of the intensity function and the normalized coefficients obtained in Step A).

C)
Apply the modulation function to the simulated signal from Step B).
Step C) is separated from Steps A) and B) and is not affected by the selected transformation. A critical issue of applying the MODIF process with prescribed target energy distribution is that the energy distribution of the sampled signals for given intensity function may not be readily established, except for the case where FT is used (i.e., transforms with nonredundant representation). This is because unlike the FT, both WT and ST provide redundant representation. The redundant representation results in that, in general, \( \left{y}_{\mathbf{\mathcal{W}}}\left(s,\tau \right)\right{e}^{i{\theta}_{\mathbf{\mathcal{W}}}\left(w(t)\right)} \) and \( \left{y}_{\mathbf{\mathcal{S}}}\left(s,\tau \right)\right{e}^{i{\theta}_{\mathbf{\mathcal{S}}}\left(w(t)\right)} \) do not represent the proper coefficients of WT and ST, respectively. In other words, \( \left{y}_{\mathbf{\mathcal{W}}}\left(s,\tau \right)\right{e}^{i{\theta}_{\mathbf{\mathcal{W}}}\left(w(t)\right)} \) and \( \left{y}_{\mathbf{\mathcal{S}}}\left(s,\tau \right)\right{e}^{i{\theta}_{\mathbf{\mathcal{S}}}\left(w(t)\right)} \) are not equal to \( {x}_{\mathbf{\mathcal{W}}}\left(s,\tau \right)= WT\left( IWT\left(\left{y}_{\mathbf{\mathcal{W}}}\left(s,\tau \right)\right{e}^{i{\theta}_{\mathbf{\mathcal{W}}}\left(w(t)\right)}\right)\right) \) and \( {x}_{\mathbf{\mathcal{S}}}\left(f,\tau \right)= ST\left( IST\left(\left{y}_{\mathbf{\mathcal{S}}}\left(s,\tau \right)\right{e}^{i{\theta}_{\mathbf{\mathcal{S}}}\left(w(t)\right)}\right)\right) \), respectively.
To see the impact of this inequality on the simulated MODIF process by using Eq. (24), we note that we can define the doublesided timescale PSD (TSPSD) function of the simulated process x(t), \( {S}_{\mathbf{\mathcal{W}}x}\left(s,\tau \right) \), as,
The use of this definition leads to energy preservation since the integral of \( {S}_{\mathbf{\mathcal{W}}x}\left(s,\tau \right) \) in the wavelet domain equals the integral of x(t)^{2} in the time domain (see Proposition 2.4.1 in Daubechies [9]). Consequently, even we assign \( \left{y}_{\mathbf{\mathcal{W}}}\left(s,\tau \right)\right \) equals \( \sqrt{S_{\mathbf{\mathcal{W}}x}\left(s,\tau \right){C}_{\psi }}\lefts\right \) and M(t) = 1 for the simulation, the average energy of the sampled signals according to Eq. (24) will likely deviate from the specified target \( {S}_{\mathbf{\mathcal{W}}x}\left(s,\tau \right) \).
Consider that we simulate the MODIF process using Eq. (25). We can define the doublesided timefrequency PSD (TFPSD) function of the simulated process, \( {S}_{\mathbf{\mathcal{S}}x}\left(f,\tau \right) \), as,
since the use of this definition leads to energy preservation [18], where \( {D}_{\kappa }=\underset{\infty }{\overset{\infty }{\int }}\left(1/\left\zeta \right\right)\times \exp \left({\left(2\pi \kappa \left(\zeta 1\right)\right)}^2\right) d\zeta \). However, the average energy of the sampled signals by using Eq. (25) with \( \left{y}_{\mathbf{\mathcal{S}}}\left(f,\tau \right)\right \) equal to \( \left{x}_{\mathbf{\mathcal{S}}}\left(f,\tau \right)\right=\sqrt{S_{\mathbf{\mathcal{S}}x}\left(f,\tau \right){D}_{\kappa}\leftf\right} \) and M(t) = 1 will likely deviate from the specified target.
In addition to the discussed energy distortion, the application of the MODIF process is likely to lead to the samples obtained from Eqs. (22), (24) and (25) to follow a marginal cumulative distribution function (CDF) that deviates from the prescribed marginal CDF of the zeromean process F_{X, t}(x(t)). An iterative process is proposed in the following sections to simulate the nonstationary and nonGaussian with prescribed target PSD and CDF. The PSD functions that satisfy the energy preservation by considering the selected transform are used as the basis to describe the proposed algorithm to maintain consistency. Although this could become clumsy in some instances, it is useful in checking that a consistent transform pair is employed.
Iterative power and amplitude correction algorithm
IAAFT algorithm
To develop the proposed iterative algorithm, we note that, given the observed {x(jΔ_{t})}_{N}, the IAAFT algorithm was proposed by Schreiber and Schmitz [43, 44] in the context of generating surrogates for statistical hypothesis testing. The algorithm repeatedly uses FT and IFT, and ranked data. This algorithm is explained using the ranking of x(jΔ_{t}) in the following.
The PSD function \( {S}_{\mathbf{\mathcal{F}}x}(f) \) of {x(jΔ_{t})}_{N} is calculated using Eq. (19) with possible smoothing. The objective of IAFFT is to generate surrogates that match the calculated \( {S}_{\mathbf{\mathcal{F}}x}(f) \) and shuffled {x(jΔ_{t})}_{N}. A similar algorithm  the spectral correction algorithm  was independently designed by Masters and Gurley [27] to simulate nonGaussian processes for the given target \( {S}_{\mathbf{\mathcal{F}}x}(f) \) and target marginal CDF F_{X}(x(t)). A subtle difference between these two algorithms is how the prescribed target PSD function and CDF are obtained or assigned. For example, {x(jΔ_{t})}_{N} is obtained through distribution mapping in the spectral correction algorithm. In IAAFT, {x(jΔ_{t})}_{N} is given and shuffled. This shuffling, in the spectral correction method, can be viewed as matching the prescribed probability distribution. Once {x(jΔ_{t})}_{N} is prescribed and \( {S}_{\mathbf{\mathcal{F}}x}(f) \) is calculated, by letting {ξ(j)}_{N} equal to the ascendingly sorted {x(jΔ_{t})}_{N}, the steps of the IAAFT algorithm are:

1.
Sample a sequence of Gaussian white noise, w(t), of length N, calculate \( {e}^{i{\phi}_p}=\eta \left( FT\left(w(t)\right)\right) \);

2.
Calculate \( {x}_{PC}\left(j{\Delta}_t\right)={IFT}_p\left(\left\sqrt{S_{\mathbf{\mathcal{F}}x}\left(p{\Delta}_f\right)T}\right{e}^{i{\phi}_p}\right) \) and find the ranking of x_{PC}(jΔ_{t}), r_{j}, for j = 0, …, N − 1, based on the ascending order;

3.
Set x_{AC}(jΔ_{t}) = ξ(r_{j}), for j = 0, …, N − 1; and calculate \( {e}^{i{\phi}_p}=\eta \left({FT}_j\left({x}_{AC}\left(j{\Delta}_t\right)\right)\right) \), and.

4.
Repeat Steps 2) to 3) until the convergence criterion is achieved.
Steps 1) and 2) are the same as Steps A) and B) described earlier that simulates a Gaussian process, except an additional ranking of x_{PC}(jΔ_{t}) is carried out, which is equivalent to define the CDF as a preparation for the iteration. In general, Step 2) leads to x_{PC}(jΔ_{t}) with the PSD correction but may deviate from the target CDF assigned by {ξ(j)}_{N}, and Step 3) leads to the sampled x_{AC}(jΔ_{t}) with the amplitude correction (i.e., matching CDF assigned based on {ξ(j)}_{N}) but may deviate from the target PSD. The iteration adjusts the PSD and CDF of the sampled time series to their corresponding targets. The tolerable differences between x_{PC}(jΔ_{t}) and x_{AC}(jΔ_{t}) can be used as the convergence criterion. Once convergence is achieved x_{PC}(jΔ_{t}) or x_{AC}(jΔ_{t}) can be used as the sampled time series. Note that since the time increment equals Δ_{t}, the corresponding Nyquist frequency for the considered signal equals 1/(2Δ_{t}).
The IAAFT algorithm is designed for stationary processes. For the shuffling of {x(jΔ_{t})}_{N} to simulation stationary process, it is implicitly considered that the marginal CDF of x(t) at any given time remains to be the same. Also, the PSD function for the stationary process is timeindependent. The IAAFT algorithm or the spectral correction method is not applicable to simulate nonstationary processes as they have timevarying PSD and CDF.
Proposed iterative power and amplitude correction algorithm
In this section, we describe the proposed iterative power and amplitude correction (IPAC) algorithm to simulate the time history {x(jΔ_{t})}_{N} of a zeromean nonstationary nonGaussian process. Since Δ_{t} is assigned, N can be determined based on the length of the signal to be simulated and vice versa, and the Nyquist frequency for the sampled signal equals 1/(2Δ_{t}). The proposed algorithm could be viewed as an extension to the IAAFT algorithm. For the simulation, it is considered that, for M(t) = 1, the PSD function of the process that is characterized based on FT, or ST, or WT is given, and the distribution type for the marginal CDF of x(t), F_{X, t}(x(t)), is known. Moreover, it is considered that F_{X, t}(x(t)) can be completely defined by the zeromean, the timevarying standard deviation, σ(t), and other prescribed distribution parameters if they are required (since, in some cases, a CDF with more than two parameters may be considered).
If FT is considered for a stationary process, the standard deviation σ(t) equals \( \sqrt{\lambda_{\mathbf{\mathcal{F}}x}} \) which is timeindependent, where \( {\lambda}_{\mathbf{\mathcal{F}}x} \), equals the integral of \( {S}_{\mathbf{\mathcal{F}}x}(f) \) over the frequency domain. Since \( {S}_{\mathbf{\mathcal{S}}x}\left(f,\tau \right) \) provides the energy distribution over the timefrequency domain, the integral of \( {S}_{\mathbf{\mathcal{S}}x}\left(f,\tau \right) \) over the frequency domain provides the energy distribution in the time domain, \( {\lambda}_{\mathbf{\mathcal{S}}x}\left(\tau \right) \),
and the integral of \( {S}_{\mathbf{\mathcal{S}}x}\left(f,\tau \right) \) over the time domain provides the energy distribution in the frequency domain, \( {S}_{\mathbf{\mathcal{S}}x}(f) \). Analogously to the statistics for the stationary process, \( {\lambda}_{\mathbf{\mathcal{S}}x}\left(\tau \right) \) represents the variance of x(τ), and σ(t) equals \( \sqrt{\lambda_{\mathbf{\mathcal{S}}x}(t)} \). Similarly, for the given \( {S}_{\mathbf{\mathcal{W}}x}\left(s,\tau \right) \), the timevarying variance \( {\lambda}_{\mathbf{\mathcal{W}}x}\left(\tau \right) \) is given by,
and σ(t) equals \( \sqrt{\lambda_{\mathbf{\mathcal{W}}x}(t)} \). The integral of \( {S}_{\mathbf{\mathcal{W}}x}\left(s,\tau \right) \) over the time domain provides the energy distribution in the scale domain, \( {S}_{\mathbf{\mathcal{W}}x}(s) \).
Let u(t) be a uniformly distributed random variable between 0 and 1 with its marginal CDF denoted as U(u(t)). The relation between u(t) and x(t) can be established based on the probability transformation, U(u(t)) = F_{X, t}(x(t)). The steps in the IPAC algorithm in a pseudocode form are shown in the flowchart depicted in Fig. 1 and are described as follows:

I)
Prescribe the targets and initiate the simulation process:
Sample {u(jΔ_{t})}_{N} based on a random number generation algorithm for a uniformly distributed random variable between 0 and 1. Assign {p(j)}_{N} equal to the ascendingly sorted {u(jΔ_{t})}_{N}, and the intensity function \( \left{y}_{\mathbf{\mathcal{Tf}}}\left({\overset{\rightharpoonup }{s}}_p\right)\right \) according to the considered transform pair (Tf(•), ITf(•)), where.

a.
For (Tf(•), ITf(•)) = (FT(•), IFT(•)), \( \left{y}_{\mathbf{\mathcal{Tf}}}\left({\overset{\rightharpoonup }{s}}_p\right)\right=\left{y}_{\mathbf{\mathcal{F}}}(f)\right=\sqrt{S_{\mathbf{\mathcal{F}}x}(f)T} \), and \( \sigma (t)=\sqrt{\lambda_{\mathbf{\mathcal{F}}x}} \) which is timeindependent,

b.
For (Tf(•), ITf(•)) = (ST(•), IST(•)), \( \left{y}_{\mathbf{\mathcal{Tf}}}\left({\overset{\rightharpoonup }{s}}_p\right)\right=\left{y}_{\mathbf{\mathcal{S}}}\left(f,\tau \right)\right=\sqrt{S_{\mathbf{\mathcal{S}}x}\left(f,\tau \right){D}_{\kappa}\leftf\right} \), and \( \sigma (t)=\sqrt{\lambda_{\mathbf{\mathcal{S}}x}(t)} \),

c.
For (Tf(•), ITf(•)) = (WT(•), IWT(•)), \( \left{y}_{\mathbf{\mathcal{Tf}}}\left({\overset{\rightharpoonup }{s}}_p\right)\right=\left{y}_{\mathbf{\mathcal{W}}}\left(s,\tau \right)\right=\sqrt{S_{\mathbf{\mathcal{W}}x}\left(s,\tau \right){C}_{\psi }}\lefts\right \), and \( \sigma (t)=\sqrt{\lambda_{\mathbf{\mathcal{W}}x}(t)} \).

II)
Iteration steps:
II.1) Sample a sequence of Gaussian white noise, w(t), of length N, calculate \( {e}^{i{\phi}_{\mathbf{\mathcal{Tf}}}\left({\overset{\rightharpoonup }{s}}_p\right)}=\eta \left( Tf\left(w(t)\right)\right) \);
II.2) Calculate \( {x}_{PC}\left(j{\Delta}_t\right)= ITf\left(\left{y}_{\mathbf{\mathcal{Tf}}}\left({\overset{\rightharpoonup }{s}}_p\right)\right{e}^{i{\phi}_{\mathbf{\mathcal{Tf}}}\left({\overset{\rightharpoonup }{s}}_p\right)}\right) \), \( {p}_{PC}\left(j{\Delta}_t\right)={F}_{X,j{\Delta}_t}\left({x}_{PC}\left(j{\Delta}_t\right)\right) \), and find the rank of p_{PC}(jΔ_{t}), denoted as r_{j}, for j = 0, …, N − 1;
II.3) Set \( {x}_{AC}\left(j{\Delta}_t\right)={F}_{X,j{\Delta}_t}^{1}\left(p\left({r}_j\right)\right) \), for j = 0, …, N − 1; and calculate \( {e}^{i{\phi}_{\mathbf{\mathcal{Tf}}}\left({\overset{\rightharpoonup }{s}}_p\right)}=\eta \left( Tf\left({x}_{AC}\left(j{\Delta}_t\right)\right)\right) \);
II.4) Repeat Steps II.2) to II.3) until the convergence criterion is satisfied.
II.5) x(jΔ_{t}) = M(jΔ_{t}) × x_{AC}(jΔ_{t}).
The algorithm essentially simulates the MODIF process and iteratively corrects the PSD and CDF. The intensity function and the transform pair are used from Steps I) to II.4), while the modulation function only affects the assignment of the final results in Step II.5). Since x_{AC}(jΔ_{t}) is used in Step II.5), the distribution match (i.e., matching samples of F_{X}(X(t)), {x(jΔ_{t})}_{N}) is ensured by design. One could replace Step II.5) with x(jΔ_{t}) = M(jΔ_{t}) × x_{PC}(jΔ_{t}) without altering the results if a stringent convergence criterion is employed. As can be observed from the steps of the IPAC algorithm, the analysis, as well as the simulation, is carried out within the same transform pair. It avoids the need to map the obtained results from one type of transform into a different kind of transform (e.g., obtaining the spectrum using continuous WT and then transform it into evolutionary PSD). The algorithm emphasizes the ranking and matching of the probability values. Note that it may be attempting to replace the uniform distribution with the normal distribution for u(t). However, by doing so, it requires the use of the inverse distribution transformation in Steps II.2 and II.3) and increases computing demand.
The algorithm can be simplified if F_{X, t}(x(t)) remains unchanged and only depends on σ(t), that is, the marginal probability distribution of z(t) = x(t)/σ(t), F_{Z}(z(t)), is timeindependent and z(t) has zero mean and unit variance. In such a case, we calculate \( {\left\{\zeta (j)\right\}}_N={\left\{{F}_Z^{1}\left(p(j)\right)\right\}}_N \) in Step I); we replace “ \( {p}_{PC}\left(j{\Delta}_t\right)={F}_{X,j{\Delta}_t}\left({x}_{PC}\left(j{\Delta}_t\right)\right) \) ” in Step II.2) and “ \( {x}_{AC}\left(j{\Delta}_t\right)={F}_{X,j{\Delta}_t}^{1}\left(p\left({r}_j\right)\right) \) ” in Step II.3) with “ p_{PC}(jΔ_{t}) = x_{PC}(jΔ_{t})/σ(jΔ_{t}) ” and “ x_{AC}(jΔ_{t}) = ζ(r_{j})σ(jΔ_{t}) ”, respectively. This avoids the use of probability distribution function during the iteration to gain extra computational efficiency. This simplified version can also be used to generate surrogate for observed {x(jΔ_{t})}_{N}, which has the effect of the modulation function already removed. This is done by calculating {z(jΔ_{t})}_{N} = {x(jΔ_{t})/σ(jΔ_{t})}_{N}, and letting {ζ(j)}_{N} equal to the ascendingly sorted {z(jΔ_{t})}_{N} in Step I.1) (instead of \( {\left\{\zeta (j)\right\}}_N={\left\{{F}_Z^{1}\left(p(j)\right)\right\}}_N \)), where σ(jΔ_{t}) is to be calculated based on the PSD function estimated from {x(jΔ_{t})}_{N} by using a preferred transform.
The usefulness of surrogate in the context of wind engineering was presented in McCullough and Kareem [28]. The proposed algorithm, when used with WT to generate surrogate, differs from that given in Chavez and Cazelles [4] for testing timelocalized coherence, in that the timevarying σ(jΔ_{t}) is neglected in their algorithm (i.e., the amplitude adjustment is based on {x(jΔ_{t})}_{N} rather than its normalized version in the IPAC algorithm). This is convenient and may likely speed up the convergence of the algorithm. However, the basis for the shuffling of {x(jΔ_{t})}_{N} is unclear if the marginal probability distribution of x(jΔ_{t}) for a nonstationary process is assumed to be timevarying.
Numerical examples
In this section, we illustrate the proposed algorithm by generating surrogate for a given ground motion record and for a given fluctuating component of wind velocity time history of a highintensity wind event. We apply the algorithm to sample nonstatinary ground motions for prescribed target PSD, where the target is defined based on a set of ground motion records, and the CDF is assumed to be Gaussian and nonGaussian. The test of the proposed algorithm for esoteric mathematical models is beyond the consideration of the present study.
Generating surrogate for an earthquake record
Consider the record shown in Fig. 2. By applying ST with the window parameter κ = 1 (see Eq. (6)), the obtained TFPSD function is shown in Fig. 3a, and the calculated timevarying σ(t) is presented in Fig. 3b, showing that the TFPSD varies in time and frequency.
By applying the IPAC algorithm, a surrogate is simulated and shown in Fig. 3b. The TFPSD of this surrogate is depicted in Fig. 3c. The figure shows that the surrogate resembles the given record, and its TFPSD function resembles well that shown in Fig. 3a. As x_{AC}(t) is used for generating surrogate (see Step II.5 in IPAC algorithm), the amplitude (or probability distribution) matching is certain, so no plot is provided. Additional test runs indicate that the convergence is usually achieved within five iterations, depending on the adopted convergence criterion. It was noted that the average TFPSD function from multiple generated surrogates tends to be smoother as compared to the TFPSD of the observed record, which is expected since the observed as well as a single sampled record are realizations of stochastic processes.
The analysis based on ST is repeated but by applying WT using the generalized morse wavelets (GMWs) [33],
where U(ω) is the Heaviside function, a_{β, γ} = 2(eγ/β)^{β/γ}, and β and γ are model parameters. For GMW, C_{ψ} = 2a_{2β, γ}Γ(2β, γ)/(2γ) and C_{1ψ} = a_{β, γ}Γ(β, γ)/(γ). The GMW is an analytical wavelet, and it was used to evaluate the coherence of the seismic ground motions [39]. For the numerical analysis, β = 3, γ = 20, c_{0} = 0.528, s_{0} = 2^{0.1} and K = 91 (see Eq.(17)) are employed since these values are suggested as the default values for the algorithm implemented in MATLAB (Version 2019a). The obtained TSPSD and σ(t) of the record are shown in Fig. 4a and b, respectively. A generated surrogate is also shown in Fig. 4b with its corresponding TSPSD function depicted in Fig. 4c. An inspection of the surrogate depicted in Fig. 4b and the original record presented in Fig. 2 indicates that they exhibit similar temporal trends. The TSPSD of the surrogate resembles that of the given record. Again, the convergence is achieved within a few iterations. A comparison of σ(t) shown in Figs. 3 and 4b indicates that they are almost identical. The minor differences between them are due to that ST and WT have different timefrequency (or timescale) decomposition.
Generating surrogate for a wind record
Now, consider a wind record presented in Fig. 5a. For simplicity, the box window with a width of 32 samples is used to find the mean wind velocity of the timevarying wind record. By removing the mean, the fluctuating component of the wind is presented in Fig. 5b.
By applying ST and WT, and following the same analyses that are carried out for the ground motion record shown in the previous section, the obtained results are presented in Figs. 6 and 7. In general, the observations that can be drawn from this example are similar to those presented in the previous section for the ground motion record.
Simulating ground motions
Consider a set of 12 ground motion records oriented in the EW direction for a seismic event that occurred on January 16, 1986, with a local magnitude of 6.1, focal depth of 10.2 km, and an epicentral distance of 25.2 km. These records are recorded by the LSST array in Lotung, Taiwan, where the separation between any two recording sites is less than 100 m, as shown in Fig. 8a. Three records from the 15 recording sites seem to be corrupted and are not considered. The record obtained from FA1 site is illustrated in Fig. 8b. To minimizing the wave passage effect, first, each of the remaining 11 records is timeshifted with respect to the record presented in Fig. 8b such that the sum of the product of a considered record and that shown in Fig. 8b is maximized after the shift.
It is assumed that the average PSD of the considered 12 records could provide a good representation of the ground motions, at least for such type of seismic event. The calculated average TFPSD based on ST and the calculated average TSPSD based on WT are shown in Fig. 8c and d, respectively. The calculated σ(t) by using the average TFPSD and the average TSPSD presented in Fig. 8c and d are included in Fig. 8b. The obtained PSD and the standard deviation indicate the nonstationarity of the ground motions. σ(t) values obtained by using ST and WT are in very good agreement.
An assessment of the empirical probability distribution of the standardized variable z(t) = x(t)/σ(t) is carried out by considering all 12 records. The empirical distribution of z(t) by considering all 12 records is presented in Fig. 9, indicating that the empirical distribution can be fitted by a normal distribution only for the initial segment of the records. Moreover, the distribution shape is timevarying and nonGaussian. The nonGaussian behaviour of the ground motions is supported by the findings given in Radu and Grigoriu [40], indicating that the Gaussian assumption for the seismic ground motions records included in the PEER NGAWest dataset may not always appropriate. However, for this particular set of records, the tail of the distribution is shorter than that of the normal distribution, which differs from the longer tail behaviour suggested by Radu and Grigoriu [40].
For illustration purposes, it is assumed that the marginal probability density function of x(t) can be represented by the generalized Gaussian distribution (GGD) [29, 54],
where μ denotes the mean, β_{0} and β_{1} are positive model parameters, and Γ(·) denotes the gamma function. If β_{0} equals 2, it represents the normal distribution. For β_{0} > 2 and < 2, the distribution tail is lighter and heavier than that of normal distribution. The variance equals \( {\beta}_1^2\Gamma \left(3/{\beta}_0\right)/\Gamma \left(1/{\beta}_0\right) \), and the kurtosis coefficient equals Γ(5/β_{0})Γ(1/β_{0})/Γ^{2}(3/β_{0}).
By considering β_{0} = 2 and \( {\beta}_1=\sqrt{2} \) (i.e., standard Gaussian), we use ST and the average target TFPSD function shown in Fig. 8c to sample the records using the IPAC algorithm. Since a comparison of two sampled records is irrelevant for a stochastic process, only a sampled record is illustrated in Fig. 10a. The average TFPSD function obtained from the 1000 sampled records is presented in Fig. 10b, and the calculated spectral acceleration (SA) for a damping ratio of 5% is shown in Fig. 10c for the 1000 sampled records. Similarly, we use WT and the average target TFPSD function shown in Fig. 8d to carry out the simulation. The obtained results are presented in Fig. 10df. The PSD functions shown in Fig. 10b and e are almost identical to their corresponding targets presented in Fig. 8c and d. The mean of SA values shown in Fig. 10c and f are in good agreement. The standard deviation of SA obtained by using ST smaller than that obtained by using WT.
We have tested the IPAC algorithm to simulate ground motions for additionally selected target PSD functions. It was observed that in some cases, when the initial or final segment of records has less than 0.5% of total energy, the algorithm may converge very slowly or may not converge. In such a case, it is suggested that such segments with negligible energy are to be truncated. This is in agreement with common practice in earthquake engineering.
To simulate the nonGaussian process, we consider f_{X, t}(x(t)) shown in Eq. (31) but with β_{0} = 3.01 and β_{1} = 1.54 (i.e., a kurtosis coefficient of 2.4) since their use fit the data adequately, as depicted in the last plot in Fig. 9. We repeat the analysis that is carried out for the results presented in Fig. 10. The obtained results for nonGaussian ground motions are presented in Fig. 11. A comparison of the results shown in Figs. 10 and 11 indicates that the results follow the same trends. To assess the quantitative differences between the obtained SA based on Gaussian and nonGaussian assumptions, we calculate the ratio of the mean of SA shown in Fig. 11 (i.e., nonGaussian case) to its corresponding value shown in Fig. 10 (i.e., Gaussian case). We do the same for the standard deviation of SA. The obtained values are presented in Fig. 12, indicating that the mean and standard deviation of SA for the nonGaussian case with a lighter tail are smaller than those for the Gaussian case for the vibration period less than about 0.5 s. The decrease in SA by considering nonGaussian excitation is most noticeable for a shorter vibration period. This is because stiffer structures are more sensitive to peak acceleration values. In general, the ratio based on ST is smoother than that based on WT. Note that we refrained from discussing the ratio between the SA values obtained based on ST and WT since such a comparison could be misleading because the TSPSD and TSPSD used are based only on 12 records and from the same seismic event.
We note that the simulation of a record (Gaussian or nonGaussian) described in Figs. 10 and 11 is carried out by using a laptop with Intel(R) Core (TM) i7–7700 CPU @ 3.60GHz (6 core and 12 treads). The wall clock time for simulating a record (including I/O) is less than about 0.5 s if ST is used and is less than about 0.15 s if CWT is used. The difference in the computing time by using ST and CWT can be explained by noting that the octave scale is used in CWT.
Summary and conclusions
We elaborated on the concept of defining a modulated and intensity function adjusted (MODIF) stochastic process in the transform domain. The definitions of the stochastic processes in the transform domain lend themselves to an easily understandable and almost trivial algorithm to simulate stochastic processes. As such a simulated signal may not lead to the prescribed target power spectral density function and marginal cumulative distribution function of the process, we proposed a new iterative algorithm, called iterative power and amplitude correction (IPAC) algorithm, so the sampled signal after the iteration have the prescribed properties. Besides simulating nonstationary and nonGaussian processes, the proposed iterative algorithm can be used to generate surrogate. The algorithm can be used with Fourier transform, Stransform, and continuous wavelet transforms.
Practical illustrative numerical examples showed the applicability of the proposed algorithm by sampling surrogates for the ground motions and the fluctuating component of winds. The use of the IPAC algorithm to simulate nonstationary Gaussian and nonGaussian ground motions based on Stransform (ST) and continuous wavelet transform (WT) is presented. The spectral accelerations are calculated using the simulated records. In general, the mean and standard deviation of SA of the simulated records based on ST and based on WT agree well despite the differences between ST and continuous WT and between the frequencydependent window used in ST and the generalized Morse wavelet used in the continuous WT.
Availability of data and materials
The ground motion record shown in Fig. 2 is from http://aplicaciones.iingen.unam.mx/AcelerogramasRSM/Inicio.aspx; the 12 ground motion records from LSST array are from http://www.earth.sinica.edu.tw/. Some or all data, models or code generated or used during the study are available from the corresponding author by request. These include all the coefficients of FT, ST, and WT used in the present study and the simulated time histories.
Abbreviations
 CDF:

Cumulative distribution function
 FT:

Fourier transform
 FFT:

Fast Fourier transform
 GMWs:

Generalized morse wavelets
 GGD:

Generalized Gaussian distribution
 MODIF:

Modulated and intensity function adjusted
 IAAFT:

Iterative amplitude adjusted Fourier transform
 IFT:

Inverse Fourier transform
 IPAC:

Iterative power and amplitude correction
 PSD:

power spectral density
 SA:

Spectral acceleration
 ST:

Stransform
 TFPSD:

Timefrequency PSD
 TSPSD:

Timescale PSD
 WT:

Wavelet transform
References
 1.
Boore DM (2009) Comparing stochastic pointsource and finitesource groundmotion simulations: SMSIM and EXSIM. Bull Seismol Soc Am 99(6):3202–3216. https://doi.org/10.1785/0120090056
 2.
Brown RA, Lauzon ML, Frayne R (2009) A general description of linear timefrequency transforms and formulation of a fast, invertible transform that samples the continuous Stransform spectrum nonredundantly. IEEE Trans Signal Process 58(1):281–290
 3.
Celik OC, Ellingwood BR (2009) Seismic risk assessment of gravity load designed reinforced concrete frames subjected to midAmerica ground motions. J Struct Eng 135(4):414–424. https://doi.org/10.1061/(ASCE)07339445(2009)135:4(414)
 4.
Chavez M, Cazelles B (2019) Detecting dynamic spatial correlation patterns with generalized wavelet coherence and nonstationary surrogate data. Sci Rep 9(1):1–9
 5.
Chen L, Letchford CW (2007) Numerical simulation of extreme winds from thunderstorm downbursts. J Wind Eng Ind Aerodyn 95(9–11):977–990. https://doi.org/10.1016/j.jweia.2007.01.021
 6.
Cohen L (1995) Timefrequency analysis. PrenticeHall, New Jersey
 7.
Cramér H, Leadbetter MR (2013) Stationary and related stochastic processes: sample function properties and their applications. Courier Corporation, Massachusetts.
 8.
Cui XZ, Hong HP (2020) Use of discrete orthonormal Stransform to simulate earthquake ground motions. Bull Seismol Soc Am 110(2):565–575. https://doi.org/10.1785/0120190212
 9.
Daubechies I (1992) Ten lectures on wavelets. Siam, Philadephia. https://doi.org/10.1137/1.9781611970104
 10.
Deodatis G (1996) Nonstationary stochastic vector processes: seismic ground motion applications. Probabilist Eng Mechanics 11(3):149–167. https://doi.org/10.1016/02668920(96)000070
 11.
Deodatis G, Micaletti RC (2001) Simulation of highly skewed nonGaussian stochastic processes. J Eng Mech 127(12):1284–1295. https://doi.org/10.1061/(ASCE)07339399(2001)127:12(1284)
 12.
Ferrante FJ, Arwade SR, GrahamBrady LL (2005) A translation model for nonstationary, nonGaussian random processes. Probabil Eng Mechanics 20(3):215–228. https://doi.org/10.1016/j.probengmech.2005.05.003
 13.
Gast KD, Schroeder J L (2003). Supercell rearflank downdraft as sampled in the 2002 thunderstorm outflow experiment. In: 11th Int. Conf. on Wind Engineering, Lubbock, TX, Int. Assoc. for Wind Engin. and Amer. Assoc. for Wind Engin (Vol. 2233, p. 2240)
 14.
Grigoriu M (1998) Simulation of stationary nonGaussian translation processes. J Eng Mech 124(2):121–126. https://doi.org/10.1061/(ASCE)07339399(1998)124:2(121)
 15.
Gurley K, Kareem A (1997) Analysis interpretation modeling and simulation of unsteady wind and pressure data. J Wind Eng Ind Aerodyn 69:657–669
 16.
Gurley K, Kareem A (1999) Applications of wavelet transforms in earthquake, wind and ocean engineering. Eng Struct 21(2):149–167
 17.
Hong HP (2016) Modeling of nonstationary winds and its applications. J Eng Mech 142(4):04016004. https://doi.org/10.1061/(ASCE)EM.19437889.0001047
 18.
Hong HP (2020) Response and first passage probability of SDOF systems subjected to nonstationary stochastic excitation modelled through Stransform Submitted to Structural Safety
 19.
Hong HP, Cui XZ (2020) Timefrequency spectral representation models to simulate nonstationary processes and their use to generate ground motions. J Eng Mechanics, ASCE 146(9):04020106. https://doi.org/10.1061/(ASCE)EM.19437889.0001827
 20.
Huang G, Chen X (2009) Waveletsbased estimation of multivariate evolutionary spectra and its application to nonstationary downburst winds. Eng Struct 31(4):976–989. https://doi.org/10.1016/j.engstruct.2008.12.010
 21.
Kwon D, Kareem A (2009) Gustfront factor: new framework for wind load effects on structures, J. Struct. Engrg. ASCE 135(6):717–732. https://doi.org/10.1061/(ASCE)07339445(2009)135:6(717)
 22.
Li J, Chen J (2009) Stochastic dynamics of structures. Wiley (Asia) Pte Ltd., Beijing.
 23.
Liang J, Chaudhuri SR, Shinozuka M (2007) Simulation of nonstationary stochastic processes by spectral representation. J Eng Mech 133(6):616–627. https://doi.org/10.1061/(ASCE)07339399(2007)133:6(616)
 24.
Liu TJ, Hong HP (2015) Application of spatially correlated and coherent records of scenario event to estimate seismic loss of a portfolio of buildings. Earthquake Spectra 31(4):2047–2068. https://doi.org/10.1193/060513EQS143M
 25.
Lutes LD, Sarkani S (2004) Random vibrations: analysis of structural and mechanical systems. ButterworthHeinemann, Oxford.
 26.
Maraun D, Kurths J, Holschneider M (2007) Nonstationary Gaussian processes in wavelet domain: synthesis, estimation, and significance testing. Phys Rev E 75(1):016707. https://doi.org/10.1103/PhysRevE.75.016707
 27.
Masters F, Gurley KR (2003) NonGaussian simulation: cumulative distribution function mapbased spectral correction. J Eng Mech 129(12):1418–1428. https://doi.org/10.1061/(ASCE)07339399(2003)129:12(1418)
 28.
McCullough M, Kareem A (2013) Testing stationarity with waveletbased surrogates. J Eng Mech 139(2):200–209. https://doi.org/10.1061/(ASCE)EM.19437889.0000484
 29.
Nadarajah S (2005) A generalized normal distribution. J Appl Stat 32(7):685–694. https://doi.org/10.1080/02664760500079464
 30.
Newland DE (2012) An introduction to random vibrations, spectral and wavelet analysis. Courier Corporation, Massachusetts.
 31.
Newmark NM, Rosenblueth E (1971) Fundamentals of earthquake engineering. Prentice Hall, New Jersey.
 32.
Ochi MK (2005) Ocean waves: the stochastic approach (Vol. 6). Cambridge University Press, Cambridge.
 33.
Olhede SC, Walden AT (2002) Generalized Morse wavelets. IEEE Trans Signal Process 50(11):2661–2670. https://doi.org/10.1109/TSP.2002.804066
 34.
Orwig KD, Schroeder JL (2007) Nearsurface wind characteristics of extreme thunderstorm outflows. J Wind Eng Ind Aerodyn. 95(7):565–584
 35.
Percival DB, Walden AT (2000) Wavelet method for time series analysis. Cambridge university press, Cambridge
 36.
Phoon KK, Huang SP, Quek ST (2002) Simulation of secondorder processes using Karhunen–Loeve expansion. Comput Struct 80(12):1049–1060. https://doi.org/10.1016/S00457949(02)000640
 37.
Pinnegar CR, Mansinha L (2003) The Stransform with windows of arbitrary and varying shape. Geophysics 68(1):381–385. https://doi.org/10.1190/1.1543223
 38.
Priestley MB (1965) Evolutionary spectra and nonstationary processes. J R Stat Soc B 27:204–237
 39.
Qiao D, Zhi X, Fan F, Hong H (2020) Estimation of wavelet coherence of seismic ground motions. Bull Seismol Soc Am 110(2):613–628. https://doi.org/10.1785/0120190160
 40.
Radu A, Grigoriu M (2018) A sitespecific groundmotion simulation model: application for Vrancea earthquakes. Soil Dyn Earthq Eng 111:77–86. https://doi.org/10.1016/j.soildyn.2018.04.025
 41.
Sakamoto S, Ghanem R (2002) Polynomial chaos decomposition for the simulation of nonGaussian nonstationary stochastic processes. J Eng Mech 128(2):190–201. https://doi.org/10.1061/(ASCE)07339399(2002)128:2(190)
 42.
Samaras E, Shinzuka M, Tsurui A (1985) ARMA representation of random processes. J Eng Mech 111(3):449–461. https://doi.org/10.1061/(ASCE)07339399(1985)111:3(449)
 43.
Schreiber T, Schmitz A (1996) Improved surrogate data for nonlinearity tests. Phys Rev Lett 77(4):635–638. https://doi.org/10.1103/PhysRevLett.77.635
 44.
Schreiber T, Schmitz A (2000) Surrogate time series. Physica D: Nonlinear Phenomena 142(3–4):346–382. https://doi.org/10.1016/S01672789(00)000439
 45.
Shensa MJ (1992) The discrete wavelet transform: wedding the a trous and Mallat algorithms. IEEE Trans Signal Process 40(10):2464–2482. https://doi.org/10.1109/78.157290
 46.
Shields MD, Deodatis G, Bocchini P (2011) A simple and efficient methodology to approximate a general nonGaussian stationary stochastic process by a translation process. Probabilist Eng Mechanics 26(4):511–519. https://doi.org/10.1016/j.probengmech.2011.04.003
 47.
Shinozuka M, Jan CM (1972) Digital simulation of random processes and its applications. J Sound Vib 25(1):111–128. https://doi.org/10.1016/0022460X(72)906001
 48.
Simiu E, Scanlan RH (1996) Wind effects on structures: fundamentals and applications to design, 3rd edn. Wiley, USA
 49.
Spanos P, Ghanem R (1989) Stochastic finite element expansion for random media. J Eng Mech 115(5):1035–1053. https://doi.org/10.1061/(ASCE)07339399(1989)115:5(1035)
 50.
Spanos PD, Failla G (2004) Evolutionary spectra estimation using wavelets. J Eng Mech 130(8):952–960. https://doi.org/10.1061/(ASCE)07339399(2004)130:8(952)
 51.
Spanos PD, Beer M, RedHorse J (2007) Karhunen–Loève expansion of stochastic processes with a modified exponential covariance kernel. J Eng Mech 133(7):773–779. https://doi.org/10.1061/(ASCE)07339399(2007)133:7(773)
 52.
Stockwell RG (2007) A basis for efficient representation of the Stransform. Digit Signal Process 17(1):371–393. https://doi.org/10.1016/j.dsp.2006.04.006
 53.
Stockwell RG, Mansinha L, Lowe RP (1996) Localization of the complex spectrum: the S transform. IEEE Trans Signal Process 44(4):998–1001. https://doi.org/10.1109/78.492555
 54.
Subbotin MF (1923) On the law of frequency of errors. Matematicheskii Sbornik 31:296–301
 55.
Tamura Y, Kareem A (eds) (2013) Advanced structural wind engineering (Vol. 482). Springer, New York. https://doi.org/10.1007/9784431543374
 56.
Wen YK, Gu P (2004) Description and simulation of nonstationary processes based on Hilbert spectra. J Eng Mech 130(8):942–951. https://doi.org/10.1061/(ASCE)07339399(2004)130:8(942)
 57.
Yamamoto Y, Baker JW (2013) Stochastic model for earthquake ground motion using wavelet packets. Bull Seismol Soc Am 103(6):3044–3056. https://doi.org/10.1785/0120120312
 58.
Yamazaki F, Shinozuka M (1988) Digital generation of nonGaussian stochastic fields. J Eng Mech 114(7):1183–1197. https://doi.org/10.1061/(ASCE)07339399(1988)114:7(1183)
 59.
Yang JN (1972) Simulation of random envelope processes. J Sound Vib 21(1):73–85. https://doi.org/10.1016/0022460X(72)902076
 60.
Yang SC, Liu TJ, Hong HP (2017) Reliability of tower and towerline systems under spatiotemporally varying wind or earthquake loads. J Struct Eng 143(10):04017137. https://doi.org/10.1061/(ASCE)ST.1943541X.0001835
Acknowledgments
We thank W.X. Zhou for his constructive comments.
Funding
The Natural Sciences and Engineering Research Council of Canada (RGPIN201604814, for HPH). The China Scholarship Council (No.201707980007, for XZC).
Author information
Affiliations
Contributions
H.P. Hong: Conceptualization, design of the work, funding acquisition, analysis, interpretation of data, writing  original draft, review & editing. X.Z. Cui: Design of the work, analysis, interpretation of data, writing  original draft, review & editing, the creation of new software used in the work. Q. Da: Analysis, interpretation of data, writing  original draft. The authors read and approved the final manuscript.
Corresponding author
Ethics declarations
Competing interests
The authors declare that they have no competing interests.
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Submitted for possible publication to Journal of Infrastructure Preservation and Resilience
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Hong, H.P., Cui, X.Z. & Qiao, D. An algorithm to simulate nonstationary and nonGaussian stochastic processes. J Infrastruct Preserv Resil 2, 17 (2021). https://doi.org/10.1186/s43065021000305
Received:
Accepted:
Published:
Keywords
 Simulation
 Nonstationary and nonGaussian process
 Stransform
 Continuous wavelet transforms
 Seismic ground motions
 Wind velocity