# FunctionalBasisProcess¶

class FunctionalBasisProcess(*args)

Functional basis process.

Parameters: distributionDistributionThe distribution of the random vector . basissequence of FunctionCollection of deterministic functions. meshMeshMesh over which the domain is discretized.

Notes

A functional basis process where , writes:

with for and a random vector of dimension .

Examples

Create the coefficients distribution:

>>> import openturns as ot
>>> coefDist = ot.Normal([2]*2, [5]*2, ot.CorrelationMatrix(2))


Create a basis of functions:

>>> phi_1 = ot.SymbolicFunction(['t'], ['sin(t)'])
>>> phi_2 = ot.SymbolicFunction(['t'], ['cos(t)*cos(t)'])
>>> myBasis = ot.Basis([phi_1, phi_2])


Create a mesh:

>>> myMesh = ot.RegularGrid(0.0, 0.1, 10)


Create the functional basis process:

>>> myFBProcess = ot.FunctionalBasisProcess(coefDist, myBasis, myMesh)

Attributes: thisownThe membership flag

Methods

 getBasis() Get the basis of deterministic functions. getClassName() Accessor to the object’s name. getContinuousRealization() Get a continuous realization. getCovarianceModel() Accessor to the covariance model. getDescription() Get the description of the process. getDistribution() Get the coefficients distribution. getFuture(*args) Prediction of the future iterations of the process. getId() Accessor to the object’s id. getInputDimension() Get the dimension of the domain . getMarginal(indices) Get the marginal of the random process. getMesh() Get the mesh. getName() Accessor to the object’s name. getOutputDimension() Get the dimension of the domain . getRealization() Get a realization of the process. getSample(size) Get realizations of the process. getShadowedId() Accessor to the object’s shadowed id. getTimeGrid() Get the time grid of observation of the process. getTrend() Accessor to the trend. getVisibility() Accessor to the object’s visibility state. hasName() Test if the object is named. hasVisibleName() Test if the object has a distinguishable name. isComposite() Test whether the process is composite or not. isNormal() Test whether the process is normal or not. isStationary() Test whether the process is stationary or not. setBasis(basis) Set the basis of deterministic functions. setDescription(description) Set the description of the process. setDistribution(distribution) Set the coefficients distribution. setMesh(mesh) Set the mesh. setName(name) Accessor to the object’s name. setShadowedId(id) Accessor to the object’s shadowed id. setTimeGrid(timeGrid) Set the time grid of observation of the process. setVisibility(visible) Accessor to the object’s visibility state.
__init__(*args)

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

getBasis()

Get the basis of deterministic functions.

Returns: basiscollection of FunctionCollection of functions .
getClassName()

Accessor to the object’s name.

Returns: class_namestrThe object class name (object.__class__.__name__).
getContinuousRealization()

Get a continuous realization.

Returns: realizationFunctionAccording to the process, the continuous realizations are built: either using a dedicated functional model if it exists: e.g. a functional basis process. or using an interpolation from a discrete realization of the process on : in dimension , a linear interpolation and in dimension , a piecewise constant function (the value at a given position is equal to the value at the nearest vertex of the mesh of the process).
getCovarianceModel()

Accessor to the covariance model.

Returns: cov_modelCovarianceModelCovariance model, if any.
getDescription()

Get the description of the process.

Returns: descriptionDescriptionDescription of the process.
getDistribution()

Get the coefficients distribution.

Returns: distributionDistributionThe distribution of the random vector of dimension .
getFuture(*args)

Prediction of the future iterations of the process.

Parameters: stepNumberint, Number of future steps. sizeint, , optionalNumber of futures needed. Default is 1. prediction future iterations of the process. If , prediction is a TimeSeries. Otherwise, it is a ProcessSample.
getId()

Accessor to the object’s id.

Returns: idintInternal unique identifier.
getInputDimension()

Get the dimension of the domain .

Returns: nintDimension of the domain : .
getMarginal(indices)

Get the marginal of the random process.

Parameters: kint or list of ints Index of the marginal(s) needed. marginalsProcessProcess defined with marginal(s) of the random process.
getMesh()

Get the mesh.

Returns: meshMeshMesh over which the domain is discretized.
getName()

Accessor to the object’s name.

Returns: namestrThe name of the object.
getOutputDimension()

Get the dimension of the domain .

Returns: dintDimension of the domain .
getRealization()

Get a realization of the process.

Returns: realizationFieldContains a mesh over which the process is discretized and the values of the process at the vertices of the mesh.
getSample(size)

Get realizations of the process.

Parameters: nint, Number of realizations of the process needed. processSampleProcessSample realizations of the random process. A process sample is a collection of fields which share the same mesh .
getShadowedId()

Accessor to the object’s shadowed id.

Returns: idintInternal unique identifier.
getTimeGrid()

Get the time grid of observation of the process.

Returns: timeGridRegularGridTime grid of a process when the mesh associated to the process can be interpreted as a RegularGrid. We check if the vertices of the mesh are scalar and are regularly spaced in but we don’t check if the connectivity of the mesh is conform to the one of a regular grid (without any hole and composed of ordered instants).
getTrend()

Accessor to the trend.

Returns: trendTrendTransformTrend, if any.
getVisibility()

Accessor to the object’s visibility state.

Returns: visibleboolVisibility flag.
hasName()

Test if the object is named.

Returns: hasNameboolTrue if the name is not empty.
hasVisibleName()

Test if the object has a distinguishable name.

Returns: hasVisibleNameboolTrue if the name is not empty and not the default one.
isComposite()

Test whether the process is composite or not.

Returns: isCompositeboolTrue if the process is composite (built upon a function and a process).
isNormal()

Test whether the process is normal or not.

Returns: isNormalboolTrue if the process is normal.

Notes

A stochastic process is normal if all its finite dimensional joint distributions are normal, which means that for all and , with , there is and such that:

where , and and is the symmetric matrix:

A Gaussian process is entirely defined by its mean function and its covariance function (or correlation function ).

isStationary()

Test whether the process is stationary or not.

Returns: isStationaryboolTrue if the process is stationary.

Notes

A process is stationary if its distribution is invariant by translation: , , , we have:

setBasis(basis)

Set the basis of deterministic functions.

Parameters: basissequence of FunctionCollection of functions .
setDescription(description)

Set the description of the process.

Parameters: descriptionsequence of strDescription of the process.
setDistribution(distribution)

Set the coefficients distribution.

Parameters: distributionDistributionThe distribution of the random vector of dimension .
setMesh(mesh)

Set the mesh.

Parameters: meshMeshMesh over which the domain is discretized.
setName(name)

Accessor to the object’s name.

Parameters: namestrThe name of the object.
setShadowedId(id)

Accessor to the object’s shadowed id.

Parameters: idintInternal unique identifier.
setTimeGrid(timeGrid)

Set the time grid of observation of the process.

Returns: timeGridRegularGridTime grid of observation of the process when the mesh associated to the process can be interpreted as a RegularGrid. We check if the vertices of the mesh are scalar and are regularly spaced in but we don’t check if the connectivity of the mesh is conform to the one of a regular grid (without any hole and composed of ordered instants).
setVisibility(visible)

Accessor to the object’s visibility state.

Parameters: visibleboolVisibility flag.
thisown

The membership flag