1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- /**
- * @file PDFMultinomial.h
- * @brief Multinomial distribution
- * @author Erik Rodner
- * @date 01/29/2008
- */
- #ifndef PDFMultinomialINCLUDE
- #define PDFMultinomialINCLUDE
- #include "core/image/ImageT.h"
- #include "core/vector/VectorT.h"
- #include "core/vector/MatrixT.h"
- #include "PDF.h"
- namespace OBJREC {
- /** Multinomial distribution */
- class PDFMultinomial : public PDF
- {
- protected:
- /** dimension of this random variable */
- int dimension;
- /** parameter of the multinomial containing
- all probabilities for each component */
- // refactor-nice.pl: check this substitution
- // old: Vector theta;
- NICE::Vector theta;
- /** number of trails */
- int N;
- public:
-
- /** simple constructor */
- PDFMultinomial( int dimension );
- // refactor-nice.pl: check this substitution
- // old: PDFMultinomial( const Vector & theta, int N );
- PDFMultinomial( const NICE::Vector & theta, int N );
- /** simple destructor */
- virtual ~PDFMultinomial();
- // refactor-nice.pl: check this substitution
- // old: double getNLogDensity ( const Vector & x ) const;
- double getNLogDensity ( const NICE::Vector & x ) const;
- // refactor-nice.pl: check this substitution
- // old: double getProb ( const Vector & x ) const;
- double getProb ( const NICE::Vector & x ) const;
- int getDimension () const;
- void sample ( NICE::VVector & samples, int count ) const;
- int sample () const;
- double getDiscreteProbability ( int index ) const;
- };
- } // namespace
- #endif
|