Abstract boundary condition class for finite difference problems.
More...
#include <ql/methods/finitedifferences/boundarycondition.hpp>
|
enum | Side { None,
Upper,
Lower
} |
|
typedef Operator | operator_type |
|
typedef Operator::array_type | array_type |
|
template<class Operator>
class QuantLib::BoundaryCondition< Operator >
Abstract boundary condition class for finite difference problems.
◆ Side
◆ applyBeforeApplying()
virtual void applyBeforeApplying |
( |
operator_type & |
| ) |
const |
|
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 DirichletBC, and NeumannBC.
◆ applyAfterApplying()
virtual void applyAfterApplying |
( |
array_type & |
| ) |
const |
|
pure virtual |
This method modifies an array \( u \) so that it satisfies the given condition.
◆ applyBeforeSolving()
virtual void applyBeforeSolving |
( |
operator_type & |
, |
|
|
array_type & |
rhs |
|
) |
| const |
|
pure virtual |
This method modifies an operator \( L \) before the linear system \( Lu' = u \) is solved so that \( u' \) will satisfy the given condition.
◆ applyAfterSolving()
virtual void applyAfterSolving |
( |
array_type & |
| ) |
const |
|
pure virtual |
This method modifies an array \( u \) so that it satisfies the given condition.
◆ setTime()
virtual void setTime |
( |
Time |
t | ) |
|
|
pure virtual |
This method sets the current time for time-dependent boundary conditions.
Implemented in DirichletBC, and NeumannBC.