Isis 3.0 Object Programmers' Reference |
Home |
Parabola basis function. More...
#include <Parabola.h>
Public Member Functions | |
Parabola (const QString &bname="Parabola") | |
Create a Parabola object. | |
~Parabola () | |
Destroys the Parabola object. | |
void | Expand (const std::vector< double > &vars) |
This is the the overriding virtual function that provides the expansion into the parabolic 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. | |
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. | |
Parabola basis function.
This is a derived class from the BasisFunction class which creates a parabola (second degree equation in 1 variable). The parabolic function has the following form:
Definition at line 50 of file Parabola.h.
|
inline |
Create a Parabola object.
Definition at line 56 of file Parabola.h.
|
inline |
Destroys the Parabola object.
Definition at line 60 of file Parabola.h.
|
inlineinherited |
Returns the ith coefficient.
i | The index for the desired coefficient. |
Definition at line 119 of file BasisFunction.h.
References Isis::BasisFunction::p_coefs.
Referenced by Isis::PolynomialUnivariate::DerivativeVar(), Isis::SpicePosition::LoadHermiteCache(), Isis::SurfaceModel::MinMax(), Isis::SpicePosition::SetPolynomial(), Isis::SpiceRotation::SetPolynomial(), Isis::Affine::Solve(), and Isis::BundleAdjust::Update().
|
inlineinherited |
Returns the number of coefficients for the equation.
Definition at line 76 of file BasisFunction.h.
References Isis::BasisFunction::p_numCoefs.
Referenced by Isis::PolynomialUnivariate::DerivativeCoef(), Isis::PolynomialUnivariate::DerivativeVar(), Isis::SpicePosition::SetPolynomial(), Isis::SpiceRotation::SetPolynomial(), Isis::LeastSquares::SolveQRD(), and Isis::LeastSquares::SolveSVD().
|
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 74 of file BasisFunction.cpp.
References _FILEINFO_, Isis::BasisFunction::Expand(), Isis::BasisFunction::p_coefs, Isis::BasisFunction::p_numCoefs, Isis::BasisFunction::p_numVars, Isis::BasisFunction::p_terms, and Isis::IException::Programmer.
Referenced by Isis::LeastSquares::Evaluate(), Isis::SpicePosition::LoadHermiteCache(), Isis::SpicePosition::SetEphemerisTimePolyFunction(), Isis::LeastSquares::SolveQRD(), and Isis::LeastSquares::SolveSVD().
|
virtual |
This is the the overriding virtual function that provides the expansion into the parabolic equation.
See BasisFunction for more information.
vars | A vector of double values to use for the expansion. |
Reimplemented from Isis::BasisFunction.
Definition at line 39 of file Parabola.cpp.
References Isis::BasisFunction::p_terms, and Isis::BasisFunction::Variables().
|
inlineinherited |
Returns the name of the equation.
Definition at line 92 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 56 of file BasisFunction.cpp.
References _FILEINFO_, Isis::BasisFunction::p_coefs, Isis::BasisFunction::p_numCoefs, and Isis::IException::Programmer.
Referenced by Isis::SpiceRotation::DCJdt(), Isis::SpicePosition::LoadHermiteCache(), Isis::SpicePosition::SetEphemerisTimePolyFunction(), Isis::SpicePosition::SetPolynomial(), Isis::SpiceRotation::SetPolynomial(), 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,
would return x*y for the 3rd term (zero-based)
c | The index for the desired coefficient. |
Definition at line 109 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 84 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 135 of file BasisFunction.h.
Referenced by Isis::BasisFunction::Coefficient(), Isis::BasisFunction::Evaluate(), and Isis::BasisFunction::SetCoefficients().
|
protectedinherited |
The name of the equation. Call it by using Name()
Definition at line 121 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 131 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 127 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 139 of file BasisFunction.h.
Referenced by Isis::BasisFunction::Evaluate(), Isis::PolynomialUnivariate::Expand(), Isis::PolynomialBivariate::Expand(), Expand(), Isis::BasisFunction::Expand(), and Isis::BasisFunction::Term().