|
Isis 3.0 Object Programmers' Reference |
Home |
00001 #ifndef NUMERICALATMOSAPPROX_H 00002 #define NUMERICALATMOSAPPROX_H 00003 00025 #include <string> 00026 #include <vector> 00027 00028 #include "NumericalApproximation.h" 00029 using namespace std; 00030 namespace Isis { 00031 class AtmosModel; 00048 class NumericalAtmosApprox : public NumericalApproximation{ 00049 public: 00051 NumericalAtmosApprox(const NumericalApproximation::InterpType &itype=CubicNatural):NumericalApproximation(itype){}; 00053 virtual ~NumericalAtmosApprox(){}; 00054 00059 enum IntegFunc { OuterFunction, 00060 InnerFunction 00061 }; 00062 double RombergsMethod (AtmosModel *am, IntegFunc sub, double a, double b) throw (iException &); 00063 double RefineExtendedTrap(AtmosModel *am, IntegFunc sub, double a, double b, double s, unsigned int n) throw (iException &); 00064 00065 static double OutrFunc2Bint(AtmosModel *am, double phi); 00066 static double InrFunc2Bint(AtmosModel *am, double mu); 00067 00068 }; 00069 }; 00070 #endif 00071 00072