WeightedExperiment

class WeightedExperiment(*args)

Weighted experiment.

Available constructor:

WeightedExperiment(distribution=ot.Uniform(), size=100)

Parameters
distributionDistribution

Distribution \mu used to generate the set of input data.

sizepositive int

Number cardI of points that will be generated in the experiment.

Notes

WeightedExperiment is used to generate the points \Xi_i so that the mean E_{\mu} is approximated as follows:

\Expect{ f(\vect{Z})}_{\mu} \simeq \sum_{i \in I} \omega_i f(\Xi_i)

where \mu is a distribution, f is a function L_1(\mu) and \omega_i are the weights associated with the points. By default, all the weights are equal to 1/cardI.

A WeightedExperiment object can be created only through its derived classes which are distributed in three groups:

  1. The first category is made up of the random patterns, where the set of input data is generated from the joint distribution of the input random vector, according to these sampling techniques:

  2. The second category contains the low discrepancy sequences. OpenTURNS proposes the Faure, Halton, Haselgrove, Reverse Halton and Sobol sequences.

  3. The third category consists of deterministic patterns:

Methods

generate(self)

Generate points according to the type of the experiment.

generateWithWeights(self)

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

getClassName(self)

Accessor to the object’s name.

getDistribution(self)

Accessor to the distribution.

getId(self)

Accessor to the object’s id.

getImplementation(self, \*args)

Accessor to the underlying implementation.

getName(self)

Accessor to the object’s name.

getSize(self)

Accessor to the size of the generated sample.

hasUniformWeights(self)

Ask whether the experiment has uniform weights.

setDistribution(self, distribution)

Accessor to the distribution.

setName(self, name)

Accessor to the object’s name.

setSize(self, size)

Accessor to the size of the generated sample.

__init__(self, *args)

Initialize self. See help(type(self)) for accurate signature.

generate(self)

Generate points according to the type of the experiment.

Returns
sampleSample

Points (\Xi_i)_{i \in I} which constitute the design of experiments with card I = size. The sampling method is defined by the nature of the weighted experiment.

Examples

>>> import openturns as ot
>>> ot.RandomGenerator.SetSeed(0)
>>> myExperiment = ot.MonteCarloExperiment(ot.Normal(2), 5)
>>> sample = myExperiment.generate()
>>> 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 ]
generateWithWeights(self)

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

Returns
sampleSample

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

weightsPoint of size cardI

Weights (\omega_i)_{i \in I} associated with the points. By default, all the weights are equal to 1/cardI.

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]
getClassName(self)

Accessor to the object’s name.

Returns
class_namestr

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

getDistribution(self)

Accessor to the distribution.

Returns
distributionDistribution

Distribution used to generate the set of input data.

getId(self)

Accessor to the object’s id.

Returns
idint

Internal unique identifier.

getImplementation(self, *args)

Accessor to the underlying implementation.

Returns
implImplementation

The implementation class.

getName(self)

Accessor to the object’s name.

Returns
namestr

The name of the object.

getSize(self)

Accessor to the size of the generated sample.

Returns
sizepositive int

Number cardI of points constituting the design of experiments.

hasUniformWeights(self)

Ask whether the experiment has uniform weights.

Returns
hasUniformWeightsbool

Whether the experiment has uniform weights.

setDistribution(self, distribution)

Accessor to the distribution.

Parameters
distributionDistribution

Distribution used to generate the set of input data.

setName(self, name)

Accessor to the object’s name.

Parameters
namestr

The name of the object.

setSize(self, size)

Accessor to the size of the generated sample.

Parameters
sizepositive int

Number cardI of points constituting the design of experiments.