Class EndEulerDiscretization
Euler end-point discretization for stochastic processes: over a time interval Δt, the drift μ(t0 + Δt, x0) Δt, the diffusion σ(t0 + Δt, x0) √Δt and the covariance σ(t0 + Δt, x0) σ(t0 + Δt, x0)ᵀ Δt.
public sealed class EndEulerDiscretization : StochasticProcess1DDiscretization
- Inheritance
-
EndEulerDiscretization
- Inherited Members
Remarks
QuantLib's class implements both of its process families' discretization interfaces. A C# class has one base, so
this one is a StochasticProcess1DDiscretization, declares the multi-dimensional members too, and
converts implicitly to a StochasticProcessDiscretization that forwards to them: a multi-dimensional
process is given new EndEulerDiscretization() as QuantLib's is.
Constructors
EndEulerDiscretization()
public EndEulerDiscretization()
Methods
Covariance(StochasticProcess, double, Vector, double)
The covariance over the interval, σ(t0 + Δt, x0) σ(t0 + Δt, x0)ᵀ Δt.
public Matrix Covariance(StochasticProcess process, double t0, Vector x0, double dt)
Parameters
processStochasticProcessThe process.
t0doubleThe start of the interval.
x0VectorThe state at its start.
dtdoubleThe interval's length.
Returns
- Matrix
A new matrix.
Diffusion(StochasticProcess, double, Vector, double)
The diffusion over the interval, σ(t0 + Δt, x0) √Δt.
public Matrix Diffusion(StochasticProcess process, double t0, Vector x0, double dt)
Parameters
processStochasticProcessThe process.
t0doubleThe start of the interval.
x0VectorThe state at its start.
dtdoubleThe interval's length.
Returns
- Matrix
A new matrix.
Diffusion(StochasticProcess1D, double, double, double)
The diffusion over the interval, σ(t0 + Δt, x0) √Δt.
public override double Diffusion(StochasticProcess1D process, double t0, double x0, double dt)
Parameters
processStochasticProcess1DThe process.
t0doubleThe start of the interval.
x0doubleThe state at its start.
dtdoubleThe interval's length.
Returns
- double
The diffusion.
Drift(StochasticProcess, double, Vector, double)
The drift over the interval, μ(t0 + Δt, x0) Δt.
public Vector Drift(StochasticProcess process, double t0, Vector x0, double dt)
Parameters
processStochasticProcessThe process.
t0doubleThe start of the interval.
x0VectorThe state at its start.
dtdoubleThe interval's length.
Returns
- Vector
A new vector.
Drift(StochasticProcess1D, double, double, double)
The drift over the interval, μ(t0 + Δt, x0) Δt.
public override double Drift(StochasticProcess1D process, double t0, double x0, double dt)
Parameters
processStochasticProcess1DThe process.
t0doubleThe start of the interval.
x0doubleThe state at its start.
dtdoubleThe interval's length.
Returns
- double
The drift.
Variance(StochasticProcess1D, double, double, double)
The variance over the interval, σ(t0 + Δt, x0)² Δt.
public override double Variance(StochasticProcess1D process, double t0, double x0, double dt)
Parameters
processStochasticProcess1DThe process.
t0doubleThe start of the interval.
x0doubleThe state at its start.
dtdoubleThe interval's length.
Returns
- double
The variance.
Operators
implicit operator StochasticProcessDiscretization(EndEulerDiscretization)
The multi-dimensional discretization over this one's members.
public static implicit operator StochasticProcessDiscretization(EndEulerDiscretization d)
Parameters
dEndEulerDiscretizationThe end-point Euler discretization.