Process¶
(Source code, png, hires.png, pdf)
- class Process(*args)¶
Base class for stochastic processes.
Notes
The Process class enables to model a stochastic process.
A multivariate stochastic process of dimension is defined by:
where is an event, is a domain of discretized on the mesh , is a multivariate index and .
A realization of the process , for a given is defined by:
is the random variable at index defined by:
A Process object can be created only through its derived classes:
SpectralGaussianProcess
,GaussianProcess
,CompositeProcess
,ARMA
,RandomWalk
,FunctionalBasisProcess
andWhiteNoise
.Methods
Accessor to the object's name.
Get a continuous realization.
Accessor to the covariance model.
Get the description of the process.
getFuture
(*args)Prediction of the future iterations of the process.
getId
()Accessor to the object's id.
Accessor to the underlying implementation.
Get the dimension of the domain .
getMarginal
(*args)Get the marginal of the random process.
getMesh
()Get the mesh.
getName
()Accessor to the object's name.
Get the dimension of the domain .
Get a realization of the process.
getSample
(size)Get realizations of the process.
Get the time grid of observation of the process.
getTrend
()Accessor to the trend.
Test whether the process is composite or not.
isNormal
()Test whether the process is normal or not.
Test whether the process is stationary or not.
setDescription
(description)Set the description of the process.
setMesh
(mesh)Set the mesh.
setName
(name)Accessor to the object's name.
setTimeGrid
(timeGrid)Set the time grid of observation of the process.
- __init__(*args)¶
- getClassName()¶
Accessor to the object’s name.
- Returns
- class_namestr
The object class name (object.__class__.__name__).
- getContinuousRealization()¶
Get a continuous realization.
- Returns
- realization
Function
According 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).
- realization
- getCovarianceModel()¶
Accessor to the covariance model.
- Returns
- cov_model
CovarianceModel
Covariance model, if any.
- cov_model
- getDescription()¶
Get the description of the process.
- Returns
- description
Description
Description of the process.
- description
- getFuture(*args)¶
Prediction of the future iterations of the process.
- Parameters
- stepNumberint,
Number of future steps.
- sizeint, , optional
Number of futures needed. Default is 1.
- Returns
- prediction
ProcessSample
orTimeSeries
future iterations of the process. If , prediction is a
TimeSeries
. Otherwise, it is aProcessSample
.
- prediction
- getId()¶
Accessor to the object’s id.
- Returns
- idint
Internal unique identifier.
- getImplementation()¶
Accessor to the underlying implementation.
- Returns
- implImplementation
A copy of the underlying implementation object.
- getInputDimension()¶
Get the dimension of the domain .
- Returns
- nint
Dimension of the domain : .
- getMarginal(*args)¶
Get the marginal of the random process.
- Parameters
- kint or list of ints
Index of the marginal(s) needed.
- Returns
- marginals
Process
Process defined with marginal(s) of the random process.
- marginals
- getName()¶
Accessor to the object’s name.
- Returns
- namestr
The name of the object.
- getOutputDimension()¶
Get the dimension of the domain .
- Returns
- dint
Dimension of the domain .
- getRealization()¶
Get a realization of the process.
- Returns
- realization
Field
Contains a mesh over which the process is discretized and the values of the process at the vertices of the mesh.
- realization
- getSample(size)¶
Get realizations of the process.
- Parameters
- nint,
Number of realizations of the process needed.
- Returns
- processSample
ProcessSample
realizations of the random process. A process sample is a collection of fields which share the same mesh .
- processSample
- getTimeGrid()¶
Get the time grid of observation of the process.
- Returns
- timeGrid
RegularGrid
Time 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).
- timeGrid
- getTrend()¶
Accessor to the trend.
- Returns
- trend
TrendTransform
Trend, if any.
- trend
- isComposite()¶
Test whether the process is composite or not.
- Returns
- isCompositebool
True if the process is composite (built upon a function and a process).
- isNormal()¶
Test whether the process is normal or not.
- Returns
- isNormalbool
True 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
- isStationarybool
True if the process is stationary.
Notes
A process is stationary if its distribution is invariant by translation: , , , we have:
- setDescription(description)¶
Set the description of the process.
- Parameters
- descriptionsequence of str
Description of the process.
- setName(name)¶
Accessor to the object’s name.
- Parameters
- namestr
The name of the object.
- setTimeGrid(timeGrid)¶
Set the time grid of observation of the process.
- Returns
- timeGrid
RegularGrid
Time 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).
- timeGrid