QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
Abstract boundary condition class for finite difference problems. More...
#include <boundarycondition.hpp>
Public Types | |
enum | Side { None , Upper , Lower } |
typedef Operator | operator_type |
typedef Operator::array_type | array_type |
Public Member Functions | |
virtual | ~BoundaryCondition ()=default |
virtual void | applyBeforeApplying (operator_type &) const =0 |
virtual void | applyAfterApplying (array_type &) const =0 |
virtual void | applyBeforeSolving (operator_type &, array_type &rhs) const =0 |
virtual void | applyAfterSolving (array_type &) const =0 |
virtual void | setTime (Time t)=0 |
Abstract boundary condition class for finite difference problems.
Definition at line 35 of file boundarycondition.hpp.
typedef Operator operator_type |
Definition at line 38 of file boundarycondition.hpp.
typedef Operator::array_type array_type |
Definition at line 39 of file boundarycondition.hpp.
enum Side |
Enumerator | |
---|---|
None | |
Upper | |
Lower |
Definition at line 41 of file boundarycondition.hpp.
|
virtualdefault |
|
pure virtual |
This method modifies an operator \( L \) before it is applied to an array \( u \) so that \( v = Lu \) will satisfy the given condition.
Implemented in FdmDirichletBoundary, FdmDiscountDirichletBoundary, FdmTimeDepDirichletBoundary, NeumannBC, and DirichletBC.
|
pure virtual |
This method modifies an array \( u \) so that it satisfies the given condition.
|
pure virtual |
This method modifies an operator \( L \) before the linear system \( Lu' = u \) is solved so that \( u' \) will satisfy the given condition.
|
pure virtual |
This method modifies an array \( u \) so that it satisfies the given condition.
|
pure virtual |
This method sets the current time for time-dependent boundary conditions.
Implemented in NeumannBC, DirichletBC, FdmDirichletBoundary, FdmDiscountDirichletBoundary, and FdmTimeDepDirichletBoundary.