casa
5.7.0-16
|
A one dimensional power logarithmic polynomial class of form y = c_0 * x**(c_1 + c_2*ln(x) + c_3*ln(x)**2 +... c_n*ln(x)**(n-1)) More...
#include <PowerLogarithmicPolynomial.h>
Public Member Functions | |
PowerLogarithmicPolynomial () | |
Constructs an empty PowerLogarithmicPolynomial. More... | |
PowerLogarithmicPolynomial (uInt n) | |
Makes a power logaritmic polynomial with the specified number of coefficients, all set to zero. More... | |
PowerLogarithmicPolynomial (const vector< T > &parms) | |
Make a function with the specified params. More... | |
PowerLogarithmicPolynomial (const PowerLogarithmicPolynomial< T > &other) | |
Copy constructor/assignment (deep copy) More... | |
template<class W > | |
PowerLogarithmicPolynomial (const PowerLogarithmicPolynomial< W > &other) | |
PowerLogarithmicPolynomial< T > & | operator= (const PowerLogarithmicPolynomial< T > &other) |
virtual | ~PowerLogarithmicPolynomial () |
Destructor. More... | |
virtual T | eval (typename Function1D< T >::FunctionArg x) const |
Evaluate the polynomial at x . More... | |
virtual Function< T > * | clone () const |
Return a copy of this object from the heap. More... | |
virtual Function< typename FunctionTraits< T >::DiffType > * | cloneAD () const |
virtual Function< typename FunctionTraits< T >::BaseType > * | cloneNonAD () const |
Public Member Functions inherited from casacore::PowerLogarithmicPolynomialParam< T > | |
PowerLogarithmicPolynomialParam () | |
Constructs a function with two coefficients, both 1 (so y = x). More... | |
PowerLogarithmicPolynomialParam (uInt n) | |
Makes a polynomial of the specified number of coefficients, all set to zero. More... | |
PowerLogarithmicPolynomialParam (const vector< T > &parms) | |
PowerLogarithmicPolynomialParam (const PowerLogarithmicPolynomialParam< T > &other) | |
Make this a copy of other (deep copy). More... | |
template<class W > | |
PowerLogarithmicPolynomialParam (const PowerLogarithmicPolynomialParam< W > &other) | |
PowerLogarithmicPolynomialParam < T > & | operator= (const PowerLogarithmicPolynomialParam< T > &other) |
virtual | ~PowerLogarithmicPolynomialParam () |
Destructor. More... | |
Bool | operator== (const PowerLogarithmicPolynomialParam< T > &other) const |
Comparisons. More... | |
Bool | operator!= (const PowerLogarithmicPolynomialParam< T > &other) const |
virtual const String & | name () const |
Give name of function. More... | |
T | coefficient (uInt which) const |
What is the which'th coefficient of the polynomial. More... | |
const Vector< T > & | coefficients () const |
Return all the coefficients as a vector. More... | |
void | setCoefficient (uInt which, const T value) |
Set the which'th coefficient to value. More... | |
void | setCoefficients (const Vector< T > &coefficients) |
Set all the coefficients at once, throw away all existing coefficients. More... | |
Public Member Functions inherited from casacore::Function1D< T > | |
Function1D () | |
Constructors. More... | |
Function1D (const uInt n) | |
Function1D (const Vector< T > &in) | |
Function1D (const FunctionParam< T > &other) | |
Function1D (const Function1D< T, T > &other) | |
Function1D (const Function1D< W, X > &other) | |
virtual | ~Function1D () |
Destructor. More... | |
virtual uInt | ndim () const |
Returns the number of dimensions of function. More... | |
Public Member Functions inherited from casacore::Function< T, U > | |
Function () | |
Constructors. More... | |
Function (const uInt n) | |
Function (const Vector< T > &in) | |
Function (const FunctionParam< T > &other) | |
template<class W , class X > | |
Function (const Function< W, X > &other) | |
Function (const Function< T, U > &other) | |
virtual | ~Function () |
Destructor. More... | |
uInt | nparameters () const |
Returns the number of parameters. More... | |
virtual U | eval (FunctionArg x) const =0 |
Evaluate the function object. More... | |
T & | operator[] (const uInt n) |
Manipulate the nth parameter (0-based) with no index check. More... | |
const T & | operator[] (const uInt n) const |
virtual U | operator() () const |
Evaluate this function object at x or at x, y . More... | |
virtual U | operator() (const ArgType &x) const |
virtual U | operator() (const Vector< ArgType > &x) const |
virtual U | operator() (FunctionArg x) const |
virtual U | operator() (const ArgType &x, const ArgType &y) const |
virtual U | operator() (const ArgType &x, const ArgType &y, const ArgType &z) const |
Bool & | mask (const uInt n) |
Manipulate the mask associated with the nth parameter (e.g. More... | |
const Bool & | mask (const uInt n) const |
const FunctionParam< T > & | parameters () const |
Return the parameter interface. More... | |
FunctionParam< T > & | parameters () |
const Vector< ArgType > & | argp () const |
Get arg_p and parset_p . More... | |
Bool | parsetp () const |
void | lockParam () |
Compiler cannot always find the correct 'const' version of parameter access. More... | |
void | unlockParam () |
virtual void | setMode (const RecordInterface &mode) |
get/set the function mode. More... | |
virtual void | getMode (RecordInterface &mode) const |
virtual Bool | hasMode () const |
return True if the implementing function supports a mode. More... | |
ostream & | print (ostream &os) const |
Print the function (i.e. More... | |
Public Member Functions inherited from casacore::Functional< FunctionTraits< T >::ArgType, U > | |
virtual | ~Functional () |
Destructor. More... | |
virtual U | operator() (const FunctionTraits< T >::ArgType &x) const =0 |
Map a Domain x into a Range y value. More... | |
Public Member Functions inherited from casacore::Functional< Vector< FunctionTraits< T >::ArgType >, U > | |
virtual | ~Functional () |
Destructor. More... | |
virtual U | operator() (const Vector< FunctionTraits< T >::ArgType > &x) const =0 |
Map a Domain x into a Range y value. More... | |
Additional Inherited Members | |
Public Types inherited from casacore::Function1D< T > | |
typedef const T * | FunctionArg |
Public Types inherited from casacore::Function< T, U > | |
typedef FunctionTraits< T > ::ArgType | ArgType |
typedef const ArgType * | FunctionArg |
Protected Attributes inherited from casacore::Function< T, U > | |
FunctionParam< T > | param_p |
The parameters and masks. More... | |
Vector< ArgType > | arg_p |
Aid for non-contiguous argument storage. More... | |
Bool | parset_p |
Indicate parameter written. More... | |
Bool | locked_p |
Indicate that parameters are expected to be locked from changing. More... | |
A one dimensional power logarithmic polynomial class of form y = c_0 * x**(c_1 + c_2*ln(x) + c_3*ln(x)**2 +... c_n*ln(x)**(n-1))
A Power Logarithmic Polynomial<T> contains a set of coefficients; its fundamental operations is evaluating itself at some "x".
Tip: The present implementation merely stores the coefficients in a Block; In the unlikely case that we need to deal with polynomials with many zero coefficients, a more efficient representation would be possible;
Definition at line 80 of file PowerLogarithmicPolynomial.h.
|
inline |
Constructs an empty PowerLogarithmicPolynomial.
Definition at line 84 of file PowerLogarithmicPolynomial.h.
|
inlineexplicit |
Makes a power logaritmic polynomial with the specified number of coefficients, all set to zero.
Definition at line 88 of file PowerLogarithmicPolynomial.h.
|
inline |
Make a function with the specified params.
Definition at line 91 of file PowerLogarithmicPolynomial.h.
|
inline |
Copy constructor/assignment (deep copy)
Definition at line 95 of file PowerLogarithmicPolynomial.h.
|
inline |
Definition at line 97 of file PowerLogarithmicPolynomial.h.
|
inlinevirtual |
Destructor.
Definition at line 103 of file PowerLogarithmicPolynomial.h.
|
inlinevirtual |
Return a copy of this object from the heap.
The caller is responsible for deleting the pointer.
Implements casacore::Function< T, U >.
Definition at line 113 of file PowerLogarithmicPolynomial.h.
|
inlinevirtual |
Reimplemented from casacore::Function< T, U >.
Definition at line 114 of file PowerLogarithmicPolynomial.h.
|
inlinevirtual |
Reimplemented from casacore::Function< T, U >.
Definition at line 116 of file PowerLogarithmicPolynomial.h.
|
virtual |
Evaluate the polynomial at x
.
|
inline |
Definition at line 98 of file PowerLogarithmicPolynomial.h.
References casacore::PowerLogarithmicPolynomialParam< T >::operator=().