Learn R Programming

abcADM (version 1.0)

solveCanADM: Simulate the time-to-failures given \(\theta\) (posterior samples) under load profile

Description

Give the estimated probability of failure after 30 years (or can be set via set_returnPeriod) based on a large number of replications with given load profile. The \(\theta\)'s, where $$\theta = (\mu_a, \sigma_a, \mu_b, \sigma_b, \mu_c, \sigma_c, \mu_n, \sigma_n, \mu_{\sigma_0}, \sigma_{\sigma_0}),$$ will then be used to solve the Canadian ADM for time-to-failure T_f and probability of failure P_f with and without duration of load (DOL) effect.

Usage

solveCanADM(inputTheta, inputPhi, verbose = FALSE)

Arguments

inputTheta

a matrix where each row is \(\theta\)

inputPhi

performance factor \(\phi\) of the load

verbose

displays the index, the number of failure of the current \(\theta\), and the number of failure of the current \(\theta\) with no DOL effect to console if TRUE

Value

Returns a list of three elements. The first element of the list is the time-to-failure T_f. The second element is the probability of failture P_f. The third element is the probability of failure P_f without DOL effect. The index of \(\theta\), the number of failure of the current \(\theta\), and the number of failure of the current \(\theta\) with no DOL effect will be printed in this order along the way if verbose is TRUE.

Details

The equation of the Canadian model is: $$\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, b, c, n, \(\eta\)) are piece-specific random effects, and

- \(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\).

* The performance factor \(\phi\) comes from the load \(\tau(t)=\phi R_o\frac{\gamma{D}_d + {D}_s(t) + {D}_e(t)}{\gamma\alpha_d + \alpha_l}\).

* The default time step when solving the Canadian model numerically is 100 hours. It can be set via set_timeStep.

* The probability is calculated as (number of failed samples / total number of simulation samples). Total number of simulation samples can be set via set_simuSampleSize.

References

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

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

Examples

Run this code
# NOT RUN {
# This is a small demo with 50 simulated failure times 
set_simuSampleSize(50)
# simulate the time-to-failures given theta under the residential loads
resList = solveCanADM(default_param, 1, TRUE)

# Below is a more realistic example, using 1000 simulated failure times
# for each posterior draw of theta
# }
# NOT RUN {
set_simuSampleSize(1000)
resTheta = abcMCMC(100, 100, 10, 0.4, c("constLoad_4500_1Y"))
resList = solveCanADM(resTheta, 1, TRUE)
# }
# NOT RUN {

# }

Run the code above in your browser using DataLab