| Title: | Stress-Strength Reliability Model with MWD Marginals via Clayton Copula |
|---|---|
| Description: | Implements stress-strength reliability models under a dependent framework, where both stress and strength variables follow modified Weibull distributions and their dependence is modeled using a Clayton copula (Kizilaslan (2026) <doi:10.48550/arXiv.2604.12130>). The package provides several estimation procedures for model parameters and the stress-strength reliability R, including two-step maximum likelihood estimation (MLE), least squares estimation (LSE), weighted least squares estimation (WLSE), and maximum product of spacings (MPS). It also provides interval estimation using asymptotic confidence intervals based on MLE and bootstrap confidence intervals for all methods. In addition, functions are included for parameter estimation of the modified Weibull distribution (Lai et al. (2003) <doi:10.1109/TR.2002.805788>) and the two-parameter Weibull distribution, along with utilities to compute their probability density function, cumulative distribution function, quantile function, and to generate random samples. |
| Authors: | Fatih Kizilaslan [aut, cre] (ORCID: <https://orcid.org/0000-0001-6457-0967>) |
| Maintainer: | Fatih Kizilaslan <[email protected]> |
| License: | GPL (>= 3) |
| Version: | 1.0.2 |
| Built: | 2026-05-29 16:47:50 UTC |
| Source: | https://github.com/fatihki/ssreliabilityclaytonmwd |
Daily data for 10 dams in Istanbul, Türkiye. The dataset consists of daily occupancy rates of Istanbul’s dams, retrieved in March 2026 from https://data.ibb.gov.tr/en. The data span the period from late October 2000 to mid-February 2024.
AllDamsAllDams
A data frame with 8520 rows and 13 variables.
Istanbul Metropolitan Municipality Open Data Portal https://data.ibb.gov.tr/en. Licensed under CC BY 4.0.
Computes the joint cumulative distribution function (CDF) and probability density function (PDF) of the two-dimensional Clayton copula.
Clayton_Copula(u, v, theta) Clayton_Copula_pdf(u, v, theta)Clayton_Copula(u, v, theta) Clayton_Copula_pdf(u, v, theta)
u |
Numeric vector of values in |
v |
Numeric vector of values in |
theta |
Positive numeric scalar. Dependence parameter
|
The joint distribution function of the two-dimensional Clayton copula is
where .
The corresponding joint density is given by
Clayton_Copula: Numeric vector of CDF values.
Clayton_Copula_pdf: Numeric vector of PDF values.
Nelsen, R. B. (2006). An Introduction to Copulas. Springer.
u <- c(0.2, 0.5, 0.8) v <- c(0.3, 0.6, 0.9) Clayton_Copula(u, v, theta = 2) Clayton_Copula_pdf(u, v, theta = 2)u <- c(0.2, 0.5, 0.8) v <- c(0.3, 0.6, 0.9) Clayton_Copula(u, v, theta = 2) Clayton_Copula_pdf(u, v, theta = 2)
Fits a dependent stress–strength reliability (SSR) model in which both strength and stress follow the Modified Weibull Distribution (MWD), and dependence is modeled using a Clayton copula.
The function estimates marginal parameters
for strength ,
for stress ,
and the copula dependence parameter .
Estimation is performed using Maximum Likelihood Estimation (MLE), Least Squares Estimation (LSE), Weighted Least Squares Estimation (WLSE), and Maximum Product of Spacings (MPS).
fit.SSR.ClaytonMWD( data, ACI = FALSE, bootstrap = FALSE, B = NULL, seed = NULL, one.step = TRUE, alpha = 0.05, verbose = FALSE )fit.SSR.ClaytonMWD( data, ACI = FALSE, bootstrap = FALSE, B = NULL, seed = NULL, one.step = TRUE, alpha = 0.05, verbose = FALSE )
data |
A list containing two numeric vectors:
|
ACI |
Logical. If |
bootstrap |
Logical. If |
B |
Integer. Number of bootstrap replications. |
seed |
Integer. Random seed for reproducibility. |
one.step |
Logical. If |
alpha |
Numeric. Significance level for confidence intervals
(e.g., |
verbose |
Logical; if |
Fit SSR Model with Modified Weibull Marginals via Clayton Copula
Returns point estimates and interval estimates of model parameters using MLE, LSE, WLSE, and MPS methods.
Further theoretical details are available in Kizilaslan (2026).
A list containing:
all.results |
Point estimates of all model parameters. |
theta.Ktau |
Kendall's tau estimate corresponding to |
seed |
Random seed used in the analysis. |
data |
Input dataset used in the analysis. |
ACI.parameters |
If |
boot.mle |
If |
boot.lse |
If |
boot.wlse |
If |
boot.mps |
If |
boot.samples |
A list containing bootstrap samples for all parameters across all methods. |
Kizilaslan, F. (2026). Reliability estimation in dependent stress–strength model with Clayton copula and modified Weibull margins. arXiv:2604.12130
data <- list(X = TerkosDam, Y = OmerliDam) fit.SSR <- fit.SSR.ClaytonMWD(data, ACI = TRUE, bootstrap = TRUE, B = 5, seed = 2026, one.step = TRUE, alpha = 0.05) print(fit.SSR)data <- list(X = TerkosDam, Y = OmerliDam) fit.SSR <- fit.SSR.ClaytonMWD(data, ACI = TRUE, bootstrap = TRUE, B = 5, seed = 2026, one.step = TRUE, alpha = 0.05) print(fit.SSR)
Estimates the dependence parameter of the Clayton copula
based on observed data from a stress–strength model.
fitClayton( x, y, est.method, opt.method, start, estimates, lower = NULL, upper = NULL, verbose = FALSE, ... )fitClayton( x, y, est.method, opt.method, start, estimates, lower = NULL, upper = NULL, verbose = FALSE, ... )
x |
Numeric vector. Observations of the strength variable |
y |
Numeric vector. Observations of the stress variable |
est.method |
Character string specifying the estimation method used.
Options include |
opt.method |
Character string specifying the optimization method used in |
start |
Numeric scalar. Initial value for |
estimates |
A named list of estimated marginal parameters:
|
lower |
Numeric vector. Lower bounds for parameters in constrained optimization.
Only used if supported by |
upper |
Numeric vector. Upper bounds for parameters in constrained optimization.
Only used if supported by |
verbose |
Logical; if |
... |
Additional arguments passed to |
Estimate the Clayton Copula Parameter
The Clayton copula is defined as
where .
The parameter is estimated using the following methods:
Maximum Likelihood Estimation (MLE): Maximizes the joint log-likelihood under the assumed model.
Least Squares Estimation (LSE):
Minimizes squared differences between empirical and theoretical CDFs.
The empirical CDF uses Benard's approximation:
, for .
Weighted Least Squares Estimation (WLSE):
Uses weights
, for .
Maximum Product of Spacings (MPS): Maximizes the product of spacings of the fitted distribution function, providing a robust alternative to MLE.
Further theoretical details are provided in Kizilaslan (2026).
A list containing:
estimate |
Estimate of the Clayton copula parameter, |
opt.fit |
Full optimization result. |
Kizilaslan, F. (2026). Reliability estimation in dependent stress–strength model with Clayton copula and modified Weibull margins. arXiv preprint. Available at arXiv:2604.12130.
Estimates the parameters of the Modified Weibull Distribution (MWD) using classical estimation methods.
fitMWD( data, est.method, opt.method, starts, lower = NULL, upper = NULL, verbose = FALSE, ... )fitMWD( data, est.method, opt.method, starts, lower = NULL, upper = NULL, verbose = FALSE, ... )
data |
Numeric vector of observations. |
est.method |
Character string specifying the estimation method.
Options include |
opt.method |
Character string specifying the optimization method
used in |
starts |
Numeric vector of initial values for the parameters |
lower |
Numeric vector of lower bounds for parameters in constrained optimization.
Ignored if |
upper |
Numeric vector of upper bounds for parameters in constrained optimization. |
verbose |
Logical. If |
... |
Additional arguments passed to |
Fit the Modified Weibull Distribution (MWD)
The Modified Weibull Distribution (Lai et al., 2003) has cumulative distribution function (CDF) and probability density function (PDF):
where , is a scale parameter, is a shape parameter,
and is a flexibility parameter controlling the growth rate of the hazard function.
The parameters are estimated using the following methods:
Maximum Likelihood Estimation (MLE): Maximizes the log-likelihood under the MWD model.
Least Squares Estimation (LSE):
Minimizes squared differences between empirical and theoretical CDFs.
The empirical CDF uses Benard's approximation:
, for .
Weighted Least Squares Estimation (WLSE):
A modification of LSE that assigns weights to the squared differences.
Uses weights
, for .
Maximum Product of Spacings (MPS): Maximizes the product of spacings of the fitted CDF.
Further details are provided in Kizilaslan (2026).
A list containing:
estimates |
Named numeric vector of estimated parameters |
measures |
Numeric vector of model selection criteria (log-likelihood, AIC, BIC). |
initials |
Initial values used in the optimization. |
opt.fit |
Full output from |
Kizilaslan, F. (2026). Reliability estimation in dependent stress–strength model with Clayton copula and modified Weibull margins. arXiv preprint. Available at arXiv:2604.12130.
Lai, C. D., Xie, M., and Murthy, D. N. P. (2003). A modified Weibull distribution. IEEE Transactions on Reliability, 52(1), 33–37.
# generate data from MWD(a, b, lambda) n <- 100 a <- 0.75; b <- 1.25; lambda <- 0.60 set.seed(123) dat <- rMweibull(n, a, b, lambda) init <- runif(3) # Fit MWD to dat. fit.mle <- fitMWD(data = dat, est.method = "mle", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05,1e-05), upper = c(Inf,Inf,Inf), hessian = FALSE ) fit.mle$estimates fit.lse <- fitMWD(data = dat, est.method = "lse", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05,1e-05), upper = c(Inf,Inf,Inf), hessian = FALSE ) fit.lse$estimates fit.wlse <- fitMWD(data = dat, est.method = "wlse", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05,1e-05), upper = c(Inf,Inf,Inf), hessian = FALSE ) fit.wlse$estimates fit.mps <- fitMWD(data = dat, est.method = "mps", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05,1e-05), upper = c(Inf,Inf,Inf), hessian = FALSE ) fit.mps$estimates# generate data from MWD(a, b, lambda) n <- 100 a <- 0.75; b <- 1.25; lambda <- 0.60 set.seed(123) dat <- rMweibull(n, a, b, lambda) init <- runif(3) # Fit MWD to dat. fit.mle <- fitMWD(data = dat, est.method = "mle", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05,1e-05), upper = c(Inf,Inf,Inf), hessian = FALSE ) fit.mle$estimates fit.lse <- fitMWD(data = dat, est.method = "lse", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05,1e-05), upper = c(Inf,Inf,Inf), hessian = FALSE ) fit.lse$estimates fit.wlse <- fitMWD(data = dat, est.method = "wlse", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05,1e-05), upper = c(Inf,Inf,Inf), hessian = FALSE ) fit.wlse$estimates fit.mps <- fitMWD(data = dat, est.method = "mps", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05,1e-05), upper = c(Inf,Inf,Inf), hessian = FALSE ) fit.mps$estimates
Estimates the parameters of the two-parameter Weibull distribution using classical methods.
fitWD( data, est.method, opt.method, starts, lower = NULL, upper = NULL, verbose = FALSE, ... )fitWD( data, est.method, opt.method, starts, lower = NULL, upper = NULL, verbose = FALSE, ... )
data |
Numeric vector of observations. |
est.method |
Character string specifying the estimation method.
Options include |
opt.method |
Character string specifying the optimization method
used in |
starts |
Numeric vector of initial values for the parameters |
lower |
Numeric vector of lower bounds for parameters in constrained optimization.
Ignored if |
upper |
Numeric vector of upper bounds for parameters in constrained optimization. |
verbose |
Logical. If |
... |
Additional arguments passed to |
Classical estimations fo the parameters of the two-parameter Weibull distribution
The two-parameter Weibull Distribution has cumulative distribution function (CDF) and probability density function (PDF):
where , is the scale parameter and is the shape parameter.
The parameters are estimated using the following methods:
Maximum Likelihood Estimation (MLE): Maximizes the log-likelihood under the MWD model.
Least Squares Estimation (LSE):
Minimizes squared differences between empirical and theoretical CDFs.
The empirical CDF uses Benard's approximation:
, for .
Weighted Least Squares Estimation (WLSE):
A modification of LSE that assigns weights to the squared differences.
Uses weights
, for .
Maximum Product of Spacings (MPS): Maximizes the product of spacings of the fitted CDF.
A list containing:
estimates |
Named numeric vector of estimated parameters |
measures |
Numeric vector of model selection criteria (log-likelihood, AIC, BIC). |
initials |
Initial values used in the optimization. |
opt.fit |
Full output from |
# generate data from WD(a, b) n <- 50 a <- 0.75; b <- 1.25; lambda <- 0 # reduces two-parameter Weibull distribution set.seed(123) X <- rMweibull(n, a, b, lambda) init <- runif(2) # fit model fit.mle <- fitWD(data = X, est.method = "mle", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05), upper = c(Inf,Inf), hessian = FALSE ) fit.mle$estimates fit.lse <- fitWD(data = X, est.method = "lse", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05), upper = c(Inf,Inf), hessian = FALSE ) fit.lse$estimates fit.wlse <- fitWD(data = X, est.method = "wlse", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05), upper = c(Inf,Inf), hessian = FALSE ) fit.wlse$estimates fit.mps <- fitWD(data = X, est.method = "mps", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05), upper = c(Inf,Inf), hessian = FALSE ) fit.mps$estimates# generate data from WD(a, b) n <- 50 a <- 0.75; b <- 1.25; lambda <- 0 # reduces two-parameter Weibull distribution set.seed(123) X <- rMweibull(n, a, b, lambda) init <- runif(2) # fit model fit.mle <- fitWD(data = X, est.method = "mle", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05), upper = c(Inf,Inf), hessian = FALSE ) fit.mle$estimates fit.lse <- fitWD(data = X, est.method = "lse", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05), upper = c(Inf,Inf), hessian = FALSE ) fit.lse$estimates fit.wlse <- fitWD(data = X, est.method = "wlse", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05), upper = c(Inf,Inf), hessian = FALSE ) fit.wlse$estimates fit.mps <- fitWD(data = X, est.method = "mps", opt.method = "L-BFGS-B", starts = init, lower = c(1e-05,1e-05), upper = c(Inf,Inf), hessian = FALSE ) fit.mps$estimates
Computes a one-step least squares estimator (LSE) of the Clayton copula
dependence parameter . The estimator is obtained via a
second-order Taylor expansion of the Clayton copula
around an initial value , typically the Kendall's
tau-based moment estimate.
LSE_clayton_onestep(par, x, y, estimates)LSE_clayton_onestep(par, x, y, estimates)
par |
Numeric scalar. Initial estimate of |
x |
Numeric vector. Observations of the strength variable |
y |
Numeric vector. Observations of the stress variable |
estimates |
A named list of marginal parameter estimates:
|
One-Step LSE Estimator for the Clayton Copula Parameter
The one-step estimator is constructed by substituting a second-order Taylor
expansion of the Clayton copula into the least
squares estimating equation, evaluated at , and solving
analytically for .This avoids iterative numerical optimisation
and yields a closed-form estimation of .
Further theoretical details are provided in Kizilaslan (2026).
Numeric scalar. One-step LSE estimate of the dependence parameter .
Kizilaslan, F. (2026). Reliability estimation in dependent stress–strength model with Clayton copula and modified Weibull margins. arXiv:2604.12130
WLSE_clayton_onestep for the weighted LSE version,
theta_Ktau_estimate for the Kendall's Tau-based estimate.
Density, distribution function, quantile function, random generation, and hazard function for the Modified Weibull distribution (MWD) introduced by Lai et al. (2003).
dMweibull(x, a, b, lambda, log = FALSE) pMweibull(q, a, b, lambda, lower.tail = TRUE, log = FALSE) qMweibull(p, a, b, lambda, lower.tail = TRUE) rMweibull(n, a, b, lambda) hMweibull(x, a, b, lambda, log = FALSE)dMweibull(x, a, b, lambda, log = FALSE) pMweibull(q, a, b, lambda, lower.tail = TRUE, log = FALSE) qMweibull(p, a, b, lambda, lower.tail = TRUE) rMweibull(n, a, b, lambda) hMweibull(x, a, b, lambda, log = FALSE)
x |
Numeric vector of observations. |
a |
Positive scale parameter ( |
b |
Non-negative shape parameter ( |
lambda |
Non-negative parameter ( |
log |
Logical. If |
q |
Numeric vector of quantiles. |
lower.tail |
Logical. If #' The Modified Weibull distribution with parameters |
p |
Numeric vector of probabilities in |
n |
Integer; number of observations to be generated. |
Modified Weibull Distribution
The Modified Weibull distribution with parameters ,
and has cumulative distribution function (CDF),
probability density function (PDF), and hazard function given by
where , is the scale parameter, is a shape parameter,
and is an acceleration or flexibility parameter that controls
how quickly the hazard grows over time.
Special cases:
If , the MWD reduces to the Weibull distribution
.
If , the MWD reduces to a type I extreme-value
(log-gamma) distribution
.
dMweibull: Density values.
pMweibull: Distribution function values.
qMweibull: Quantiles.
rMweibull: Random deviates.
hMweibull: Hazard function values.
Lai, C. D., Xie, M., and Murthy, D. N. P. (2003). A modified Weibull distribution. IEEE Transactions on Reliability, 52(1), 33–37.
n <- 25 a <- 0.75; b <- 1.25; lambda <- 0.60 set.seed(123) x <- rlnorm(n) ff <- dMweibull(x, a, b, lambda) FF <- pMweibull(x, a, b, lambda) qq <- qMweibull(runif(n), a, b, lambda) dat <- rMweibull(n, a, b, lambda) hf <- hMweibull(x, a, b, lambda )n <- 25 a <- 0.75; b <- 1.25; lambda <- 0.60 set.seed(123) x <- rlnorm(n) ff <- dMweibull(x, a, b, lambda) FF <- pMweibull(x, a, b, lambda) qq <- qMweibull(runif(n), a, b, lambda) dat <- rMweibull(n, a, b, lambda) hf <- hMweibull(x, a, b, lambda )
Omerli Dam is the largest dam supplying Istanbul, Türkiye, and is located on the Anatolian side. The dataset consists of daily occupancy rates of Istanbul’s dams, retrieved in March 2026 from Istanbul Metropolitan Municipality datasets website https://data.ibb.gov.tr/en.
OmerliDamOmerliDam
A numeric vector of length 95, representing monthly average occupancy rates.
The data span the period from late October 2000 to mid-February 2024. Monthly average occupancy rates are computed based on the daily data for the period September-December of each year, resulting in a total of 95 observations.
Istanbul Metropolitan Municipality Open Data Portal https://data.ibb.gov.tr/en. Licensed under CC BY 4.0.
Computes parametric bootstrap confidence intervals for unknown model parameters
and reliability , based on maximum likelihood estimation (MLE),
least squares estimation (LSE), weighted least squares estimation (WLSE),
and maximum product of spacing estimation (MPS).
parametric_bootstrap( est.method, opt.method, boot.estimates, n, B = 1000, seed = NULL, one.step = TRUE, alpha = 0.05 )parametric_bootstrap( est.method, opt.method, boot.estimates, n, B = 1000, seed = NULL, one.step = TRUE, alpha = 0.05 )
est.method |
Character string specifying the estimation method used.
Options include |
opt.method |
Character string specifying the optimization method used in |
boot.estimates |
A named list of initial parameter estimates.
The elements |
n |
Integer. Sample size. |
B |
Integer. Number of bootstrap replications. |
seed |
Integer. Random seed for reproducibility. |
one.step |
Logical. If |
alpha |
Numeric. Significance level for confidence intervals
(e.g., |
This function implements a parametric bootstrap percentile method to construct
confidence intervals for unknown parameters and reliability
under different estimation methods (MLE, LSE, WLSE, and MPS).
Further theoretical details are provided in Kizilaslan (2026).
A list containing:
parameters.quantiles |
A numeric matrix with lower and upper
|
boot.results |
A matrix of bootstrap estimates for all parameters
over |
Kizilaslan, F. (2026). Reliability estimation in dependent stress–strength model with Clayton copula and modified Weibull margins. arXiv:2604.12130
Prints results of an object of class SSRfit produced by
fit.SSR.ClaytonMWD. The output includes parameter estimates and
confidence interval estimates obtained using MLE, LSE, WLSE, and MPS,
for the marginal parameters, the Clayton copula parameter ,
and the reliability measure .
## S3 method for class 'SSRfit' print(x, ...)## S3 method for class 'SSRfit' print(x, ...)
x |
An object of class |
... |
Additional arguments passed to the print method.
For example, |
Print SSR Fit Results (Clayton Copula with MWD Marginals)
This method organizes and displays results in a structured format, separating point estimates and interval estimates for all model components.
Invisibly returns the input object x of class "SSRfit".
The function is called for its side effects, namely printing formatted
summaries of parameter estimates, dependence parameter estimates,
and associated confidence intervals to the console.
data = list(X = TerkosDam, Y = OmerliDam) fit.SSR = fit.SSR.ClaytonMWD(data, ACI = TRUE, bootstrap = TRUE, B = 5, seed = 2026, one.step = TRUE, alpha = 0.05) print(fit.SSR) print(fit.SSR, 3)data = list(X = TerkosDam, Y = OmerliDam) fit.SSR = fit.SSR.ClaytonMWD(data, ACI = TRUE, bootstrap = TRUE, B = 5, seed = 2026, one.step = TRUE, alpha = 0.05) print(fit.SSR) print(fit.SSR, 3)
Computes the stress–strength reliability (SSR)
, where
(strength) and
(stress),
with dependence modeled using a Clayton copula.
Reliability_Clayton_MWD(a1, b1, lambda1, a2, b2, lambda2, theta)Reliability_Clayton_MWD(a1, b1, lambda1, a2, b2, lambda2, theta)
a1, b1, lambda1
|
Parameters of the strength variable |
a2, b2, lambda2
|
Parameters of the stress variable |
theta |
Clayton copula dependence parameter, |
Stress–Strength Reliability under Clayton Copula with MWD Marginals
The stress–strength reliability is defined as
, which can be expressed using the joint distribution
induced by the Clayton copula.
In copula form, the reliability is computed as
which can also be written as
where
and .
Further theoretical details can be found in
vignette("ssr-theory", package = "SSReliabilityClaytonMWD")
and Kizilaslan (2026).
A list identical to the output of stats::integrate:
value |
Numerical value of the integral (reliability value). |
abs.error |
Estimated absolute error of the numerical integration. |
Kizilaslan, F. (2026). Reliability estimation in dependent stress–strength model with Clayton copula and modified Weibull margins. arXiv:2604.12130
a1 <- 0.75; b1 <- 1.5; lambda1 <- 0.6 a2 <- 1.2; b2 <- 0.5; lambda2 <- 0.9 theta <- 1 # 2, 3, 4, 5 R <- Reliability_Clayton_MWD(a1, b1, lambda1, a2, b2, lambda2, theta) R$value # approximated reliability R based on MC method R_MC <- Reliability_Clayton_MWD_MC(a1, b1, lambda1, a2, b2, lambda2, theta, N = 50000) R_MC$Ra1 <- 0.75; b1 <- 1.5; lambda1 <- 0.6 a2 <- 1.2; b2 <- 0.5; lambda2 <- 0.9 theta <- 1 # 2, 3, 4, 5 R <- Reliability_Clayton_MWD(a1, b1, lambda1, a2, b2, lambda2, theta) R$value # approximated reliability R based on MC method R_MC <- Reliability_Clayton_MWD_MC(a1, b1, lambda1, a2, b2, lambda2, theta, N = 50000) R_MC$R
Computes an approximate value of the stress–strength reliability
using Monte Carlo integration method under the modified Weibull
model with dependence induced by a Clayton copula.
It calculates an approximate value of using the Monte Carlo integration method based
on a random generated MWD sample from .
Reliability_Clayton_MWD_MC(a1, b1, lambda1, a2, b2, lambda2, theta, N = 10000)Reliability_Clayton_MWD_MC(a1, b1, lambda1, a2, b2, lambda2, theta, N = 10000)
a1, b1, lambda1
|
Parameters of the strength variable |
a2, b2, lambda2
|
Parameters of the stress variable |
theta |
Clayton copula dependence parameter, |
N |
Integer. Number of Monte Carlo samples from |
Monte Carlo Estimation of Stress–Strength Reliability under Clayton Copula
The approximate stress–strength reliability is approximated via Monte
Carlo integration:
where and
denote the marginal parameter vectors.
The function
where is a random sample generated from the
Modified Weibull distribution .
The accuracy of the approximation improves as sample size increases.
In practice, values around typically provide stable results.
Further details can be found in Kizilaslan (2026).
A list containing:
R |
Approximated reliability value based on |
R_MCsample |
Monte Carlo approximate of the reliability |
sample |
Generated random sample from |
Kizilaslan, F. (2026). Reliability estimation in dependent stress–strength model with Clayton copula and modified Weibull margins. arXiv:2604.12130
# example code a1 <- 0.75; b1 <- 1.5; lambda1 <- 0.6 a2 <- 1.2; b2 <- 0.5; lambda2 <- 0.9 theta <- 1 # 2, 3, 4, 5 R <- Reliability_Clayton_MWD(a1, b1, lambda1, a2, b2, lambda2, theta) R$value # approximated reliability R based on MC method R_MC <- Reliability_Clayton_MWD_MC(a1, b1, lambda1, a2, b2, lambda2, theta, N = 50000) R_MC$R# example code a1 <- 0.75; b1 <- 1.5; lambda1 <- 0.6 a2 <- 1.2; b2 <- 0.5; lambda2 <- 0.9 theta <- 1 # 2, 3, 4, 5 R <- Reliability_Clayton_MWD(a1, b1, lambda1, a2, b2, lambda2, theta) R$value # approximated reliability R based on MC method R_MC <- Reliability_Clayton_MWD_MC(a1, b1, lambda1, a2, b2, lambda2, theta, N = 50000) R_MC$R
Generates bivariate random samples from a dependent stress–strength model where both marginals follow the Modified Weibull Distribution (MWD), and the dependence structure between the variables is modeled using a Clayton copula.
Generates bivariate random samples from a dependent stress–strength model where both marginals follow the Modified Weibull Distribution (MWD), and dependence between variables is modeled using a Clayton copula.
rMweibull_Clayton(n, a1, b1, lambda1, a2, b2, lambda2, theta)rMweibull_Clayton(n, a1, b1, lambda1, a2, b2, lambda2, theta)
n |
Integer. Number of observations to be generated. |
a1, b1, lambda1
|
Parameters of the strength variable |
a2, b2, lambda2
|
Parameters of the stress variable |
theta |
Clayton copula dependence parameter, |
Bivariate Random Data Generation under Clayton Copula with MWD Marginals
This function generates dependent uniform variables using the Clayton copula,
which are then transformed via inverse CDFs of the Modified Weibull marginals
to obtain .
Further details are provided in Kizilaslan (2026).
A list containing:
A list containing:
U |
Uniform samples used in the copula construction. |
V |
Dependent uniform samples generated via the Clayton copula. |
X |
Simulated observations from |
Y |
Simulated observations from |
Kizilaslan, F. (2026). Reliability estimation in dependent stress–strength model with Clayton copula and modified Weibull margins. arXiv:2604.12130
set.seed(123) n <- 50 a1 <- 0.75; b1 <- 1.5; lambda1 <- 0.6 a2 <- 1.2; b2 <- 0.5; lambda2 <- 0.9 theta <- 1 # 2, 3, 4, 5 # data generation dat <- rMweibull_Clayton(n, a1, b1, lambda1, a2, b2, lambda2, theta) str(dat)set.seed(123) n <- 50 a1 <- 0.75; b1 <- 1.5; lambda1 <- 0.6 a2 <- 1.2; b2 <- 0.5; lambda2 <- 0.9 theta <- 1 # 2, 3, 4, 5 # data generation dat <- rMweibull_Clayton(n, a1, b1, lambda1, a2, b2, lambda2, theta) str(dat)
Terkos Dam is one of the largest dams supplying Istanbul, Türkiye, and is located on the European side. The dataset consists of daily occupancy rates of Istanbul’s dams, retrieved in March 2026 from Istanbul Metropolitan Municipality datasets website https://data.ibb.gov.tr/en.
TerkosDamTerkosDam
A numeric vector of length 95, representing monthly average occupancy rates.
The data span the period from late October 2000 to mid-February 2024. Monthly average occupancy rates are computed based on the daily data for the period September-December of each year, resulting in a total of 95 observations.
Istanbul Metropolitan Municipality Open Data Portal https://data.ibb.gov.tr/en. Licensed under CC BY 4.0.
Estimates the dependence parameter of the Clayton copula
using Kendall's tau-based moment estimator.
theta_Ktau_estimate(data)theta_Ktau_estimate(data)
data |
A list containing two numeric vectors:
|
Kendall's Tau Estimator for the Clayton Copula Parameter
The estimator is derived from the relationship between Kendall's tau
and the Clayton copula parameter:
.
A numeric scalar giving the estimate of
based on Kendall's tau ().
set.seed(123) n <- 50 a1 <- 0.75; b1 <- 1.5; lambda1 <- 0.6 a2 <- 1.2; b2 <- 0.5; lambda2 <- 0.9 theta <- 5 # 1, 2, 3, 4 # data generation dat <- SSReliabilityClaytonMWD::rMweibull_Clayton(n, a1, b1, lambda1, a2, b2, lambda2, theta) theta_Ktau_estimate(dat)set.seed(123) n <- 50 a1 <- 0.75; b1 <- 1.5; lambda1 <- 0.6 a2 <- 1.2; b2 <- 0.5; lambda2 <- 0.9 theta <- 5 # 1, 2, 3, 4 # data generation dat <- SSReliabilityClaytonMWD::rMweibull_Clayton(n, a1, b1, lambda1, a2, b2, lambda2, theta) theta_Ktau_estimate(dat)
Computes a one-step weighted least squares estimator (WLSE) of the Clayton copula
dependence parameter . The estimator is obtained via a
second-order Taylor expansion of the Clayton copula
around an initial value , typically the Kendall's
tau-based moment estimate.
WLSE_clayton_onestep(par, x, y, estimates)WLSE_clayton_onestep(par, x, y, estimates)
par |
Numeric scalar. Initial estimate of |
x |
Numeric vector. Observations of the strength variable |
y |
Numeric vector. Observations of the stress variable |
estimates |
A named list of marginal parameter estimates:
|
One-Step WLSE Estimator for the Clayton Copula Parameter
The one-step estimator is constructed by substituting a second-order Taylor
expansion of the Clayton copula into the weighted least
squares estimating equation, evaluated at , and solving
analytically for .This avoids iterative numerical optimisation
and yields a closed-form estimation of .
Further theoretical details are provided in Kizilaslan (2026).
Numeric scalar. One-step WLSE estimate of the dependence parameter .
Kizilaslan, F. (2026). Reliability estimation in dependent stress–strength model with Clayton copula and modified Weibull margins. arXiv:2604.12130
LSE_clayton_onestep for the LSE version,
theta_Ktau_estimate for the Kendall's Tau-based estimate.