STK++ 0.9.13
STK::MultiLaw::IMultiLaw< RowVector > Class Template Referenceabstract

Interface base Class for the multivariate distributions. More...

#include <STK_MultiLaw_IMultiLaw.h>

Inheritance diagram for STK::MultiLaw::IMultiLaw< RowVector >:
Inheritance graph

Public Member Functions

virtual ~IMultiLaw ()
 destructor.
 
virtual Real pdf (RowVector const &x) const =0
 compute the probability distribution function (density) of the multivariate law.
 
virtual Real lpdf (RowVector const &x) const =0
 compute the log probability distribution function Give the value of the log-pdf at the point x.
 
virtual void rand (RowVector &x) const =0
 simulate a realization of the Multivariate Law and store the result in x.
 
- Public Member Functions inherited from STK::Law::ILawBase
String constname () const
 

Protected Member Functions

 IMultiLaw (String const &name)
 Constructor.
 
- Protected Member Functions inherited from STK::Law::ILawBase
 ILawBase (String const &name)
 Constructor.
 
 ~ILawBase ()
 destructor.
 

Additional Inherited Members

- Protected Attributes inherited from STK::Law::ILawBase
String name_
 Name of the Law.
 

Detailed Description

template<class RowVector>
class STK::MultiLaw::IMultiLaw< RowVector >

Interface base Class for the multivariate distributions.

Given some sample x in some data space, a multivariate law can compute a probability density function (pdf), a log-pdf. Moreover it is possible to simulate some random realization of this law.

Template Parameters
RowVectoris the type of container containing the sample x.

Definition at line 60 of file STK_MultiLaw_IMultiLaw.h.

Constructor & Destructor Documentation

◆ IMultiLaw()

template<class RowVector >
STK::MultiLaw::IMultiLaw< RowVector >::IMultiLaw ( String const name)
inlineprotected

Constructor.

Definition at line 64 of file STK_MultiLaw_IMultiLaw.h.

64: Law::ILawBase(name) {}
String const & name() const

◆ ~IMultiLaw()

template<class RowVector >
virtual STK::MultiLaw::IMultiLaw< RowVector >::~IMultiLaw ( )
inlinevirtual

destructor.

Definition at line 68 of file STK_MultiLaw_IMultiLaw.h.

68{}

Member Function Documentation

◆ lpdf()

template<class RowVector >
virtual Real STK::MultiLaw::IMultiLaw< RowVector >::lpdf ( RowVector const x) const
pure virtual

compute the log probability distribution function Give the value of the log-pdf at the point x.

Parameters
xthe multivariate value to compute the lpdf.
Returns
the value of the log-pdf

Implemented in STK::MultiLaw::JointProbability< RowVector, Law >, STK::MultiLaw::JointProbability< RowVector, Law::Bernoulli >, STK::MultiLaw::JointProbability< RowVector, Law::Cauchy >, STK::MultiLaw::JointProbability< RowVector, Law::Gamma >, STK::MultiLaw::JointProbability< RowVector, Law::Normal >, and STK::MultiLaw::Normal< RowVector >.

◆ pdf()

template<class RowVector >
virtual Real STK::MultiLaw::IMultiLaw< RowVector >::pdf ( RowVector const x) const
pure virtual

compute the probability distribution function (density) of the multivariate law.

Give the value of the pdf at the point x.

Parameters
xthe multivariate value to compute the pdf.
Returns
the value of the pdf

Implemented in STK::MultiLaw::JointProbability< RowVector, Law >, STK::MultiLaw::JointProbability< RowVector, Law::Bernoulli >, STK::MultiLaw::JointProbability< RowVector, Law::Cauchy >, STK::MultiLaw::JointProbability< RowVector, Law::Gamma >, STK::MultiLaw::JointProbability< RowVector, Law::Normal >, and STK::MultiLaw::Normal< RowVector >.

◆ rand()


The documentation for this class was generated from the following file: