Iteration of Ideal Gas Law
22 ビュー (過去 30 日間)
古いコメントを表示
Hi,
How can I do the iteration for the follwoing Ideal Gas Law? I would like to use the Vn and get the Pn value and compare the Ln value to the L. When Ln and L are very close, it will stop the iteration. I would really appreciate your help.
P=101325;
R=8.314;
r=20*10^-6;
L=117*10^-6;
V=pi*r^2*L;
T=300;
n=(P*V)/(R*T);
% Iteration should start from here
Tn=300+273;
Pn=(n/V)*R*Tn;
stress=Pn;
E=69.22*10^9;
S=stress/E;
dL=S*L;
Ln=L+dL;
Vn=pi*r^2*Ln;
1 件のコメント
Walter Roberson
2021 年 3 月 3 日
Please note that I am not a category of knowledge, and so should not be named in a tag.
採用された回答
Cris LaPierre
2021 年 3 月 3 日
編集済み: Cris LaPierre
2021 年 5 月 13 日
If you want to repeat until a condition is met, a while loop is probably the best option. You just need to set up a conditional statement that evaluates as false until your statement is true. For example
L=1;
Ln=5;
while abs(Ln-L)>0.1
Ln=Ln-1
end
There is one thing to be careful of. It is possible to create what is called an infinite loop. This occurs when your contidional statement is always false.
5 件のコメント
Cris LaPierre
2021 年 3 月 3 日
編集済み: Cris LaPierre
2021 年 3 月 3 日
I haven't given you the whole solution. In the code you shared originally, you calculate Ln right before you use it.
Ln=L+dL;
Vn=pi*r^2*Ln;
If you need to use the current value of Ln as L in the next loop, then yes, you should set Ln=L before the loop, and update all uses of L inside the loop to be Ln.
If you don't understand how loops work, I suggest looking at Ch 13 of MATLAB Onramp. It covers for loops, not while loops, but the underlying principles are the same.
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!