Single-factor affine base class. More...
#include <ql/models/shortrate/onefactormodel.hpp>
 Inheritance diagram for OneFactorAffineModel:
 Inheritance diagram for OneFactorAffineModel:| Public Member Functions | |
| OneFactorAffineModel (Size nArguments) | |
| virtual Real | discountBond (Time now, Time maturity, Array factors) const | 
| Real | discountBond (Time now, Time maturity, Rate rate) const | 
| DiscountFactor | discount (Time t) const | 
| Implied discount curve. | |
|  Public Member Functions inherited from OneFactorModel | |
| OneFactorModel (Size nArguments) | |
| virtual boost::shared_ptr< ShortRateDynamics > | dynamics () const =0 | 
| returns the short-rate dynamics | |
| boost::shared_ptr< Lattice > | tree (const TimeGrid &grid) const | 
| Return by default a trinomial recombining tree. | |
|  Public Member Functions inherited from ShortRateModel | |
| ShortRateModel (Size nArguments) | |
|  Public Member Functions inherited from CalibratedModel | |
| CalibratedModel (Size nArguments) | |
| void | update () | 
| virtual void | calibrate (const std::vector< boost::shared_ptr< CalibrationHelper > > &, OptimizationMethod &method, const EndCriteria &endCriteria, const Constraint &constraint=Constraint(), const std::vector< Real > &weights=std::vector< Real >(), const std::vector< bool > &fixParameters=std::vector< bool >()) | 
| Calibrate to a set of market instruments (usually caps/swaptions)  More... | |
| Real | value (const Array ¶ms, const std::vector< boost::shared_ptr< CalibrationHelper > > &) | 
| const boost::shared_ptr< Constraint > & | constraint () const | 
| EndCriteria::Type | endCriteria () const | 
| Returns end criteria result. | |
| const Array & | problemValues () const | 
| Returns the problem values. | |
| Disposable< Array > | params () const | 
| Returns array of arguments on which calibration is done. | |
| virtual void | setParams (const Array ¶ms) | 
| Integer | functionEvaluation () const | 
|  Public Member Functions inherited from Observer | |
| Observer (const Observer &) | |
| Observer & | operator= (const Observer &) | 
| std::pair< iterator, bool > | registerWith (const boost::shared_ptr< Observable > &) | 
| void | registerWithObservables (const boost::shared_ptr< Observer > &) | 
| Size | unregisterWith (const boost::shared_ptr< Observable > &) | 
| void | unregisterWithAll () | 
| virtual void | deepUpdate () | 
|  Public Member Functions inherited from Observable | |
| Observable (const Observable &) | |
| Observable & | operator= (const Observable &) | 
| void | notifyObservers () | 
|  Public Member Functions inherited from AffineModel | |
| virtual Real | discountBondOption (Option::Type type, Real strike, Time maturity, Time bondMaturity) const =0 | 
| virtual Real | discountBondOption (Option::Type type, Real strike, Time maturity, Time bondStart, Time bondMaturity) const | 
| Protected Member Functions | |
| virtual Real | A (Time t, Time T) const =0 | 
| virtual Real | B (Time t, Time T) const =0 | 
|  Protected Member Functions inherited from CalibratedModel | |
| virtual void | generateArguments () | 
| Additional Inherited Members | |
|  Public Types inherited from Observer | |
| typedef std::set< boost::shared_ptr< Observable > > | set_type | 
| typedef set_type::iterator | iterator | 
|  Protected Attributes inherited from CalibratedModel | |
| std::vector< Parameter > | arguments_ | 
| boost::shared_ptr< Constraint > | constraint_ | 
| EndCriteria::Type | shortRateEndCriteria_ | 
| Array | problemValues_ | 
| Integer | functionEvaluation_ | 
Single-factor affine base class.
Single-factor models with an analytical formula for discount bonds should inherit from this class. They must then implement the functions \( A(t,T) \) and \( B(t,T) \) such that
\[ P(t, T, r_t) = A(t,T)e^{ -B(t,T) r_t}. \]