z=15; syms t u(t) v(t) R1 = 1.2e-3; R2 = 9.2e-3; Cin = 1.1e6/60; Cwall = 1.86e8/60; PN =8000; qin=20; qout =0; u1=diff(u); v1=diff(v); eq1 = Cin*u1==PN-(u-v)/R1; eq0 = Cin*u1==0-(u-v)/R1; eq2 = Cwall*v1==(u-v)/R1-(v-qout)/R2; eq3 = u(0)==20; eq4 = v(0)==z; [uSol1(t), vSol1(t)] = dsolve(eq1,eq2,eq3,eq4); [uSol2(t), vSol2(t)] = dsolve(eq0,eq2,eq3,eq4); figure(1) subplot(1,2,1),fplot(uSol1,[0 1440]); title('开启时室内温度') subplot(1,2,2),fplot( vSol1,[0 1440]); title('开启时墙体温度') figure(2) subplot(1,2,1),fplot(uSol2,[0 1440]); title('关闭时室内温度') subplot(1,2,2),fplot( vSol2,[0 1440]); title('关闭时墙体温度') ,将其中的z变为变量绘制三维图
时间: 2023-08-29 16:06:05 浏览: 76
如果将其中的 z 变为变量并绘制三维图,我们需要对代码进行一些修改。下面是修改后的代码:
```
syms t u(t) v(t) R1 = 1.2e-3; R2 = 9.2e-3; Cin = 1.1e6/60; Cwall = 1.86e8/60; PN =8000; qin=20; qout =0; u1=diff(u); v1=diff(v); eq1 = Cin*u1==PN-(u-v)/R1; eq0 = Cin*u1==0-(u-v)/R1; eq2 = Cwall*v1==(u-v)/R1-(v-qout)/R2; eq3 = u(0)==20; eq4 = v(0)==z; [uSol1(t), vSol1(t)] = dsolve(eq1,eq2,eq3,eq4); [uSol2(t), vSol2(t)] = dsolve(eq0,eq2,eq3,eq4); figure(1) subplot(1,2,1),fplot3(uSol1,[0 1440],[0 30]); title('开启时室内温度') xlabel('时间'), ylabel('z轴'), zlabel('温度') subplot(1,2,2),fplot3(vSol1,[0 1440],[0 30]); title('开启时墙体温度') xlabel('时间'), ylabel('z轴'), zlabel('温度') figure(2) subplot(1,2,1),fplot3(uSol2,[0 1440],[0 30]); title('关闭时室内温度') xlabel('时间'), ylabel('z轴'), zlabel('温度') subplot(1,2,2),fplot3(vSol2,[0 1440],[0 30]); title('关闭时墙体温度') xlabel('时间'), ylabel('z轴'), zlabel('温度')
```
在这段代码中,我们将 z 声明为符号变量,并将 v(0) 的初始值改为 z。然后,将 fplot 和 subplot 函数都替换为 fplot3 和 subplot3d 函数,同时增加了 z 轴的绘制范围,用 xlabel、ylabel 和 zlabel 函数添加了坐标轴标签。这样就可以绘制出三维图,展示开启和关闭状态下室内和墙体温度随时间和高度的变化情况。
阅读全文