p-(a+b*e)/2==0,e+(b*p*(u-1))/s*(r+1)==0,用Matlab联立这两个方程组求得p和e的表达式是多少
时间: 2024-03-27 11:38:23 浏览: 56
根据第一个方程,可以将其转化为 p = (2a)/(1+be)。
将 p 的表达式带入第二个方程,可以得到 e = -(b(2a)/(1+be))(u-1)/(s(r+1))。
将上述两个表达式代入Matlab中,代码如下:
```matlab
syms p e a b u s r
eq1 = p-(a+b*e)/2 == 0;
eq2 = e+(b*p*(u-1))/(s*(r+1)) == 0;
[p, e] = solve([eq1, eq2], [p, e]);
```
求解得到的表达式如下:
p = (2*a)/(b*u - b*r*s - 2*s)
e = -(2*a*b*(u - 1))/(b^2*u - b^2*r*s - 2*b*s)
注意,这里的表达式中需要保留符号,不能简单地用数值代入。
相关问题
根据下面这段代码,求解Zddce的传递函数 s = tf('s'); kpi=6;kii=50;kpv=2;kiv=50;K=6.5;Dq=320;W1=100*pi;J=0.013;Dp=5;Vd=310.272;Id=32.23; Lf=2e-3;Rf=1.5;Cf=200e-6; A=[(kpi+kii/s)*(-(kpv+kiv/s)-Cf*s),(kpi+kii/s)*(-1.5*(kpv+kiv/s)*(1/(K*s+Dq))*Id+W1*Cf);(kpi+kii/s)*(-1.5*Id*(kpv+kiv/s)*Vd/(J*(s^2)+Dp*s)/W1-W1*Cf),(kpi+kii/s)*(-(kpv+kiv/s)-Cf*s)]; B=[-(kpi+kii/s),1.5*Vd*(kpi+kii/s)*(kpv+kiv/s)/(K*s+Dq);-1.5*(Vd^2)/(J*(s^2)+Dp*s)/W1*(kpi+kii/s)*(kpv+kiv/s),-(kpi+kii/s)]; C=[Lf*Cf*(s^2)+Rf*Cf*s-(W1^2)*Lf*Cf+1,-2*W1*Lf*Cf*s-W1*Rf*Cf;2*W1*Lf*Cf*s+W1*Rf*Cf,Lf*Cf*(s^2)+Rf*Cf*s-(W1^2)*Lf*Cf+1]; D=[Lf*s+Rf,-W1*Lf;W1*Lf,Lf*s+Rf]; Zoutce =(Udc*A-C)\(D-Udc*B); Zddce = Zoutce(1,1); Zdqce = Zoutce(1,2); Zqdce = Zoutce(2,1); Zqqce = Zoutce(2,2);
根据给出的代码,可以看出系统的传递函数为:
$$
Z_{ddce}(s) = \frac{LfCs^3 + (Rf + U_{dc}Cf)s^2 - W_1^2LfCf + 1}{s^2(LfCs^2 + RfCs + 1) - j\frac{3V_d^2}{D_p}s - U_{dc}(k_p + \frac{k_i}{s})(k_v + \frac{k_i}{s})}
$$
其中,$U_{dc}$ 为直流电压,$V_d$ 为 $d$ 轴电压,$k_p$、$k_i$、$k_v$、$k_i$ 为控制器参数,$K$、$D_q$、$W_1$、$J$、$D_p$、$L_f$、$R_f$、$C_f$ 分别为机械系统的参数。
clc clear % 定义给定的参数和方程 M_B = 104; % B的摩尔质量 D = 1.22; % 反应器管径(m) Tm= 750+273.15; % 加热介质温度(k) Xmax = 0.98; % 出口转化率 FB= 7100 / (M_B*3600*24); % 出口B的摩尔流量(kmol/s) V= 34e-3; T0= 898; % 进入温度(K) p= 1440; % 催化剂堆积密度(kg/m^3) delta_H = 1.39e5; % 反应热(kJ/kmol) M_A = 106; % A的摩尔质量 rho_A = p / M_A; % A的密度(kg/m^3) C_P = 2.177; % 反应物料的热容(kJ/(kg * K)) psk=121 %kPa A=pi*(D/2)^2; FA0=FB/Xmax; xa=0; T=T0; L=0; while xa<0.98; pa=psk*FA0*(1-xa)/(FA0*xa+V); pb=psk*FA0*(xa)/(FA0*xa+V); pc=psk*FA0*(xa)/(FA0*xa+V); k=(2.70e-6)* exp((-10983/T)+9.44); k2=(2.84e-6)*exp((-3676.394/T)-10.525); ra=k2*pb*pc-k*pa; dL=0.001; dxa=-ra*p*A*dL/FA0; xa=xa+dxa; L=L+dL;% 计算床层高度L plot(L,xa); axis([0 5 0 1]); hold on U=140*L^(-0.33)*4.18/60/1000; dT=(delta_H*ra*A*dL-U*pi*D*dL*(T-Tm))/(V+FA0*M_A*xa)/C_P; T=T+dT; plot(L,T); axis([0 5 850 1000]); hold on end disp(L)
这段代码是一个反应器的模拟程序,计算了反应器床层高度和温度随时间的变化情况。程序中使用了一些给定的参数和方程,通过迭代计算来模拟反应器的行为。
具体来说,程序首先定义了一些参数和方程,包括反应物料的摩尔质量、反应器管径、加热介质温度、出口转化率、出口B的摩尔流量、催化剂堆积密度、反应热、反应物料的热容等。然后使用while循环来迭代计算反应器床层高度L和温度T的变化,并在每次迭代中绘制出反应器床层高度和温度随时间的变化曲线。最终输出反应器的床层高度。
需要注意的是,这段代码中有一些参数和方程是根据具体反应器的情况来设定的,如果要将程序用于其他反应器的模拟,需要根据实际情况进行相应的修改。
阅读全文