
热源项的一个简单udf编译报错,求帮助
求帮忙解决这个问题:目的是定义体积热源项于一个圆柱的靠近外壁面区域,现在写了这么一段udf,但是fluent开始interpret就提示12行有语法错误,捉急!!!也就是...
求帮忙解决这个问题:
目的是定义体积热源项于一个圆柱的靠近外壁面区域,现在写了这么一段udf,但是fluent开始interpret就提示12行有语法错误,捉急!!!
也就是想要实现取圆柱的任一截面,若sqrt(x2+y2)>0.9R,则热源项为5000,否则为0.
附上源码:
#include "udf.h"
#define R 50.0
DEFINE_SOURCE(heat_source,c,t,cylinder)
{
real x[ND_ND];
float source;
cell_t c;
Thread *t;
C_CENTROID(x,c,t);
{/*比较某点坐标是否在圆面的90%区域以内*/
if(sqrt((pow(x[0],2.)+pow(x[1],2.))>0.9*R))
source=5000;
else
source=0;
}
return source;
}
新手没接触过udf,有错误请大神指出,最好是帮小弟修改一下,使之能够运行,感激不尽! 展开
目的是定义体积热源项于一个圆柱的靠近外壁面区域,现在写了这么一段udf,但是fluent开始interpret就提示12行有语法错误,捉急!!!
也就是想要实现取圆柱的任一截面,若sqrt(x2+y2)>0.9R,则热源项为5000,否则为0.
附上源码:
#include "udf.h"
#define R 50.0
DEFINE_SOURCE(heat_source,c,t,cylinder)
{
real x[ND_ND];
float source;
cell_t c;
Thread *t;
C_CENTROID(x,c,t);
{/*比较某点坐标是否在圆面的90%区域以内*/
if(sqrt((pow(x[0],2.)+pow(x[1],2.))>0.9*R))
source=5000;
else
source=0;
}
return source;
}
新手没接触过udf,有错误请大神指出,最好是帮小弟修改一下,使之能够运行,感激不尽! 展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏80(财富值+成长值)
展开全部
#include "udf.h"
#define R 50.0
DEFINE_SOURCE(heat_source,c,t,cylinder)
{
real x[ND_ND];
float source;
cell_t cc;(。。。)
Thread *tt; (。。。。)
C_CENTROID(x,cc,tt); (。。。。)
{
if(sqrt(pow(x[0],2.)+pow(x[1],2.))>0.9*R)(。。。)
source=5000;
else
source=0;
}
return source;
}
请注意cc tt还有if括号里的东西,你的括号打的有点乱。还有就是DEFINE_SOURCE(xmom_source,c,t,dS,eqn)这个格式才是正确的,你少了一项。尽量多看fluent中自带的帮助文件。
#define R 50.0
DEFINE_SOURCE(heat_source,c,t,cylinder)
{
real x[ND_ND];
float source;
cell_t cc;(。。。)
Thread *tt; (。。。。)
C_CENTROID(x,cc,tt); (。。。。)
{
if(sqrt(pow(x[0],2.)+pow(x[1],2.))>0.9*R)(。。。)
source=5000;
else
source=0;
}
return source;
}
请注意cc tt还有if括号里的东西,你的括号打的有点乱。还有就是DEFINE_SOURCE(xmom_source,c,t,dS,eqn)这个格式才是正确的,你少了一项。尽量多看fluent中自带的帮助文件。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询