第2章 线性与非线性方程(组)的应用
2.1 线性方程组
【例2-1】求解三元一次方程组:
在命令行窗口输入:
>>A=[2,1,-1;3,2,1;2,-1,2];
B=[1,8,5]’; x=A\B
按Enter键,得到:
x =
0.9231
1.4615 2.307
也可以是“B=[1;8;5];”。
2.1.1 细胞反应的元素衡算
【例2-2】以葡萄糖为基质进行面包酵母(S.cerevisiae)培养,培养的反应式可用下式表达:C6H12O6+3O2+aNH3→bC6H10NO3(面包酵母)+cH2O+dCO2,求计量关系中的系数a、b、c和d。
据平衡方程式可以得到4个线性方程式:
C: 6=6b+d
H: 12+3a=10b+2c
O: 6+2×3=3b+c+2d
N: a=b
写成矩阵式:Ax=B
即
当方程组有唯一解时应有x=A−1B。
调用线性方程组命令,在命令行窗口输入:
>>A=[0 6 0 1;3 -10 -2 0;0 3 1 2;1 -1 0 0];
B=[6;-12;6+2*3; 0]; x=A\B
按Enter键,并得到:
x =
0.4800
0.4800
4.3200 3.1200
则方程联立求解为a=b=0.48, c=4.32, d=3.12。上述反应计量关系式为C6H12O6+3O2+ 0.48NH3→0.48C6H10NO3(面包酵母)+4.32H2O+3.12CO2。
2.1.2 细菌共存数的确定
【例2-3】某实验室有3种细菌,这些细菌需要3种食物饲养。每种细菌每天消耗不同食物情况见表2-1。若该实验室每天能提供5500单位的食物Ⅰ、4600单位的食物Ⅱ、6600单位的食物Ⅲ。试确定每天3种细菌共存数量分别为多少?
表2-1 每种细菌每天消耗不同食物情况
设每天3种细菌共存数量分别为x1、x2和x3。可以得到3个线性方程式:
写成矩阵式:Ax=B
即
当方程组有唯一解时应有x=A−1B。
调用线性方程组命令,在命令行窗口输入:
>>A=[2 3 4;0 5 3;5 3 3];
B=[5500;4600;6600]; x=A\B
按Enter键,运行结果:
x =
600.0000
500.0000 700.0000
意味着每天可以饲养600个细菌A、500个细菌B以及700个细菌C。
2.1.3 多级逆流萃取理论级数的确定
多级逆流萃取流程如图2-1所示。原料液F从第n级进入,依次经过各级萃取,成为各级的萃余相,其溶质组成逐级降低;溶剂S从第1级进入系统,依次通过各级与萃余相逆向接触,进行萃取,使得萃取相中的溶质组成逐级提高,最终获得的萃取相溶质组成yn和萃余相溶质组成x1。
图2-1 多级逆流萃取流程
【例2-4】以130kg/h的纯乙酸戊酯为溶剂,从280kg/h的发酵液中萃取青霉素。欲通过多级逆流萃取,使原料液中的青霉素由0.030降至0.005(均为质量分数),分配系数K为2.0,试求理论级数。
由题意可知,F=280kg/h,S=130kg/h,xF =0.030kg青霉素/kg发酵液,x1=0.005kg青霉素/kg发酵液,yS=0,K=2.0。
根据图2-1,对各级进行物料衡算:
第1级:,分配系数K=y/x,即
第i级:,即
第n级:,即
该问题是求解矩阵方程Ax=B。其中:
假设理论级数的初始值为3,进行计算,根据计算的x1值,试着增加或减少理论级数,再进行计算,直至期望值x1的实现。在命令行窗口输入:
>>%3级萃取
S=130;K=2;F=280;ys=0;xF=0.03;
A=[-(S*K+F),F,0;
S*K, -(S*K+F),F;
0, S*K, -(S*K+F)];
B=[-S*ys;0;-F*xF]; x=A\B
按Enter键,运行结果:
x =
0.0084
0.0161 0.0233
可见,理论级数为3时,x1=0.0084(>0.005),没有满足要求。在命令行窗口输入:
>>% 6级逆流萃取
A=[-(S*K+F),F,0,0,0,0;
S*K, -(S*K+F),F,0,0,0;
0, S*K, -(S*K+F),F,0,0;
0,0, S*K, -(S*K+F),F,0;
0,0,0, S*K, -(S*K+F),F;
0,0,0,0, S*K, -(S*K+F)];
B=[-S*ys;0;0;0;0; -F*xF]; x=A\B
按Enter键,运行结果:
x =
0.0053
0.0102
0.0148
0.0190
0.0230 0.0266
可见,理论级数为6时,x1=0.0053(>0.005),仍没有满足要求。
在命令行窗口输入:
>> % 7级逆流萃取
A=[-(S*K+F),F,0,0,0,0,0;
S*K,-(S*K+F),F,0,0,0,0;
0,S*K,-(S*K+F),F,0,0,0;
0,0,S*K,-(S*K+F),F,0,0;
0,0,0, S*K, -(S*K+F),F,0;
0,0,0,0, S*K, -(S*K+F),F;
0,0,0,0,0, S*K, -(S*K+F)];
B=[-S*ys;0;0;0;0;0; -F*xF]; x=A\B
按Enter键,运行结果:
x =
0.0048
0.0092
0.0134
0.0172
0.0208
0.0241 0.0271
由此可见,理论级数为7时,x1=0.0048(<0.005),满足要求。