Class FdmSolverDesc
The description of a finite-difference problem a solver rolls back: its mesher, boundary conditions, step conditions, inner value, maturity and time steps.
public sealed record FdmSolverDesc : IEquatable<FdmSolverDesc>
- Inheritance
-
FdmSolverDesc
- Implements
- Inherited Members
Remarks
A record of the problem's parts, as QuantLib's struct is; the step conditions and the calculator are working types it holds by reference, so a description serves one rollback.
Constructors
FdmSolverDesc(FdmMesher, ImmutableArray<BoundaryCondition<FdmLinearOp>>, FdmStepConditionComposite, FdmInnerValueCalculator, double, int, int)
The description of a finite-difference problem a solver rolls back: its mesher, boundary conditions, step conditions, inner value, maturity and time steps.
public FdmSolverDesc(FdmMesher Mesher, ImmutableArray<BoundaryCondition<FdmLinearOp>> BcSet, FdmStepConditionComposite Condition, FdmInnerValueCalculator Calculator, double Maturity, int TimeSteps, int DampingSteps)
Parameters
MesherFdmMesherThe mesher.
BcSetImmutableArray<BoundaryCondition<FdmLinearOp>>The boundary conditions.
ConditionFdmStepConditionCompositeThe step conditions.
CalculatorFdmInnerValueCalculatorThe inner value's calculator, which gives the values at maturity.
MaturitydoubleThe maturity, as a time on the solver's clock: for the Black-Scholes solver, Clock(GeneralizedBlackScholesProcess, FdmQuantoHelper?)'s.
TimeStepsintThe number of time steps.
DampingStepsintThe number of implicit damping steps before them.
Remarks
A record of the problem's parts, as QuantLib's struct is; the step conditions and the calculator are working types it holds by reference, so a description serves one rollback.
Properties
BcSet
The boundary conditions.
public ImmutableArray<BoundaryCondition<FdmLinearOp>> BcSet { get; init; }
Property Value
Calculator
The inner value's calculator, which gives the values at maturity.
public FdmInnerValueCalculator Calculator { get; init; }
Property Value
Condition
The step conditions.
public FdmStepConditionComposite Condition { get; init; }
Property Value
DampingSteps
The number of implicit damping steps before them.
public int DampingSteps { get; init; }
Property Value
Maturity
The maturity, as a time on the solver's clock: for the Black-Scholes solver, Clock(GeneralizedBlackScholesProcess, FdmQuantoHelper?)'s.
public double Maturity { get; init; }
Property Value
Mesher
The mesher.
public FdmMesher Mesher { get; init; }
Property Value
TimeSteps
The number of time steps.
public int TimeSteps { get; init; }
Property Value
Methods
Deconstruct(out FdmMesher, out ImmutableArray<BoundaryCondition<FdmLinearOp>>, out FdmStepConditionComposite, out FdmInnerValueCalculator, out double, out int, out int)
public void Deconstruct(out FdmMesher Mesher, out ImmutableArray<BoundaryCondition<FdmLinearOp>> BcSet, out FdmStepConditionComposite Condition, out FdmInnerValueCalculator Calculator, out double Maturity, out int TimeSteps, out int DampingSteps)
Parameters
MesherFdmMesherBcSetImmutableArray<BoundaryCondition<FdmLinearOp>>ConditionFdmStepConditionCompositeCalculatorFdmInnerValueCalculatorMaturitydoubleTimeStepsintDampingStepsint
Equals(FdmSolverDesc?)
public bool Equals(FdmSolverDesc? other)
Parameters
otherFdmSolverDesc
Returns
Equals(object?)
public override bool Equals(object? obj)
Parameters
objobject
Returns
GetHashCode()
public override int GetHashCode()
Returns
ToString()
public override string ToString()
Returns
Operators
operator ==(FdmSolverDesc?, FdmSolverDesc?)
public static bool operator ==(FdmSolverDesc? left, FdmSolverDesc? right)
Parameters
leftFdmSolverDescrightFdmSolverDesc
Returns
operator !=(FdmSolverDesc?, FdmSolverDesc?)
public static bool operator !=(FdmSolverDesc? left, FdmSolverDesc? right)
Parameters
leftFdmSolverDescrightFdmSolverDesc