问题描述
我已经按照下面的代码使用欧拉方法解决了带加热器的水箱的 PDE,我相信这是真的,我得到了预期的结果。 click here to show pdf file for problem details for reference
但是现在第二步是使用离散化然后使用欧拉方法来解决 PDE,概念很清楚,它有两个循环,一个用于空间离散化,另一个用于时间(欧拉方法),但我被困在这点。它应该是一个循环(时间循环)内的两个 for 循环(离散化循环)。我对如何在循环内设置方程感到困惑。附上方程组,这是我的尝试,它应该看起来像这样
%time loop
for
%space loop to find ds value
for
end
%space loop to find the S value
for
end
end
Tank-Euler 方法中的温度模型
% mm model for the tank with heater
% Given
v_tank=2;%1 L
%v_in=1;v_out=1; 1liter / minute
v_in=0.0166667;v_out=1; %1liter / sec
p=1000;%1 watt @Steady State
T1in0=15;% 15 c degrees at t =0
%rho=1000; density kg/m^3
rho=1;%density kg/L
CS=4200;%J/kg*c
%assumption of integration step h=0.1
h=0.1;
%steady state equation
T10=(T1in0+(p/(v_in*rho*CS))); %f(x,y) function,where dy/dx=f(x,y),x(x0)=y0.
n=1500;
T1in=T1in0;
Tvect=ones(n/h);
i=1;
for t=0:h:n
if t>=300
T1in=20;% 20 c degrees at t=5
end
if t>=900
p=1500;% 1500 watt at t=15
end
%Eurl's integral equation
T=T10+h*((v_in/v_tank)*(T1in-T10)+(p/(v_tank*rho*CS)));
T10=T;
Tvect(i)=T10;
i=i+1;
end
hold on;
t=(0.1:0.1:n);
plot(t,Tvect)
%axis([0,25,25])
grid on;
title('Tank with heater'); xlabel('Time [sec]'); ylabel('Temp ℃ ');
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)