00001
00013 #ifndef BM_H
00014 #define BM_H
00015
00016 #include <itpp/itbase.h>
00017
00018
00019 using namespace itpp;
00020
00021 class RV {
00022 int len;
00023 ivec ids;
00024 ivec sizes;
00025 ivec times;
00026 ivec obs;
00027 Array<std::string> names;
00028
00029 public:
00031 RV(ivec in_ids, Array<std::string> in_names, ivec in_sizes, ivec in_times, ivec in_obs);
00033 RV(ivec ids);
00034 friend std::ostream &operator<<(std::ostream &os, const RV &rv);
00035 };
00036
00037
00038
00039
00041 class fnc {
00042 RV rv;
00043 };
00044
00045
00046 class BM {
00047 public:
00049 void bayes(vec dt);
00051 virtual void bayes(mat Dt);
00052 };
00053
00054 class epdf {
00055 RV rv;
00056 public:
00058 virtual vec moment(const int order = 1);
00059 };
00060
00061 class mpdf {
00063 RV rv;
00065 RV rvc;
00066 public:
00067
00069 virtual fnc moment(const int order = 1);
00070 };
00071
00072 #endif // BM_H