GTSAM  4.0.2
C++ library for smoothing and mapping (SAM)
Public Types | Static Public Member Functions | List of all members
gtsam::Chebyshev2Basis Struct Reference

#include <Chebyshev.h>

Inheritance diagram for gtsam::Chebyshev2Basis:
Inheritance graph
[legend]
Collaboration diagram for gtsam::Chebyshev2Basis:
Collaboration graph
[legend]

Public Types

using Parameters = Eigen::Matrix< double, -1, 1 >
 

Static Public Member Functions

static Weights CalculateWeights (size_t N, double x, double a=-1, double b=1)
 
static Weights DerivativeWeights (size_t N, double x, double a=-1, double b=1)
 Evaluate Chebyshev derivative at x. More...
 
static Matrix WeightMatrix (size_t N, const Vector &X)
 
static Matrix WeightMatrix (size_t N, const Vector &X, double a, double b)
 Calculate weights for all x in vector X, with interval [a,b]. More...
 

Detailed Description

Basis of Chebyshev polynomials of the second kind. https://en.wikipedia.org/wiki/Chebyshev_polynomials#Second_kind These are typically denoted with the symbol U_n, where n is the degree. The parameter N is the number of coefficients, i.e., N = n+1. In contrast to the templates in Chebyshev2, the classes below specify basis functions, weighted combinations of which are used to approximate functions. In this sense, they are like the sines and cosines of the Fourier basis.

Member Function Documentation

◆ CalculateWeights()

static Weights gtsam::Chebyshev2Basis::CalculateWeights ( size_t  N,
double  x,
double  a = -1,
double  b = 1 
)
static

Evaluate Chebyshev Weights on [-1,1] at any x up to order N-1 (N values).

Parameters
NDegree of the polynomial.
xPoint to evaluate polynomial at.
aLower limit of polynomial (default=-1).
bUpper limit of polynomial (default=1).

◆ DerivativeWeights()

static Weights gtsam::Chebyshev2Basis::DerivativeWeights ( size_t  N,
double  x,
double  a = -1,
double  b = 1 
)
static

Evaluate Chebyshev derivative at x.

Parameters
NDegree of the polynomial.
xPoint to evaluate polynomial at.
aLower limit of polynomial (default=-1).
bUpper limit of polynomial (default=1).
Returns
Weights

◆ WeightMatrix() [1/2]

static Matrix gtsam::Basis< Chebyshev2Basis >::WeightMatrix ( size_t  N,
const Vector &  X 
)
inlinestaticinherited

Calculate weights for all x in vector X. Returns M*N matrix where M is the size of the vector X, and N is the number of basis functions.

◆ WeightMatrix() [2/2]

static Matrix gtsam::Basis< Chebyshev2Basis >::WeightMatrix ( size_t  N,
const Vector &  X,
double  a,
double  b 
)
inlinestaticinherited

Calculate weights for all x in vector X, with interval [a,b].

Parameters
NThe number of basis functions.
XThe vector for which to compute the weights.
aThe lower bound for the interval range.
bThe upper bound for the interval range.
Returns
Returns M*N matrix where M is the size of the vector X.

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