PDFDirichlet.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /**
  2. * @file PDFDirichlet.h
  3. * @brief dirichlet distribution
  4. * @author Erik Rodner
  5. * @date 01/29/2008
  6. */
  7. #ifndef PDFDirichletINCLUDE
  8. #define PDFDirichletINCLUDE
  9. #ifdef NOVISUAL
  10. #include <vislearning/nice_nonvis.h>
  11. #else
  12. #include <vislearning/nice.h>
  13. #endif
  14. #include "PDF.h"
  15. namespace OBJREC {
  16. /** dirichlet distribution */
  17. class PDFDirichlet : public PDF
  18. {
  19. protected:
  20. // refactor-nice.pl: check this substitution
  21. // old: Vector alpha;
  22. NICE::Vector alpha;
  23. int dimension;
  24. public:
  25. /** simple constructor */
  26. PDFDirichlet( double alpha, int dimension );
  27. // refactor-nice.pl: check this substitution
  28. // old: PDFDirichlet( const Vector & alpha );
  29. PDFDirichlet( const NICE::Vector & alpha );
  30. /** simple destructor */
  31. virtual ~PDFDirichlet();
  32. // refactor-nice.pl: check this substitution
  33. // old: double getNLogDensity ( const Vector & x ) const;
  34. double getNLogDensity ( const NICE::Vector & x ) const;
  35. // refactor-nice.pl: check this substitution
  36. // old: double getProb ( const Vector & x ) const;
  37. double getProb ( const NICE::Vector & x ) const;
  38. int getDimension () const;
  39. void sample ( NICE::VVector & samples, int count ) const;
  40. };
  41. } // namespace
  42. #endif