零点和极值点的切比雪夫多项式导数

计算科学 matlab 有限差分 近似 多项式 切比雪夫
2021-12-06 16:57:52

我正在寻找零点切比雪夫多项式导数的一些帮助。递归表达式,

T(j+1)(x)=2xTj(x)T(j1)(x)

有导数

Tj+1(x)=2Tj(x)+2xTj(x)Tj1(x)

T0=0T1=1.

但我在看 Trefethen 的书(第 6 章,第 54 页),他使用以下代码在极值点为切比雪夫多项式构造导数矩阵:

% CHEB compute D = differentiation matrix, x = Chebyshev grid 
function [D,x] = cheb(N) 
if N==0, D=0; x=1; return, end 
x = cos(pi*(0:N)/N)'; 
c = [2; ones(N-1,1); 2].*(-1).^(0:N)'; 
X = repmat(x,1,N+1); 
dX = X-X'; 
D = (c*(1./c)')./(dX+(eye(N+ 1))) ; % off-diagonal entries 
D = D - diag(sum(D')); 

这两个导数计算有什么关系?还是像上面一样,极值点和零点的导数计算方式不同?我可以阅读任何参考资料以更好地理解这一点?

谢谢你。

1个回答

在页。Trefethen 书的第 53 页,您可以阅读“D_{N} 包含 N 次多项式插值 p_j(x) 到 x_j [= cos(j*pi/N)] 处支持的 delta 函数的导数,在grid {x_i}" 所以 D 的条目是拉格朗日插值多项式的导数,而不是切比雪夫多项式。