本文摘要(由AI生成):
本文介绍了Fluent动网格中网格光顺的控制方法,通过两个案例演示了弹簧光顺和扩散光顺的实现过程。弹簧光顺采用Smoothing方法,使用UDF定义网格运动,通过设置变形区域、动网格设置、动网格预览等步骤实现。扩散光顺采用Diffusion方法,同样使用UDF定义网格运动,通过设置General参数、读取Profile文件、设置动网格、指定区域运动类型、网格预览等步骤实现。两个案例均采用2D、Double Precision方式启动Fluent,并读取相应的网格文件。
本案例演示Fluent动网格中网格光顺的控制方法。
以2D、Double Precision方式启动Fluent
读取网格文件metal-sheet.msh
初始网格如下图所示。
1.1 分割计算区域
变形区域需要进行分割。
点击按钮Setting Up Domain Zones → Separate → Faces...打开如下图所示对话框,按图所示设置参数,点击按钮Separate分割边界
1.2 General设置
激活Transient计算
1.3 编译UDF
点击按钮User Defined → User Defined → Functions → Compiled...打开对话框,编译UDF
源代码如下:
#include "udf.h"
#include "dynamesh_tools.h"
#define AMPL .1
#define FREQ 10.
DEFINE_GRID_MOTION(vibration1, domain, dt, time, dtime)
{
face_t f;
Thread *tf = DT_THREAD ((Dynamic_Thread *)dt);
Node *v;
real x;
int n;
/* set deforming flags */
SET_DEFORMING_THREAD_FLAG (tf->t0);
begin_f_loop (f, tf)
{
f_node_loop (f, tf, n)
{
v = F_NODE (f, tf, n);
x=NODE_X(v);
NODE_Y(v)=+AMPL*sin(M_PI*x/2)*sin(2*M_PI*FREQ*time)+0.03;
}
Update_Face_Metrics (f, tf);
}
end_f_loop (f,tf)
printf("\n x_velocity \n");
}
DEFINE_GRID_MOTION(vibration2, domain, dt, time, dtime)
{
face_t f;
Thread *tf = DT_THREAD ((Dynamic_Thread *)dt);
Node *v;
real x;
int n;
/* set deforming flags */
SET_DEFORMING_THREAD_FLAG (tf->t0);
begin_f_loop (f, tf)
{
f_node_loop (f, tf, n)
{
v = F_NODE (f, tf, n);
x=NODE_X(v);
NODE_Y(v)=+AMPL*sin(M_PI*x/2)*sin(2*M_PI*FREQ*time)-0.03;
}
Update_Face_Metrics (f, tf);
}
end_f_loop (f,tf)
}
1.4 动网格设置
激Dynamic Mesh,采用Smoothing方法
采用弹簧光顺
使用默认参数
设置变形区域metal-sheet,设置类型为User-Defined,设置Mesh motion UDF为vibration2::libudf
设置变形区域metal-sheet:003,设置类型为User-Defined,设置Mesh motion UDF为vibration1::libudf
设置区域metal-sheet:011,采用如下图所示参数
设置区域lower-left,设置其为Deforming,采用图中所示参数
设置区域upper-left,采用下图所示参数
1.5 动网格预览
采用下图所示参数预览网格运动
网格变形结果如下图所示。
以2D、Double Precision方式启动Fluent
读取网格文件diffusion.msh
计算网格如图所示。
2.1 General设置
激活Transient计算
2.2 读取Profile文件
Physics → Zones → Profiles...读取profile文件
2.3 设置动网格
激活动网格,采用Smoothing方法
采用Diffusion光顺
采用默认光顺参数
指定区域box的运动类型为Rigid Body,如下图所示设置运动参数
2.4 网格预览
保存case文件
如下图所示设置预览参数
网格运动如图所示。
2.5 改变运动为转动
读取case文件
如下图所示修改区域box的网格运动形式
设置网格预览参数
网格预览如下图所示