net.finmath.montecarlo.process
Class AbstractProcess
- java.lang.Object
-
- net.finmath.montecarlo.process.AbstractProcess
-
- All Implemented Interfaces:
- java.lang.Cloneable, AbstractProcessInterface, ProcessInterface
- Direct Known Subclasses:
- ProcessEulerScheme
public abstract class AbstractProcess extends java.lang.Object implements AbstractProcessInterface, java.lang.Cloneable
This class is an abstract base class to implement a multi-dimensional multi-factor Ito process. The dimension is callednumberOfComponentshere. The default fornumberOfFactorsis 1. This base class manages the time discretization and delegation to the model.
-
-
Constructor Summary
Constructors Constructor and Description AbstractProcess(TimeDiscretizationInterface timeDiscretization)Create a discretization scheme / a time discrete process.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method and Description RandomVariableInterfaceapplyStateSpaceTransform(int componentIndex, RandomVariableInterface randomVariable)abstract AbstractProcessclone()Create and return a clone of this process.abstract java.lang.ObjectgetCloneWithModifiedSeed(int seed)RandomVariableInterface[]getDrift(int timeIndex, RandomVariableInterface[] realizationAtTimeIndex, RandomVariableInterface[] realizationPredictor)RandomVariableInterface[]getFactorLoading(int timeIndex, int component, RandomVariableInterface[] realizationAtTimeIndex)RandomVariableInterface[]getInitialState()intgetNumberOfComponents()doublegetTime(int timeIndex)TimeDiscretizationInterfacegetTimeDiscretization()intgetTimeIndex(double time)Returns the time index for a given simulation time.voidsetModel(AbstractModelInterface model)-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.finmath.montecarlo.process.AbstractProcessInterface
getBrownianMotion, getNumberOfFactors, getNumberOfPaths
-
Methods inherited from interface net.finmath.montecarlo.process.ProcessInterface
getMonteCarloWeights, getProcessValue
-
-
-
-
Constructor Detail
-
AbstractProcess
public AbstractProcess(TimeDiscretizationInterface timeDiscretization)
Create a discretization scheme / a time discrete process.- Parameters:
timeDiscretization- The time discretization used for the discretization scheme.
-
-
Method Detail
-
getCloneWithModifiedSeed
public abstract java.lang.Object getCloneWithModifiedSeed(int seed)
-
setModel
public void setModel(AbstractModelInterface model)
-
getNumberOfComponents
public int getNumberOfComponents()
- Specified by:
getNumberOfComponentsin interfaceProcessInterface- Returns:
- Returns the numberOfComponents.
-
getInitialState
public RandomVariableInterface[] getInitialState()
-
getDrift
public RandomVariableInterface[] getDrift(int timeIndex, RandomVariableInterface[] realizationAtTimeIndex, RandomVariableInterface[] realizationPredictor)
-
getFactorLoading
public RandomVariableInterface[] getFactorLoading(int timeIndex, int component, RandomVariableInterface[] realizationAtTimeIndex)
-
applyStateSpaceTransform
public RandomVariableInterface applyStateSpaceTransform(int componentIndex, RandomVariableInterface randomVariable)
-
getTimeDiscretization
public TimeDiscretizationInterface getTimeDiscretization()
- Specified by:
getTimeDiscretizationin interfaceProcessInterface- Returns:
- Returns the timeDiscretization.
-
getTime
public double getTime(int timeIndex)
- Specified by:
getTimein interfaceProcessInterface- Parameters:
timeIndex- Time index.- Returns:
- Returns the time for a given time index.
-
getTimeIndex
public int getTimeIndex(double time)
Description copied from interface:ProcessInterfaceReturns the time index for a given simulation time.- Specified by:
getTimeIndexin interfaceProcessInterface- Parameters:
time- The given simulation time.- Returns:
- Returns the time index for a given time
-
clone
public abstract AbstractProcess clone()
Description copied from interface:AbstractProcessInterfaceCreate 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.- Specified by:
clonein interfaceAbstractProcessInterface- Specified by:
clonein interfaceProcessInterface- Overrides:
clonein classjava.lang.Object- Returns:
- Clone of the process
-
-
DataMelt 3.0 © DataMelt by jWork.ORG