For Loop That Uses A Found Value To Complete the Next Loop

조회 수: 2 (최근 30일)
Jordan David
Jordan David 2023년 5월 1일
댓글: Jordan David 2023년 5월 6일
Hello! How can I use a for loop to run a code that uses a found value from the previous loop, to compute the next loop?
The base equation for this loop looks like
P2=(P1)(exp(-(z2-z1)/(R*T))
where Z has bounds a and b and has intervals of 50. P1 and T are referenced indicies of a known vector. The next iteration of the loop would then subsitute the previous P2 in for P1 and run again.

채택된 답변

VBBV
VBBV 2023년 5월 1일
편집: VBBV 2023년 5월 1일
Do you mean something like this ?
z2 = 10;
Z1 = 4;
P2 = zeros(1,length(P1));
for J = 1:Array_range_max
% P1 computed in this loop
P1 = rand(1,10);
% assume z1 and z2 are scalars
for k = 1:length(P1)-1
P2(k) = P1(k)*exp(-(z2-z1)./(R*T(k)));
P1(k+1) = P2(k);
end
end
  댓글 수: 3
VBBV
VBBV 2023년 5월 2일
z = 0:50:1700;
size(z)
ans = 1×2
1 35
P1 = 9.79419e4;
a = 29.3;
% assume average of (T_(2,:))+(T_(1,:)).\2
T = randi([0 240],341,1);
P2 = zeros(341,length(z));
%outer loop
% for Tavg = 1:array_size_temperature
% T = randi([0 240],341,1);
for J = 1:size(P2,2)
% P1 computed in this loop
P2(:,J) = P1.*exp(-z(J))./(a.*T);
P1 = P2(:,J);
end
%end // end of outer loop
P2
P2 = 341×35
1.0e+03 * 0.0201 0.0000 0.0000 0.0000 0.0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1.6714 0.0000 0.0000 0.0000 0.0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1453 0.0000 0.0000 0.0000 0.0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0152 0.0000 0.0000 0.0000 0.0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0189 0.0000 0.0000 0.0000 0.0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0154 0.0000 0.0000 0.0000 0.0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0156 0.0000 0.0000 0.0000 0.0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0376 0.0000 0.0000 0.0000 0.0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0655 0.0000 0.0000 0.0000 0.0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0293 0.0000 0.0000 0.0000 0.0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Jordan David
Jordan David 2023년 5월 6일
Thank you for taking time out of your day to help me understand this!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by