USGS

Isis 3.0 Object Programmers' Reference

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 {
62  class BasisFunction {
63  public:
64  BasisFunction(const QString &name, int numVars, int numCoefs);
66  virtual ~BasisFunction() {};
67 
68  void SetCoefficients(const std::vector<double> &coefs);
69  double Evaluate(const std::vector<double> &vars);
70  virtual void Expand(const std::vector<double> &vars);
71 
77  int Coefficients() const {
78  return p_numCoefs;
79  };
85  int Variables() const {
86  return p_numVars;
87  };
93  QString Name() const {
94  return p_name;
95  };
110  double Term(int c) const {
111  return p_terms[c];
112  };
120  double Coefficient(int i) const {
121  return p_coefs[i];
122  };
123 
124  protected:
126  QString p_name;
136  std::vector<double> p_coefs;
140  std::vector<double> p_terms;
141 
142  };
143 };
144 
145 #endif