00001 #define __cplusplus__ 00002 #ifndef __DISTRIB__ 00003 #define __DISTRIB__ 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 #include <Spatial_Data.hpp> 00015 00016 using namespace std; 00017 00018 00026 class Distribution{ 00027 00028 protected: 00030 uint Dim; 00031 00033 bool fix; 00034 00035 public : 00037 virtual ~Distribution(); 00038 00039 void Fix(); 00040 00042 uint Get_D(); 00043 00045 virtual void Simulate(vector<double> & X); 00046 00048 double Density(vector<double> const & X); 00050 virtual double LogDensity(vector<double> const & X); 00051 00053 virtual void Estimate(Spatial_Data *spatd, vector<double> const & freqs); 00054 00056 virtual void Read_Params(istream & is); 00058 virtual void Write_Params(ostream & os); 00059 00061 virtual uint Degrees_Of_Freedom(); 00062 00064 virtual void Info(); 00065 }; 00066 00067 00068 #endif