FLUENT动网格宏——DEFINE_CG_MOTION宏
2016-08-29 by:CAE仿真在线 来源:互联网
译自《FLUENT UDF手册》,2.6.1节
1、描述
通过使用DEFINE_CG_MOTION宏来指定特定动态区域的运动。该宏能够指定每一时间步的线速度与角速度。ANSYS FLUENT利用这些速度更新动态区域的节点位置。该宏只能用于编译型。
2、语法说明
DEFINE_CG_MOTION(name,dt,vel,omega,time,dtime)
(1)name:宏名,由用户指定,需要符合UDF中宏命名规范。
(2)dt:类型为Dynamic_Thread *dt,是一个包含了用户指定的动网格属性结构的指针。
(3)vel:数据类型为real vel[],速度向量,vel[0]表示x方向线速度,vel[1]表示y方向,vel[2]为Z方向。
(4)omega:real omega[],角速度向量。索引为0~2,分别表示x,y,z方向角速度。
(5)time:类型为real,表示当前时间。
(6)dtime:类型为real,表示时间步
该宏的返回类型为void
此宏包含有六个参数,其中name是用户提供,其他的参数如dt,vel,omega,time,dtime均有ansys fluent求解器传递。线速度与角速度能返回至ansys fluent。
3、实例
以下的例子中,线速度是通过物体上的x方向的力平衡达到的。表达形式为:
此处v为速度,F为外力,m为质量。使用显示欧拉格式表达t时刻速度为:
程序如下:
#include “udf.h”
static real v_prev=0.0;
DEFINE_CG_MOTION(piston,dt,vel,omega,time,dtime)
{
Thread *t;
face_t f;
real NV_VEC(A);
real force,dv;
NV_S(vel,=,0);
NV_S(omega,=,0);
if(!Data_Valid_P())
{
return ;
}t=DT_THREAD(dt);
force = 0.0;
begin_f_loop(f,t)
{
F_AREA(A,f,t);
force += F_P(f,t)* NV_MAG(A);
}
end_f_loop(f,t)
dv = dtime * force /50.0;
v_prev += dv;
Message(“time =%f, x_vel=%f, force=%f\n”,time,v_prev,force);
vel[0] = v_prev;
}
相关标签搜索:FLUENT动网格宏——DEFINE_CG_MOTION宏 Fluent培训 Fluent流体培训 Fluent软件培训 fluent技术教程 fluent在线视频教程 fluent资料下载 fluent分析理论 fluent化学反应 fluent软件下载 UDF编程代做 Fluent、CFX流体分析 HFSS电磁分析