Main Page | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

IID_Mixture.hpp

00001 #define __cplusplus__
00002 #ifndef __IIDMIX__
00003 #define __IIDMIX__
00004 
00005 #include<iostream>
00006 #include<istream>
00007 #include<fstream>
00008 #include<string>
00009 #include<vector>
00010 #include<sstream>
00011 #include <cmath>
00012 
00013 
00014 
00015 #include <Spatial_Data.hpp>
00016 #include <Seg_Model.hpp>
00017 #include <Diag_Normal.hpp>
00018 #include <Normal.hpp>
00019 #include <HighDim_Normal.hpp>
00020 #include <Laplace.hpp>
00021 
00022 
00023 using namespace std;
00024 
00025 
00035 class IID_Mixture : public Seg_Model{
00036 
00037 protected:
00039   vector<double> Pi;
00040 
00041 public :
00042 
00044         IID_Mixture();
00046         IID_Mixture(uint k, uint dim);
00048         IID_Mixture(uint k, vector<Distribution *> const &  distrib);
00050         IID_Mixture(uint k, vector<Diag_Normal *> const &  distrib);
00052         IID_Mixture(uint k, vector<Normal *> const &  distrib);
00054         IID_Mixture(uint k, vector<HighDim_Normal *> const &  distrib);
00056         IID_Mixture(uint k, vector<Laplace *> const &  distrib);
00058   ~IID_Mixture();
00059 
00061   void Get_Pi( vector<double> & pi );
00063   void Set_Pi( vector<double>  const &  pi );
00064   
00066   double LogLikelihood(Spatial_Data *spatd);
00068   double Completed_LogLikelihood(Spatial_Data *spatd,  vector<double>  const &  tik );
00069 
00071   double BIC(Spatial_Data *spatd );
00073   double ICL(Spatial_Data *spatd );
00074 
00076   void Estimate_Pi(vector<double>  const &  tik);
00078   void Estimate(Spatial_Data *spatd, vector<double>  const &  tik);
00079 
00081         void Simulate(uint N, Data *dat);
00083         uint Degrees_Of_Freedom();
00084 
00086         void ReadFromFile(string filename);
00088         void WriteToFile(string filename);
00090         void Info();
00091 
00092   
00093 };
00094 
00095 
00096 #endif

Generated on Thu Jan 12 11:54:58 2006 for NEM by  doxygen 1.4.4