Reliability sensitivity#

Sensitivity analysis#

In structural reliability, knowing the reliability index \(\beta\) alone is often insufficient. Engineers also need to understand how sensitive \(\beta\) is to the parameters of the stochastic model — the means, standard deviations, and correlation coefficients of the random variables. This information guides decisions about where to invest in data collection or quality control.

PySTRA computes the sensitivity \(\partial\beta/\partial\theta_k\) for each distribution parameter \(\theta_k\) using two complementary approaches.

Finite-difference method#

The simplest approach perturbs each parameter by a small amount \(\Delta\theta_k = \delta\,\sigma_k\) and re-runs FORM:

(1)#\[\frac{\partial\beta}{\partial\theta_k} \approx \frac{\beta(\theta_k + \Delta\theta_k) - \beta(\theta_k)} {\Delta\theta_k}\]

With \(m\) declared distribution parameters this requires \(m + 1\) FORM runs: one baseline and one perturbed run per parameter, or \(2n + 1\) when each of \(n\) variables declares only its mean and standard deviation. The method is straightforward and distribution-agnostic, but can be numerically unstable when the perturbation changes the Nataf transformation significantly — particularly for correlated non-normal variables with small sensitivities.

Closed-form method (Bourinet 2017)#

A more efficient and accurate approach post-processes the converged FORM design point to obtain exact (up to quadrature) sensitivities from a single FORM run. This method, due to [Bourinet2017] (building on the FERUM software framework [Bourinet2009] [Bourinet2010]), differentiates the Nataf transformation chain analytically.

The sensitivity of \(\beta\) to a marginal distribution parameter \(\theta_k\) decomposes into two terms:

(2)#\[\frac{\partial\beta}{\partial\theta_k} = \underbrace{{\boldsymbol\alpha}^T \mathbf{L}_0^{-1} \frac{\partial\mathbf{z}}{\partial\theta_k}}_{\text{first term}} + \underbrace{{\boldsymbol\alpha}^T \frac{\partial\mathbf{L}_0^{-1}}{\partial\theta_k} \mathbf{z}}_{\text{second term}}\]

where \(\boldsymbol\alpha\) is the FORM direction cosine vector, \(\mathbf{L}_0\) is the Cholesky factor of the modified (Nataf) correlation matrix \(\mathbf{R}_0\), and \(\mathbf{z}\) is the correlated standard normal design point.

The first term captures how the marginal transformation changes at the design point; the second term accounts for changes in the correlation structure due to the parameter perturbation. For uncorrelated normal variables, the second term vanishes identically.

The derivative of the inverse Cholesky factor is computed from:

(3)#\[\frac{\partial\mathbf{L}_0^{-1}}{\partial\theta} = -\mathbf{L}_0^{-1}\, \frac{\partial\mathbf{L}_0}{\partial\theta}\, \mathbf{L}_0^{-1}\]

where \(\partial\mathbf{L}_0/\partial\theta\) is obtained by simultaneously differentiating the Cholesky decomposition algorithm.

Correlation sensitivities \(\partial\beta/\partial\rho_{ij}\) are also available from the closed-form method. Since the marginal transformations do not depend on the correlation coefficients, only the second term of Equation (2) contributes.

Generalized parameter support#

Beyond mean and standard deviation, distributions may declare additional sensitivity parameters — for example, the shape parameter \(\xi\) of the GEV distribution controls the tail behavior and can significantly influence \(\beta\).

Each distribution declares its sensitivity parameters via the sensitivity_params property. The base class returns {"mean", "std"}; subclasses with extra parameters (e.g. GEV shape) override this to include them. The sensitivity pipeline then iterates over whatever parameters each distribution declares, so both the finite-difference and closed-form methods generalize automatically.

For shape parameters, the partial derivatives \(\partial F_X / \partial\theta\) and \(\partial\mu / \partial\theta\), \(\partial\sigma / \partial\theta\) are evaluated numerically via central differences unless the distribution provides an analytical override. See the developer guide for implementation details.

Use this method: Computing reliability sensitivities · Reliability sensitivities · Reliability algorithms and results

For coordinate conventions, see Notation and probability spaces.