My code is generating this error " Index exceeds matrix dimensions" . Apparently it looks fine. Still can not figure out the problem.
1 次查看(过去 30 天)
显示 更早的评论
c1 = 0.1;
c2 = 0.0001;
L = 5.0;
M = 0.04;
P1 = 1.0e-2;
P2 = 1.0e-5;
for i=1:64
for j=1:64
C1(i,j) = c1 + P1*(0.5-rand);
C2(i,j) = c2 + P2*(0.5-rand);
end
end
for i=1:64
for j=1:64
dfdC1(i,j) = (L/M) - M*(log(1 - C1(i,j) - C2(i,j)) - log(C1(i,j)))/M;
end
end
0 个评论
采纳的回答
Bob Thompson
2019-9-16
dfdc1(i,j) = (L/M) - M*(log(1 - c1(i,j) - c2(i,j)) - log(c1(i,j)))/M;
c1 and c2 are defined as single values (0.1 and 0.0001), but you are trying to index them. I am assuming you want to refer to C1 and C2.
dfdc1(i,j) = (L/M) - M*(log(1 - C1(i,j) - C2(i,j)) - log(C1(i,j)))/M;
5 个评论
Bob Thompson
2019-9-16
No problems. I have done the same thing, even when I don't have c1 and C1 as different variables. Sometimes you just need an extra set of eyes.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!