Circular Pipe Crack#

import numpy as np
import matplotlib.pyplot as plt
import uqtestfuns as uqtf

The two-dimensional circular pipe crack reliability problem was introduced in [VAK15] and used, for instance, in [LGG+18].

The plots of the function are shown below. The left plot shows the surface plot of the performance function, the center plot shows the contour plot with a single contour line at function value of \(0.0\) (the limit-state surface), and the right plot shows the same plot with \(10^6\) sample points overlaid.

../_images/circular-pipe-crack_3_0.png

Test function instance#

To create a default instance of the test function:

my_testfun = uqtf.CircularPipeCrack()

Check if it has been correctly instantiated:

print(my_testfun)
Name              : CircularPipeCrack
Spatial dimension : 2
Description       : Circular pipe under bending moment from Verma et al. (2015)

Description#

The system under consideration is as a circular pipe with a circumferential through-wall crack under a bending moment. The performance function is analytically defined as follows1:

\[ g(\boldsymbol{x}; \boldsymbol{p}) = 4 t \sigma_f R^2 \left( \cos{\left(\frac{\theta}{2}\right)} - \frac{1}{2} \sin{(\theta)} \right) - M \]

where \(\boldsymbol{x} = \{ \sigma_f, \theta \}\) is the two-dimensional vector of input variables probabilistically defined further below; and \(\boldsymbol{p} = \{ t, R, M \}\) is the vector of deterministic parameters.

The failure state and the failure probability are defined as \(g(\boldsymbol{x}; \boldsymbol{p}) \leq 0\) and \(\mathbb{P}[g(\boldsymbol{X}; \boldsymbol{p}) \leq 0]\), respectively.

Probabilistic input#

Based on [VAK15], the probabilistic input model for the test function consists of two independent standard normal random variables (see the table below).

my_testfun.prob_input

Name: CircularPipeCrack-Verma2015

Spatial Dimension: 2

Description: Input model for the circular pipe crack problem from Verma et al. (2015)

Marginals:

No. Name Distribution Parameters Description
1sigma_f normal [301.079 14.78 ] flow stress [MNm]
2 theta normal [0.503 0.049] half crack angle [-]

Copulas: None

Parameters#

From [VAK15], the values of the parameters are as follows:

Parameter

Value

Description

\(t\)

\(3.377 \times 10^{-1}\)

Radius of the pipe \([\mathrm{m}]\)

\(R\)

\(3.377 \times 10^{-2}\)

Thickness of the pipe \([\mathrm{m}]\)

\(M\)

\(3.0\)

Applied bending moment \([\mathrm{MNm}]\)

Reference results#

This section provides several reference results of typical UQ analyses involving the test function.

Sample histogram#

Shown below is the histogram of the output based on \(10^6\) random points:

xx_test = my_testfun.prob_input.get_sample(1000000)
yy_test = my_testfun(xx_test)
idx_pos = yy_test > 0
idx_neg = yy_test <= 0

hist_pos = plt.hist(yy_test, bins="auto", color="#0571b0")
plt.hist(yy_test[idx_neg], bins=hist_pos[1], color="#ca0020")
plt.axvline(0, linewidth=1.0, color="#ca0020")

plt.grid()
plt.ylabel("Counts [-]")
plt.xlabel("$g(\mathbf{X})$")
plt.gcf().set_dpi(150);
../_images/circular-pipe-crack_11_0.png

Failure probability (\(P_f\))#

Some reference values for the failure probability \(P_f\) from the literature are summarized in the table below.

Method

\(N\)

\(\hat{P}_f\)

\(\mathrm{CoV}[\hat{P}_f]\)

Source

MCS

\(10^6\)

\(3.4353 \times 10^{-2}\)

[LGG+18]

FORM

\(6\)

\(3.3065 \times 10^{-2}\)

[VAK15]

FORM

\(9\)

\(3.3065 \times 10^{-2}\)

[LGG+18]

SORM

\(14\)

\(3.4211 \times 10^{-2}\)

[LGG+18]

SSRM

\(7\)

\(3.4347 \times 10^{-2}\)

[LGG+18]

References#

VAK15(1,2,3,4,5)

Ajit Kumar Verma, Srividya Ajit, and Durga Rao Karanki. Structural reliability. In Springer Series in Reliability Engineering, pages 257–292. Springer London, 2015. doi:10.1007/978-1-4471-6269-8_8.

LGG+18(1,2,3,4,5)

Xu Li, Chunlin Gong, Liangxian Gu, Wenkun Gao, Zhao Jing, and Hua Su. A sequential surrogate method for reliability analysis based on radial basis function. Structural Safety, 73:42–53, 2018. doi:10.1016/j.strusafe.2018.02.005.


1

see Example 5, p. 266 in [VAK15].