- All Known Subinterfaces:
MonteCarloProcess
- All Known Implementing Classes:
EulerSchemeFromProcessModel
,LinearInterpolatedTimeDiscreteProcess
,MonteCarloProcessFromProcessModel
public interface Process
The interface for a (time-discrete) stochastic process X.
Provides a family of random vectors (vectors of
RandomVariable
(via getProcessValue(int)
and an associated time discretization.
May be associated with a ProcessModel
.- Version:
- 1.0
- Author:
- Christian Fries
-
Method Summary
Modifier and TypeMethodDescriptionclone()
Create and return a clone of this process.default ProcessModel
getModel()
Returns the model that is used to generate this process, null if no model was used.getMonteCarloWeights(int timeIndex)
This method returns the weights of a weighted Monte Carlo method (the probability density).int
default RandomVariable[]
getProcessValue(int timeIndex)
This method returns the realization of the process for a given time index.getProcessValue(int timeIndex, int componentIndex)
This method returns the realization of a component of the process for a given time index.double
getTime(int timeIndex)
int
getTimeIndex(double time)
Returns the time index for a given simulation time.
-
Method Details
-
getModel
Returns the model that is used to generate this process, null if no model was used.- Returns:
- The model that is used to generate this process, null if no model was used.
-
getProcessValue
This method returns the realization of the process for a given time index.- Parameters:
timeIndex
- Time index at which the process should be observed- Returns:
- The process realizations (given as array of
RandomVariable
) - Throws:
CalculationException
- Thrown if the valuation fails, specific cause may be available via thecause()
method.
-
getProcessValue
This method returns the realization of a component of the process for a given time index.- Parameters:
timeIndex
- Time index at which the process should be observed.componentIndex
- Component index of the process.- Returns:
- The process component realizations (given as
RandomVariableFromDoubleArray
) - Throws:
CalculationException
- Thrown if the valuation fails, specific cause may be available via thecause()
method.
-
getMonteCarloWeights
This method returns the weights of a weighted Monte Carlo method (the probability density).- Parameters:
timeIndex
- Time index at which the process should be observed- Returns:
- A vector of positive weights which sums up to one
- Throws:
CalculationException
- Thrown if the valuation fails, specific cause may be available via thecause()
method.
-
getNumberOfComponents
int getNumberOfComponents()- Returns:
- Returns the numberOfComponents.
-
getTimeDiscretization
TimeDiscretization getTimeDiscretization()- Returns:
- Returns the timeDiscretizationFromArray.
-
getTime
double getTime(int timeIndex)- Parameters:
timeIndex
- Time index.- Returns:
- Returns the time for a given time index.
-
getTimeIndex
int getTimeIndex(double time)Returns the time index for a given simulation time.- Parameters:
time
- The given simulation time.- Returns:
- Returns the time index for a given time
-
clone
Process clone()Create and return a clone of this process. The clone is not tied to any model, but has the same process specification, that is, if the model is the same, it would generate the same paths.- Returns:
- Clone of the process
-