P=912;
L0 = 100;
A = [6.90565 6.95464];B = (1211.033 - 1344.8);C = (220.79 - 219.482);
xtspan = linspace(0.40、0.80,100);
[xt, L] = ode45(@ mol, xtspan, L0);
L = L(结束);
流(当甲苯的液相摩尔分数达到0.80时,蒸馏器中剩余的液体量为%f摩尔L);
功能Kt = EquilibriumRatio (Psatt)
Kt = Psatt / P;
结束
功能Psatt = VaporPressuret (T, A, B, C)
Psatt = 10 ^(一(2)- b (2) / (T + C (2)));
结束
功能Psatb = VaporPressureb (T, A, B, C)
Psatb = 10 ^ (- b (1) (1) / (T + C (1)));
结束
功能dLdx =摩尔(xt,左)
T0 = 95.585;
选项=优化集(“显示”,“关闭”,“TolX”1 e-6);
T0 = f0 (@temp, T0, options);
Psatt = VaporPressuret (T);
Kt = EquilibriumRatio (Psatt);
dLdx = L / (xt * (Kt-1));
结束
功能xt Tempfun = temp (T, P, A, B, C)
Psatt = VaporPressuret (T, A, B, C);
Psatb = VaporPressureb (T, A, B, C);
Tempfun=Psatt*xt+Psatb*(1-xt)-P;
结束
>>项目2
错误使用fzero(第306行)
FZERO无法继续,因为用户提供的function_handle ==> temp失败,出现以下错误。
不足够的输入参数。
错误项目2>摩尔(第30行)
T0 = f0 (@temp, T0, options);
错误在odearguments(第90行)中
f0 =函数宏指令(颂歌,t0, y0, args {:});
错误在ode45(第115行)
odearguments(FcnHandlesUsed, solver_name, ode, tspan, y0, options, varargin);
错误在项目2(第7行)中
[xt, L] = ode45(@ mol, xtspan, L0);