Learn R Programming

abcADM (version 1.0)

abcMCMC: ABC-MCMC for load duration experiment data

Description

Use modified ABC-MCMC algorithm to obtain posterior samples of \(\theta = (\mu_a, \sigma_a, \mu_b, \sigma_b, \mu_c, \sigma_c, \mu_n, \sigma_n, \mu_{\sigma_0} , \sigma_{\sigma_0})\), given ramp and constant load failure time data.

Usage

abcMCMC(n, numBurning, numThining, inputD, dataNames, verbose = FALSE)

Arguments

n

number of posterior samples

numBurning

number of burn-in iterations

numThining

number of thining iterations

inputD

bandwidth \(\delta\) for ABC approximation

dataNames

a vector of strings of the names of the datasets, which must be in the format "ID_(\(\tau_c\))_(t_c)Y" (see Details and Example)

verbose

displays information messages to console if TRUE

Value

Returns a matrix of posterior samples where each row is one \(\theta\), and if verbose is TRUE, prints the acceptance rate.

Details

The generated posterior samples are the parameters associated with (a, b, c, n, \(\eta\)), which are the random effects in the Canadian Model for load duration, $$\frac{d}{dt} \alpha(t) = [(a\tau_s)(\tau(t)/\tau_s - \sigma_0)_+]^b + [(c\tau_s)(\tau(t)/\tau_s - \sigma_0)_+]^n\alpha(t),$$ where

- \(a|\mu_a, \sigma_a \sim Log-Normal(\mu_a, \sigma_a)\);

- \(b|\mu_b, \sigma_b \sim Log-Normal(\mu_b, \sigma_b)\);

- \(c|\mu_c, \sigma_c \sim Log-Normal(\mu_c, \sigma_c)\);

- \(n|\mu_n, \sigma_n \sim Log-Normal(\mu_n, \sigma_n)\);

- \(\eta|\mu_{\sigma_0}, \sigma_{\sigma_0} \sim Log-Normal(\mu_{\sigma_0}, \sigma_{\sigma_0})\) and set \(\sigma_0 = \frac{\eta}{1+\eta}\).

* \((x)_+ = max(x, 0)\).

* \(\sigma_0\) serves as the stress ratio threshold in that damage starts to accumulate only when \(\tau(t)/\tau_s > \sigma_0\).

* When sample pieces are subject to the load profile

\(\tau(t) = kt\) if \(t \le T_0\)

\(\tau(t) = \tau_c\) if \(t > T_0\)

where \(\tau_c\) is the selected constant-load level under the ramp-loading rate k, and \(T_0\) is the time required for the load to reach \(\tau_c\) under the ramp-loading rate k.

* The constant load level is assumed to be reached at the ramp-loading rate (k). The ramp-loading rate is 388,440 psi/hour.

* The constant load test ends at time \(t_c\) (in years).

* To achieve a ramp-load test, set \(\tau_c\) to Inf.

References

Foschi, R. O., Folz, B., and Yao, F. (1989), Reliability-Based Design of Wood Structures (Vol. 34), Vancouver, BC: Department of Civil Engineering, University of British Columbia.

Wong, S. W., & Zidek, J. V. (2018). Dimensional and statistical foundations for accumulated damage models. Wood science and technology, 52(1), 45-65.

Yang, C. H., Zidek, J. V., & Wong, S. W. (2019). Bayesian analysis of accumulated damage models in lumber reliability. Technometrics, 61(2), 233-245.

Examples

Run this code
# NOT RUN {
# run the abc-mcmc algorithm to obtain 10 posterior samples
# example only, more iterations needed for convergence
resTheta = abcMCMC(10, 100, 10, 0.3, c("constLoad_4500_1Y"), TRUE)


# }

Run the code above in your browser using DataLab