chaospy.Triangle

class chaospy.Triangle(lower=- 1, midpoint=0, upper=1)[source]

Triangle Distribution.

Must have lower <= midpoint <= upper.

Args:
lower (float, Distribution):

Lower bound

midpoint (float, Distribution):

Location of the top

upper (float, Distribution):

Upper bound

Examples:
>>> distribution = chaospy.Triangle(-1, 0 ,1)
>>> distribution
Triangle(-1, 0, 1)
>>> uloc = numpy.linspace(0, 1, 6)
>>> uloc
array([0. , 0.2, 0.4, 0.6, 0.8, 1. ])
>>> xloc = distribution.inv(uloc)
>>> xloc.round(3)
array([-1.   , -0.368, -0.106,  0.106,  0.368,  1.   ])
>>> numpy.allclose(distribution.fwd(xloc), uloc)
True
>>> distribution.pdf(xloc).round(3)
array([0.   , 0.632, 0.894, 0.894, 0.632, 0.   ])
>>> distribution.sample(4).round(3)
array([ 0.168, -0.52 ,  0.685, -0.018])
>>> distribution.mom(1).round(4)
0.0
>>> distribution = chaospy.Triangle(-1, 2 ,1)
Traceback (most recent call last):
ValueError: condition not satisfied: `lower <= midpoint <= upper`
__init__(lower=- 1, midpoint=0, upper=1)[source]

Distribution initializer.

In addition to assigning some object variables, also checks for some consistency issues.

Args:
parameters (Optional[Distribution[str, Union[ndarray, Distribution]]]):

Collection of model parameters.

dependencies (Optional[Sequence[Set[int]]]):

Dependency identifiers. One collection for each dimension.

rotation (Optional[Sequence[int]]):

The order of which to resolve dependencies.

exclusion (Optional[Sequence[int]]):

Distributions that has been “taken out of play” and therefore can not be reused other places in the dependency hierarchy.

repr_args (Optional[Sequence[str]]):

Positional arguments to place in the object string representation. The repr output will then be: <class name>(<arg1>, <arg2>, …).

Raises:
StochasticallyDependentError:

For dependency structures that can not later be rectified. This include under-defined distributions, and inclusion of distributions that should be exclusion.

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.