Module net.finmath.lib
Class LIBORCorrelationModel
- java.lang.Object
-
- net.finmath.montecarlo.interestrate.models.covariance.LIBORCorrelationModel
-
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
LIBORCorrelationModelExponentialDecay
,LIBORCorrelationModelThreeParameterExponentialDecay
public abstract class LIBORCorrelationModel extends Object implements Serializable
Abstract base class and interface description of a correlation model (as it is used inLIBORCovarianceModelFromVolatilityAndCorrelation
). Derive from this class and implement thegetFactorLoading
method. You have to call the constructor of this class to set the time discretizations.- Version:
- 1.0
- Author:
- Christian Fries
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description LIBORCorrelationModel(TimeDiscretization timeDiscretization, TimeDiscretization liborPeriodDiscretization)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract Object
clone()
abstract LIBORCorrelationModel
getCloneWithModifiedData(Map<String,Object> dataModified)
Returns a clone of this model where the specified properties have been modified.abstract LIBORCorrelationModel
getCloneWithModifiedParameter(RandomVariable[] parameter)
abstract double
getCorrelation(int timeIndex, int component1, int component2)
abstract double
getFactorLoading(int timeIndex, int factor, int component)
TimeDiscretization
getLiborPeriodDiscretization()
abstract int
getNumberOfFactors()
abstract RandomVariable[]
getParameter()
double[]
getParameterAsDouble()
TimeDiscretization
getTimeDiscretization()
-
-
-
Constructor Detail
-
LIBORCorrelationModel
public LIBORCorrelationModel(TimeDiscretization timeDiscretization, TimeDiscretization liborPeriodDiscretization)
-
-
Method Detail
-
getParameter
public abstract RandomVariable[] getParameter()
-
getCloneWithModifiedParameter
public abstract LIBORCorrelationModel getCloneWithModifiedParameter(RandomVariable[] parameter)
-
getFactorLoading
public abstract double getFactorLoading(int timeIndex, int factor, int component)
-
getCorrelation
public abstract double getCorrelation(int timeIndex, int component1, int component2)
-
getNumberOfFactors
public abstract int getNumberOfFactors()
-
getParameterAsDouble
public double[] getParameterAsDouble()
-
getLiborPeriodDiscretization
public TimeDiscretization getLiborPeriodDiscretization()
- Returns:
- Returns the liborPeriodDiscretization.
-
getTimeDiscretization
public TimeDiscretization getTimeDiscretization()
- Returns:
- Returns the timeDiscretizationFromArray.
-
getCloneWithModifiedData
public abstract LIBORCorrelationModel getCloneWithModifiedData(Map<String,Object> dataModified)
Returns a clone of this model where the specified properties have been modified. Note that there is no guarantee that a model reacts on a specification of a properties in the parameter mapdataModified
. If data is provided which is ignored by the model no exception may be thrown. Furthermore the structure of the correlation model has to match changed data. A change of the time discretizations may requires a change in the parameters but this function will just insert the new time discretization without changing the parameters. An exception may not be thrown.- Parameters:
dataModified
- Key-value-map of parameters to modify.- Returns:
- A clone of this model (or a new instance of this model if no parameter was modified).
-
-