Effacer les filtres
Effacer les filtres

Chebyshev differential matrices code not callable

1 vue (au cours des 30 derniers jours)
Lukgaf
Lukgaf le 19 Mar 2018
Commenté : Lukgaf le 19 Mar 2018
This is the code by tretfen (cheb.m):
% 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')); % diagonal entries
  2 commentaires
Walter Roberson
Walter Roberson le 19 Mar 2018
What parameter are you passing? What error message are you encountering?
Lukgaf
Lukgaf le 19 Mar 2018
Thanks, Not enough input arguments.
Error in cheb (line 4)
if N==0, D=0; x=1;

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 19 Mar 2018
You have to go down to the command line and call the function passing in a non-negative integer. For example,
[differ_matrix, cheb_grid] = cheb(19)
  3 commentaires
Walter Roberson
Walter Roberson le 19 Mar 2018
I stored the code you posted in the file cheb.m and then I went to the command line and there I commanded
[differ_matrix, cheb_grid] = cheb(19)
and I got back results.
You cannot run that function just by clicking on the green Run button: you must go to the command line to run it so that you can pass in a value for N.
Lukgaf
Lukgaf le 19 Mar 2018
Thanks

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Programming dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by