TaylorExpansionMoments

class TaylorExpansionMoments(*args)

Moments approximations from Taylor expansions.

Parameters:
limitStateVariableRandomVector

It must be of type Composite, which means it must have been defined with the class CompositeRandomVector.

Methods

drawImportanceFactors()

Draw the importance factors.

getClassName()

Accessor to the object's name.

getCovariance()

Get the approximation of the covariance matrix.

getGradientAtMean()

Get the gradient of the function at the mean point.

getHessianAtMean()

Get the hessian of the function.

getImportanceFactors()

Get the importance factors.

getLimitStateVariable()

Get the limit state variable.

getMeanFirstOrder()

Get the first-order approximation of the mean.

getMeanSecondOrder()

Get the second-order approximation of the mean.

getName()

Accessor to the object's name.

getValueAtMean()

Get the value of the function at the mean point.

hasName()

Test if the object is named.

setName(name)

Accessor to the object's name.

Notes

Assuming that \uX has finite first and second order moments and that h is sufficiently smooth, a Taylor expansion of the function h is used to approximate the mean and variance of the random vector \uY = h(\uX).

Refer to Refer to Taylor Expansion Moments for details on the expressions of the approximations:

  • the first-order expansion of h yields an approximation of the mean and the variance of \uY;

  • the second-order expansion of h yields an approximation of the mean \uY.

Refer to Taylor Importance Factors for details on the importance factors of each input on the output.

Examples

>>> import openturns as ot
>>> ot.RandomGenerator.SetSeed(0)
>>> myFunc = ot.SymbolicFunction(['x1', 'x2', 'x3', 'x4'],
...     ['(x1*x1+x2^3*x1)/(2*x3*x3+x4^4+1)', 'cos(x2*x2+x4)/(x1*x1+1+x3^4)'])
>>> R = ot.CorrelationMatrix(4)
>>> for i in range(4):
...     R[i, i - 1] = 0.25
>>> distribution = ot.Normal([0.2]*4, [0.1, 0.2, 0.3, 0.4], R)
>>> # We create a distribution-based RandomVector
>>> X = ot.RandomVector(distribution)
>>> # We create a composite RandomVector Y from X and myFunc
>>> Y = ot.CompositeRandomVector(myFunc, X)
>>> # We create a Taylor expansion method to approximate moments
>>> myTaylorExpansionMoments = ot.TaylorExpansionMoments(Y)
>>> print(myTaylorExpansionMoments.getMeanFirstOrder())
[0.0384615,0.932544]
__init__(*args)
drawImportanceFactors()

Draw the importance factors.

Returns:
graphGraph

Pie graph of the importance factors.

getClassName()

Accessor to the object’s name.

Returns:
class_namestr

The object class name (object.__class__.__name__).

getCovariance()

Get the approximation of the covariance matrix.

Returns:
covarianceCovarianceMatrix

Approximation of the covariance matrix from the first-order Taylor expansion.

getGradientAtMean()

Get the gradient of the function at the mean point.

Returns:
gradientMatrix

Gradient of h at the mean point of the input random vector.

getHessianAtMean()

Get the hessian of the function.

Returns:
hessianSymmetricTensor

Hessian of the Function which defines the random vector at the mean point of the input random vector.

getImportanceFactors()

Get the importance factors.

Returns:
factorsPoint

Importance factors of the inputs : only when randVect is of dimension 1.

getLimitStateVariable()

Get the limit state variable.

Returns:
limitStateVariableRandomVector

The Y output random vector.

getMeanFirstOrder()

Get the first-order approximation of the mean.

Returns:
meanPoint

Approximation of \Expect{Y} from the first-order Taylor expansion.

getMeanSecondOrder()

Get the second-order approximation of the mean.

Returns:
meanPoint

Approximation of \Expect{Y} from the second-order Taylor expansion.

getName()

Accessor to the object’s name.

Returns:
namestr

The name of the object.

getValueAtMean()

Get the value of the function at the mean point.

Returns:
valuePoint

Value h(\Expect{\uX}).

hasName()

Test if the object is named.

Returns:
hasNamebool

True if the name is not empty.

setName(name)

Accessor to the object’s name.

Parameters:
namestr

The name of the object.

Examples using the class

Analyse the central tendency of a cantilever beam

Analyse the central tendency of a cantilever beam

Estimate moments from Taylor expansions

Estimate moments from Taylor expansions

Example of sensitivity analyses on the wing weight model

Example of sensitivity analyses on the wing weight model