Chebyshev Differentiation Matrix without using function 'cheb'
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
May I ask if there is any way to create a Chebyshev Differentiation Matrix code without using 'cheb' ?
0 commentaires
Réponses (1)
Sufiyan
le 30 Mar 2023
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);
0 commentaires
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!