getting error in for loop
显示 更早的评论
Array indices must be positive integers or logical values.
Error in Untitled4 (line 27)
Idsat(i)=r1*(Vgs-(r2)+Vds(i));
for i=0:length(Vds)
Idsat(i)=r1*(Vgs-(r2)+Vds(i));
end
1 个评论
Sam Chak
2022-5-30
Have you checked if your array indices are positive integers or logical values?
回答(2 个)
Loop indices don't start at 0, but at 1 in MATLAB:
for i=1:length(Vds)
Idsat(i)=r1*(Vgs-(r2)+Vds(i));
end
instead of
for i=0:length(Vds)
Idsat(i)=r1*(Vgs-(r2)+Vds(i));
end
Nudrat Sufiyan
2022-5-30
0 个投票
7 个评论
Nudrat Sufiyan
2022-5-30
Torsten
2022-5-30
The code works fine for me.
Nudrat Sufiyan
2022-5-30
Torsten
2022-5-30
r1 = 5.420307692307692e-26
Vgs = -2
r2 = -7.731499999999999e+18
Thus Vds won't change anything if you have in mind how large r2 is.
Nudrat Sufiyan
2022-5-30
Torsten
2022-5-30
@Nudrat Sufiyan comment moved here
It means I should change the value of r2
类别
在 帮助中心 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!