Rayleigh distribution

(Source code, png, hires.png, pdf)

../../_images/openturns-Rayleigh-1.png
class Rayleigh(*args)

Rayleigh distribution.

Available constructors:
Rayleigh(sigma=1.0, gamma=0.)
Parameters:

sigma : float, \sigma > 0

Scale parameter \sigma.

gamma : float

Location parameter \gamma.

Notes

Its probability density function is defined as:

f_X(x) = \frac{(x - \gamma)} {\sigma^2}
         exp \left(-\frac{(x - \gamma)^2}{2\sigma^2}\right)
         \quad x \in [\gamma,+\infty[

Its first moments are:

\begin{eqnarray*}
    \Expect{X} & = & \sigma sqrt{\frac{\pi}{2}} + \gamma \\
    \Var{X} & = & \frac{4 - \pi}{2} \sigma^2
\end{eqnarray*}

Examples

Create a distribution:

>>> import openturns as ot
>>> distribution = ot.Poisson(10.0)

Draw a sample:

>>> sample = distribution.getSample(5)

Methods

abs() Transform distribution by absolute value function.
acos() Transform distribution by arccosine function.
acosh() Transform distribution by acosh function.
asin() Transform distribution by arcsine function.
asinh() Transform distribution by asinh function.
atan() Transform distribution by arctangent function.
atanh() Transform distribution by atanh function.
cbrt() Transform distribution by cubic root function.
computeBilateralConfidenceInterval(prob) Compute a bilateral confidence interval.
computeBilateralConfidenceIntervalWithMarginalProbability(prob) Compute a bilateral confidence interval.
computeCDF(*args) Compute the cumulative distribution function.
computeCDFGradient(*args) Compute the gradient of the cumulative distribution function.
computeCharacteristicFunction(x) Compute the characteristic function.
computeComplementaryCDF(*args) Compute the complementary cumulative distribution function.
computeConditionalCDF(*args) Compute the conditional cumulative distribution function.
computeConditionalDDF(x, y) Compute the conditional derivative density function of the last component.
computeConditionalPDF(*args) Compute the conditional probability density function.
computeConditionalQuantile(*args) Compute the conditional quantile function of the last component.
computeDDF(*args) Compute the derivative density function.
computeDensityGenerator(betaSquare) Compute the probability density function of the characteristic generator.
computeDensityGeneratorDerivative(betaSquare) Compute the first-order derivative of the probability density function.
computeDensityGeneratorSecondDerivative(…) Compute the second-order derivative of the probability density function.
computeGeneratingFunction(*args) Compute the probability-generating function.
computeInverseSurvivalFunction(point) Compute the inverse survival function.
computeLogCharacteristicFunction(*args) Compute the logarithm of the characteristic function.
computeLogGeneratingFunction(*args) Compute the logarithm of the probability-generating function.
computeLogPDF(*args) Compute the logarithm of the probability density function.
computeLogPDFGradient(*args) Compute the gradient of the log probability density function.
computeMinimumVolumeInterval(prob) Compute the confidence interval with minimum volume.
computeMinimumVolumeIntervalWithMarginalProbability(prob) Compute the confidence interval with minimum volume.
computeMinimumVolumeLevelSet(prob) Compute the confidence domain with minimum volume.
computeMinimumVolumeLevelSetWithThreshold(prob) Compute the confidence domain with minimum volume.
computePDF(*args) Compute the probability density function.
computePDFGradient(*args) Compute the gradient of the probability density function.
computeProbability(interval) Compute the interval probability.
computeQuantile(*args) Compute the quantile function.
computeRadialDistributionCDF(radius[, tail]) Compute the cumulative distribution function of the squared radius.
computeSurvivalFunction(*args) Compute the survival function.
computeUnilateralConfidenceInterval(prob[, tail]) Compute a unilateral confidence interval.
computeUnilateralConfidenceIntervalWithMarginalProbability(…) Compute a unilateral confidence interval.
cos() Transform distribution by cosine function.
cosh() Transform distribution by cosh function.
drawCDF(*args) Draw the cumulative distribution function.
drawLogPDF(*args) Draw the graph or of iso-lines of log-probability density function.
drawMarginal1DCDF(marginalIndex, xMin, xMax, …) Draw the cumulative distribution function of a margin.
drawMarginal1DLogPDF(marginalIndex, xMin, …) Draw the log-probability density function of a margin.
drawMarginal1DPDF(marginalIndex, xMin, xMax, …) Draw the probability density function of a margin.
drawMarginal2DCDF(firstMarginal, …) Draw the cumulative distribution function of a couple of margins.
drawMarginal2DLogPDF(firstMarginal, …) Draw the log-probability density function of a couple of margins.
drawMarginal2DPDF(firstMarginal, …) Draw the probability density function of a couple of margins.
drawPDF(*args) Draw the graph or of iso-lines of probability density function.
drawQuantile(*args) Draw the quantile function.
exp() Transform distribution by exponential function.
getCDFEpsilon() Accessor to the CDF computation precision.
getCenteredMoment(n) Accessor to the componentwise centered moments.
getCholesky() Accessor to the Cholesky factor of the covariance matrix.
getClassName() Accessor to the object’s name.
getCopula() Accessor to the copula of the distribution.
getCorrelation() (ditch me?)
getCovariance() Accessor to the covariance matrix.
getDescription() Accessor to the componentwise description.
getDimension() Accessor to the dimension of the distribution.
getDispersionIndicator() (ditch me?)
getGamma() Accessor to the distribution’s location parameter \gamma.
getGaussNodesAndWeights()
getId() Accessor to the object’s id.
getIntegrationNodesNumber() Accessor to the number of Gauss integration points.
getInverseCholesky() Accessor to the inverse Cholesky factor of the covariance matrix.
getInverseIsoProbabilisticTransformation() Accessor to the inverse iso-probabilistic transformation.
getIsoProbabilisticTransformation() Accessor to the iso-probabilistic transformation.
getKendallTau() Accessor to the Kendall coefficients matrix.
getKurtosis() Accessor to the componentwise kurtosis.
getLinearCorrelation() (ditch me?)
getMarginal(*args) Accessor to marginal distributions.
getMean() Accessor to the mean.
getMoment(n) Accessor to the componentwise moments.
getName() Accessor to the object’s name.
getPDFEpsilon() Accessor to the PDF computation precision.
getParameter() Accessor to the parameter of the distribution.
getParameterDescription() Accessor to the parameter description of the distribution.
getParameterDimension() Accessor to the number of parameters in the distribution.
getParametersCollection() Accessor to the parameter of the distribution.
getPearsonCorrelation() Accessor to the Pearson correlation matrix.
getPositionIndicator() (ditch me?)
getProbabilities() Accessor to the discrete probability levels.
getRange() Accessor to the range of the distribution.
getRealization() Accessor to a pseudo-random realization from the distribution.
getRoughness() Accessor to roughness of the distribution.
getSample(size) Accessor to a pseudo-random sample from the distribution.
getShadowedId() Accessor to the object’s shadowed id.
getShapeMatrix() Accessor to the shape matrix of the underlying copula if it is elliptical.
getShiftedMoment(n, shift) Accessor to the componentwise shifted moments.
getSigma() Accessor to the distribution’s scale parameter \sigma.
getSingularities() Accessor to the singularities of the PDF function.
getSkewness() Accessor to the componentwise skewness.
getSpearmanCorrelation() Accessor to the Spearman correlation matrix.
getStandardDeviation() Accessor to the componentwise standard deviation.
getStandardDistribution() Accessor to the standard distribution.
getStandardMoment(n) Accessor to the componentwise standard moments.
getStandardRepresentative() Accessor to the standard representative distribution in the parametric family.
getSupport(*args) Accessor to the support of the distribution.
getVisibility() Accessor to the object’s visibility state.
hasEllipticalCopula() Test whether the copula of the distribution is elliptical or not.
hasIndependentCopula() Test whether the copula of the distribution is the independent one.
hasName() Test if the object is named.
hasVisibleName() Test if the object has a distinguishable name.
inverse() Transform distribution by inverse function.
isContinuous() Test whether the distribution is continuous or not.
isCopula() Test whether the distribution is a copula or not.
isDiscrete() Test whether the distribution is discrete or not.
isElliptical() Test whether the distribution is elliptical or not.
isIntegral() Test whether the distribution is integer-valued or not.
ln() Transform distribution by natural logarithm function.
log() Transform distribution by natural logarithm function.
setDescription(description) Accessor to the componentwise description.
setGamma(gamma) Accessor to the distribution’s location parameter \gamma.
setIntegrationNodesNumber(integrationNodesNumber) Accessor to the number of Gauss integration points.
setName(name) Accessor to the object’s name.
setParameter(parameter) Accessor to the parameter of the distribution.
setParametersCollection(*args) Accessor to the parameter of the distribution.
setShadowedId(id) Accessor to the object’s shadowed id.
setSigma(sigma) Accessor to the distribution’s scale parameter \sigma.
setVisibility(visible) Accessor to the object’s visibility state.
sin() Transform distribution by sine function.
sinh() Transform distribution by sinh function.
sqr() Transform distribution by square function.
sqrt() Transform distribution by square root function.
tan() Transform distribution by tangent function.
tanh() Transform distribution by tanh function.
__init__(*args)
abs()

Transform distribution by absolute value function.

Returns:

dist : Distribution

The transformed distribution.

acos()

Transform distribution by arccosine function.

Returns:

dist : Distribution

The transformed distribution.

acosh()

Transform distribution by acosh function.

Returns:

dist : Distribution

The transformed distribution.

asin()

Transform distribution by arcsine function.

Returns:

dist : Distribution

The transformed distribution.

asinh()

Transform distribution by asinh function.

Returns:

dist : Distribution

The transformed distribution.

atan()

Transform distribution by arctangent function.

Returns:

dist : Distribution

The transformed distribution.

atanh()

Transform distribution by atanh function.

Returns:

dist : Distribution

The transformed distribution.

cbrt()

Transform distribution by cubic root function.

Returns:

dist : Distribution

The transformed distribution.

computeBilateralConfidenceInterval(prob)

Compute a bilateral confidence interval.

Parameters:

alpha : float, \alpha \in [0,1]

The confidence level.

Returns:

confInterval : Interval

The confidence interval of level \alpha.

Notes

We consider an absolutely continuous measure \mu with density function p.

The bilateral confidence interval I^*_{\alpha} is the cartesian product I^*_{\alpha} = [a_1, b_1] \times \dots \times [a_d, b_d] where a_i = F_i^{-1}((1-\beta)/2) and b_i = F_i^{-1}((1+\beta)/2) for all i and which verifies \mu(I^*_{\alpha}) = \alpha.

Examples

Create a sample from a Normal distribution:

>>> import openturns as ot
>>> sample = ot.Normal().getSample(10)
>>> ot.ResourceMap.SetAsUnsignedInteger('DistributionFactory-DefaultBootstrapSize', 100)

Fit a Normal distribution and extract the asymptotic parameters distribution:

>>> fittedRes = ot.NormalFactory().buildEstimator(sample)
>>> paramDist = fittedRes.getParameterDistribution()

Determine the bilateral confidence interval at level 0.9:

>>> confInt = paramDist.computeBilateralConfidenceInterval(0.9)
computeBilateralConfidenceIntervalWithMarginalProbability(prob)

Compute a bilateral confidence interval.

Refer to computeBilateralConfidenceInterval()

Parameters:

alpha : float, \alpha \in [0,1]

The confidence level.

Returns:

confInterval : Interval

The confidence interval of level \alpha.

marginalProb : float

The value \beta which is the common marginal probability of each marginal interval.

Examples

Create a sample from a Normal distribution:

>>> import openturns as ot
>>> sample = ot.Normal().getSample(10)
>>> ot.ResourceMap.SetAsUnsignedInteger('DistributionFactory-DefaultBootstrapSize', 100)

Fit a Normal distribution and extract the asymptotic parameters distribution:

>>> fittedRes = ot.NormalFactory().buildEstimator(sample)
>>> paramDist = fittedRes.getParameterDistribution()

Determine the bilateral confidence interval at level 0.9 with marginal probability:

>>> confInt, marginalProb = paramDist.computeBilateralConfidenceIntervalWithMarginalProbability(0.9)
computeCDF(*args)

Compute the cumulative distribution function.

Parameters:

X : sequence of float, 2-d sequence of float

CDF input(s).

Returns:

F : float, Point

CDF value(s) at input(s) X.

Notes

The cumulative distribution function is defined as:

F_{\vect{X}}(\vect{x}) = \Prob{\bigcap_{i=1}^n X_i \leq x_i},
                         \quad \vect{x} \in \supp{\vect{X}}

computeCDFGradient(*args)

Compute the gradient of the cumulative distribution function.

Parameters:

X : sequence of float

CDF input.

Returns:

dFdtheta : Point

Partial derivatives of the CDF with respect to the distribution parameters at input X.

computeCharacteristicFunction(x)

Compute the characteristic function.

Parameters:

t : float

Characteristic function input.

Returns:

phi : complex

Characteristic function value at input t.

Notes

The characteristic function is defined as:

\phi_X(t) = \mathbb{E}\left[\exp(- i t X)\right],
            \quad t \in \Rset

OpenTURNS features a generic implementation of the characteristic function for all its univariate distributions (both continuous and discrete). This default implementation might be time consuming, especially as the modulus of t gets high. Only some univariate distributions benefit from dedicated more efficient implementations.

computeComplementaryCDF(*args)

Compute the complementary cumulative distribution function.

Parameters:

X : sequence of float, 2-d sequence of float

Complementary CDF input(s).

Returns:

C : float, Point

Complementary CDF value(s) at input(s) X.

Notes

The complementary cumulative distribution function.

1 - F_{\vect{X}}(\vect{x}) = 1 - \Prob{\bigcap_{i=1}^n X_i \leq x_i}, \quad \vect{x} \in \supp{\vect{X}}

Warning

This is not the survival function (except for 1-dimensional distributions).

computeConditionalCDF(*args)

Compute the conditional cumulative distribution function.

Parameters:

Xn : float, sequence of float

Conditional CDF input (last component).

Xcond : sequence of float, 2-d sequence of float with size n-1

Conditionning values for the other components.

Returns:

F : float, sequence of float

Conditional CDF value(s) at input Xn, Xcond.

Notes

The conditional cumulative distribution function of the last component with respect to the other fixed components is defined as follows:

F_{X_n \mid X_1, \ldots, X_{n - 1}}(x_n) =
    \Prob{X_n \leq x_n \mid X_1=x_1, \ldots, X_{n-1}=x_{n-1}},
    \quad x_n \in \supp{X_n}

computeConditionalDDF(x, y)

Compute the conditional derivative density function of the last component.

With respect to the other fixed components.

Parameters:

Xn : float

Conditional DDF input (last component).

Xcond : sequence of float with dimension n-1

Conditionning values for the other components.

Returns:

d : float

Conditional DDF value at input Xn, Xcond.

computeConditionalPDF(*args)

Compute the conditional probability density function.

Conditional PDF of the last component with respect to the other fixed components.

Parameters:

Xn : float, sequence of float

Conditional PDF input (last component).

Xcond : sequence of float, 2-d sequence of float with size n-1

Conditionning values for the other components.

Returns:

F : float, sequence of float

Conditional PDF value(s) at input Xn, Xcond.

computeConditionalQuantile(*args)

Compute the conditional quantile function of the last component.

Conditional quantile with respect to the other fixed components.

Parameters:

p : float, sequence of float, 0 < p < 1

Conditional quantile function input.

Xcond : sequence of float, 2-d sequence of float with size n-1

Conditionning values for the other components.

Returns:

X1 : float

Conditional quantile at input p, Xcond.

computeDDF(*args)

Compute the derivative density function.

Parameters:

X : sequence of float, 2-d sequence of float

PDF input(s).

Returns:

d : Point, Sample

DDF value(s) at input(s) X.

Notes

The derivative density function is the gradient of the probability density function with respect to \vect{x}:

\vect{\nabla}_{\vect{x}} f_{\vect{X}}(\vect{x}) =
    \Tr{\left(\frac{\partial f_{\vect{X}}(\vect{x})}{\partial x_i},
              \quad i = 1, \ldots, n\right)},
    \quad \vect{x} \in \supp{\vect{X}}

computeDensityGenerator(betaSquare)

Compute the probability density function of the characteristic generator.

PDF of the characteristic generator of the elliptical distribution.

Parameters:

beta2 : float

Density generator input.

Returns:

p : float

Density generator value at input X.

Notes

This is the function \phi such that the probability density function rewrites:

f_{\vect{X}}(\vect{x}) =
    \phi\left(\Tr{\left(\vect{x} - \vect{\mu}\right)}
                  \mat{\Sigma}^{-1}
                  \left(\vect{x} - \vect{\mu}\right)
        \right),
    \quad \vect{x} \in \supp{\vect{X}}

This function only exists for elliptical distributions.

computeDensityGeneratorDerivative(betaSquare)

Compute the first-order derivative of the probability density function.

PDF of the characteristic generator of the elliptical distribution.

Parameters:

beta2 : float

Density generator input.

Returns:

p : float

Density generator first-order derivative value at input X.

Notes

This function only exists for elliptical distributions.

computeDensityGeneratorSecondDerivative(betaSquare)

Compute the second-order derivative of the probability density function.

PDF of the characteristic generator of the elliptical distribution.

Parameters:

beta2 : float

Density generator input.

Returns:

p : float

Density generator second-order derivative value at input X.

Notes

This function only exists for elliptical distributions.

computeGeneratingFunction(*args)

Compute the probability-generating function.

Parameters:

z : float or complex

Probability-generating function input.

Returns:

g : float

Probability-generating function value at input X.

See also

isDiscrete

Notes

The probability-generating function is defined as follows:

G_X(z) = \Expect{z^X}, \quad z \in \Cset

This function only exists for discrete distributions. OpenTURNS implements this method for univariate distributions only.

computeInverseSurvivalFunction(point)

Compute the inverse survival function.

Parameters:

p : float, p \in [0; 1]

Level of the survival function.

Returns:

x : Point

Point \vect{x} such that S_{\vect{X}}(\vect{x}) = p with iso-quantile components.

Notes

The inverse survival function writes: S^{-1}(p)  =  \vect{x}^p where S( \vect{x}^p) = \Prob{\bigcap_{i=1}^d X_i > x_i^p}. OpenTURNS returns the point \vect{x}^p such that \Prob{ X_1 > x_1^p}   =  \dots = \Prob{ X_d > x_d^p}.

computeLogCharacteristicFunction(*args)

Compute the logarithm of the characteristic function.

Parameters:

t : float

Characteristic function input.

Returns:

phi : complex

Logarithm of the characteristic function value at input t.

Notes

OpenTURNS features a generic implementation of the characteristic function for all its univariate distributions (both continuous and discrete). This default implementation might be time consuming, especially as the modulus of t gets high. Only some univariate distributions benefit from dedicated more efficient implementations.

computeLogGeneratingFunction(*args)

Compute the logarithm of the probability-generating function.

Parameters:

z : float or complex

Probability-generating function input.

Returns:

lg : float

Logarithm of the probability-generating function value at input X.

Notes

This function only exists for discrete distributions. OpenTURNS implements this method for univariate distributions only.

computeLogPDF(*args)

Compute the logarithm of the probability density function.

Parameters:

X : sequence of float, 2-d sequence of float

PDF input(s).

Returns:

f : float, Point

Logarithm of the PDF value(s) at input(s) X.

computeLogPDFGradient(*args)

Compute the gradient of the log probability density function.

Parameters:

X : sequence of float

PDF input.

Returns:

dfdtheta : Point

Partial derivatives of the logPDF with respect to the distribution parameters at input X.

computeMinimumVolumeInterval(prob)

Compute the confidence interval with minimum volume.

Parameters:

alpha : float, \alpha \in [0,1]

The confidence level.

Returns:

confInterval : Interval

The confidence interval of level \alpha.

Notes

We consider an absolutely continuous measure \mu with density function p.

The minimum volume confidence interval I^*_{\alpha} is the cartesian product I^*_{\alpha} = [a_1, b_1] \times \dots \times [a_d, b_d] where [a_i, b_i]   = \argmin_{I \in \Rset \, | \, \mu_i(I) = \beta} \lambda_i(I) and \mu(I^*_{\alpha})  =  \alpha with \lambda is the Lebesgue measure on \Rset^d.

This problem resorts to solving d univariate non linear equations: for a fixed value \beta, we find each intervals [a_i, b_i] such that:

\begin{eqnarray*}
F_i(b_i) - F_i(a_i) & = & \beta \\
p_i(b_i) & = & p_i(a_i)
\end{eqnarray*}

which consists of finding the bound a_i such that:

p_i(a_i) =  p_i(F_i^{-1}(\beta + F_i(a_i)))

To find \beta, we use the Brent algorithm: \mu([\vect{a}(\beta); \vect{b}(\beta)] = g(\beta) = \alpha with g a non linear function.

Examples

Create a sample from a Normal distribution:

>>> import openturns as ot
>>> sample = ot.Normal().getSample(10)
>>> ot.ResourceMap.SetAsUnsignedInteger('DistributionFactory-DefaultBootstrapSize', 100)

Fit a Normal distribution and extract the asymptotic parameters distribution:

>>> fittedRes = ot.NormalFactory().buildEstimator(sample)
>>> paramDist = fittedRes.getParameterDistribution()

Determine the confidence interval of the native parameters at level 0.9 with minimum volume:

>>> ot.ResourceMap.SetAsUnsignedInteger('Distribution-MinimumVolumeLevelSetSamplingSize', 1000)
>>> confInt = paramDist.computeMinimumVolumeInterval(0.9)
computeMinimumVolumeIntervalWithMarginalProbability(prob)

Compute the confidence interval with minimum volume.

Refer to computeMinimumVolumeInterval()

Parameters:

alpha : float, \alpha \in [0,1]

The confidence level.

Returns:

confInterval : Interval

The confidence interval of level \alpha.

marginalProb : float

The value \beta which is the common marginal probability of each marginal interval.

Examples

Create a sample from a Normal distribution:

>>> import openturns as ot
>>> sample = ot.Normal().getSample(10)
>>> ot.ResourceMap.SetAsUnsignedInteger('DistributionFactory-DefaultBootstrapSize', 100)

Fit a Normal distribution and extract the asymptotic parameters distribution:

>>> fittedRes = ot.NormalFactory().buildEstimator(sample)
>>> paramDist = fittedRes.getParameterDistribution()

Determine the confidence interval of the native parameters at level 0.9 with minimum volume:

>>> ot.ResourceMap.SetAsUnsignedInteger('Distribution-MinimumVolumeLevelSetSamplingSize', 1000)
>>> confInt, marginalProb = paramDist.computeMinimumVolumeIntervalWithMarginalProbability(0.9)
computeMinimumVolumeLevelSet(prob)

Compute the confidence domain with minimum volume.

Parameters:

alpha : float, \alpha \in [0,1]

The confidence level.

Returns:

levelSet : LevelSet

The minimum volume domain of measure \alpha.

Notes

We consider an absolutely continuous measure \mu with density function p.

The minimum volume confidence domain A^*_{\alpha} is the set of minimum volume and which measure is at least \alpha. It is defined by:

A^*_{\alpha} = \argmin_{A \in \Rset^d\, | \, \mu(A) \geq \alpha} \lambda(A)

where \lambda is the Lebesgue measure on \Rset^d. Under some general conditions on \mu (for example, no flat regions), the set A^*_{\alpha} is unique and realises the minimum: \mu(A^*_{\alpha}) = \alpha. We show that A^*_{\alpha} writes:

A^*_{\alpha} = \{ \vect{x} \in \Rset^d \, | \, p(\vect{x}) \geq p_{\alpha} \}

for a certain p_{\alpha} >0.

If we consider the random variable Y = p(\vect{X}), with cumulative distribution function F_Y, then p_{\alpha} is defined by:

1-F_Y(p_{\alpha}) = \alpha

Thus the minimum volume domain of confidence \alpha is the interior of the domain which frontier is the 1-\alpha quantile of Y. It can be determined with simulations of Y.

Examples

Create a sample from a Normal distribution:

>>> import openturns as ot
>>> sample = ot.Normal().getSample(10)
>>> ot.ResourceMap.SetAsUnsignedInteger('DistributionFactory-DefaultBootstrapSize', 100)

Fit a Normal distribution and extract the asymptotic parameters distribution:

>>> fittedRes = ot.NormalFactory().buildEstimator(sample)
>>> paramDist = fittedRes.getParameterDistribution()

Determine the confidence region of minimum volume of the native parameters at level 0.9:

>>> levelSet = paramDist.computeMinimumVolumeLevelSet(0.9)
computeMinimumVolumeLevelSetWithThreshold(prob)

Compute the confidence domain with minimum volume.

Refer to computeMinimumVolumeLevelSet()

Parameters:

alpha : float, \alpha \in [0,1]

The confidence level.

Returns:

levelSet : LevelSet

The minimum volume domain of measure \alpha.

level : float

The value p_{\alpha} of the density function defining the frontier of the domain.

Examples

Create a sample from a Normal distribution:

>>> import openturns as ot
>>> sample = ot.Normal().getSample(10)
>>> ot.ResourceMap.SetAsUnsignedInteger('DistributionFactory-DefaultBootstrapSize', 100)

Fit a Normal distribution and extract the asymptotic parameters distribution:

>>> fittedRes = ot.NormalFactory().buildEstimator(sample)
>>> paramDist = fittedRes.getParameterDistribution()

Determine the confidence region of minimum volume of the native parameters at level 0.9 with PDF threshold:

>>> levelSet, threshold = paramDist.computeMinimumVolumeLevelSetWithThreshold(0.9)
computePDF(*args)

Compute the probability density function.

Parameters:

X : sequence of float, 2-d sequence of float

PDF input(s).

Returns:

f : float, Point

PDF value(s) at input(s) X.

Notes

The probability density function is defined as follows:

f_{\vect{X}}(\vect{x}) = \frac{\partial^n F_{\vect{X}}(\vect{x})}
                              {\prod_{i=1}^n \partial x_i},
                         \quad \vect{x} \in \supp{\vect{X}}

computePDFGradient(*args)

Compute the gradient of the probability density function.

Parameters:

X : sequence of float

PDF input.

Returns:

dfdtheta : Point

Partial derivatives of the PDF with respect to the distribution parameters at input X.

computeProbability(interval)

Compute the interval probability.

Parameters:

interval : Interval

An interval, possibly multivariate.

Returns:

P : float

Interval probability.

Notes

This computes the probability that the random vector \vect{X} lies in the hyper-rectangular region formed by the vectors \vect{a} and \vect{b}:

\Prob{\bigcap\limits_{i=1}^n a_i < X_i \leq b_i} =
    \sum\limits_{\vect{c}} (-1)^{n(\vect{c})}
        F_{\vect{X}}\left(\vect{c}\right)

where the sum runs over the 2^n vectors such that \vect{c} = \Tr{(c_i, i = 1, \ldots, n)} with c_i \in [a_i, b_i], and n(\vect{c}) is the number of components in \vect{c} such that c_i = a_i.

computeQuantile(*args)

Compute the quantile function.

Parameters:

p : float, 0 < p < 1

Quantile function input (a probability).

Returns:

X : Point

Quantile at probability level p.

Notes

The quantile function is also known as the inverse cumulative distribution function:

Q_{\vect{X}}(p) = F_{\vect{X}}^{-1}(p),
                  \quad p \in [0; 1]

computeRadialDistributionCDF(radius, tail=False)

Compute the cumulative distribution function of the squared radius.

For the underlying standard spherical distribution (for elliptical distributions only).

Parameters:

r2 : float, 0 \leq r^2

Squared radius.

Returns:

F : float

CDF value at input r2.

Notes

This is the CDF of the sum of the squared independent, standard, identically distributed components:

R^2 = \sqrt{\sum\limits_{i=1}^n U_i^2}

computeSurvivalFunction(*args)

Compute the survival function.

Parameters:

x : sequence of float, 2-d sequence of float

Survival function input(s).

Returns:

S : float, Point

Survival function value(s) at input(s) x.

Notes

The survival function of the random vector \vect{X} is defined as follows:

S_{\vect{X}}(\vect{x}) = \Prob{\bigcap_{i=1}^d X_i > x_i}
         \quad \forall \vect{x} \in \Rset^d

Warning

This is not the complementary cumulative distribution function (except for 1-dimensional distributions).

computeUnilateralConfidenceInterval(prob, tail=False)

Compute a unilateral confidence interval.

Parameters:

alpha : float, \alpha \in [0,1]

The confidence level.

tail : boolean

True indicates the interval is bounded by an lower value. False indicates the interval is bounded by an upper value. Default value is False.

Returns:

confInterval : Interval

The unilateral confidence interval of level \alpha.

Notes

We consider an absolutely continuous measure \mu.

The left unilateral confidence interval I^*_{\alpha} is the cartesian product I^*_{\alpha} = ]-\infty, b_1] \times \dots \times ]-\infty, b_d] where b_i = F_i^{-1}(\beta) for all i and which verifies \mu(I^*_{\alpha}) = \alpha. It means that \vect{b} is the quantile of level \alpha of the measure \mu, with iso-quantile components.

The right unilateral confidence interval I^*_{\alpha} is the cartesian product I^*_{\alpha} = ]a_1; +\infty[ \times \dots \times ]a_d; +\infty[ where a_i = F_i^{-1}(1-\beta) for all i and which verifies \mu(I^*_{\alpha}) = \alpha. It means that S_{\mu}^{-1}(\vect{a}) = \alpha with iso-quantile components, where S_{\mu} is the survival function of the measure \mu.

Examples

Create a sample from a Normal distribution:

>>> import openturns as ot
>>> sample = ot.Normal().getSample(10)
>>> ot.ResourceMap.SetAsUnsignedInteger('DistributionFactory-DefaultBootstrapSize', 100)

Fit a Normal distribution and extract the asymptotic parameters distribution:

>>> fittedRes = ot.NormalFactory().buildEstimator(sample)
>>> paramDist = fittedRes.getParameterDistribution()

Determine the right unilateral confidence interval at level 0.9:

>>> confInt = paramDist.computeUnilateralConfidenceInterval(0.9)

Determine the left unilateral confidence interval at level 0.9:

>>> confInt = paramDist.computeUnilateralConfidenceInterval(0.9, True)
computeUnilateralConfidenceIntervalWithMarginalProbability(prob, tail)

Compute a unilateral confidence interval.

Refer to computeUnilateralConfidenceInterval()

Parameters:

alpha : float, \alpha \in [0,1]

The confidence level.

tail : boolean

True indicates the interval is bounded by an lower value. False indicates the interval is bounded by an upper value. Default value is False.

Returns:

confInterval : Interval

The unilateral confidence interval of level \alpha.

marginalProb : float

The value \beta which is the common marginal probability of each marginal interval.

Examples

Create a sample from a Normal distribution:

>>> import openturns as ot
>>> sample = ot.Normal().getSample(10)
>>> ot.ResourceMap.SetAsUnsignedInteger('DistributionFactory-DefaultBootstrapSize', 100)

Fit a Normal distribution and extract the asymptotic parameters distribution:

>>> fittedRes = ot.NormalFactory().buildEstimator(sample)
>>> paramDist = fittedRes.getParameterDistribution()

Determine the right unilateral confidence interval at level 0.9:

>>> confInt, marginalProb = paramDist.computeUnilateralConfidenceIntervalWithMarginalProbability(0.9, False)

Determine the left unilateral confidence interval at level 0.9:

>>> confInt, marginalProb = paramDist.computeUnilateralConfidenceIntervalWithMarginalProbability(0.9, True)
cos()

Transform distribution by cosine function.

Returns:

dist : Distribution

The transformed distribution.

cosh()

Transform distribution by cosh function.

Returns:

dist : Distribution

The transformed distribution.

drawCDF(*args)

Draw the cumulative distribution function.

Available constructors:

drawCDF(x_min, x_max, pointNumber)

drawCDF(lowerCorner, upperCorner, pointNbrInd)

drawCDF(lowerCorner, upperCorner)

Parameters:

x_min : float, optional

The min-value of the mesh of the x-axis. Defaults uses the quantile associated to the probability level Distribution-QMin from the ResourceMap.

x_max : float, optional, x_{\max} > x_{\min}

The max-value of the mesh of the y-axis. Defaults uses the quantile associated to the probability level Distribution-QMax from the ResourceMap.

pointNumber : int

The number of points that is used for meshing each axis. Defaults uses DistributionImplementation-DefaultPointNumber from the ResourceMap.

lowerCorner : sequence of float, of dimension 2, optional

The lower corner [x_{min}, y_{min}].

upperCorner : sequence of float, of dimension 2, optional

The upper corner [x_{max}, y_{max}].

pointNbrInd : Indices, of dimension 2

Number of points that is used for meshing each axis.

Returns:

graph : Graph

A graphical representation of the CDF.

Notes

Only valid for univariate and bivariate distributions.

Examples

View the CDF of a univariate distribution:

>>> import openturns as ot
>>> dist = ot.Normal()
>>> graph = dist.drawCDF()
>>> graph.setLegends(['normal cdf'])

View the iso-lines CDF of a bivariate distribution:

>>> import openturns as ot
>>> dist = ot.Normal(2)
>>> graph2 = dist.drawCDF()
>>> graph2.setLegends(['iso- normal cdf'])
>>> graph3 = dist.drawCDF([-10, -5],[5, 10], [511, 511])
drawLogPDF(*args)

Draw the graph or of iso-lines of log-probability density function.

Available constructors:

drawLogPDF(x_min, x_max, pointNumber)

drawLogPDF(lowerCorner, upperCorner, pointNbrInd)

drawLogPDF(lowerCorner, upperCorner)

Parameters:

x_min : float, optional

The min-value of the mesh of the x-axis. Defaults uses the quantile associated to the probability level Distribution-QMin from the ResourceMap.

x_max : float, optional, x_{\max} > x_{\min}

The max-value of the mesh of the y-axis. Defaults uses the quantile associated to the probability level Distribution-QMax from the ResourceMap.

pointNumber : int

The number of points that is used for meshing each axis. Defaults uses DistributionImplementation-DefaultPointNumber from the ResourceMap.

lowerCorner : sequence of float, of dimension 2, optional

The lower corner [x_{min}, y_{min}].

upperCorner : sequence of float, of dimension 2, optional

The upper corner [x_{max}, y_{max}].

pointNbrInd : Indices, of dimension 2

Number of points that is used for meshing each axis.

Returns:

graph : Graph

A graphical representation of the log-PDF or its iso_lines.

Notes

Only valid for univariate and bivariate distributions.

Examples

View the log-PDF of a univariate distribution:

>>> import openturns as ot
>>> dist = ot.Normal()
>>> graph = dist.drawLogPDF()
>>> graph.setLegends(['normal log-pdf'])

View the iso-lines log-PDF of a bivariate distribution:

>>> import openturns as ot
>>> dist = ot.Normal(2)
>>> graph2 = dist.drawLogPDF()
>>> graph2.setLegends(['iso- normal pdf'])
>>> graph3 = dist.drawLogPDF([-10, -5],[5, 10], [511, 511])
drawMarginal1DCDF(marginalIndex, xMin, xMax, pointNumber)

Draw the cumulative distribution function of a margin.

Parameters:

i : int, 1 \leq i \leq n

The index of the margin of interest.

x_min : float

The starting value that is used for meshing the x-axis. Defaults uses the quantile associated to the probability level Distribution-QMin from the ResourceMap.

x_max : float, x_{\max} > x_{\min}

The ending value that is used for meshing the x-axis. Defaults uses the quantile associated to the probability level Distribution-QMax from the ResourceMap.

n_points : int

The number of points that is used for meshing the x-axis. Defaults uses DistributionImplementation-DefaultPointNumber from the ResourceMap.

Returns:

graph : Graph

A graphical representation of the CDF of the requested margin.

Examples

>>> import openturns as ot
>>> from openturns.viewer import View
>>> distribution = ot.Normal(10)
>>> graph = distribution.drawMarginal1DCDF(2, -6.0, 6.0, 100)
>>> view = View(graph)
>>> view.show()
drawMarginal1DLogPDF(marginalIndex, xMin, xMax, pointNumber)

Draw the log-probability density function of a margin.

Parameters:

i : int, 1 \leq i \leq n

The index of the margin of interest.

x_min : float

The starting value that is used for meshing the x-axis. Defaults uses the quantile associated to the probability level Distribution-QMin from the ResourceMap.

x_max : float, x_{\max} > x_{\min}

The ending value that is used for meshing the x-axis. Defaults uses the quantile associated to the probability level Distribution-QMax from the ResourceMap.

n_points : int

The number of points that is used for meshing the x-axis. Defaults uses DistributionImplementation-DefaultPointNumber from the ResourceMap.

Returns:

graph : Graph

A graphical representation of the log-PDF of the requested margin.

Examples

>>> import openturns as ot
>>> from openturns.viewer import View
>>> distribution = ot.Normal(10)
>>> graph = distribution.drawMarginal1DLogPDF(2, -6.0, 6.0, 100)
>>> view = View(graph)
>>> view.show()
drawMarginal1DPDF(marginalIndex, xMin, xMax, pointNumber)

Draw the probability density function of a margin.

Parameters:

i : int, 1 \leq i \leq n

The index of the margin of interest.

x_min : float

The starting value that is used for meshing the x-axis. Defaults uses the quantile associated to the probability level Distribution-QMin from the ResourceMap.

x_max : float, x_{\max} > x_{\min}

The ending value that is used for meshing the x-axis. Defaults uses the quantile associated to the probability level Distribution-QMax from the ResourceMap.

n_points : int

The number of points that is used for meshing the x-axis. Defaults uses DistributionImplementation-DefaultPointNumber from the ResourceMap.

Returns:

graph : Graph

A graphical representation of the PDF of the requested margin.

Examples

>>> import openturns as ot
>>> from openturns.viewer import View
>>> distribution = ot.Normal(10)
>>> graph = distribution.drawMarginal1DPDF(2, -6.0, 6.0, 100)
>>> view = View(graph)
>>> view.show()
drawMarginal2DCDF(firstMarginal, secondMarginal, xMin, xMax, pointNumber)

Draw the cumulative distribution function of a couple of margins.

Parameters:

i : int, 1 \leq i \leq n

The index of the first margin of interest.

j : int, 1 \leq i \neq j \leq n

The index of the second margin of interest.

x_min : list of 2 floats

The starting values that are used for meshing the x- and y- axes. Defaults uses the quantile associated to the probability level Distribution-QMin from the ResourceMap.

x_max : list of 2 floats, x_{\max} > x_{\min}

The ending values that are used for meshing the x- and y- axes. Defaults uses the quantile associated to the probability level Distribution-QMax from the ResourceMap.

n_points : list of 2 ints

The number of points that are used for meshing the x- and y- axes. Defaults uses DistributionImplementation-DefaultPointNumber from the ResourceMap.

Returns:

graph : Graph

A graphical representation of the marginal CDF of the requested couple of margins.

Examples

>>> import openturns as ot
>>> from openturns.viewer import View
>>> distribution = ot.Normal(10)
>>> graph = distribution.drawMarginal2DCDF(2, 3, [-6.0] * 2, [6.0] * 2, [100] * 2)
>>> view = View(graph)
>>> view.show()
drawMarginal2DLogPDF(firstMarginal, secondMarginal, xMin, xMax, pointNumber)

Draw the log-probability density function of a couple of margins.

Parameters:

i : int, 1 \leq i \leq n

The index of the first margin of interest.

j : int, 1 \leq i \neq j \leq n

The index of the second margin of interest.

x_min : list of 2 floats

The starting values that are used for meshing the x- and y- axes. Defaults uses the quantile associated to the probability level Distribution-QMin from the ResourceMap.

x_max : list of 2 floats, x_{\max} > x_{\min}

The ending values that are used for meshing the x- and y- axes. Defaults uses the quantile associated to the probability level Distribution-QMax from the ResourceMap.

n_points : list of 2 ints

The number of points that are used for meshing the x- and y- axes. Defaults uses DistributionImplementation-DefaultPointNumber from the ResourceMap.

Returns:

graph : Graph

A graphical representation of the marginal log-PDF of the requested couple of margins.

Examples

>>> import openturns as ot
>>> from openturns.viewer import View
>>> distribution = ot.Normal(10)
>>> graph = distribution.drawMarginal2DLogPDF(2, 3, [-6.0] * 2, [6.0] * 2, [100] * 2)
>>> view = View(graph)
>>> view.show()
drawMarginal2DPDF(firstMarginal, secondMarginal, xMin, xMax, pointNumber)

Draw the probability density function of a couple of margins.

Parameters:

i : int, 1 \leq i \leq n

The index of the first margin of interest.

j : int, 1 \leq i \neq j \leq n

The index of the second margin of interest.

x_min : list of 2 floats

The starting values that are used for meshing the x- and y- axes. Defaults uses the quantile associated to the probability level Distribution-QMin from the ResourceMap.

x_max : list of 2 floats, x_{\max} > x_{\min}

The ending values that are used for meshing the x- and y- axes. Defaults uses the quantile associated to the probability level Distribution-QMax from the ResourceMap.

n_points : list of 2 ints

The number of points that are used for meshing the x- and y- axes. Defaults uses DistributionImplementation-DefaultPointNumber from the ResourceMap.

Returns:

graph : Graph

A graphical representation of the marginal PDF of the requested couple of margins.

Examples

>>> import openturns as ot
>>> from openturns.viewer import View
>>> distribution = ot.Normal(10)
>>> graph = distribution.drawMarginal2DPDF(2, 3, [-6.0] * 2, [6.0] * 2, [100] * 2)
>>> view = View(graph)
>>> view.show()
drawPDF(*args)

Draw the graph or of iso-lines of probability density function.

Available constructors:

drawPDF(x_min, x_max, pointNumber)

drawPDF(lowerCorner, upperCorner, pointNbrInd)

drawPDF(lowerCorner, upperCorner)

Parameters:

x_min : float, optional

The min-value of the mesh of the x-axis. Defaults uses the quantile associated to the probability level Distribution-QMin from the ResourceMap.

x_max : float, optional, x_{\max} > x_{\min}

The max-value of the mesh of the y-axis. Defaults uses the quantile associated to the probability level Distribution-QMax from the ResourceMap.

pointNumber : int

The number of points that is used for meshing each axis. Defaults uses DistributionImplementation-DefaultPointNumber from the ResourceMap.

lowerCorner : sequence of float, of dimension 2, optional

The lower corner [x_{min}, y_{min}].

upperCorner : sequence of float, of dimension 2, optional

The upper corner [x_{max}, y_{max}].

pointNbrInd : Indices, of dimension 2

Number of points that is used for meshing each axis.

Returns:

graph : Graph

A graphical representation of the PDF or its iso_lines.

Notes

Only valid for univariate and bivariate distributions.

Examples

View the PDF of a univariate distribution:

>>> import openturns as ot
>>> dist = ot.Normal()
>>> graph = dist.drawPDF()
>>> graph.setLegends(['normal pdf'])

View the iso-lines PDF of a bivariate distribution:

>>> import openturns as ot
>>> dist = ot.Normal(2)
>>> graph2 = dist.drawPDF()
>>> graph2.setLegends(['iso- normal pdf'])
>>> graph3 = dist.drawPDF([-10, -5],[5, 10], [511, 511])
drawQuantile(*args)

Draw the quantile function.

Parameters:

q_min : float, in [0,1]

The min value of the mesh of the x-axis.

q_max : float, in [0,1]

The max value of the mesh of the x-axis.

n_points : int, optional

The number of points that is used for meshing the quantile curve. Defaults uses DistributionImplementation-DefaultPointNumber from the ResourceMap.

Returns:

graph : Graph

A graphical representation of the quantile function.

Notes

This is implemented for univariate and bivariate distributions only. In the case of bivariate distributions, defined by its CDF F and its marginals (F_1, F_2), the quantile of order q is the point (F_1(u),F_2(u)) defined by

F(F_1(u), F_2(u)) = q

Examples

>>> import openturns as ot
>>> from openturns.viewer import View
>>> distribution = ot.Normal()
>>> graph = distribution.drawQuantile()
>>> view = View(graph)
>>> view.show()
>>> distribution = ot.ComposedDistribution([ot.Normal(), ot.Exponential(1.0)], ot.ClaytonCopula(0.5))
>>> graph = distribution.drawQuantile()
>>> view = View(graph)
>>> view.show()
exp()

Transform distribution by exponential function.

Returns:

dist : Distribution

The transformed distribution.

getCDFEpsilon()

Accessor to the CDF computation precision.

Returns:

CDFEpsilon : float

CDF computation precision.

getCenteredMoment(n)

Accessor to the componentwise centered moments.

Parameters:

k : int

The order of the centered moment.

Returns:

m : Point

Componentwise centered moment of order k.

See also

getMoment

Notes

Centered moments are centered with respect to the first-order moment:

\vect{m}^{(k)}_0 = \Tr{\left(\Expect{\left(X_i - \mu_i\right)^k},
                             \quad i = 1, \ldots, n\right)}

getCholesky()

Accessor to the Cholesky factor of the covariance matrix.

Returns:

L : SquareMatrix

Cholesky factor of the covariance matrix.

See also

getCovariance

getClassName()

Accessor to the object’s name.

Returns:

class_name : str

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

getCopula()

Accessor to the copula of the distribution.

Returns:

C : Distribution

Copula of the distribution.

getCorrelation()

(ditch me?)

getCovariance()

Accessor to the covariance matrix.

Returns:

Sigma : CovarianceMatrix

Covariance matrix.

Notes

The covariance is the second-order centered moment. It is defined as:

\mat{\Sigma} & = \Cov{\vect{X}} \\
             & = \Expect{\left(\vect{X} - \vect{\mu}\right)
                         \Tr{\left(\vect{X} - \vect{\mu}\right)}}

getDescription()

Accessor to the componentwise description.

Returns:

description : Description

Description of the components of the distribution.

See also

setDescription

getDimension()

Accessor to the dimension of the distribution.

Returns:

n : int

The number of components in the distribution.

getDispersionIndicator()

(ditch me?)

getGamma()

Accessor to the distribution’s location parameter \gamma.

Returns:

gamma : float

Location parameter \gamma.

getId()

Accessor to the object’s id.

Returns:

id : int

Internal unique identifier.

getIntegrationNodesNumber()

Accessor to the number of Gauss integration points.

Returns:

N : int

Number of integration points.

getInverseCholesky()

Accessor to the inverse Cholesky factor of the covariance matrix.

Returns:

Linv : SquareMatrix

Inverse Cholesky factor of the covariance matrix.

See also

getCholesky

getInverseIsoProbabilisticTransformation()

Accessor to the inverse iso-probabilistic transformation.

Returns:

Tinv : Function

Inverse iso-probabilistic transformation.

Notes

The inverse iso-probabilistic transformation is defined as follows:

T^{-1}: \left|\begin{array}{rcl}
            \Rset^n & \rightarrow & \supp{\vect{X}} \\
            \vect{u} & \mapsto & \vect{x}
        \end{array}\right.

getIsoProbabilisticTransformation()

Accessor to the iso-probabilistic transformation.

Returns:

T : Function

Iso-probabilistic transformation.

Notes

The iso-probabilistic transformation is defined as follows:

T: \left|\begin{array}{rcl}
        \supp{\vect{X}} & \rightarrow & \Rset^n \\
        \vect{x} & \mapsto & \vect{u}
   \end{array}\right.

An iso-probabilistic transformation is a diffeomorphism [1] from \supp{\vect{X}} to \Rset^d that maps realizations \vect{x} of a random vector \vect{X} into realizations \vect{y} of another random vector \vect{Y} while preserving probabilities. It is hence defined so that it satisfies:

\begin{eqnarray*}
    \Prob{\bigcap_{i=1}^d X_i \leq x_i}
        & = & \Prob{\bigcap_{i=1}^d Y_i \leq y_i} \\
    F_{\vect{X}}(\vect{x})
        & = & F_{\vect{Y}}(\vect{y})
\end{eqnarray*}

The present implementation of the iso-probabilistic transformation maps realizations \vect{x} into realizations \vect{u} of a random vector \vect{U} with spherical distribution [2]. To be more specific:

  • if the distribution is elliptical, then the transformed distribution is simply made spherical using the Nataf (linear) transformation [Nataf1962], [Lebrun2009a].
  • if the distribution has an elliptical Copula, then the transformed distribution is made spherical using the generalized Nataf transformation [Lebrun2009b].
  • otherwise, the transformed distribution is the standard multivariate Normal distribution and is obtained by means of the Rosenblatt transformation [Rosenblatt1952], [Lebrun2009c].
[1]A differentiable map f is called a diffeomorphism if it is a bijection and its inverse f^{-1} is differentiable as well. Hence, the iso-probabilistic transformation implements a gradient (and even a Hessian).
[2]

A distribution is said to be spherical if is invariant by rotation. Mathematically, \vect{U} has a spherical distribution if:

\mat{R}\,\vect{U} \sim \vect{U},
\quad \forall \mat{R} \in \cS\cP_n(\Rset)

getKendallTau()

Accessor to the Kendall coefficients matrix.

Returns:

tau: SquareMatrix

Kendall coefficients matrix.

Notes

The Kendall coefficients matrix is defined as:

\mat{\tau} = \Big[& \Prob{X_i < x_i \cap X_j < x_j
                          \cup
                          X_i > x_i \cap X_j > x_j} \\
                  & - \Prob{X_i < x_i \cap X_j > x_j
                            \cup
                            X_i > x_i \cap X_j < x_j},
                  \quad i,j = 1, \ldots, n\Big]

getKurtosis()

Accessor to the componentwise kurtosis.

Returns:

k : Point

Componentwise kurtosis.

Notes

The kurtosis is the fourth-order centered moment standardized by the standard deviation:

\vect{\kappa} = \Tr{\left(\Expect{\left(\frac{X_i - \mu_i}
                                             {\sigma_i}\right)^4},
                          \quad i = 1, \ldots, n\right)}

getLinearCorrelation()

(ditch me?)

getMarginal(*args)

Accessor to marginal distributions.

Parameters:

i : int or list of ints, 1 \leq i \leq n

Component(s) indice(s).

Returns:

distribution : Distribution

The marginal distribution of the selected component(s).

getMean()

Accessor to the mean.

Returns:

k : Point

Mean.

Notes

The mean is the first-order moment:

\vect{\mu} = \Tr{\left(\Expect{X_i}, \quad i = 1, \ldots, n\right)}

getMoment(n)

Accessor to the componentwise moments.

Parameters:

k : int

The order of the moment.

Returns:

m : Point

Componentwise moment of order k.

Notes

The componentwise moment of order k is defined as:

\vect{m}^{(k)} = \Tr{\left(\Expect{X_i^k}, \quad i = 1, \ldots, n\right)}

getName()

Accessor to the object’s name.

Returns:

name : str

The name of the object.

getPDFEpsilon()

Accessor to the PDF computation precision.

Returns:

PDFEpsilon : float

PDF computation precision.

getParameter()

Accessor to the parameter of the distribution.

Returns:

parameter : Point

Parameter values.

getParameterDescription()

Accessor to the parameter description of the distribution.

Returns:

description : Description

Parameter names.

getParameterDimension()

Accessor to the number of parameters in the distribution.

Returns:

n_parameters : int

Number of parameters in the distribution.

getParametersCollection()

Accessor to the parameter of the distribution.

Returns:

parameters : PointWithDescription

Dictionary-like object with parameters names and values.

getPearsonCorrelation()

Accessor to the Pearson correlation matrix.

Returns:

R : CorrelationMatrix

Pearson’s correlation matrix.

See also

getCovariance

Notes

Pearson’s correlation is defined as the normalized covariance matrix:

\mat{\rho} & = \left[\frac{\Cov{X_i, X_j}}{\sqrt{\Var{X_i}\Var{X_j}}},
                     \quad i,j = 1, \ldots, n\right] \\
           & = \left[\frac{\Sigma_{i,j}}{\sqrt{\Sigma_{i,i}\Sigma_{j,j}}},
                     \quad i,j = 1, \ldots, n\right]

getPositionIndicator()

(ditch me?)

getProbabilities()

Accessor to the discrete probability levels.

Returns:

probabilities : Point

The probability levels of a discrete distribution.

getRange()

Accessor to the range of the distribution.

Returns:

range : Interval

Range of the distribution.

See also

getSupport

Notes

The mathematical range is the smallest closed interval outside of which the PDF is zero. The numerical range is the interval outside of which the PDF is rounded to zero in double precision.

getRealization()

Accessor to a pseudo-random realization from the distribution.

Returns:

point : Point

A pseudo-random realization of the distribution.

getRoughness()

Accessor to roughness of the distribution.

Returns:

r : float

Roughness of the distribution.

See also

computePDF

Notes

The roughness of the distribution is defined as the \cL^2-norm of its PDF:

r = \int_{\supp{\vect{X}}} f_{\vect{X}}(\vect{x})^2 \di{\vect{x}}

getSample(size)

Accessor to a pseudo-random sample from the distribution.

Parameters:

size : int

Sample size.

Returns:

sample : Sample

A pseudo-random sample of the distribution.

getShadowedId()

Accessor to the object’s shadowed id.

Returns:

id : int

Internal unique identifier.

getShapeMatrix()

Accessor to the shape matrix of the underlying copula if it is elliptical.

Returns:

shape : CorrelationMatrix

Shape matrix of the elliptical copula of a distribution.

Notes

This is not the Pearson correlation matrix.

getShiftedMoment(n, shift)

Accessor to the componentwise shifted moments.

Parameters:

k : int

The order of the shifted moment.

shift : sequence of float

The shift of the moment.

Returns:

m : Point

Componentwise centered moment of order k.

Notes

The moments are centered with respect to the given shift :math:vect{s}:

\vect{m}^{(k)}_0 = \Tr{\left(\Expect{\left(X_i - s_i\right)^k},
                             \quad i = 1, \ldots, n\right)}

getSigma()

Accessor to the distribution’s scale parameter \sigma.

Returns:

sigma : float

Scale parameter \sigma.

getSingularities()

Accessor to the singularities of the PDF function.

It is defined for univariate distributions only, and gives all the singularities (ie discontinuities of any order) strictly inside of the range of the distribution.

Returns:

singularities : Point

The singularities of the PDF of an univariate distribution.

getSkewness()

Accessor to the componentwise skewness.

Returns:

d : Point

Componentwise skewness.

Notes

The skewness is the third-order centered moment standardized by the standard deviation:

\vect{\delta} = \Tr{\left(\Expect{\left(\frac{X_i - \mu_i}
                                             {\sigma_i}\right)^3},
                          \quad i = 1, \ldots, n\right)}

getSpearmanCorrelation()

Accessor to the Spearman correlation matrix.

Returns:

R : CorrelationMatrix

Spearman’s correlation matrix.

See also

getKendallTau

Notes

Spearman’s (rank) correlation is defined as the normalized covariance matrix of the copula (ie that of the uniform margins):

\mat{\rho_S} = \left[\frac{\Cov{F_{X_i}(X_i), F_{X_j}(X_j)}}
                          {\sqrt{\Var{F_{X_i}(X_i)} \Var{F_{X_j}(X_j)}}},
                     \quad i,j = 1, \ldots, n\right]

getStandardDeviation()

Accessor to the componentwise standard deviation.

The standard deviation is the square root of the variance.

Returns:

sigma : Point

Componentwise standard deviation.

See also

getCovariance

getStandardDistribution()

Accessor to the standard distribution.

Returns:

standard_distribution : Distribution

Standard distribution.

Notes

The standard distribution is determined according to the distribution properties. This is the target distribution achieved by the iso-probabilistic transformation.

getStandardMoment(n)

Accessor to the componentwise standard moments.

Parameters:

k : int

The order of the standard moment.

Returns:

m : Point

Componentwise standard moment of order k.

Notes

Standard moments are the raw moments of the standard representative of the parametric family of distributions.

getStandardRepresentative()

Accessor to the standard representative distribution in the parametric family.

Returns:

std_repr_dist : Distribution

Standard representative distribution.

Notes

The standard representative distribution is defined on a distribution by distribution basis, most of the time by scaling the distribution with bounded support to [0,1] or by standardizing (ie zero mean, unit variance) the distributions with unbounded support. It is the member of the family for which orthonormal polynomials will be built using generic algorithms of orthonormalization.

getSupport(*args)

Accessor to the support of the distribution.

Parameters:

interval : Interval

An interval to intersect with the support of the discrete part of the distribution.

Returns:

support : Interval

The intersection of the support of the discrete part of the distribution with the given interval.

See also

getRange

Notes

The mathematical support \supp{\vect{X}} of the discrete part of a distribution is the collection of points with nonzero probability.

This is yet implemented for discrete distributions only.

getVisibility()

Accessor to the object’s visibility state.

Returns:

visible : bool

Visibility flag.

hasEllipticalCopula()

Test whether the copula of the distribution is elliptical or not.

Returns:

test : bool

Answer.

See also

isElliptical

hasIndependentCopula()

Test whether the copula of the distribution is the independent one.

Returns:

test : bool

Answer.

hasName()

Test if the object is named.

Returns:

hasName : bool

True if the name is not empty.

hasVisibleName()

Test if the object has a distinguishable name.

Returns:

hasVisibleName : bool

True if the name is not empty and not the default one.

inverse()

Transform distribution by inverse function.

Returns:

dist : Distribution

The transformed distribution.

isContinuous()

Test whether the distribution is continuous or not.

Returns:

test : bool

Answer.

isCopula()

Test whether the distribution is a copula or not.

Returns:

test : bool

Answer.

Notes

A copula is a distribution with uniform margins on [0; 1].

isDiscrete()

Test whether the distribution is discrete or not.

Returns:

test : bool

Answer.

isElliptical()

Test whether the distribution is elliptical or not.

Returns:

test : bool

Answer.

Notes

A multivariate distribution is said to be elliptical if its characteristic function is of the form:

\phi(\vect{t}) = \exp\left(i \Tr{\vect{t}} \vect{\mu}\right)
                 \Psi\left(\Tr{\vect{t}} \mat{\Sigma} \vect{t}\right),
                 \quad \vect{t} \in \Rset^n

for specified vector \vect{\mu} and positive-definite matrix \mat{\Sigma}. The function \Psi is known as the characteristic generator of the elliptical distribution.

isIntegral()

Test whether the distribution is integer-valued or not.

Returns:

test : bool

Answer.

ln()

Transform distribution by natural logarithm function.

Returns:

dist : Distribution

The transformed distribution.

log()

Transform distribution by natural logarithm function.

Returns:

dist : Distribution

The transformed distribution.

setDescription(description)

Accessor to the componentwise description.

Parameters:

description : sequence of str

Description of the components of the distribution.

setGamma(gamma)

Accessor to the distribution’s location parameter \gamma.

Parameters:

gamma : float

Location parameter \gamma.

setIntegrationNodesNumber(integrationNodesNumber)

Accessor to the number of Gauss integration points.

Parameters:

N : int

Number of integration points.

setName(name)

Accessor to the object’s name.

Parameters:

name : str

The name of the object.

setParameter(parameter)

Accessor to the parameter of the distribution.

Parameters:

parameter : sequence of float

Parameter values.

setParametersCollection(*args)

Accessor to the parameter of the distribution.

Parameters:

parameters : PointWithDescription

Dictionary-like object with parameters names and values.

setShadowedId(id)

Accessor to the object’s shadowed id.

Parameters:

id : int

Internal unique identifier.

setSigma(sigma)

Accessor to the distribution’s scale parameter \sigma.

Parameters:

sigma : float, \sigma > 0

Scale parameter \sigma.

setVisibility(visible)

Accessor to the object’s visibility state.

Parameters:

visible : bool

Visibility flag.

sin()

Transform distribution by sine function.

Returns:

dist : Distribution

The transformed distribution.

sinh()

Transform distribution by sinh function.

Returns:

dist : Distribution

The transformed distribution.

sqr()

Transform distribution by square function.

Returns:

dist : Distribution

The transformed distribution.

sqrt()

Transform distribution by square root function.

Returns:

dist : Distribution

The transformed distribution.

tan()

Transform distribution by tangent function.

Returns:

dist : Distribution

The transformed distribution.

tanh()

Transform distribution by tanh function.

Returns:

dist : Distribution

The transformed distribution.