chaospy.Gumbel

class chaospy.Gumbel(dist, theta)[source]

Gumbel Copula.

\[\phi(x; \theta) = \frac{x^{-\theta}-1}{\theta} \phi^{-1}(q; \theta) = (q*\theta + 1)^{-1/\theta}\]

where \(\theta\) is defined on the interval [1,inf).

Examples:
>>> distribution = chaospy.Gumbel(
...     chaospy.Iid(chaospy.Uniform(-1, 1), 2), theta=2)
>>> distribution
Gumbel(Iid(Uniform(lower=-1, upper=1), 2), theta=2)
>>> samples = distribution.sample(3)
>>> samples.round(4)
array([[ 0.3072, -0.77  ,  0.9006],
       [ 0.4709,  0.2101,  0.8696]])
>>> distribution.pdf(samples).round(4)
array([7.9977000e+00, 5.0700000e-02, 3.6733563e+03])
>>> distribution.fwd(samples).round(4)
array([[0.6536, 0.115 , 0.9503],
       [0.4822, 0.8725, 0.2123]])
>>> mesh = numpy.meshgrid([.4, .5, .6], [.4, .5, .6])
>>> distribution.inv(mesh).round(4)
array([[[-0.2   ,  0.    ,  0.2   ],
        [-0.2   ,  0.    ,  0.2   ],
        [-0.2   ,  0.    ,  0.2   ]],

       [[-0.0022,  0.1573,  0.3174],
        [ 0.109 ,  0.2591,  0.4062],
        [ 0.2181,  0.3564,  0.489 ]]])
__init__(dist, theta)[source]
Args:
dist (Distribution):

The distribution to wrap

theta (float):

Copula parameter

Methods

pdf(x_data[, decompose, allow_approx, step_size])

Probability density function.

cdf(x_data)

Cumulative distribution function.

fwd(x_data)

Forward Rosenblatt transformation.

inv(q_data[, max_iterations, tollerance])

Inverse Rosenblatt transformation.

sample([size, rule, antithetic, ...])

Create pseudo-random generated samples.

mom(K[, allow_approx])

Raw statistical moments.

ttr(kloc)

Three terms relation's coefficient generator.

Attributes

interpret_as_integer

Flag indicating that return value from the methods sample, and inv should be interpreted as integers instead of floating point.

lower

Lower bound for the distribution.

stochastic_dependent

True if distribution contains stochastically dependent components.

upper

Upper bound for the distribution.