KarhunenLoeveReduction

(Source code, png)

../../_images/KarhunenLoeveReduction.png
class KarhunenLoeveReduction(*args)

Perform the reduction of a field.

This object projects a field on the Karhunen-Loeve basis by computing the coefficients, lifts the coefficients, combines them with the value of the modes on the mesh which creates the reduced field.

Parameters:
resultKarhunenLoeveResult

Decomposition result.

trendTrendTransform, optional

Process trend, useful when the basis built using the covariance function from the space of trajectories is not well suited to approximate the mean function of the underlying process.

Examples

Create a KL decomposition of a Gaussian process:

>>> import openturns as ot
>>> numberOfVertices = 10
>>> interval = ot.Interval(-1.0, 1.0)
>>> mesh = ot.IntervalMesher([numberOfVertices - 1]).build(interval)
>>> covariance = ot.SquaredExponential()
>>> process = ot.GaussianProcess(covariance, mesh)
>>> sampleSize = 10
>>> sample = process.getSample(sampleSize)
>>> threshold = 0.0
>>> algo = ot.KarhunenLoeveSVDAlgorithm(sample, threshold)
>>> algo.run()
>>> klresult = algo.getResult()

Generate some trajectories and reduce them:

>>> sample2 = process.getSample(5)
>>> reduction = ot.KarhunenLoeveReduction(klresult)
>>> reduced = reduction(sample2)

Same, but into account the trend:

>>> trend = ot.TrendTransform(ot.P1LagrangeEvaluation(sample.computeMean()), mesh)
>>> reduction = ot.KarhunenLoeveReduction(klresult, trend)
>>> reduced = reduction(sample2)

Methods

__call__(*args)

Call self as a function.

getCallsNumber()

Get the number of calls of the function.

getClassName()

Accessor to the object's name.

getId()

Accessor to the object's id.

getInputDescription()

Get the description of the input field values.

getInputDimension()

Get the dimension of the input field values.

getInputMesh()

Get the mesh associated to the input domain.

getMarginal(*args)

Get the marginal(s) at given indice(s).

getName()

Accessor to the object's name.

getOutputDescription()

Get the description of the output field values.

getOutputDimension()

Get the dimension of the output field values.

getOutputMesh()

Get the mesh associated to the output domain.

getShadowedId()

Accessor to the object's shadowed id.

getVisibility()

Accessor to the object's visibility state.

hasName()

Test if the object is named.

hasVisibleName()

Test if the object has a distinguishable name.

isActingPointwise()

Whether the function acts point-wise.

setInputDescription(inputDescription)

Set the description of the input field values.

setInputMesh(inputMesh)

Set the mesh associated to the input domain.

setName(name)

Accessor to the object's name.

setOutputDescription(outputDescription)

Set the description of the output field values.

setOutputMesh(outputMesh)

Set the mesh associated to the output domain.

setShadowedId(id)

Accessor to the object's shadowed id.

setTrend(trend)

Trend accessor.

setVisibility(visible)

Accessor to the object's visibility state.

__init__(*args)
getCallsNumber()

Get the number of calls of the function.

Returns:
callsNumberint

Counts the number of times the function has been called since its creation.

getClassName()

Accessor to the object’s name.

Returns:
class_namestr

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

getId()

Accessor to the object’s id.

Returns:
idint

Internal unique identifier.

getInputDescription()

Get the description of the input field values.

Returns:
inputDescriptionDescription

Description of the input field values.

getInputDimension()

Get the dimension of the input field values.

Returns:
dint

Dimension d of the input field values.

getInputMesh()

Get the mesh associated to the input domain.

Returns:
inputMeshMesh

The input mesh \cM_{N'}.

getMarginal(*args)

Get the marginal(s) at given indice(s).

Parameters:
iint or list of ints, 0 \leq i < d'

Indice(s) of the marginal(s) to be extracted.

Returns:
fieldFunctionFieldFunction

The initial function restricted to the concerned marginal(s) at the indice(s) i.

getName()

Accessor to the object’s name.

Returns:
namestr

The name of the object.

getOutputDescription()

Get the description of the output field values.

Returns:
outputDescriptionDescription

Description of the output field values.

getOutputDimension()

Get the dimension of the output field values.

Returns:
d’int

Dimension d' of the output field values.

getOutputMesh()

Get the mesh associated to the output domain.

Returns:
outputMeshMesh

The output mesh \cM_{N'}.

getShadowedId()

Accessor to the object’s shadowed id.

Returns:
idint

Internal unique identifier.

getVisibility()

Accessor to the object’s visibility state.

Returns:
visiblebool

Visibility flag.

hasName()

Test if the object is named.

Returns:
hasNamebool

True if the name is not empty.

hasVisibleName()

Test if the object has a distinguishable name.

Returns:
hasVisibleNamebool

True if the name is not empty and not the default one.

isActingPointwise()

Whether the function acts point-wise.

Returns:
pointWisebool

Returns true if the function evaluation at each vertex depends only on the vertex or the value at the vertex.

setInputDescription(inputDescription)

Set the description of the input field values.

Parameters:
inputDescriptionsequence of str

Description of the input field values.

setInputMesh(inputMesh)

Set the mesh associated to the input domain.

Parameters:
inputMeshMesh

The input mesh \cM_{N'}.

setName(name)

Accessor to the object’s name.

Parameters:
namestr

The name of the object.

setOutputDescription(outputDescription)

Set the description of the output field values.

Parameters:
outputDescriptionsequence of str

Describes the outputs of the output field values.

setOutputMesh(outputMesh)

Set the mesh associated to the output domain.

Parameters:
outputMeshMesh

The output mesh \cM_{N'}.

setShadowedId(id)

Accessor to the object’s shadowed id.

Parameters:
idint

Internal unique identifier.

setTrend(trend)

Trend accessor.

Parameters:
trendTrendTransform, optional

Process trend, useful when the basis built using the covariance function from the space of trajectories is not well suited to approximate the mean function of the underlying process.

setVisibility(visible)

Accessor to the object’s visibility state.

Parameters:
visiblebool

Visibility flag.