finMath lib documentation
net.finmath.montecarlo

## Class IndependentIncrements

• All Implemented Interfaces:
Serializable, IndependentIncrementsInterface

public class IndependentIncrements
extends Object
implements IndependentIncrementsInterface, Serializable
Implementation of a time-discrete n-dimensional sequence of independent increments W = (W1,...,Wn) form a given set of inverse cumulative distribution functions. Independent increments is a sequence of independent random variables index by the time index associated with the time discretization. At each time step the increment is a d-dimensional random variable $$Z(t_{i})$$, where d is numberOfFactors. where each component of $$Z_{j}(t_{i})$$ is given by $Z_{j}(t_{i}) = ICDF_{i,j}(U_{i,j})$ for a sequence of independent uniform distributes random variables U_{i,j}. The inverse cumulative distribution functions $$ICDF_{i,j}$$ are given by inverseCumulativeDistributionFunctions as the map $$i \mapsto ( j \mapsto ICDF_{i,j} )$$ (here i is the time index and j is the factor (component). Each $$U_{i,j}$$ is samples using numberOfPaths. The class is immutable and thread safe. It uses lazy initialization.
Version:
1.6
Author:
Christian Fries
Serialized Form
• ### Constructor Detail

• #### IndependentIncrements

public IndependentIncrements(TimeDiscretizationInterface timeDiscretization,
int numberOfFactors,
int numberOfPaths,
int seed,
IntFunction<IntFunction<DoubleUnaryOperator>> inverseCumulativeDistributionFunctions,
AbstractRandomVariableFactory randomVariableFactory)
Construct the simulation of independent increments. Independent increments is a sequence of independent random variables index by the time index associated with the time discretization. At each time step the increment is a d-dimensional random variable $$Z(t_{i})$$, where d is numberOfFactors. where each component of $$Z_{j}(t_{i})$$ is given by $Z_{j}(t_{i}) = ICDF_{i,j}(U_{i,j})$ for a sequence of independent uniform distributes random variables U_{i,j}. The inverse cumulative distribution functions $$ICDF_{i,j}$$ are given by inverseCumulativeDistributionFunctions as the map $$i \mapsto ( j \mapsto ICDF_{i,j} )$$ (here i is the time index and j is the factor (component). Each $$U_{i,j}$$ is samples using numberOfPaths. The constructor allows to set the factory to be used for the construction of random variables. This allows to generate increments represented by different implementations of the RandomVariableInterface (e.g. the RandomVariableLowMemory internally using float representations).
Parameters:
timeDiscretization - The time discretization used for the increments.
numberOfFactors - Number of factors.
numberOfPaths - Number of paths to simulate.
seed - The seed of the random number generator.
inverseCumulativeDistributionFunctions - A map from the timeIndices to a map from the from the factors to the corresponding inverse cumulative distribution function.
randomVariableFactory - Factory to be used to create random variable.
• #### IndependentIncrements

public IndependentIncrements(TimeDiscretizationInterface timeDiscretization,
int numberOfFactors,
int numberOfPaths,
int seed,
IntFunction<IntFunction<DoubleUnaryOperator>> inverseCumulativeDistributionFunctions)
Construct the simulation of independet increments. The independent increments is a sequence of independent random variables index by the time index associated with the time discretization. At each time step the increment is a d-dimensional random variable $$Z(t_{i})$$, where d is numberOfFactors. where each component of $$Z_{j}(t_{i})$$ is given by $Z_{j}(t_{i}) = ICDF_{i,j}(U_{i,j})$ for a sequence of independent uniform distributes random variables U_{i,j}. The inverse cumulative distribution functions $$ICDF_{i,j}$$ are given by inverseCumulativeDistributionFunctions as the map $$i \mapsto ( j \mapsto ICDF_{i,j} )$$ (here i is the time index and j is the factor (component). Each $$U_{i,j}$$ is samples using numberOfPaths.
Parameters:
timeDiscretization - The time discretization used for the increments.
numberOfFactors - Number of factors.
numberOfPaths - Number of paths to simulate.
seed - The seed of the random number generator.
inverseCumulativeDistributionFunctions - A map from the timeIndices to a map from the from the factors to the corresponding inverse cumulative distribution function.