MATLAB Answers

For Loop Iteration With Part of Vector

2 views (last 30 days)
I want to use a row vector to index in a for loop. But, I want to switch to a different function when the index reaches a certain element in the vector. My row vector (t) is 1x1271810. I would like to use my first function in a for loop up to element 945665 in the vector, and then use a different function for the rest of the for loop (or another for loop) from element 945666 to 1271810. Is this possible? Here is how I have my for loop written so far, how would I modify it?:
[a,b] = size(t);
for i = 1:a
for j = 1:b
PredCurrFun(i,j) = p(4).*((1-calcPinf(p,t(i,j),Co(i),Diff)).* ...
exp(-calcLambda(p,t(i,j),Co(i),Diff) .* t(i,j)) + calcPinf(p,t(i,j),Co(i),Diff));
end
end
"second function I would like to use is a 1 - exponential"

Accepted Answer

Charles DeLorenzo
Charles DeLorenzo on 10 Jul 2019
Edited: Charles DeLorenzo on 10 Jul 2019
I would suggest using one for loop the length of 't' and a conditional statement to switch between the functions. As an example
for i=1:width(t)
if i<945665
% function 1
else
% function 2
end
end
  4 Comments
Kelly McGuire
Kelly McGuire on 11 Jul 2019
Great, thanks for the advice! That was very helpful.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by