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

HighDim_Normal.hpp

00001 #define __cplusplus__
00002 #ifndef __HDNORMAL__
00003 #define __HDNORMAL__
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 #include <Distribution.hpp>
00016 
00017 using namespace std;
00018 
00019 
00027 class HighDim_Normal: public Distribution{
00028   
00030   vector<double> Mu; 
00032   uint Dim_red;
00034   double A;
00036   double B;
00038   vector<double> Q;
00039 
00040 
00041 public :
00043   HighDim_Normal();
00045   HighDim_Normal(uint dim);
00047   HighDim_Normal(uint dim, uint dim_red, double a, double b);
00049   HighDim_Normal(uint dim, uint dim_red, double a, double b, vector<double> const &  mu, vector<double> const &  q);
00050 
00052   ~HighDim_Normal();
00053 
00055   void DeleteAll();
00056   
00058   void Info();
00059 
00061   uint Get_Dred();
00062 
00064   void Get_Mu(vector<double> &mu);
00065 
00067   double Get_A();
00068 
00070   double Get_B();
00071 
00073   void Get_Q(vector<double> &q);
00074 
00076   void Get_Qc(vector<double> &qc);
00077 
00079   void Set_Mu(vector<double>  const & m);
00080 
00082   void Set_A(double a);
00083  
00085   void Set_B(double b);
00086     
00088   void Set_Q(vector<double> const &  q);  
00089 
00091   void Compute_Delta(vector<double> Delta);
00092 
00094   void Compute_Sigma(vector<double> Sigma);
00095 
00097   void Simulate(vector<double> & X);
00098 
00100   void Proj(vector<double> const &X, vector<double> &pX);
00101 
00103   double LogDensity(vector<double> const &  X);
00104   
00106   void Compute_Empirical_Sigma(Spatial_Data *spatd, vector<double>  const &  freqs, vector<double> &Sigma);
00107 
00109   void Estimate_Mu(Spatial_Data *spatd, vector<double>  const &  freqs);
00110 
00112   void Estimate_dabQ(Spatial_Data *spatd, vector<double>  const &  freqs);
00113 
00115   void Estimate(Spatial_Data *spatd, vector<double>  const &  freqs);
00116 
00118   uint Degrees_Of_Freedom();
00119 
00121   void Read_Params(istream & is);
00122 
00124   void Write_Params(ostream & os);
00125 
00126 };
00127 
00128 
00129 #endif

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