Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

/home/mistis/jblanche/DEV/NEM/include/Laplace_DMRF.hpp

00001 #define __cplusplus__
00002 #ifndef __LAPDMRF__
00003 #define __LAPDMRF__
00004 
00005 #include<iostream>
00006 #include<istream>
00007 #include<fstream>
00008 #include<string>
00009 #include<vector>
00010 #include<sstream>
00011 #include <cmath>
00012 
00013 #include <DHMRF.hpp>
00014 #include <Spatial_Data.hpp>
00015 #include <Laplace.hpp>
00016 
00017 using namespace std;
00018 
00019 
00028 class Laplace_DMRF : public DHMRF{
00029   
00030   vector<Laplace *> Laplacians;
00031   
00032 
00033 public :
00034   
00035 
00037   Laplace_DMRF();
00039   Laplace_DMRF(vector<uint> subk, uint dim, Neighborhood_System *nhs );  
00041   Laplace_DMRF(MRF *y, Conditional_MRF *z, vector<Laplace *> const & laplacians);  
00043   ~Laplace_DMRF();
00044 
00046   void DeleteAll();
00047 
00048   
00050   uint Get_D();
00051 
00053   void Simulate(Data *dat, uint gibbs_sampler_nbiter);
00054 
00056   void Simulate(Data *dat, double grad_tol);
00057 
00058   uint Degrees_Of_Freedom();
00059 
00061   virtual double Density(vector<double> const &  X, uint k);
00063   virtual double Density(uint i, vector<double> const &  xi, uint l);
00065   virtual double Density(uint i, vector<double> const & xi, vector<uint> const & z, uint l);
00066 
00067   // I/O Functions
00069   void ReadFromFile(string filename); 
00071   void WriteToFile(string filename); 
00072 
00074   void Info();
00075 
00077   void NREM_E(Spatial_Data *spatd, vector<double> & tip);
00079   void NREM_M(Spatial_Data *spatd, vector<double> const &   tip);
00080 
00081 
00082 };
00083 
00084 
00085 #endif

Generated on Tue Nov 8 14:55:44 2005 for NEM by doxygen1.2.18