QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
#include <fdmndimsolver.hpp>
Public Types | |
typedef MultiCubicSpline< N >::data_table | data_table |
Public Types inherited from Observer | |
typedef set_type::iterator | iterator |
Public Member Functions | |
FdmNdimSolver (const FdmSolverDesc &solverDesc, const FdmSchemeDesc &schemeDesc, ext::shared_ptr< FdmLinearOpComposite > op) | |
void | performCalculations () const override |
Real | interpolateAt (const std::vector< Real > &x) const |
Real | thetaAt (const std::vector< Real > &x) const |
void | setValue (data_table &f, const std::vector< Size > &x, Real value) |
Public Member Functions inherited from LazyObject | |
LazyObject () | |
~LazyObject () override=default | |
void | update () override |
bool | isCalculated () const |
void | forwardFirstNotificationOnly () |
void | alwaysForwardNotifications () |
void | recalculate () |
void | freeze () |
void | unfreeze () |
Public Member Functions inherited from Observable | |
Observable () | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
Observable (Observable &&)=delete | |
Observable & | operator= (Observable &&)=delete |
virtual | ~Observable ()=default |
void | notifyObservers () |
Public Member Functions inherited from Observer | |
Observer ()=default | |
Observer (const Observer &) | |
Observer & | operator= (const Observer &) |
virtual | ~Observer () |
std::pair< iterator, bool > | registerWith (const ext::shared_ptr< Observable > &) |
void | registerWithObservables (const ext::shared_ptr< Observer > &) |
Size | unregisterWith (const ext::shared_ptr< Observable > &) |
void | unregisterWithAll () |
virtual void | update ()=0 |
virtual void | deepUpdate () |
Static Public Member Functions | |
static void | setValue (data_table &f, const std::vector< Size > &x, Real value) |
Private Attributes | |
const FdmSolverDesc | solverDesc_ |
const FdmSchemeDesc | schemeDesc_ |
const ext::shared_ptr< FdmLinearOpComposite > | op_ |
const ext::shared_ptr< FdmSnapshotCondition > | thetaCondition_ |
const ext::shared_ptr< FdmStepConditionComposite > | conditions_ |
std::vector< std::vector< Real > > | x_ |
std::vector< Real > | initialValues_ |
const std::vector< bool > | extrapolation_ |
ext::shared_ptr< data_table > | f_ |
ext::shared_ptr< MultiCubicSpline< N > > | interp_ |
Additional Inherited Members | |
Protected Member Functions inherited from LazyObject | |
virtual void | calculate () const |
Protected Attributes inherited from LazyObject | |
bool | calculated_ = false |
bool | frozen_ = false |
bool | alwaysForward_ |
Definition at line 42 of file fdmndimsolver.hpp.
typedef MultiCubicSpline<N>::data_table data_table |
Definition at line 54 of file fdmndimsolver.hpp.
FdmNdimSolver | ( | const FdmSolverDesc & | solverDesc, |
const FdmSchemeDesc & | schemeDesc, | ||
ext::shared_ptr< FdmLinearOpComposite > | op | ||
) |
Definition at line 76 of file fdmndimsolver.hpp.
|
overridevirtual |
This method must implement any calculations which must be (re)done in order to calculate the desired results.
Implements LazyObject.
Definition at line 114 of file fdmndimsolver.hpp.
Definition at line 150 of file fdmndimsolver.hpp.
Definition at line 132 of file fdmndimsolver.hpp.
|
static |
Definition at line 157 of file fdmndimsolver.hpp.
void setValue | ( | data_table & | f, |
const std::vector< Size > & | x, | ||
Real | value | ||
) |
Definition at line 163 of file fdmndimsolver.hpp.
|
private |
Definition at line 59 of file fdmndimsolver.hpp.
|
private |
Definition at line 60 of file fdmndimsolver.hpp.
|
private |
Definition at line 61 of file fdmndimsolver.hpp.
|
private |
Definition at line 63 of file fdmndimsolver.hpp.
|
private |
Definition at line 64 of file fdmndimsolver.hpp.
|
private |
Definition at line 66 of file fdmndimsolver.hpp.
|
private |
Definition at line 67 of file fdmndimsolver.hpp.
|
private |
Definition at line 68 of file fdmndimsolver.hpp.
|
mutableprivate |
Definition at line 70 of file fdmndimsolver.hpp.
|
mutableprivate |
Definition at line 71 of file fdmndimsolver.hpp.