please help me with this

2 Ansichten (letzte 30 Tage)
arsalan mehrabi
arsalan mehrabi am 9 Jan. 2021
Kommentiert: arsalan mehrabi am 9 Jan. 2021
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)

Akzeptierte Antwort

Cris LaPierre
Cris LaPierre am 9 Jan. 2021
You have not called TDMAsolver with all the inputs. Notice that it requires four inputs (a,b,c and d).
  3 Kommentare
Cris LaPierre
Cris LaPierre am 9 Jan. 2021
The code is fine. You just need to call it correctly.
arsalan mehrabi
arsalan mehrabi am 9 Jan. 2021
thanks man

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Get Started with MATLAB finden Sie in Help Center und File Exchange

Produkte


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by