4.3.4  二维平流-扩散方程

更新于 2026年10月10日 版权声明
4.3.4 二维平流-扩散方程

二维平流-扩散方程(advection-diffusion equation)描述了大气的准二维运动,它的形式如下:

图示

其中,ψ、ω分别为流函数(stream function)和涡量(vorticity),x、y为空间坐标,t为时间,v为一常数。式(4-56)中的第一式同时包含了平流部分——∂ψ/∂y·∂ω/∂x-∂ψ/∂x·∂ω/∂y,以及扩散部分——ν(∂2/∂x2+∂2/∂y2)ω。将ψ和ω离散化为方阵ψN×N和ωN×N之后,等号右边可写为ν[ωN×N(DN(2))T+DN(2) ωN×N]+DNψN×N·ωN×N(DN)T-ψN×N(DN)T·DNωN×N,等号左边的∂/∂t使用ode45函数计算。

流函数ψ可看作涡量ω的一个参量,计算涡量ω的过程中需要先用式(4-56)中的第二式求解流函数ψ,这是一个对ω的积分运算,由于产生了积分常数c,所以ψ并不是唯一的,即:ψ=ψ0+c。但是注意到式(4-56)中的ψ都是以导数的形式存在,所以积分常数c并不会影响ω的计算结果,可不做考虑。计算流函数ψ有两种方法:

(1)直接对∂2/∂x2+∂2/∂y2的矩阵形式求逆得到积分矩阵,对ω进行积分:

图示

(2)利用第3章的方法,对方程做二维傅里叶变换,将积分运算转化为在频域上的除运算(注意用技巧避免分母为0):

图示

因为方法一中存在对N2阶方阵的求逆运算,运算量较大,所以这里采用方法二。

使用周期性边界条件,初始条件ω(x,y,0)=sech(x2+y2/20),取v=0.001,数值计算二维平流-扩散方程的代码如下:

程序4-9(https://www.daowen.com)

主程序代码如下:

图示

图示

advection_diffusion.m文件代码如下:

图示

程序输出结果如图4-12所示,随着时间t的推移,涡量ω的分布出现了逆时针的旋转。如果将平流部分变号,旋转方向将变为顺时针,读者可自行尝试。

图示

图4-12 二维平流-扩散方程计算结果

[1]锁模是光学里一种用于产生极短时间激光脉冲的技术。

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)