Isis 3 Programmer Reference
BasisFunction.h
1
6/* SPDX-License-Identifier: CC0-1.0 */
7#ifndef BasisFunction_h
8#define BasisFunction_h
9
10#include <vector>
11#include <string>
12
13#include <QString>
14
15namespace Isis {
49 public:
50 BasisFunction(const QString &name, int numVars, int numCoefs);
52 virtual ~BasisFunction() {};
53
54 void SetCoefficients(const std::vector<double> &coefs);
55 double Evaluate(const std::vector<double> &vars);
56 double Evaluate(const double &var);
57 virtual void Expand(const std::vector<double> &vars);
58
64 int Coefficients() const {
65 return p_numCoefs;
66 };
72 int Variables() const {
73 return p_numVars;
74 };
80 QString Name() const {
81 return p_name;
82 };
97 double Term(int c) const {
98 return p_terms[c];
99 };
107 double Coefficient(int i) const {
108 return p_coefs[i];
109 };
110
111 protected:
113 QString p_name;
123 std::vector<double> p_coefs;
127 std::vector<double> p_terms;
128
129 };
130};
131
132#endif
Generic linear equation class.
QString Name() const
Returns the name of the equation.
QString p_name
The name of the equation. Call it by using Name()
virtual void Expand(const std::vector< double > &vars)
This is the function you should replace depending on your needs.
double Evaluate(const std::vector< double > &vars)
Compute the equation using the input variables.
int Coefficients() const
Returns the number of coefficients for the equation.
int p_numVars
The number of variables in the equation. Call it by using Variables()
BasisFunction(const QString &name, int numVars, int numCoefs)
Creates a BasisFunction object.
virtual ~BasisFunction()
Destroys the BasisFunction object.
double Coefficient(int i) const
Returns the ith coefficient.
std::vector< double > p_terms
A vector of the terms in the equation.
std::vector< double > p_coefs
A vector of the coefficients in the equation.
void SetCoefficients(const std::vector< double > &coefs)
Set the coefficients for the equation.
int Variables() const
Returns the number of variables in the equation.
double Term(int c) const
Returns the cth term.
int p_numCoefs
The number of coefficients in the equation.
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16