BIE |
/home/weinberg/src/BIE/include/SplatModelNdv.h00001 // This is really -*- C++ -*- 00002 00003 00004 #ifndef SplatModelNdv_h 00005 #define SplatModelNdv_h 00006 00007 #include "Model.h" 00008 00009 #include "Serializable.h" 00010 00011 00012 namespace BIE { 00013 00014 typedef vector<double> dvector; 00015 00016 //+ CLICLASS SplatModelNdv SUPER Model 00027 class SplatModelNdv : public Model 00028 { 00029 public: 00030 00032 //{@ 00034 static double SIGX; 00035 00037 static double SIGY; 00038 00040 static double VV; 00041 00042 //+ CLICONSTR int int double double 00044 SplatModelNdv(int mdim, int nband, double fluxmin, double fluxmax); 00045 00047 void Initialize(State&); 00048 void Initialize(vector<double>& w, vector< vector<double> >& p); 00049 00051 virtual double NormEval(double xmin, double xmax, 00052 double ymin, double ymax); 00053 00055 double NormEval(double x, double y, SampleDistribution *d); 00056 00058 00059 00060 vector<double> EvaluateBinned(double x, double y, BinnedDistribution *d); 00062 vector<double> EvaluatePoint(double x, double y, PointDistribution *d); 00064 00066 string ParameterDescription(int i); 00067 00069 int DataDimension() {return Nband;} 00070 00071 private: 00073 int M, Mcur; 00074 00076 int Ndim; 00077 00079 int Nband; 00080 00081 double fmin, fmax; 00082 00083 vector<double> wt, xx, yy, sx, sy; 00084 00085 vector<dvector> aa; 00086 00087 static const char* XPOS_FIELDNAME; 00088 static const char* YPOS_FIELDNAME; 00089 static const char* BAND_FIELDNAME; 00090 00091 // AUTO GENERATED BY ../persistence/autopersist.py 00092 protected: 00093 SplatModelNdv() {} 00094 private: 00095 friend class boost::serialization::access; 00096 template<class Archive> 00097 void serialize(Archive & ar, const unsigned int version) { 00098 this->pre_serialize(ar, version); 00099 try { 00100 ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(Model); 00101 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00102 } 00103 try { 00104 ar & BOOST_SERIALIZATION_NVP(SIGX); 00105 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00106 } 00107 try { 00108 ar & BOOST_SERIALIZATION_NVP(SIGY); 00109 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00110 } 00111 try { 00112 ar & BOOST_SERIALIZATION_NVP(VV); 00113 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00114 } 00115 try { 00116 ar & BOOST_SERIALIZATION_NVP(M); 00117 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00118 } 00119 try { 00120 ar & BOOST_SERIALIZATION_NVP(Mcur); 00121 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00122 } 00123 try { 00124 ar & BOOST_SERIALIZATION_NVP(Ndim); 00125 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00126 } 00127 try { 00128 ar & BOOST_SERIALIZATION_NVP(Nband); 00129 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00130 } 00131 try { 00132 ar & BOOST_SERIALIZATION_NVP(fmin); 00133 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00134 } 00135 try { 00136 ar & BOOST_SERIALIZATION_NVP(fmax); 00137 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00138 } 00139 try { 00140 ar & BOOST_SERIALIZATION_NVP(wt); 00141 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00142 } 00143 try { 00144 ar & BOOST_SERIALIZATION_NVP(xx); 00145 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00146 } 00147 try { 00148 ar & BOOST_SERIALIZATION_NVP(yy); 00149 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00150 } 00151 try { 00152 ar & BOOST_SERIALIZATION_NVP(sx); 00153 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00154 } 00155 try { 00156 ar & BOOST_SERIALIZATION_NVP(sy); 00157 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00158 } 00159 try { 00160 ar & BOOST_SERIALIZATION_NVP(aa); 00161 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION; 00162 } 00163 this->post_serialize(ar, version); 00164 } 00165 00166 }; 00167 } 00168 00169 BIE_CLASS_TYPE_INFO(BIE::SplatModelNdv) 00170 BIE_CLASS_EXPORT_KEY(BIE::SplatModelNdv) 00171 #endif Send suggestions, questions, and feedback to WEINBERG at ASTRO dot UMASS dot EDU. Documentation generated at Fri Mar 26 00:35:10 2010 by
|