Matlab中pdepe的不稳定......边界条件?

计算科学 matlab pde 边界条件
2021-12-26 11:47:40

这是一个 Matlab 初学者把头撞在墙上......

我正在尝试在 Matlab 中求解一个偏微分方程系统,该系统在时域和空间域中都有导数。我正在为此使用 pdepe 函数。

简单地说,该系统是一种太阳能热板,由三层组成:吸收板、流动水流体层和背绝缘层。这些层中的每一层都由一个微分方程表示。当然,模型中隐含了许多假设,例如模型在这里被认为是一维的(没有边缘效应......),每层内部的温度不均匀性被忽略 ecc。

描述系统的微分方程是(在目前的复杂程度): 在此处输入图像描述

其中 CXX 是热容,hXX 是热模型不同层之间的传热系数。Vfl 是流体速度,Tia 是已知的环境温度,Psolar 是由于太阳辐照度而产生的加热功率。

作为初始条件:循环水的温度从入口温度线性变化到第一次尝试出口温度 12°C

太阳能吸收器的温度从 16.5 到 19 线性变化(分别为流体入口温度和环境温度之间的平均值以及流体出口温度和环境温度之间的平均值)

类似地,背绝缘层的温度从 16.5 到 19 线性变化。

空间边界条件为: 在此处输入图像描述

式中 Tfl,inlet 和 Tfl,outlet 为循环水的进出口温度。

在 Matlab 中,这变成了(并非所有代码行都被报告)

function SolarAbsorber_TimeSpace


m = 0;

x = linspace(0,2.5,30);

t = linspace(0,7200,100); 

sol = pdepe(m,@pd_SolAbs_pde,@pde_SolAbs_ic,@pde_SolAbs_bc,x,t);

T_met = sol(:,:,1); 

T_w = sol(:,:,2);

T_is = sol(:,:,3);

function [c,f,s] = pd_SolAbs_pde(x,t,u,DuDx)
% I do  not report here the initialization of the coefficients

c = [C_met;C_w;C_is];                         

f = [ 0; 0; 0];

s1 = (h_ai_met)*(T_ai - u(1))+ h_met_w*(u(2) - u(1))+ Gv*tau*abs);

s2 = (h_met_w*(u(1) - u(2))+ h_is_w*(u(3) - u(2)))- DuDx(2)*vx;

s3 = (h_is_w*(u(2) - u(3)) + h_is_ai*(T_ai - u(3)));

s = [s1; s2; s3];                                

% --------------------------------------------------------------------------  
function u0 = pde_SolAbs_ic(x)

alfa =((12-7)/2.5);

beta = ((26+12)/2 -(26+7)/2)/2.5;

T_met_0 = beta*x+(26+7)/2; %°C

T_w_0 = alfa*x+7;    %°C

T_is_0 = beta*x+(26+7)/2; %°C

u0 = [T_met_0; T_w_0; T_is_0];


% --------------------------------------------------------------------------  
function [pl,ql,pr,qr] = pde_SolAbs_bc(xl,ul,xr,ur,t,u0,u)

pl = [ul(1)- (26+7)/2; ul(2)-7; ul(3)-(26+7)/2];

ql = [0;0;0];  

pr = [ur(1)-(26+12)/2; ur(2)-12; ur(3)-(26+12)/2];

qr = [0;0;0];

我想描述水温的曲线,给出恒定的质量流量、恒定的入口温度、可变的强迫边界条件(如太阳辐射)、三层的初始条件等。

在第一个模拟中,我只是假设太阳辐射是恒定的,并且从时间 t=0 开始,它会加热吸收器,而循环水会带走热量。

这是我的问题:

1 Matlab_pdepe 要求我也在“右侧”(太阳能电池板的出口)定义边界条件,这实际上是未知的!

2 图表显示,与边界对应,轮廓变得不稳定。这不会随着网格大小或积分时间跨度而显着变化。请考虑吸收板的左边界条件是由进水温度和环境温度的热平衡固定的,两者都假定为常数。

在此处输入图像描述

欢迎任何想法或要求进一步解释:) :) :)

先感谢您

朱利奥

PS 感谢 Bill Greene 对 Peclet 数和扩散与对流机制问题的评论。实际上,水流速度是固定的(取决于固定的水质量流量)。我已经细化了网格以减少 Peclet 数,结果是轮廓趋于稳定,但对于边界附近的区域。当然,现在的重点是更深入地了解发生了什么;)

然而,结果在物理上并不一致:水在不到 1 厘米的范围内从 7 到 11.7°C 通过。以类似的方式,靠近出口,温度振荡以符合出口边界条件:(

我仍然想只固定入口温度和水速,让出口温度根据系统的物理特性自由变化。关于三层的“正确”边界条件有什么建议吗?

在此处输入图像描述 在此处输入图像描述

1个回答

这看起来像是方程中对流项相对于扩散(传导)项较大的经典案例。pdepe 函数基本上是为处理相反的情况而设计的——扩散占主导地位。您可以通过计算网格 Peclet 数来量化问题中对流和扩散的相对影响。这已在本网站先前提出的另一个问题中进行了详细讨论:有限元方法是否对 Peclet 数施加任何限制以实现数值稳定性?