一种基于OpenFOAM再开发的动边界问题计算方法与流程

文档序号:15558568发布日期:2018-09-29 01:42阅读:3031来源:国知局

本发明涉及计算流体力学技术领域,具体指代一种基于openfoam再开发的动边界问题计算方法。



背景技术:

在自然界和工程应用中,动边界问题随处可见。如鱼类在水中游动、风力机叶片在风中旋转、石油管道中运动的悬浮颗粒物。为了研究此类问题的流动特性,可采用不同的方法。其中由于具有成本低、效率高、可重复性等优点,计算流体力学(cfd)是目前广泛采用的方法之一。随着数值计算技术的不断发展,用于实际工程问题的商业软件也应运而生。当前,常用的cfd商业软件有:fluent、cfx、star-cd、phoenics等。它们已经能用于求解各种类型的流体力学问题,具有一定的适用性、精确性和鲁棒性,且计算结果大都能满足工程需求。但是,这些商业软件的程序源代码都已被封装,程序细节无从得知,更无法对源代码进行修改。这在很大程度上限制了对具体问题(如动边界问题)进行深入研究。

另一方面,现今各大研究所、企业及高校越来越注重系统的安全性与应用范围的广泛性,linux凭借其可靠纯净的系统核心成为了他们的首选,而大多数商业软件都是针对windows系统设计的,这就造成了许多不便。这种情况下,基于linux的开源软件openfoam就具有商业软件不可比拟的优越性。概况而言,openfoam就是一个c++类库,用于创建可执行文件,比如应用程序。而求解器与工具是应用程序的两个大类,根据不同的问题需求可以设计相应的求解器,工具则是为了前后处理设计的。如今,openfoam已经拥有了大量的现成求解器和工具,而用户可以根据自己的需要在其基础上进行修改,甚至设计自己的求解器。

但是,针对动边界这类问题,目前openfoam的求解器还未发展成熟。因此,有必要基于openfoam进行再开发,提高其求解动边界问题的能力,以满足当前流体力学问题研究的需要。



技术实现要素:

针对于上述现有技术的不足,本发明的目的在于提供一种基于openfoam再开发的动边界问题计算方法,以解决现有技术中针对动边界这类问题openfoam的求解器还未发展成熟的问题,本发明对计算流体力学开源软件openfoam进行再开发,提高其求解动边界问题的能力、拓展其应用范围。

为达到上述目的,本发明采用的技术方案如下:

本发明的一种基于openfoam再开发的动边界问题计算方法,包括如下:

1)对于不可压粘性流动问题,在笛卡尔坐标系(x,y,z)下的控制方程写为:

▽·u=0(2)

其中,式(1)为动量方程,式(2)为连续方程;u为流场的速度矢量,p为压强,f为作用在流场中的外力;re为雷诺数,t为时间,▽为空间偏导数算子;

对上述式(1)、式(2)进行运算求解后,得到关于压强和速度的泊松方程:

2p=-▽·(u▽u)(3)

求解式(3),得到流场的压强,流场的速度从式(1)求得;

2)在浸入边界法的框架下,对于包含物体的绕流问题,动量方程中的f在物体周围不为零;f通过流场速度修正δu进行求解,而δu则由边界速度修正δub确定,控制方程组为:

ax=b

其中,

式中,m为边界点个数,n为边界周围计算网格点的个数,δ和δb分别为l=1,…,m;其中为delta函数,其是连接计算网格点x和边界点xb的桥梁;δx,δy,δz为计算网格的步长,δsl为单位边界元的长度;ub为边界的速度;u*为流体速度的中间值,在求得δub后,流场速度修正为:

而外力f通过关系式f=δu/δt求得,其中δt为时间步长;这样,考虑了外力影响的流场速度为:

u=u*+δu。

优选地,所述的步骤1)中f=0。

优选地,所述的步骤1)中

优选地,所述步骤1)中具体包括:为了数值求解控制方程,开源软件openfoam采用固定的结构化网格对计算区域进行离散,速度与压强耦合的求解使用压强隐式算子分裂算法,时间离散使用欧拉隐式方法。

优选地,所述步骤2)具体包括:

在openfoam中引入浸入边界法后,求解问题的步骤为:

a.利用pisofoam求解器计算不含物体的动量方程和泊松方程,得到中间速度u*和中间压强p*

b.采用满足边界条件的浸入边界法,得到包含物体的流场速度u;

c.利用pisofoam求解器再次计算泊松方程,得到包含物体的流场压强p。

本发明的有益效果:

本发明在计算流体力学开源软件openfoam的基础上,加入精确满足边界条件的浸入边界法,提高其求解动边界问题的能力,进而拓展openfoam的应用范围。

附图说明

图1a为采用本发明的方法模拟所得的三维静止圆环在雷诺数re=150时的涡量图。

图1b为采用本发明的方法模拟所得的三维静止圆环在雷诺数re=180时的涡量图。

图2a为采用本发明的方法模拟所得的三维圆盘下落时一个周期内t0时刻的涡量图。

图2b为采用本发明的方法模拟所得的三维圆盘下落时一个周期内t0+0.6时刻的涡量图。

图2c为采用本发明的方法模拟所得的三维圆盘下落时一个周期内t0+1.2时刻的涡量图。

图2d为采用本发明的方法模拟所得的三维圆盘下落时一个周期内t0+1.8时刻的涡量图。

具体实施方式

本发明所述的对计算流体力学开源软件openfoam进行再开发,其关键是通过结合精确满足边界条件的浸入边界法,从而提高openfoam求解动边界问题的能力,并拓展其应用范围。

为了便于本领域技术人员的理解,下面对本发明作进一步的说明,实施方式提及的内容并非对本发明的限定。

本发明的一种基于openfoam再开发的动边界问题计算方法,包括如下:

对于不可压粘性流动问题,在笛卡尔坐标系(x,y,z)下的控制方程写为:

▽·u=0(2)

其中,式(1)为动量方程,式(2)为连续方程;u为流场的速度矢量,p为压强,f为作用在流场中的外力(一般情况下,f=0);re为雷诺数(它与流动的特征速度、特征长度和流体粘性有关),t为时间,为空间偏导数算子;

对上述式(1)、式(2)进行运算求解后,得到关于压强和速度的泊松方程:

2p=-▽·(u▽u)(3)

求解式(3),得到流场的压强,流场的速度从式(1)求得;

为了数值求解上述控制方程,开源软件openfoam采用了固定的结构化网格对计算区域进行离散,速度与压强耦合的求解使用了压强隐式算子分裂算法(对应openfoam中自带的pisofoam求解器),时间离散使用了欧拉隐式方法。

对于固定物体的绕流问题,使用openfoam都能求得合适的结果并获得完整的流场信息。但是,由于现有的openfoam求解器是基于固定的计算网格,它无法有效地处理运动物体的绕流问题。

为了进一步拓展openfoam的应用范围,提高其处理动边界问题的能力,有必要对openfoam进行再开发。当前,基于固定网格的动边界处理方法有若干种,其中浸入边界法是一种应用较为广泛的方法。

本发明在openfoam的框架下,引入一种精确满足边界条件的浸入边界法。其基本思想是用一组体积力代替物体边界对流场的影响。

动量方程中的f在物体周围不为零;为了精确满足边界,f通过流场速度修正δu进行求解,而δu则由边界速度修正δub确定,控制方程组为:

ax=b

其中,

式中,m为边界点个数,n为边界周围计算网格点的个数,δ和δb分别为:

l=1,…,m;其中为delta函数,其是连接计算网格点x和边界点xb的桥梁;δx,δy,δz为计算网格的步长,δsl为单位边界元的长度;ub为边界的速度,其由所研究的问题确定;u*为流体速度的中间值,其可以由pisofoam求解器确定。在求得δub后,流场速度修正为:

而外力f通过关系式f=δu/δt求得,其中δt为时间步长;这样,考虑了外力影响的流场速度为:

u=u*+δu。

在openfoam中引入浸入边界法后,求解问题的步骤为:

a.利用pisofoam求解器计算不含物体(f=0)的动量方程和泊松方程,得到中间速度u*和中间压强p*

b.采用精确满足边界条件的浸入边界法,得到包含物体的流场速度u;

c.利用pisofoam求解器再次计算泊松方程,得到包含物体的流场压强p。

如图1a、图1b所示,本发明所述的方法能准确有效地模拟三维静止圆环的绕流问题,其中图1a是雷诺数re=150的结果,图1b是雷诺数re=180的结果。如图2a-2d所示,本发明所述的方法也能准确有效地模拟三维圆盘的下落问题,其中图2a-2d分别是一个周期内t0时刻、t0+0.6时刻、t0+1.2时刻、t0+1.8时刻的结果。

本发明具体应用途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进,这些改进也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1