How to overcome the error message in the script below -Matrix dimension error - due to different size array manipulation
1 次查看(过去 30 天)
显示 更早的评论
How to overcome the error message in the script below;
m=4;
PT_mj=[0 0.01 0.02 0.03
0 0 0.045 0.05
0 0 0 0.06];
PT_jm=PT_mj' ;
flr_jm=zeros(4,3);
for i=2:m
for j=1:(m-1)
if j~=i
if i~=(m-2) | j~=(m-1)
deltalambda_2(i)=PT_mj(i,j)-(1-flr_jm(i,j))*PT_jm(i,j)
end
end
end
end
1 个评论
Jan
2012-7-5
编辑:Jan
2012-7-5
Please post the complete error message and mention, which line causes the error. I currently do not see a problem, which could cause the (partially) posted message. Please edit the original message and do not provide the additional information as comment or answer.
Please choose a short title, and include all information required to understand the problem, in the body of the question. Thanks.
回答(2 个)
Mark Whirdy
2012-7-5
Hi there problem is with
i=2:m
m here is 4, but the size of PT_mj is [3,4] so the matrix access below won't work
PT_mj(i,j)
What are you trying to do generally? (if its not recursive we can do it without loops probably) Mark
1 个评论
Mark Whirdy
2012-7-7
Hi Jan
The error I get is
??? Index exceeds matrix dimensions.
Since PT_mj is a [3*4] matrix and we are trying to access PT_mj(i,j) where i =4, I get this error. I take it you're getting a different error then?
Changing
deltalambda_2(i)=PT_mj(i,j)-(1-flr_jm(i,j))*PT_jm(i,j)
to
deltalambda_2(i)=PT_jm(i,j)-(1-flr_jm(i,j))*PT_jm(i,j)
prevents the error, but since I can't get my head around the intended behaviour of the code I doubt if this is really a fix. Especially since with this "fix, " deltalambda_2 is now all zeroes, and that line could be further resolved to
deltalambda_2(i)=flr_jm(i,j)*PT_jm(i,j)
which is a kind of unlikely trivial simplification unless the algorithm is totally misspecified. Without understanding more fully the context, I can't make any progress myself. Maybe you'll have more luck.
0 个评论
另请参阅
类别
在 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!