QuantLib: a free/open-source library for quantitative finance
Fully annotated sources - version 1.32
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Private Attributes | List of all members
FdmTimeDepDirichletBoundary Class Reference

#include <ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.hpp>

+ Inheritance diagram for FdmTimeDepDirichletBoundary:
+ Collaboration diagram for FdmTimeDepDirichletBoundary:

Public Types

typedef FdmLinearOp operator_type
 
typedef FdmLinearOp::array_type array_type
 
typedef BoundaryCondition< FdmLinearOp >::Side Side
 
- Public Types inherited from BoundaryCondition< FdmLinearOp >
enum  Side
 
typedef FdmLinearOp operator_type
 
typedef Operator::array_type array_type
 

Public Member Functions

 FdmTimeDepDirichletBoundary (const ext::shared_ptr< FdmMesher > &mesher, ext::function< Real(Real)> valueOnBoundary, Size direction, Side side)
 
 FdmTimeDepDirichletBoundary (const ext::shared_ptr< FdmMesher > &mesher, ext::function< Array(Real)> valueOnBoundary, Size direction, Side side)
 
void setTime (Time) override
 
void applyBeforeApplying (operator_type &) const override
 
void applyBeforeSolving (operator_type &, array_type &) const override
 
void applyAfterApplying (array_type &) const override
 
void applyAfterSolving (array_type &) const override
 
- Public Member Functions inherited from BoundaryCondition< FdmLinearOp >
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
 

Private Attributes

const std::vector< Sizeindices_
 
const ext::function< Real(Real)> valueOnBoundary_
 
const ext::function< Array(Real)> valuesOnBoundary_
 
Array values_
 

Detailed Description

Definition at line 37 of file fdmtimedepdirichletboundary.hpp.

Member Typedef Documentation

◆ operator_type

Definition at line 40 of file fdmtimedepdirichletboundary.hpp.

◆ array_type

Definition at line 41 of file fdmtimedepdirichletboundary.hpp.

◆ Side

Definition at line 42 of file fdmtimedepdirichletboundary.hpp.

Constructor & Destructor Documentation

◆ FdmTimeDepDirichletBoundary() [1/2]

FdmTimeDepDirichletBoundary ( const ext::shared_ptr< FdmMesher > &  mesher,
ext::function< Real(Real)>  valueOnBoundary,
Size  direction,
Side  side 
)

Definition at line 33 of file fdmtimedepdirichletboundary.cpp.

◆ FdmTimeDepDirichletBoundary() [2/2]

FdmTimeDepDirichletBoundary ( const ext::shared_ptr< FdmMesher > &  mesher,
ext::function< Array(Real)>  valueOnBoundary,
Size  direction,
Side  side 
)

Definition at line 41 of file fdmtimedepdirichletboundary.cpp.

Member Function Documentation

◆ setTime()

void setTime ( Time  t)
overridevirtual

This method sets the current time for time-dependent boundary conditions.

Implements BoundaryCondition< FdmLinearOp >.

Definition at line 49 of file fdmtimedepdirichletboundary.cpp.

+ Here is the call graph for this function:

◆ applyBeforeApplying()

void applyBeforeApplying ( operator_type ) const
overridevirtual

This method modifies an operator \( L \) before it is applied to an array \( u \) so that \( v = Lu \) will satisfy the given condition.

Implements BoundaryCondition< FdmLinearOp >.

Definition at line 55 of file fdmtimedepdirichletboundary.hpp.

◆ applyBeforeSolving()

void applyBeforeSolving ( operator_type ,
array_type  
) const
override

Definition at line 56 of file fdmtimedepdirichletboundary.hpp.

◆ applyAfterApplying()

void applyAfterApplying ( array_type a) const
override

Definition at line 59 of file fdmtimedepdirichletboundary.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ applyAfterSolving()

void applyAfterSolving ( array_type a) const
override

Definition at line 69 of file fdmtimedepdirichletboundary.cpp.

+ Here is the call graph for this function:

Member Data Documentation

◆ indices_

const std::vector<Size> indices_
private

Definition at line 61 of file fdmtimedepdirichletboundary.hpp.

◆ valueOnBoundary_

const ext::function<Real (Real)> valueOnBoundary_
private

Definition at line 62 of file fdmtimedepdirichletboundary.hpp.

◆ valuesOnBoundary_

const ext::function<Array(Real)> valuesOnBoundary_
private

Definition at line 63 of file fdmtimedepdirichletboundary.hpp.

◆ values_

Array values_
private

Definition at line 65 of file fdmtimedepdirichletboundary.hpp.