USGS

Isis 3.0 Developer's Reference (API)

Home

BasisFunction.h
Go to the documentation of this file.
1 
23 #ifndef BasisFunction_h
24 #define BasisFunction_h
25 
26 #include <vector>
27 #include <string>
28 
29 #include <QString>
30 
31 namespace Isis {
61  class BasisFunction {
62  public:
63  BasisFunction(const QString &name, int numVars, int numCoefs);
65  virtual ~BasisFunction() {};
66 
67  void SetCoefficients(const std::vector<double> &coefs);
68  double Evaluate(const std::vector<double> &vars);
69  virtual void Expand(const std::vector<double> &vars);
70 
76  int Coefficients() const {
77  return p_numCoefs;
78  };
84  int Variables() const {
85  return p_numVars;
86  };
92  QString Name() const {
93  return p_name;
94  };
109  double Term(int c) const {
110  return p_terms[c];
111  };
119  double Coefficient(int i) const {
120  return p_coefs[i];
121  };
122 
123  protected:
125  QString p_name;
135  std::vector<double> p_coefs;
139  std::vector<double> p_terms;
140 
141  };
142 };
143 
144 #endif