Index in position 2 exceeds array bounds
1 次查看(过去 30 天)
显示 更早的评论
I got this error, what does it mean and how can i fix it?
"Index in position 2 exceeds array bounds (must not exceed 2)."
this is the code of the line:
I(temp,:) = [zeros(1,temp-2) -1/(mul*Capacitance(1,temp-1)) 1/(mul*Capacitance(1,temp-1))+1/(mul*Capacitance(1,temp))+mul*inductance(1,temp) -1/(mul*Capacitance(1,temp)) zeros(1,length(inductance)-1-temp)];
3 个评论
Nora Khaled
2020-11-24
Its hard to tell exactly without the rest of the code... but this error happen when you try to access an element in a vector by using wrong indices.
In this case it seems you have a vector with only 2 columns... maybe 'Capacitance' or 'inductance' and temp exceeded 2.
回答(1 个)
Voss
2020-11-24
This means that the code is attempting to refer to an index of some variable, but the variable is not large enough in that dimension. In this case the dimension is the second dimension ("index in position 2") and the maximum index you can reference is 2 ("(must not exceed 2)").
So basically Capacitance and/or inductance has two columns, but the code is trying to access the third or higher column, which doesn't exist.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!