请教UDF铺层动网格的问题

浏览:1571 回答:3

Lz最近在学习UDF动网格,花了很多功夫了,最近在网上下载了一个老师做的二维动网格,并试运行了一下,网格能运动。但lz有以下一些疑问。UDF源程序很简单,模拟的是一个活塞的上下运动,速度函数是一个正弦曲线:

 

#include "udf.h"

#include "dynamesh_tools.h"

DEFINE_CG_MOTION(piston, dt, vel, omega, time, dtime)

{

  /* reset velocities */

  NV_S (vel, =, 0.0);

  NV_S (omega, =, 0.0);

 

 

  /* compute velocity formula */

  /*pas de temps idela pour cette fonction dtime=.02*/

  vel[2]=0.25*2*3.14159*sin(2*3.14159*time);

 

  printf("\n");

  printf("\n z_velocity = %g \n",vel[2]); 

}

 

我运行的时候也能正常的看到网格的上下运动,但是有两个疑问:

(1)       上面程序中,按DEFINE_CG_MOTION函数的规则,vel[0], vel[1]分别代表x、y方向的速度。但是程序里定义的是vel[2],表示的是z方向的速度。为什么程序还能正常运行?

(2)       我打开人家做好的cas文件,不编译UDF文件,就可以预览动网格了,这是不是说明cas里已经包含了人家编译好的udf?

(3)       点击preview预览动网格的运动,下面这个current mesh time会自动累加,而且过了2秒之后网格就不在运动,这是为什么?而且current mesh time是我无法修改的,怎么才能修改呢?如果正式开始仿真,仿真起始会不会从下图的5.5秒开始?

求高手指点一二,不胜感激!

QQ图片20200402093231.jpg


邀请回答 我来回答

全部回答

(2)
默认 最新
CAE从业者
自己研究,会理解深刻的多,支持
2020年4月2日
评论 点赞
仿真工匠

这种不需要写udf,直接在gui上就能搞定。如果你在练习udf,当我没说

2020年4月2日
评论 1 点赞

没解决?试试专家一对一服务

换一批