getting error in for loop
Afficher commentaires plus anciens
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 commentaire
Sam Chak
le 30 Mai 2022
Have you checked if your array indices are positive integers or logical values?
Réponses (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
le 30 Mai 2022
0 votes
7 commentaires
Nudrat Sufiyan
le 30 Mai 2022
Torsten
le 30 Mai 2022
The code works fine for me.
Nudrat Sufiyan
le 30 Mai 2022
Torsten
le 30 Mai 2022
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
le 30 Mai 2022
Torsten
le 30 Mai 2022
@Nudrat Sufiyan comment moved here
It means I should change the value of r2
Catégories
En savoir plus sur Logical dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!