One-factor Gaussian Copula. More...
#include <ql/experimental/credit/onefactorgaussiancopula.hpp>
Inheritance diagram for OneFactorGaussianCopula:Public Member Functions | |
| OneFactorGaussianCopula (const Handle< Quote > &correlation, Real maximum=5, Size integrationSteps=50) | |
| Real | density (Real m) const |
| Density function of M. More... | |
| Real | cumulativeZ (Real z) const |
| Cumulative distribution of Z. More... | |
| Real | cumulativeY (Real y) const |
| Real | testCumulativeY (Real y) const |
| Real | inverseCumulativeY (Real p) const |
Public Member Functions inherited from OneFactorCopula | |
| OneFactorCopula (const Handle< Quote > &correlation, Real maximum=5.0, Size integrationSteps=50, Real minimum=-5.0) | |
| Real | correlation () const |
| Single correlation parameter. | |
| Real | conditionalProbability (Real prob, Real m) const |
| Conditional probability. More... | |
| std::vector< Real > | conditionalProbability (const std::vector< Real > &prob, Real m) const |
| Vector of conditional probabilities. More... | |
| Real | integral (Real p) const |
| template<class F > | |
| Real | integral (const F &f, std::vector< Real > &probabilities) const |
| template<class F > | |
| Distribution | integral (const F &f, const std::vector< Real > &nominals, const std::vector< Real > &probabilities) const |
| int | checkMoments (Real tolerance) const |
Public Member Functions inherited from LazyObject | |
| void | update () |
| void | recalculate () |
| void | freeze () |
| void | unfreeze () |
Public Member Functions inherited from Observable | |
| Observable (const Observable &) | |
| Observable & | operator= (const Observable &) |
| void | notifyObservers () |
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 () |
Additional Inherited Members | |
Public Types inherited from Observer | |
| typedef std::set< boost::shared_ptr< Observable > > | set_type |
| typedef set_type::iterator | iterator |
Protected Member Functions inherited from OneFactorCopula | |
| Size | steps () const |
| Real | dm (Size i) const |
| Real | m (Size i) const |
| Real | densitydm (Size i) const |
Protected Member Functions inherited from LazyObject | |
| virtual void | calculate () const |
Protected Attributes inherited from OneFactorCopula | |
| Handle< Quote > | correlation_ |
| Real | max_ |
| Size | steps_ |
| Real | min_ |
| std::vector< Real > | y_ |
| std::vector< Real > | cumulativeY_ |
Protected Attributes inherited from LazyObject | |
| bool | calculated_ |
| bool | frozen_ |
One-factor Gaussian Copula.
The copula model
\[ Y_i = a_i\,M+\sqrt{1-a_i^2}\:Z_i \]
is specified here by setting the desnity function for all variables, \( M, Z,\) and also \( Y \) to the standard normal distribution \( \phi(x) = \exp(-x^2/2) / \sqrt{2\pi}. \)
Density function of M.
Derived classes must override this method and ensure zero mean and unit variance.
Implements OneFactorCopula.
Cumulative distribution of Z.
Derived classes must override this method and ensure zero mean and unit variance.
Implements OneFactorCopula.
overrides the base class implementation based on table data
Reimplemented from OneFactorCopula.
overrides the base class implementation based on table data
Reimplemented from OneFactorCopula.