Skip to contents

\(R = P(X > Y)\) where \(X\) is the strength and \(Y\) the stress, each Beta-Danish distributed with its own parameters.

Usage

bd_stress_strength(strength, stress, rel.tol = 1e-10)

Arguments

strength

Named list or numeric vector giving `a`, `b`, `c`, `k` for the strength variable \(X\).

stress

Same, for the stress variable \(Y\).

rel.tol

Passed to [stats::integrate()].

Value

A single probability.

Details

\(R = \int_0^\infty S_X(y) f_Y(y)\,dy\), evaluated on the Beta scale of \(Y\) so the integral is taken over \((0,1)\).

The convention is the standard reliability one: \(R\) is the probability that the strength exceeds the stress, so larger \(R\) means a more reliable component. Passing the two arguments the wrong way round returns \(1 - R\).

Examples

# Identical distributions must give one half
p <- list(a = 1.5, b = 3, c = 2, k = 1)
bd_stress_strength(strength = p, stress = p)
#> [1] 0.5

# A stronger component
bd_stress_strength(strength = list(a = 1.5, b = 3, c = 2, k = 0.5),
                   stress   = list(a = 1.5, b = 3, c = 2, k = 2))
#> [1] 0.8723854