![]()  | 
  
    Isis 3 Programmer Reference
    
   | 
 
NthOrderPolynomial basis function. More...
#include <NthOrderPolynomial.h>


Public Member Functions | |
| NthOrderPolynomial (int degree) | |
| Create an NthOrderPolynomial.   | |
| ~NthOrderPolynomial () | |
| Destroys the NthOrderPolynomial object.   | |
| void | Expand (const std::vector< double > &vars) | 
| This is the the overriding virtual function that provides the expansion into the nth order polynomial equation.   | |
| void | SetCoefficients (const std::vector< double > &coefs) | 
| Set the coefficients for the equation.   | |
| double | Evaluate (const std::vector< double > &vars) | 
| Compute the equation using the input variables.   | |
| double | Evaluate (const double &var) | 
| Compute the equation using the input variable.   | |
| int | Coefficients () const | 
| Returns the number of coefficients for the equation.   | |
| int | Variables () const | 
| Returns the number of variables in the equation.   | |
| QString | Name () const | 
| Returns the name of the equation.   | |
| double | Term (int c) const | 
| Returns the cth term.   | |
| double | Coefficient (int i) const | 
| Returns the ith coefficient.   | |
Protected Attributes | |
| QString | p_name | 
| The name of the equation. Call it by using Name()   | |
| int | p_numVars | 
| The number of variables in the equation. Call it by using Variables()   | |
| int | p_numCoefs | 
| The number of coefficients in the equation.   | |
| std::vector< double > | p_coefs | 
| A vector of the coefficients in the equation.   | |
| std::vector< double > | p_terms | 
| A vector of the terms in the equation.   | |
Private Attributes | |
| int | p_degree | 
NthOrderPolynomial basis function.
This is a derived class from the BasisFunction class which creates an nth order polynomial.
2018-01-01 Unknown - Initial Version
2020-01-08 Kristin Berry - Update documentation prior to checkin to dev.
Definition at line 29 of file NthOrderPolynomial.h.
| Isis::NthOrderPolynomial::NthOrderPolynomial | ( | int | degree | ) | 
Create an NthOrderPolynomial.
| degree | The order/degree of the polynomial | 
Definition at line 24 of file NthOrderPolynomial.cpp.
      
  | 
  inline | 
Destroys the NthOrderPolynomial object.
Definition at line 34 of file NthOrderPolynomial.h.
      
  | 
  inlineinherited | 
Returns the ith coefficient.
| i | The index for the desired coefficient. | 
Definition at line 107 of file BasisFunction.h.
References Isis::BasisFunction::p_coefs.
Referenced by Isis::PolynomialUnivariate::DerivativeVar(), Isis::SurfaceModel::MinMax(), and Isis::OverlapNormalization::Solve().
      
  | 
  inlineinherited | 
Returns the number of coefficients for the equation.
Definition at line 64 of file BasisFunction.h.
References Isis::BasisFunction::p_numCoefs.
Referenced by Isis::PolynomialUnivariate::DerivativeCoef(), Isis::PolynomialUnivariate::DerivativeVar(), Isis::OverlapNormalization::Solve(), Isis::LeastSquares::SolveQRD(), and Isis::LeastSquares::SolveSVD().
      
  | 
  inherited | 
Compute the equation using the input variable.
| var | A single double value to use for the equation. | 
Definition at line 101 of file BasisFunction.cpp.
References Isis::BasisFunction::Evaluate().
      
  | 
  inherited | 
Compute the equation using the input variables.
| vars | A vector of double values to use for the equation. After setting the coefficients, this can be invoked many times to compute output values given input values. | 
Definition at line 64 of file BasisFunction.cpp.
References Isis::BasisFunction::Expand(), Isis::BasisFunction::p_coefs, Isis::BasisFunction::p_numCoefs, Isis::BasisFunction::p_numVars, Isis::BasisFunction::p_terms, Isis::IException::Programmer, and Isis::toString().
Referenced by Isis::BasisFunction::Evaluate(), Isis::LeastSquares::Evaluate(), Isis::LeastSquares::SolveQRD(), and Isis::LeastSquares::SolveSVD().
      
  | 
  virtual | 
This is the the overriding virtual function that provides the expansion into the nth order polynomial equation.
See BasisFunction for more information.
| vars | A vector of double values to use for the expansion. | 
Reimplemented from Isis::BasisFunction.
Definition at line 38 of file NthOrderPolynomial.cpp.
References Isis::BasisFunction::p_terms, Isis::IException::Programmer, and Isis::BasisFunction::Variables().
      
  | 
  inlineinherited | 
Returns the name of the equation.
Definition at line 80 of file BasisFunction.h.
References Isis::BasisFunction::p_name.
Referenced by Isis::LeastSquares::AddKnown().
      
  | 
  inherited | 
Set the coefficients for the equation.
| coefs | A vector of coefficients for the equation. | 
Definition at line 42 of file BasisFunction.cpp.
References Isis::BasisFunction::p_coefs, Isis::BasisFunction::p_numCoefs, Isis::IException::Programmer, and Isis::toString().
Referenced by Isis::SpiceRotation::DCJdt(), Isis::PolynomialUnivariate::PolynomialUnivariate(), Isis::LeastSquares::SolveQRD(), Isis::LeastSquares::SolveSparse(), and Isis::LeastSquares::SolveSVD().
      
  | 
  inlineinherited | 
Returns the cth term.
This is only valid after a Evalute/Expand has been invoked. It represents the expansion of the variables into the ith term. For example,
\[ x = C1 + C2*x + C3*y + C4*x*y \]
would return x*y for the 3rd term (zero-based)
| c | The index for the desired coefficient. | 
Definition at line 97 of file BasisFunction.h.
References Isis::BasisFunction::p_terms.
Referenced by Isis::LeastSquares::FillSparseA(), Isis::LeastSquares::SolveQRD(), and Isis::LeastSquares::SolveSVD().
      
  | 
  inlineinherited | 
Returns the number of variables in the equation.
Definition at line 72 of file BasisFunction.h.
References Isis::BasisFunction::p_numVars.
Referenced by Isis::LeastSquares::AddKnown(), and Expand().
      
  | 
  protectedinherited | 
A vector of the coefficients in the equation.
Call it by using Coefficient()
Definition at line 123 of file BasisFunction.h.
Referenced by Isis::BasisFunction::Coefficient(), Isis::BasisFunction::Evaluate(), and Isis::BasisFunction::SetCoefficients().
      
  | 
  private | 
Definition at line 39 of file NthOrderPolynomial.h.
      
  | 
  protectedinherited | 
The name of the equation. Call it by using Name()
Definition at line 113 of file BasisFunction.h.
Referenced by Isis::BasisFunction::BasisFunction(), and Isis::BasisFunction::Name().
      
  | 
  protectedinherited | 
The number of coefficients in the equation.
Call it by using Coefficients()
Definition at line 119 of file BasisFunction.h.
Referenced by Isis::BasisFunction::BasisFunction(), Isis::BasisFunction::Coefficients(), Isis::BasisFunction::Evaluate(), and Isis::BasisFunction::SetCoefficients().
      
  | 
  protectedinherited | 
The number of variables in the equation. Call it by using Variables()
Definition at line 115 of file BasisFunction.h.
Referenced by Isis::BasisFunction::BasisFunction(), Isis::BasisFunction::Evaluate(), and Isis::BasisFunction::Variables().
      
  | 
  protectedinherited | 
A vector of the terms in the equation.
Call it by using Term()
Definition at line 127 of file BasisFunction.h.
Referenced by Isis::BasisFunction::Evaluate(), Isis::BasisFunction::Expand(), Expand(), Isis::PolynomialBivariate::Expand(), Isis::PolynomialUnivariate::Expand(), and Isis::BasisFunction::Term().