MorrisExperimentGrid

class otmorris.MorrisExperimentGrid(*args)

MorrisExperimentGrid builds experiments for the Morris method starting from full p-levels grid experiments.

Parameters:
levelsopenturns.Indices

Number of levels for a regular grid

Nint

Number of trajectories

boundsopenturns.Interval, optional

Bounds of the domain, by default it is defined on [0,1]^d.

Methods

generate()

Generate points according to the type of the experiment.

generateWithWeights(weights)

Generate points and their associated weight according to the type of the experiment.

getBounds()

Get the bounds of the domain.

getClassName()

Accessor to the object's name.

getDistribution()

Accessor to the distribution.

getJumpStep()

Get the jump step, specifying the number of levels for each factor that are increased/decreased for computing the elementary effects.

getName()

Accessor to the object's name.

getSize()

Accessor to the size of the generated sample.

hasName()

Test if the object is named.

hasUniformWeights()

Ask whether the experiment has uniform weights.

isRandom()

Accessor to the randomness of quadrature.

setDistribution(distribution)

Accessor to the distribution.

setJumpStep(jumpStep)

Set the jump step, specifying the number of levels for each factor that are increased/decreased for computing the elementary effects.

setName(name)

Accessor to the object's name.

setSize(size)

Accessor to the size of the generated sample.

Examples

>>> import openturns as ot
>>> import otmorris
>>> # Number of trajectories
>>> r = 10
>>> # Define a k-grid level (so delta = 1/(k-1))
>>> k = 5
>>> dim = 3
>>> experiment = otmorris.MorrisExperimentGrid([k] * dim, r)
>>> X = experiment.generate()
__init__(*args)
generate()

Generate points according to the type of the experiment.

Returns:
sampleopenturns.Sample

Points that constitute the design of experiment, of size N \times (p+1)

generateWithWeights(weights)

Generate points and their associated weight according to the type of the experiment.

Returns:
sampleSample

The points of the design of experiments. The sampling method is defined by the nature of the experiment.

weightsPoint of size \sampleSize

Weights (w_i)_{i = 1, ..., \sampleSize} associated with the points. By default, all the weights are equal to \frac{1}{\sampleSize}.

Examples

>>> import openturns as ot
>>> ot.RandomGenerator.SetSeed(0)
>>> myExperiment = ot.MonteCarloExperiment(ot.Normal(2), 5)
>>> sample, weights = myExperiment.generateWithWeights()
>>> print(sample)
    [ X0        X1        ]
0 : [  0.608202 -1.26617  ]
1 : [ -0.438266  1.20548  ]
2 : [ -2.18139   0.350042 ]
3 : [ -0.355007  1.43725  ]
4 : [  0.810668  0.793156 ]
>>> print(weights)
[0.2,0.2,0.2,0.2,0.2]
getBounds()

Get the bounds of the domain.

Returns:
boundsopenturns.Interval

Bounds of the domain, default is [0,1]^d

getClassName()

Accessor to the object’s name.

Returns:
class_namestr

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

getDistribution()

Accessor to the distribution.

Returns:
distributionDistribution

Distribution of the input random vector.

getJumpStep()

Get the jump step, specifying the number of levels for each factor that are increased/decreased for computing the elementary effects. If not given, it is set to 1 for each factor.

Returns:
jumpStepopenturns.Indices

Number of levels for each factot that are increased/decreased for computating the EE.

getName()

Accessor to the object’s name.

Returns:
namestr

The name of the object.

getSize()

Accessor to the size of the generated sample.

Returns:
sizepositive int

Number \sampleSize of points constituting the design of experiments.

hasName()

Test if the object is named.

Returns:
hasNamebool

True if the name is not empty.

hasUniformWeights()

Ask whether the experiment has uniform weights.

Returns:
hasUniformWeightsbool

Whether the experiment has uniform weights.

isRandom()

Accessor to the randomness of quadrature.

Parameters:
isRandombool

Is true if the design of experiments is random. Otherwise, the design of experiment is assumed to be deterministic.

setDistribution(distribution)

Accessor to the distribution.

Parameters:
distributionDistribution

Distribution of the input random vector.

setJumpStep(jumpStep)

Set the jump step, specifying the number of levels for each factor that are increased/decreased for computing the elementary effects. If not given, it is set to 1 for each factor.

Parameters:
jumpStepopenturns.Indices

Number of levels for each factot that are increased/decreased for computating the EE.

Notes

The final jump step contains only integers, so the parameter argument is converted into a list of integer thanks to the floor operator.

setName(name)

Accessor to the object’s name.

Parameters:
namestr

The name of the object.

setSize(size)

Accessor to the size of the generated sample.

Parameters:
sizepositive int

Number \sampleSize of points constituting the design of experiments.