00001
00013 #ifndef BM_H
00014 #define BM_H
00015
00016 #include <itpp/itbase.h>
00017
00018
00019 using namespace itpp;
00020
00026 class RV
00027 {
00028 int len;
00029 ivec ids;
00030 ivec sizes;
00031 ivec times;
00032 ivec obs;
00033 Array<std::string> names;
00034
00035 public:
00037 RV ( ivec in_ids, Array<std::string> in_names, ivec in_sizes, ivec in_times, ivec in_obs );
00039 RV ( ivec ids );
00040 friend std::ostream &operator<< ( std::ostream &os, const RV &rv );
00041 };
00042
00043
00044
00045
00047 class fnc
00048 {
00049 RV rv;
00050 };
00051
00053 class BM
00054 {
00055 public:
00057 void bayes ( vec dt );
00059 virtual void bayes ( mat Dt );
00060 };
00061
00063 class epdf
00064 {
00065 RV rv;
00066 public:
00068 virtual vec moment ( const int order = 1 );
00069 };
00070
00072 class mpdf
00073 {
00075 RV rv;
00077 RV rvc;
00078 public:
00079
00081 virtual fnc moment ( const int order = 1 );
00082 };
00083
00084 #endif // BM_H