I am having this error "Index in position 2 is invalid. Array indices must be positive integers or logical values." in my file. Can you please help me in resolving this.

조회 수: 177 (최근 30일)
I am very new to matlab and am having some syntax errors. The code is due for submission in a few days. I will be very grateful for solution. . . .

답변 (2개)

MUHAMMED IRFAN
MUHAMMED IRFAN 2018년 12월 10일
In MATLAB, array indexing starts at 1(not zero).
Inside the function Duffusion() you have a number of for loops in each if-else cases.
for i = 1:(length(x)-1) % Iterate over tri diagonal
L(i,i) = 2/(delta^2)+SigmaA/D; % Diagonal Terms
L(i,i+1) = -1/(delta^2); % Above diagonal term
L(i,i-1) = -1/(delta^2); % Below diagonal term
end
In each of these for loops, you iterate the value of i from 1 to something. But when i=1, you have L(i,i-1) as L(1,0) which is invalid in MATLAB. And thus the error.

Andualem
Andualem 2023년 2월 25일
how to fix this problem in mimo landas(:,j) = diag(V);

카테고리

Help CenterFile Exchange에서 Operating on Diagonal Matrices에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by