Index in position 1 exceeds array bounds (must not exceed 1).

2 views (last 30 days)
clear all;
clc;
YBUS
IP_DATA
e=busdata(:,3);
f= 0;
V=e+1i*f;
g=abs(ybus);
b=0;
y=g+1i*b;
J1=zeros(1,n);
for i=2:nbus
for k=2:nbus
if i==k
J1(i,i)=2*e(i)*g(i,i)+g(i,k)*e(k)-b(i,k)*f(k);
else
J1(i,k)= (e(i)*g(k,i))-(f(i)*b(i,k));
end
end
end
J1;
In J1 (i,k) eroor is coming...Please help asap...

Accepted Answer

Jan
Jan on 27 Aug 2019
Edited: Jan on 27 Aug 2019
We cannot know, what YBUS and IP_DATA is. It is your turn to check, if the error message concerns the variable e, g or f. Do this using the debugger. Type this in the command window:
dbstop if error
Run your code again. When Matlab stops at the error use size() to check the sizes of the potentially concerned variables.
My guess: After
b=0;
the expression b(i,k) does not work for i or k > 1.

More Answers (0)

Categories

Find more on Parallel Computing in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!