Chebyshev Differentiation Matrix without using function 'cheb'

조회 수: 1 (최근 30일)
Alpha Lee
Alpha Lee 2020년 12월 3일
답변: Sufiyan 2023년 3월 30일
May I ask if there is any way to create a Chebyshev Differentiation Matrix code without using 'cheb' ?

답변 (1개)

Sufiyan
Sufiyan 2023년 3월 30일
Hi,
You can refer to the code below.
% Set up the domain
N = 10; % Number of points in the domain
x = cos(pi*(0:N-1)/(N-1))'; % Chebyshev nodes
% Compute the differentiation matrix
D = zeros(N);
for k=1:N
for j=1:N
if k~=j
D(k,j) = ((-1)^(k+j))/(x(k)-x(j));
end
end
end
D = D - diag(sum(D,2)); % Set the diagonal elements
% Test the differentiation matrix
f = @(x) sin(5*x);
df_true = @(x) 5*cos(5*x);
df_approx = D*f(x);
error = norm(df_true(x) - df_approx,inf);
fprintf('Error: %e\n',error);

카테고리

Help CenterFile Exchange에서 Programming에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by