please help me with this

조회 수: 2 (최근 30일)
arsalan mehrabi
arsalan mehrabi 2021년 1월 9일
댓글: arsalan mehrabi 2021년 1월 9일
i found this code on internet and its error is 'Not enough input arguments'.
how can i solve this?
Not enough input arguments.
Error in tridiag (line 3)
n = length(d); % n is the number of rows
function x = TDMAsolver(a,b,c,d)
%a, b, c are the column vectors for the compressed tridiagonal matrix, d is the right vector
n = length(d); % n is the number of rows
% Modify the first-row coefficients
c(1) = c(1) / b(1); % Division by zero risk.
d(1) = d(1) / b(1);
for i = 2:n-1
temp = b(i) - a(i) * c(i-1);
c(i) = c(i) / temp;
d(i) = (d(i) - a(i) * d(i-1))/temp;
end
d(n) = (d(n) - a(n) * d(n-1))/( b(n) - a(n) * c(n-1));
% Now back substitute.
x(n) = d(n);
for i = n-1:-1:1
x(i) = d(i) - c(i) * x(i + 1);
end
(matlab 2020a)
  댓글 수: 1
Sibi
Sibi 2021년 1월 9일
what input you gave?

댓글을 달려면 로그인하십시오.

채택된 답변

Cris LaPierre
Cris LaPierre 2021년 1월 9일
You have not called TDMAsolver with all the inputs. Notice that it requires four inputs (a,b,c and d).
  댓글 수: 3
Cris LaPierre
Cris LaPierre 2021년 1월 9일
The code is fine. You just need to call it correctly.
arsalan mehrabi
arsalan mehrabi 2021년 1월 9일
thanks man

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

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

제품


릴리스

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by