End-of-array value entry

3 views (last 30 days)
Maroulator
Maroulator on 11 Aug 2014
Commented: Star Strider on 11 Aug 2014
I have the following code which achieves what I need. However, when I tried to make it a bit more sophisticated and perform the substitution I note in the for statement below, I get no results. Cold someone please venture a guess as to why this is the case?
Io=2; K=1.38*(10^(-23)); q=1.602*(10^(-19)); id=-1:0.1:0.6;
for i=1:17 -----> substitute with for i=1:id(end)
T=75;
Vd(i)=((id(i)./Io)+1).*(exp(K*T)/q);
end

Accepted Answer

Star Strider
Star Strider on 11 Aug 2014
Your id array has a maximum of 0.6. In your loop, i=1:0.6 would not execute because the value of the counter at the start, i=1 is already greater than the termination value, 0.6.

More Answers (1)

Hikaru
Hikaru on 11 Aug 2014
Instead of substituting with
i=1:id(end)
Use:
i=1:length(id)
You also might want to preallocate Vd since it changes size in every iteration.
  2 Comments
Star Strider
Star Strider on 11 Aug 2014
@Maroulator — You can give him a vote (2 points).

Sign in to comment.

Categories

Find more on Elementary Math in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!