fluent udf 无法在fluent中解释

#include "udf.h" #define R 0.01 #define Q 7 #define PI 3.14159 #DEFINE_SOURCE(gaussian_heat_source,c,t,dS,eqn){ real x; real r,source; C_CENTROID (x,c,t); r=sqrt(y*y); if(r<=R){ source=Q/(PI*R*R*r)*exp(-3*r*r/R/R); } else source=0; return source; } line 11: parse error. 什么问题
#include "udf.h"

#define R 0.01
#define Q 7
#define PI 3.14159

#DEFINE_SOURCE(gaussian_heat_source,c,t,dS,eqn){
real x;
real r,source;

C_CENTROID (x,c,t);
r=sqrt(x*x);
if(r<=R){
source=Q/(PI*R*R*r)*exp(-3*r*r/R/R);
}
else source=0;
return source;
}

第1个回答  2014-08-29
define前有#没错,DEFINE不加#,去掉。
real x;改为real x[ND_ND];
告你一个PI的稍微精确的值:3.14159265(35898);

r=sqrt(x*x),你的意思是想r为正数,改x为x[1],即r=sqrt(x[1]*x[1]);(我记得0表示x方向,1表示y方向,2表示z方向,但有些资料不是这么解释的,都直接用1,无论如何,你可以试试看)

祝好。追问

嗯。
C_CENTROID (x,c,t);这行有问题么,程序总是到这行提示parse error

追答

错误是在哪里提示的?你在FLUENT中试过吗?

追问

我好想知道了,我多加了个#。。。。

本回答被提问者和网友采纳
第2个回答  2014-08-28
建议参考Fluent UDF帮助文档。UDM 就是 User Defined Memory,用来存储自定义的变量。

C_UDMI(c,t,0) 就是访问该网格单元对应的值,其中 0 表示编号为0的UDM变量(UDM变量从0开始编号)
满意请采纳。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网