一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种移植FENE-P模型构建OpenFOAM求解器的方法

2022-11-23 17:07:17 来源:中国专利 TAG:

一种移植fene-p模型构建openfoam求解器的方法
技术领域
1.本发明涉及湍流理论与模拟、计算流体力学领域,是一种移植fene-p模型构建openfoam求解器方法。


背景技术:

2.作为经典物理学中最后一个未被解决的问题,湍流问题一直深深的吸引着众多科研工作者。当前湍流研究可分为数值模拟计算和实验两个大的方向。而数值模拟又可分为直接数值模拟、雷诺平均方法以及大涡模拟。对于数值模拟而言,目前的选择可以是用商业软件(如:fluent)或者是开源软件(如:openfoam)进行科学计算。
3.计算流体力学(cfd)是通过数值方法求解流体力学控制方程,得到流场的离散定量描述,并以此预测流体运动规律的学科。
4.精细化可扩展的非线性弹性(fene-p)模型最初是基于弹性哑铃表示聚合物分子而开发的,每个分子的端到端向量自然地与构象张量相关,因此这一类模型的本构方程经常作为构象张量的函数来编写和处理。
5.现有的开源cfd软件对于成熟的商业软件相对固定,用户的自由度不高,对于求解器的构建方式不能适应的用户的需要。同时,现有技术对于湍流研究问题上的研究突破尚少。


技术实现要素:

6.本发明的目的在于提供了一种移植fene-p模型构建openfoam求解器方法,总结出一套迁移本构模型代码至rheotestfoam上构建全新求解器,从而进行本构模型验证的流程方法,以此实现快速本构模型的验证,为研究湍流进行流体力学计算的下一步工作奠定基石。
7.为了达到上述目的,在本发明提供了一种移植fene-p模型构建openfoam求解器的方法,其特征在于,包括:
8.s1、对fene-p模型的源代码进行选取,确认fene-p模型的本构方程对应的代码;
9.s2、修改rheoteatfoam的teqn.h,将fene-p模型的本构方程对应的代码移植到teqn.h;
10.s3、修改rheoteatfoam的creatfields.h,定义新的变量如:步骤s13中的变量tensora、lambda1、l_2等)、注释无关变量(即源程序中所含有的变量,如:a、lambda、l等);
11.s4、选定环境进行编译,确定openfoam求解器编译的位置;
12.s5、编译完成后对openfoam求解器进行验证。
13.进一步地,所述步骤s1,具体包括:
14.s11、确定fene-p模型的本构方程,fene-p模型的本构方程如下所示:
15.16.其中τ是额外应力,tr(τ)为应力τ的迹,l为聚合物的最大拉伸,为应力的物质导数,则为速度散度的转置,η
p
是聚合物粘度,表示求物质导数,i为单位张量;
17.s12、确认所述方程每一项所对应的代码;
18.s13、组合成一个完整的符合openfoam编程语法的fene-p模型的本构方程代码。
19.进一步地,所述步骤s2,具体为:
20.将所述一个完整的符合openfoam编程语法的fene-p模型的本构方程代码移植到rheotestfoam求解器上,通过编译的方式来形成一个求解器。
21.进一步地,所述步骤s3,具体步骤为:
22.对所述一个完整的符合openfoam编程语法的fene-p模型的本构方程代码的变量进行定义,以及需要定义rheotestfoam原始功能所涉及的速度场变量。
23.进一步地,所述步骤s4,具体为:安装适应不同版本openfoam的环境,选取环境,构建fene-p求解器,比如:需要指定需要调用的gcc、petsc、slepc、cmake版本和相应位置,从而构建fene-p求解器。
24.进一步地,所述fene-p求解器只能在编译的环境下被调用。
25.进一步地,所述openfoam求解器的修改方式为编辑make/files,将所述openfoam求解器名称改为fene-p。
26.进一步地,所述s5的具体验证方法分为线性和非线性,验算标准场的拉伸和剪切的条件下,相应公式为:
[0027][0028][0029]
其中,公式中出现的下标e和s分别表示的是extend与shear,ε为验算时所选取的应变率,σ
xx
和σ
yy
为张量σ的两个元素。
[0030]
进一步地,所述张量σ有9个元素,表示如下:
[0031][0032]
其中,x、y、z表示为矢量的三个分量,此处的σ为张量具有9个元素,其分量分别以公式中所示的xx、yy等分量名来表示。
[0033]
进一步地,对rheotestfoam与fene-p求解器在所述标准场的拉伸和剪切的条件下的拉伸粘度和剪切粘度生成的数据图对比,判断fene-p求解器是否构建成功。
[0034]
本发明的有益技术效果至少在于以下几点:
[0035]
(1)本发明的一种移植fene-p模型构建openfoam求解器的方法,给予用户极大的
自由度,用户可以根据自身需求构建求解器;
[0036]
(2)通过一套迁移本构模型代码至rheotestfoam上构建全新求解器,从而进行本构模型验证的流程方法,以此实现快速本构模型的验证,为研究湍流进行流体力学计算的下一步工作奠定基石。
附图说明
[0037]
利用附图对本发明作进一步说明,但附图中的实施例不构成对本发明的任何限制,对于本领域的普通技术人员,在不付出创造性劳动的前提下,还可以根据以下附图获得其它的附图。
[0038]
图1为本发明一种移植fene-p模型构建openfoam求解器的方法流程图。
[0039]
图2为本发明wi=0.1时非线性构建的fene-p求解器与rheotestfoam生成数据的对比验证实施例图。
[0040]
图3为本发明wi=10时线性构建的fene-p求解器与rheotestfoam生成数据的对比验证实施例图。
具体实施方式
[0041]
下面对本发明的具体实施方案进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化再所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
[0042]
如图1所示,本发明提供了一种移植fene-p模型构建openfoam求解器的方法。
[0043]
具体实施方式:
[0044]
s1、对fene-p模型的源代码进行选取,确认fene-p模型的本构方程对应的代码;
[0045]
s2、修改rheoteatfoam的teqn.h,将fene-p模型的本构方程对应的代码移植到teqn.h;
[0046]
s3、修改rheoteatfoam的creatfields.h,定义新的变量(如:步骤s13中的变量tensora、lambda1、l_2等)、注释无关变量(即源程序中所含有的变量,如:a、lambda、l等);
[0047]
s4、选定环境进行编译,确定openfoam求解器编译的位置,注意调整构建的求解器的名称;
[0048]
s5、编译完成后对openfoam求解器进行验证,生成的数据与标准的rheotestfoam数据在保证同意参数下进行对比。
[0049]
进一步地,s1的具体方法:
[0050]
s11、确定fene-p模型的本构方程,弄清方程每一项的意义;
[0051]
s12、敲定方程每一项所对应的代码;
[0052]
s13、组合成一个完整的符合openfoam编程语法的fene-p本构方程代码。
[0053]
步骤s11所对应的本构方程:τ
*
=τ τs。
[0054][0055]
[0056]
步骤s13实现的具体fene-p本构方程代码:
[0057][0058]
步骤s2的具体方法为:
[0059]
将s1完成的本构方程代码移植到rheotestfoam求解器上,通过编译来形成一个满足自身科研需求的求解器,这一个工作关键在于将openfoam语法的本构模型相应的代码移植到rheotool上,由于有些语法的差异,因而容易导致编译时报错。需要将openfoam语法的本构模型相应的代码按照rheotool的语法编写到teqn.h。
[0060]
另外,要注意在编译求解器时报错量纲错误,这个错误的来源在于构建本构方程时,没有考虑到本构方程两端的量纲统一,因此在构建本构方程的代码时,要考虑到量纲问题。
[0061]
所述步骤s3的具体方法为:
[0062]
通过步骤s2将合适的fene-p模型的本构方程代码按照rheotool语法移植到rheotestfoam,但构建一个新本构模型的求解器,并非只是将本构方程进行修改,还需要对本构方程所需要的变量进行相应的修改,这其中包括缺少变量的添加,多余变量的注释或删除。需要注意的是,找到每个变量所对应的类,有的变量是常数,有的变量是矢量,有的是张量,有的变量则是场。若是变量的类不能找到其正确的,则编译成功的求解器计算出的数据也是会有问题的。
[0063]
根据步骤s13的本构方程代码,需定义的变量:
[0064][0065][0066]
述步骤s4的具体方法为:
[0067]
在做流体计算的大前提下,需要安装适应不同版本openfoam的环境。因此,在编译构建的fene-p求解器时,应该注意环境的选取,一旦编译成功,fene-p求解器只能就只能是在编译的环境下才能被调用。此外,在编译前还需注意的一个点是,构建的求解器的名称,可以通过编辑make/files进行修改。
[0068]
如下:
[0069]
1rheotestfoam.c
[0070]
4exe=$(foam_user_appbin)/fene-p_rtf
[0071]
此处的fene-p_rtf就是我所构建的fene-p本构模型求解器的名称,在运算算例是只需调用环境并输入fene-p_rtf就可使用该求解器。
[0072]
步骤s5的具体方法为:
[0073]
分线性和非线性两个部分,验算标准场下的拉伸、剪切,相应公式:
[0074]
[0075][0076]
其中,ε为验算时所选取的应变率,σ
xx
和σ
yy
为张量σ的两个元素。
[0077]
如图2和图3,wi=0.1时,非线性的数据和wi=10,线性时的数据,通过对比rheotestfoam与构建的fene-p求解器在拉伸和剪切的条件下的拉伸粘度和剪切粘度,其生成的数据图是否完全重合,即可判断求解器是否构成功。
[0078]
综上所述,本专利提出了一种移植fene-p模型构建openfoam求解器的方法,可以根据科研需求基于本构方程创建一套快速构建openfoam求解器的流程和方法,并且包括了验证求解器的验证,为更加深入的研究湍流问题提供了提供有力保障。
[0079]
尽管已经示出和描述了本发明的实施例,本领域技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变形,本发明的范围由权利要求及其等同物限定。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献