%已知
T=300;%温度,K
p=3.704e5;%压力,Pa
R=8.314;%通用气体常数,J/(mol·K)
Tc=408.1;%临界温度,K
pc=3.648e6;%临界压力,Pa
omiga=0.176;%偏心因子
%初值
switch j
case 1%汽相
V0=R*T/p;
fprintf('开始计算汽相...\n'),
case 2%液相
if omiga<=0.24
V0=0.025e-3;
else
V0=0.05e-3;
end
fprintf('开始计算液相...\n'),
end
%计算摩尔体积
i=0;
while 1
m=0.480+1.574*omiga-0.176*omiga^2;
a=0.42747*R^2*Tc^2/pc*(1+m*(1-sqrt(T/Tc)))^2;
b=0.08664*R*Tc/pc;
f=V0^3-R*T/p*V0^2+(a-b*R*T-P*B^2)*V0/p-a*b/p;
f1=3*V0^2-2*R*T*V0/p+(a-b*r*t-p*b^2)/p;
V=V0-f/f1;
i=i+1;
fprintf('Iter=%d\tV=%em3/mol\n',i,V),
if abs((V-V0)/V0)<1.e-3
break;
else
V0=V;
end
end
fprintf('摩尔体积成功收敛:V=%em3/mol\n',V),
运行时报错:
函数或变量 'V0' 无法识别。
出错 p15 (第 29 行)
f=V0^3-R*T/p*V0^2+(a-b*R*T-P*B^2)*V0/p-a*b/p;
请问我应该怎么解决呀?