首页/文章/ 详情

如何在Fluent中利用某方程残差进行调整设置

7月前浏览2801

在Fluent中可以通过特定方程的残差来进行求解设置调整,比如通过监测连续性方程的残差来动态调整时间步长。例如:当连续性方程残差大于0.01时将时间步长减小为0.001s, 反之则将时间步长增大至0.1s。本文旨在提供类似需求的一个通用方法。



(1)问题描述

如何通过特定方程的残差来进行求解设置调整。


(2)解决思路

1.使用scheme语言命令获取特定方程的当前迭代步残差;

2.对获取的值进行判断并调整相关设置。


(3)获取特定方程的当前迭代步残差

在右侧残差图中,有6个方程。

以取连续性方程continuity残差为例

-(car(%residual-history 'continuity 1))

-这里取出来的值为real类型

同理,取其它方程方式残差命令为

-(car(%residual-history 'x-velocity 1))

-(car(%residual-history 'y-velocity 1))

-(car (%residual-history 'z-velocity 1))

-(car(%residual-history 'energy 1))

图片


(4)定义named expression并赋值

· 首先定义一个表达式(expression);

· 然后用命令行将获取的残差给表达式(expression)赋值,以下为测试语句

/define/named-expressions/edit "residua_continuity" definition (number->string (car (%residual-history 'continuity 1 ))) q 

图片


(5)时时更新Expression的值

时时更新Expression的值需要使用Execute commands,将上面的TUI命令设置如下即可。

注意:由于获取残差的操作会使得计算变慢,因此这里可以通过每隔一定迭代步数(比如20)更新一次。

图片

(6)利用Expression进行设置调整

图片
通用Fluent
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-03-07
最近编辑:7月前
笛佼科技
主营Ansys业务
获赞 109粉丝 47文章 82课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈