fcht(V) computes the Chebyshev transform of a N+1 by 1 array V. If V corresponds to a function evaluated at the Chebyshev–Gauss–Lobatto points cos(pi*(0:N)/N), then V is interpolated by a linear combinations of the Chebyshev polynomials with weights given by fcht(V).
Approximate f(x) = exp(x) over [-1,1] as a linear combination of the first three Chebyshev polynomials.
x = cos(pi*(0:2)/2); % establish 3 Chebyshev grid points
V = exp(x); % evaluate f(x) at Chebyshev grid points
a = fcht(V);
xx = linspace(-1,1); % create dense grid over domain
g = a(1)*1 + a(2)*xx + a(3)*(2*xx.^2 - 1); % sum the first three Chebyshev
% polynomials with respect to their corresponding weights
plot(xx,exp(xx),xx,g); % visualize the approximation
matched usual naming convention
Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.