KrigingRandomVector¶
- class KrigingRandomVector(*args)¶
KrigingRandom vector, a conditioned Gaussian process.
- Parameters:
- krigingResult
KrigingResult
Structure that contains elements of computation of a kriging algorithm
- points1-d or 2-d sequence of float
- krigingResult
Notes
KrigingRandomVector helps to create Gaussian random vector, , with stationary covariance function , conditionally to some observations.
Let be the observations of the Gaussian process. We assume the same Gaussian prior as in the
KrigingAlgorithm
:with a general linear model, a zero-mean Gaussian process with a stationary autocorrelation function :
The objective is to generate realizations of the random vector , on new points , conditionally to these observations. For that purpose,
KrigingAlgorithm
build such a prior and stores results in aKrigingResult
structure on a first step. This structure is given as input argument.Then, in a second step, both the prior and the covariance on input points , conditionally to the previous observations, are evaluated (respectively and ).
Finally realizations are randomly generated by the Gaussian distribution
KrigingRandomVector class inherits from
UsualRandomVector
. Thus it stores the previous distribution and returns elements thanks to that distribution (realization, mean, covariance, sample…)Examples
Create the model and the samples:
>>> import openturns as ot >>> f = ot.SymbolicFunction(['x'], ['x * sin(x)']) >>> sampleX = [[1.0], [2.0], [3.0], [4.0], [5.0], [6.0], [7.0], [8.0]] >>> sampleY = f(sampleX)
Create the algorithm:
>>> basis = ot.Basis([ot.SymbolicFunction(['x'], ['x']), ot.SymbolicFunction(['x'], ['x^2'])]) >>> covarianceModel = ot.SquaredExponential([1.0]) >>> covarianceModel.setActiveParameter([]) >>> algo = ot.KrigingAlgorithm(sampleX, sampleY, covarianceModel, basis) >>> algo.run()
Get the results:
>>> result = algo.getResult() >>> rvector = ot.KrigingRandomVector(result, [[0.0]])
Get a sample of the random vector:
>>> sample = rvector.getSample(5)
Methods
If the random vector can be viewed as the composition of several
ThresholdEvent
objects, this method builds and returns the composition.Accessor to the antecedent RandomVector in case of a composite RandomVector.
Accessor to the object's name.
Accessor to the covariance of the RandomVector.
Accessor to the description of the RandomVector.
Accessor to the dimension of the RandomVector.
Accessor to the distribution of the RandomVector.
Accessor to the domain of the Event.
getFrozenRealization
(fixedPoint)Compute realizations of the RandomVector.
getFrozenSample
(fixedSample)Compute realizations of the RandomVector.
Accessor to the Function in case of a composite RandomVector.
Return the kriging result structure.
getMarginal
(*args)Get the random vector corresponding to the marginal component(s).
getMean
()Accessor to the mean of the RandomVector.
getName
()Accessor to the object's name.
Accessor to the comparaison operator of the Event.
Accessor to the parameter of the distribution.
Accessor to the parameter description of the distribution.
Get the stochastic process.
Compute a realization of the conditional Gaussian process (conditional on the learning set).
getSample
(size)Compute a sample of realizations of the conditional Gaussian process (conditional on the learning set).
Accessor to the threshold of the Event.
hasName
()Test if the object is named.
Accessor to know if the RandomVector is a composite one.
isEvent
()Whether the random vector is an event.
setDescription
(description)Accessor to the description of the RandomVector.
setName
(name)Accessor to the object's name.
setParameter
(parameters)Accessor to the parameter of the distribution.
- __init__(*args)¶
- asComposedEvent()¶
If the random vector can be viewed as the composition of several
ThresholdEvent
objects, this method builds and returns the composition. Otherwise throws.- Returns:
- composed
RandomVector
Composed event.
- composed
- getAntecedent()¶
Accessor to the antecedent RandomVector in case of a composite RandomVector.
- Returns:
- antecedent
RandomVector
Antecedent RandomVector in case of a
CompositeRandomVector
such as: .
- antecedent
- getClassName()¶
Accessor to the object’s name.
- Returns:
- class_namestr
The object class name (object.__class__.__name__).
- getCovariance()¶
Accessor to the covariance of the RandomVector.
- Returns:
- covariance
CovarianceMatrix
Covariance of the considered
UsualRandomVector
.
- covariance
Examples
>>> import openturns as ot >>> distribution = ot.Normal([0.0, 0.5], [1.0, 1.5], ot.CorrelationMatrix(2)) >>> randomVector = ot.RandomVector(distribution) >>> ot.RandomGenerator.SetSeed(0) >>> print(randomVector.getCovariance()) [[ 1 0 ] [ 0 2.25 ]]
- getDescription()¶
Accessor to the description of the RandomVector.
- Returns:
- description
Description
Describes the components of the RandomVector.
- description
- getDimension()¶
Accessor to the dimension of the RandomVector.
- Returns:
- dimensionpositive int
Dimension of the RandomVector.
- getDistribution()¶
Accessor to the distribution of the RandomVector.
- Returns:
- distribution
Distribution
Distribution of the considered
UsualRandomVector
.
- distribution
Examples
>>> import openturns as ot >>> distribution = ot.Normal([0.0, 0.0], [1.0, 1.0], ot.CorrelationMatrix(2)) >>> randomVector = ot.RandomVector(distribution) >>> ot.RandomGenerator.SetSeed(0) >>> print(randomVector.getDistribution()) Normal(mu = [0,0], sigma = [1,1], R = [[ 1 0 ] [ 0 1 ]])
- getDomain()¶
Accessor to the domain of the Event.
- Returns:
- domain
Domain
Describes the domain of an event.
- domain
- getFrozenRealization(fixedPoint)¶
Compute realizations of the RandomVector.
In the case of a
CompositeRandomVector
or an event of some kind, this method returns the value taken by the random vector if the root cause takes the value given as argument.- Parameters:
- fixedPoint
Point
Point chosen as the root cause of the random vector.
- fixedPoint
- Returns:
- realization
Point
The realization corresponding to the chosen root cause.
- realization
Examples
>>> import openturns as ot >>> distribution = ot.Normal() >>> randomVector = ot.RandomVector(distribution) >>> f = ot.SymbolicFunction('x', 'x') >>> compositeRandomVector = ot.CompositeRandomVector(f, randomVector) >>> event = ot.ThresholdEvent(compositeRandomVector, ot.Less(), 0.0) >>> print(event.getFrozenRealization([0.2])) [0] >>> print(event.getFrozenRealization([-0.1])) [1]
- getFrozenSample(fixedSample)¶
Compute realizations of the RandomVector.
In the case of a
CompositeRandomVector
or an event of some kind, this method returns the different values taken by the random vector when the root cause takes the values given as argument.- Parameters:
- fixedSample
Sample
Sample of root causes of the random vector.
- fixedSample
- Returns:
- sample
Sample
Sample of the realizations corresponding to the chosen root causes.
- sample
Examples
>>> import openturns as ot >>> distribution = ot.Normal() >>> randomVector = ot.RandomVector(distribution) >>> f = ot.SymbolicFunction('x', 'x') >>> compositeRandomVector = ot.CompositeRandomVector(f, randomVector) >>> event = ot.ThresholdEvent(compositeRandomVector, ot.Less(), 0.0) >>> print(event.getFrozenSample([[0.2], [-0.1]])) [ y0 ] 0 : [ 0 ] 1 : [ 1 ]
- getFunction()¶
Accessor to the Function in case of a composite RandomVector.
- Returns:
- function
Function
Function used to define a
CompositeRandomVector
as the image through this function of the antecedent : .
- function
- getKrigingResult()¶
Return the kriging result structure.
- Returns:
- krigResult
KrigingResult
The structure containing the elements of a KrigingAlgorithm.
- krigResult
- getMarginal(*args)¶
Get the random vector corresponding to the marginal component(s).
- Parameters:
- iint or list of ints,
Indicates the component(s) concerned. is the dimension of the RandomVector.
- Returns:
- vector
RandomVector
RandomVector restricted to the concerned components.
- vector
Notes
Let’s note a random vector and a set of indices. If is a
UsualRandomVector
, the subvector is defined by . If is aCompositeRandomVector
, defined by with , some scalar functions, the subvector is .Examples
>>> import openturns as ot >>> distribution = ot.Normal([0.0, 0.0], [1.0, 1.0], ot.CorrelationMatrix(2)) >>> randomVector = ot.RandomVector(distribution) >>> ot.RandomGenerator.SetSeed(0) >>> print(randomVector.getMarginal(1).getRealization()) [0.608202] >>> print(randomVector.getMarginal(1).getDistribution()) Normal(mu = 0, sigma = 1)
- getMean()¶
Accessor to the mean of the RandomVector.
- Returns:
- mean
Point
Mean of the considered
UsualRandomVector
.
- mean
Examples
>>> import openturns as ot >>> distribution = ot.Normal([0.0, 0.5], [1.0, 1.5], ot.CorrelationMatrix(2)) >>> randomVector = ot.RandomVector(distribution) >>> ot.RandomGenerator.SetSeed(0) >>> print(randomVector.getMean()) [0,0.5]
- getName()¶
Accessor to the object’s name.
- Returns:
- namestr
The name of the object.
- getOperator()¶
Accessor to the comparaison operator of the Event.
- Returns:
- operator
ComparisonOperator
Comparaison operator used to define the
RandomVector
.
- operator
- getParameter()¶
Accessor to the parameter of the distribution.
- Returns:
- parameter
Point
Parameter values.
- parameter
- getParameterDescription()¶
Accessor to the parameter description of the distribution.
- Returns:
- description
Description
Parameter names.
- description
- getProcess()¶
Get the stochastic process.
- Returns:
- process
Process
Stochastic process used to define the
RandomVector
.
- process
- getRealization()¶
Compute a realization of the conditional Gaussian process (conditional on the learning set).
The realization predicts the value on the given input points.
- Returns:
- realization
Point
Sequence of values of the Gaussian process.
- realization
See also
- getSample(size)¶
Compute a sample of realizations of the conditional Gaussian process (conditional on the learning set).
The realization predicts the value on the given input points.
- Returns:
- realizations
Sample
2-d float sequence of values of the Gaussian process.
- realizations
See also
- getThreshold()¶
Accessor to the threshold of the Event.
- Returns:
- thresholdfloat
Threshold of the
RandomVector
.
- hasName()¶
Test if the object is named.
- Returns:
- hasNamebool
True if the name is not empty.
- isComposite()¶
Accessor to know if the RandomVector is a composite one.
- Returns:
- isCompositebool
Indicates if the RandomVector is of type Composite or not.
- isEvent()¶
Whether the random vector is an event.
- Returns:
- isEventbool
Whether it takes it values in {0, 1}.
- setDescription(description)¶
Accessor to the description of the RandomVector.
- Parameters:
- descriptionstr or sequence of str
Describes the components of the RandomVector.
- setName(name)¶
Accessor to the object’s name.
- Parameters:
- namestr
The name of the object.
- setParameter(parameters)¶
Accessor to the parameter of the distribution.
- Parameters:
- parametersequence of float
Parameter values.