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

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

00001 #define __cplusplus__
00002 #ifndef __LAPLACEMIX__
00003 #define __LAPLACEMIX__
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 <IID_Mixture.hpp>
00014 #include <Laplace.hpp>
00015 
00016 using namespace std;
00017 
00027 class Laplace_Mix : public IID_Mixture{
00028 
00030   vector< Laplace *> Laplacians;
00031   
00032 public :
00033 
00035   Laplace_Mix();
00036   
00038   Laplace_Mix(uint k, uint dim);
00039 
00041   Laplace_Mix(uint k, vector< Laplace *> const &  lapl );
00042   
00044   ~Laplace_Mix();
00045 
00046   
00048   void DeleteAll();
00049 
00050   
00052   uint Get_D();
00053 
00054   uint Degrees_Of_Freedom();
00055 
00056 
00057   void Init(Spatial_Data *spatd);
00058 
00060   void Simulate(uint N, Data *dat);
00061 
00063   double Density(vector<double> const &  X, uint k);
00064 
00065 
00066   
00068   void Update_Laplacians(Spatial_Data *spatd, vector<double>  const &  tik);
00069 
00070 
00071 
00072   // I/O Functions
00074   void ReadFromFile(string filename); 
00076   void WriteToFile(string filename); 
00077 
00078 
00080   void EM_E(Spatial_Data *spatd, vector<double> & tik);
00082   void EM_M(Spatial_Data *spatd, vector<double> const &   tik);
00083   
00084   
00086   void NEM_E(Spatial_Data *spatd, vector<double> const &  beta, vector<double> & tik);
00088   void NEM_M(Spatial_Data *spatd, vector<double> const &   tik);
00089 
00090   void Info();
00091 
00092 };
00093  
00094 #endif

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