Site spectrum of a rock quantile spectrum by quadrature
integrateSiteSpectrum.RdQuantiles and mean of the spectral acceleration at a site of velocity
VS30, from a rock spectrum given at each oscillator period by its mean and its
quantiles, integrating the joint rock demand of PGA and the ordinate and
the site factor of evaluateSiteFactor() without random numbers. The
site quantiles are reported at the probability levels of the rock
spectrum. refineSiteSpectrum() chooses the order;
simulateSiteSpectrum() samples the same model; a rock spectrum given
only by its means is the conditional case of evaluateSiteSa().
Arguments
- spectrum
A table with columns
Tn(s),p("mean"or a probability label) andSa(g): exactly one row atTn == 0andp == "mean", and at PGA and every period at least three unique, positive, non-decreasing quantiles. Periods without a single mean row are skipped.- VS30
One target velocity in m/s.
- Vref
One reference velocity in m/s; 760 or 3000 unless it equals
VS30.- model
Site factor model of
evaluateSiteFactor(),"ST20"or"ST17".- order
One integer, at least 4: Gauss-Legendre nodes per latent dimension, \(n^2\) joint nodes per period.
Value
A data.table ordered by Tn and p with Tn, p (the labels
of the rock spectrum), Sa (the rock ordinate at that level, g) and
SaF (the site ordinate at the same level, g), unrounded. Quantile and
mean rows are marginal statistics at each period over the population
of the rock spectrum and the site-factor residual; the integration
error of order is not reported (see refineSiteSpectrum()). The
random number stream is not used.
Mathematics
At PGA and at each period the rock quantile function
\(Q(u) = \ln S_a\) is the Hyman monotone spline through the tabulated
knots \((p_k, \ln S_{a,k})\), continued below the first and above the
last knot by the adjacent secant slopes (floored at zero) and clamped to
\(u \in [0, 1]\). The Gauss-Legendre rule of order nodes on
\((0, 1)\) gives \(u_i\) and \(w_i\) (Golub-Welsch); with
\(z_i = \Phi^{-1}(u_i)\) and \(\rho = \rho_{BJ}(T_n, 0)\) of
correlateResiduals(), the joint node \((i, j)\) carries
$$\ln PGA_i = Q_0(u_i) + c_0, \quad
\ln S_{a,ij} = Q_n(\Phi(\rho z_i + \sqrt{1 - \rho^2} z_j)) + c_n,
\quad W_{ij} = w_i w_j,$$
a Gaussian copula between PGA and the ordinate, where \(c_0\) and
\(c_n\) re-centre each rock marginal on its tabulated mean
(\(\sum_i w_i PGA_i = \overline{PGA}\) and
\(\sum_{ij} W_{ij} S_{a,ij} = \bar S_a\)). Each joint node is one
lognormal component of the site ordinate,
\(\mu_{ij} = \ln S_{a,ij} + \mu_F(PGA_i)\) and
\(\sigma_{ij} = \max(\sigma_F(PGA_i), 10^{-9})\), the site residual
being integrated analytically and taken independent of the rock residual
given PGA. The site quantile at a tabulated probability \(p\) solves
\(\sum W_{ij} \Phi((x - \mu_{ij})/\sigma_{ij}) = p\) (root to
\(10^{-10}\) on \([\min(\mu - 9\sigma), \max(\mu + 9\sigma)]\)) and
the site mean is \(\sum W_{ij} e^{\mu_{ij} + \sigma_{ij}^2/2}\). When
VS30 equals Vref the site spectrum is the rock spectrum. Each period
is integrated with its own copula with PGA; no dependence between
periods is implied.
Examples
P <- c("0.05", "0.10", "0.16", "0.50", "0.84", "0.90", "0.95", "mean")
Factor <- c(0.45, 0.60, 0.72, 0.95, 1.30, 1.48, 1.78, 1.00)
Spectrum <- data.table::data.table(Tn = rep(c(0, 0.2, 1), each = 8), p = rep(P, 3),
Sa = rep(c(0.30, 0.45, 0.24), each = 8) * rep(Factor, 3))
integrateSiteSpectrum(Spectrum, VS30 = 270, Vref = 760, model = "ST20", order = 32)
#> Tn p Sa SaF
#> <num> <char> <num> <num>
#> 1: 0.0 0.05 0.1350 0.1281531
#> 2: 0.0 0.10 0.1800 0.1546421
#> 3: 0.0 0.16 0.2160 0.1781506
#> 4: 0.0 0.50 0.2850 0.2786114
#> 5: 0.0 0.84 0.3900 0.4290290
#> 6: 0.0 0.90 0.4440 0.4878312
#> 7: 0.0 0.95 0.5340 0.5758031
#> 8: 0.0 mean 0.3000 0.3058780
#> 9: 0.2 0.05 0.2025 0.2486906
#> 10: 0.2 0.10 0.2700 0.2989076
#> 11: 0.2 0.16 0.3240 0.3415853
#> 12: 0.2 0.50 0.4275 0.5062826
#> 13: 0.2 0.84 0.5850 0.7354563
#> 14: 0.2 0.90 0.6660 0.8232421
#> 15: 0.2 0.95 0.8010 0.9524287
#> 16: 0.2 mean 0.4500 0.5413845
#> 17: 1.0 0.05 0.1080 0.2121198
#> 18: 1.0 0.10 0.1440 0.2639203
#> 19: 1.0 0.16 0.1728 0.3076237
#> 20: 1.0 0.50 0.2280 0.4651391
#> 21: 1.0 0.84 0.3120 0.6918828
#> 22: 1.0 0.90 0.3552 0.7854078
#> 23: 1.0 0.95 0.4272 0.9252580
#> 24: 1.0 mean 0.2400 0.5030748
#> Tn p Sa SaF
#> <num> <char> <num> <num>