Fluent_udf文件问题
不是很明白udf的构造以及运行机制,比如#include"udf.h"DEFINE_PROFILE(unsteady_pressure,thread,position){...
不是很明白udf的构造以及运行机制,比如#include"udf.h"
DEFINE_PROFILE(unsteady_pressure,thread,position)
{
float t,pressure;
face_t f;
t=RP_Get_Real("flow-time");
pressure=156000*sin(125600*t);
begin_f_loop(f,thread)
{
F_PROFILE(f,thread,position)=pressure;
}
end_f_loop(f,thread)
}
这个文件,第一行定义了什么,括号内的三个“unsteady_pressure,thread,position”,代表什么意思,顺序能更换吗?哪里可以下载到非常详细的教程或者哪本书比较好?我需要了解到里面每一行语句以及每条语句里面每个变量代表什么意思?请求帮助,我多多给分 展开
DEFINE_PROFILE(unsteady_pressure,thread,position)
{
float t,pressure;
face_t f;
t=RP_Get_Real("flow-time");
pressure=156000*sin(125600*t);
begin_f_loop(f,thread)
{
F_PROFILE(f,thread,position)=pressure;
}
end_f_loop(f,thread)
}
这个文件,第一行定义了什么,括号内的三个“unsteady_pressure,thread,position”,代表什么意思,顺序能更换吗?哪里可以下载到非常详细的教程或者哪本书比较好?我需要了解到里面每一行语句以及每条语句里面每个变量代表什么意思?请求帮助,我多多给分 展开
3个回答
展开全部
建议lz花点时间看下 C 语言基础
这是一个定义压力边界条件的UDF,用到一些宏,可以查FLUENT 的 UDF 文档
#include "udf.h" /* udf.h 文件包含了UDF相关的常用函数或类型的声明 */
DEFINE_PROFILE(unsteady_pressure, thread, position) /*这其实是一个宏,展开后是函数类型的声明,unsteady_pressure是函数名,其他两个是参数,用来遍历边界面上单元 */
{
float t,pressure;
face_t f;
t=RP_Get_Real("flow-time"); /*这里调用了获取流动模拟的物理时间函数*/
pressure=156000*sin(125600*t); /*压力值是时间的函数*/
begin_f_loop(f,thread) /* 遍历面上的所有单元,这个是图形界面上选择压力边界为“unsteady_pressure”的面 */
{
F_PROFILE(f,thread,position)=pressure; /* 设置单元面上的压力值 */
}
end_f_loop(f,thread)
}
追问
非常感谢您的帮助,不过我还有几个问题:
首先,udf中调用的函数(比如这里获取流动模拟的物理时间函数)自己在用之前都要清楚,可是自己怎么才能知道到底需要哪个函数呢?
其次,C语言我几年前看过一段时间,时间太久,有点遗忘,现在需要弥补哪方面的知识?
再次,看到您上面的这个程序,我想问一下,您是用什么编程软件呢?
最后,再次感谢您的帮助,在以后能否继续帮助我?怎么才能更方面的得到您的帮助?
追答
最重要的是查文档和代码。
C 语言的话,至少要看一遍UDF文档里讲的C语言基础吧。
编程的话,简单的就用文本编辑器,深入些就用专业的代码编辑器或Visual Studio 等IDE
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询