Fluent动网格【9】:区域运动
本文所述的区域运动并非动网格中的运动域,而是指在多参考系(MRF)或滑移网格中所涉及到的区域的运动。
在滑移网格中指定区域运动时,除了能够指定绝对运动外,还能指定某一区域与其他区域间的相对运动,如图所示。
区域运动的指定,除了可以采用Profile文件外,还可以利用UDF宏DEFINE_TRANSIENT_PROFILE及DEFINE_ZONE_MOTION。这两个宏均可采用解释及编译形式加载。
DEFINE_TRANSIENT_PROFILE
此宏主要用于替代Profile文件,指定网格区域随时间变化规律。
该UDF宏的形式为:
DEFINE_TRANSIENT_PROFILE(name,current_time)
其中:
name:自定义的宏的名称
current_time:当前时间
在宏文件中,用户需要显式返回值。
简单的示例:
若将宏中的rotation指定给某一角速度分量,如omega_x,则该宏等同于PROFILE文件:
需要注意的是,一个UDF宏只能指定一个速度分量。若需要指定多个速度分量的话,则需要写多个宏。宏的加载如下图所示。此宏即可表示旋转,也可以用于平移。
DEFINE_ZONE_MOTION
Fluent中还可以利用DEFINE_ZONE_MOTION宏定义区域的运动。该宏的形式:
DEFINE_ZONE_MOTION(name,omega,axis,origin,velocity,time,dtime)
其中参数:
name:symbol name。UDF名称,用户自己定义。
omega:real *omega。旋转角速度指针,默认值为0。
axis:real axis[3]。旋转轴向量数组。在2D平面模型中,默认值为(0 0 0);对于2D轴对称模型,默认值为(1 0 0)
origin:real origin[3]。旋转轴原点。默认值(0 0 0)
velocity:real velocity[3]。平移速度向量,默认值为(0 0 0)
time:real time。当前时间
dtime:real dtime。当前时间步长
在利用此UDF时,只有name是用户指定的,其他的参数均为Fluent传入然后在宏中进行修改。。
对于前面同时存在自转和公转的案例,可以利用UDF宏DEFINE_ZONE_MOTION:
更多关于CFD内容,可微信扫描下方二维码关注微信公众号。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· ASP.NET Core 模型验证消息的本地化新姿势
· 对象命名为何需要避免'-er'和'-or'后缀
· SQL Server如何跟踪自动统计信息更新?
· AI与.NET技术实操系列:使用Catalyst进行自然语言处理
· 分享一个我遇到过的“量子力学”级别的BUG。
· 为什么AI教师难以实现
· 如何让低于1B参数的小型语言模型实现 100% 的准确率
· AI Agent爆火后,MCP协议为什么如此重要!
· 【译】Visual Studio(v17.13)中新的调试和分析特性
· Draw.io:你可能不知道的「白嫖级」图表绘制神器