PCL
pcl::GenericScalarChebyshevFit< Tx, Ty > Class Template Reference

Approximation of scalar-valued functions by Chebyshev polynomial expansion. More...

#include <ChebyshevFit.h>

+ Inheritance diagram for pcl::GenericScalarChebyshevFit< Tx, Ty >:

Public Member Functions

 GenericScalarChebyshevFit ()=default
 
 GenericScalarChebyshevFit (const GenericScalarChebyshevFit &)=default
 
template<class F >
 GenericScalarChebyshevFit (F f, Tx x1, Tx x2, int n)
 
 GenericScalarChebyshevFit (GenericScalarChebyshevFit &&)=default
 
GenericScalarChebyshevFit Derivative () const
 
Ty Evaluate (Tx x) const
 
GenericScalarChebyshevFit Integral () const
 
bool IsTruncated () const
 
Ty operator() (Tx x) const
 
GenericScalarChebyshevFitoperator= (const GenericScalarChebyshevFit &)=default
 
GenericScalarChebyshevFitoperator= (GenericScalarChebyshevFit &&)=default
 
int TruncatedLength () const
 
Ty TruncationError () const
 
- Public Member Functions inherited from pcl::GenericChebyshevFit< Tx, Ty >
 GenericChebyshevFit ()=default
 
 GenericChebyshevFit (const coefficient_series &ck, Tx x1, Tx x2)
 
 GenericChebyshevFit (const GenericChebyshevFit &)=default
 
template<class F >
 GenericChebyshevFit (F f, Tx x1, Tx x2, int N, int n)
 
 GenericChebyshevFit (GenericChebyshevFit &&)=default
 
const coefficient_seriesCoefficients () const
 
GenericChebyshevFit Derivative () const
 
function_value Evaluate (Tx x) const
 
GenericChebyshevFit Integral () const
 
bool IsTruncated (int i=-1) const
 
bool IsValid () const
 
int Length (int i=0) const
 
Tx LowerBound () const
 
int NumberOfCoefficients () const
 
int NumberOfComponents () const
 
int NumberOfTruncatedCoefficients () const
 
function_value operator() (Tx x) const
 
GenericChebyshevFitoperator= (const GenericChebyshevFit &)=default
 
GenericChebyshevFitoperator= (GenericChebyshevFit &&)=default
 
bool Truncate (const coefficients &eps, int mmin=2)
 
bool Truncate (Ty e, int mmin=2)
 
int TruncatedLength (int i=-1) const
 
Ty TruncationError (int i=-1) const
 
Tx UpperBound () const
 

Additional Inherited Members

- Public Types inherited from pcl::GenericChebyshevFit< Tx, Ty >
using coefficient_series = GenericMultiVector< Ty >
 
using coefficients = GenericVector< Ty >
 
using function_value = GenericVector< Ty >
 
using function_values = GenericMultiVector< Ty >
 

Detailed Description

template<typename Tx, typename Ty>
class pcl::GenericScalarChebyshevFit< Tx, Ty >

GenericScalarChebyshevFit approximates a smooth, scalar-valued function f(x) in a given interval [a,b] by expansion with a single truncated series of Chebyshev polynomials. GenericScalarChebyshevFit is a convenient specialization of GenericChebyshevFit for functions returning a single value; refer to the parent class for complete information.

Definition at line 651 of file ChebyshevFit.h.

Constructor & Destructor Documentation

◆ GenericScalarChebyshevFit() [1/4]

template<typename Tx , typename Ty >
template<class F >
pcl::GenericScalarChebyshevFit< Tx, Ty >::GenericScalarChebyshevFit ( f,
Tx  x1,
Tx  x2,
int  n 
)
inline

Constructs a truncated Chebyshev polynomial expansion with n coefficients to approximate the specified N-dimensional, scalar-valued function f in the interval [x1,x2] of the independent variable.

See GenericChebyshevFit::GenericChebyshevFit() for detailed information.

Definition at line 663 of file ChebyshevFit.h.

◆ GenericScalarChebyshevFit() [2/4]

template<typename Tx , typename Ty >
pcl::GenericScalarChebyshevFit< Tx, Ty >::GenericScalarChebyshevFit ( )
default

Default constructor.

Constructs an invalid, uninitialized object that cannot be used to perform function evaluations. A default-constructed GenericScalarChebyshevFit object should be assigned with an already initialized instance in order to become operative.

See also
IsValid()

◆ GenericScalarChebyshevFit() [3/4]

template<typename Tx , typename Ty >
pcl::GenericScalarChebyshevFit< Tx, Ty >::GenericScalarChebyshevFit ( const GenericScalarChebyshevFit< Tx, Ty > &  )
default

Copy constructor.

◆ GenericScalarChebyshevFit() [4/4]

template<typename Tx , typename Ty >
pcl::GenericScalarChebyshevFit< Tx, Ty >::GenericScalarChebyshevFit ( GenericScalarChebyshevFit< Tx, Ty > &&  )
default

Move constructor.

Member Function Documentation

◆ Derivative()

template<typename Tx , typename Ty >
GenericScalarChebyshevFit pcl::GenericScalarChebyshevFit< Tx, Ty >::Derivative ( ) const
inline

Returns a GenericChebyshevFit object that approximates the derivative of the function fitted by this object.

See GenericChebyshevFit::Derivative() for detailed information.

See also
Integral()

Definition at line 760 of file ChebyshevFit.h.

References pcl::GenericChebyshevFit< Tx, Ty >::Derivative().

◆ Evaluate()

template<typename Tx , typename Ty >
Ty pcl::GenericScalarChebyshevFit< Tx, Ty >::Evaluate ( Tx  x) const
inline

Evaluates the truncated Chebyshev polynomial expansion for the specified value x of the independent variable, and returns the approximated function value.

See also
operator ()()

Definition at line 739 of file ChebyshevFit.h.

References pcl::GenericChebyshevFit< Tx, Ty >::Evaluate().

Referenced by pcl::GenericScalarChebyshevFit< Tx, Ty >::operator()().

◆ Integral()

template<typename Tx , typename Ty >
GenericScalarChebyshevFit pcl::GenericScalarChebyshevFit< Tx, Ty >::Integral ( ) const
inline

Returns a GenericChebyshevFit object that approximates the indefinite integral of the function fitted by this object.

See GenericChebyshevFit::Integral() for detailed information.

See also
Derivative()

Definition at line 773 of file ChebyshevFit.h.

References pcl::GenericChebyshevFit< Tx, Ty >::Integral().

◆ IsTruncated()

template<typename Tx , typename Ty >
bool pcl::GenericScalarChebyshevFit< Tx, Ty >::IsTruncated ( ) const
inline

Returns true iff the Chebyshev polynomial expansion has been truncated.

See also
Truncate(), TruncatedLength()

Definition at line 716 of file ChebyshevFit.h.

References pcl::GenericChebyshevFit< Tx, Ty >::IsTruncated().

◆ operator()()

template<typename Tx , typename Ty >
Ty pcl::GenericScalarChebyshevFit< Tx, Ty >::operator() ( Tx  x) const
inline

A synonym for Evaluate().

Definition at line 747 of file ChebyshevFit.h.

References pcl::GenericScalarChebyshevFit< Tx, Ty >::Evaluate().

◆ operator=() [1/2]

template<typename Tx , typename Ty >
GenericScalarChebyshevFit& pcl::GenericScalarChebyshevFit< Tx, Ty >::operator= ( const GenericScalarChebyshevFit< Tx, Ty > &  )
default

Copy assignment operator.

◆ operator=() [2/2]

template<typename Tx , typename Ty >
GenericScalarChebyshevFit& pcl::GenericScalarChebyshevFit< Tx, Ty >::operator= ( GenericScalarChebyshevFit< Tx, Ty > &&  )
default

Move assignment operator.

◆ TruncatedLength()

template<typename Tx , typename Ty >
int pcl::GenericScalarChebyshevFit< Tx, Ty >::TruncatedLength ( ) const
inline

Returns the number of coefficients in the truncated Chebyshev polynomial expansion.

See also
Truncate(), Length()

Definition at line 706 of file ChebyshevFit.h.

References pcl::GenericChebyshevFit< Tx, Ty >::TruncatedLength().

◆ TruncationError()

template<typename Tx , typename Ty >
Ty pcl::GenericScalarChebyshevFit< Tx, Ty >::TruncationError ( ) const
inline

Returns an estimate of the maximum error in the truncated Chebyshev polynomial expansion.

See also
Truncate()

Definition at line 727 of file ChebyshevFit.h.

References pcl::GenericChebyshevFit< Tx, Ty >::TruncationError().


The documentation for this class was generated from the following file: