24小时热门版块排行榜    

查看: 2870  |  回复: 6

leixiaobo713

银虫 (正式写手)

[求助] fluent中UDF编译的问题!

本人现在做fluent模拟的问题,需要用UDF对热源进行编译。其中热源是随时间变化的,当时间t=0时,热源为一个关于温度的函数,当t不等于0时,热源为0(也就是材料仅有一个初始热源)。下面为所编程序,但是老是出错,请高手指教,感激不尽!
#include "udf.h"
DEFINE_SOURCE(source_terms,c,t,dS,eqn)
{
real A=0.01;
real B=0.02;
real C=0.001;
real D=0.001;
real T=C_T(c,t);
real t=RP_Get_Real("flow-time" );
real source;
if(t=0)
  source=A*T+B*pow(T,2)+C*pow(T,3)+D*pow(T,4);
else
  source=0;
dS[eqn]=0;
return source;
}
结果interpreted时出现下面提示:
t definition shadows previous definition
Error: C:\Documents and Settings\Administrator\\327\300\303\346\Source terms.c: line 14: invalid expression type for if: float.
不知如何解决啊,里面既有时间t, 也有real T=C_T(c,t);

[ Last edited by leixiaobo713 on 2013-7-14 at 23:57 ]
回复此楼

» 收录本帖的淘帖专辑推荐

Fluent UDF

» 猜你喜欢

» 本主题相关商家推荐: (我也要在这里推广)

» 本主题相关价值贴推荐,对您同样有帮助:

天道酬勤!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pointh

金虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
leixiaobo713: 金币+10, ★★★★★最佳答案 2013-07-15 09:03:30
xiegangmai: 金币+2, 谢谢参与! 2013-07-24 20:58:09
有两个问题:
1.你想用时间变量t,但这个t在宏DEFINE_SOURCE里面已经定义了;
2.“if (t=0)”这种写法不太好,因为计算机里面的数和我们想的不太一样,我们认为是0,但计算机里面它可能是0.00000000001这种,因此你判断等于时一定要注意一下。像这种你最好写成“if (t<1e-10)”之类的。
2楼2013-07-15 09:01:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

leixiaobo713

银虫 (正式写手)

引用回帖:
2楼: Originally posted by pointh at 2013-07-15 09:01:11
有两个问题:
1.你想用时间变量t,但这个t在宏DEFINE_SOURCE里面已经定义了;
2.“if (t=0)”这种写法不太好,因为计算机里面的数和我们想的不太一样,我们认为是0,但计算机里面它可能是0.00000000001这种,因此 ...

多谢你的回复与指点,对于时间在DEFINE中已经定义,我是注意到的,因为是初学者,我不能确定DEFINE中定义的t是否就是时间t,因为C_T(c,t)为返回网格的温度。我在其他的一些程序中发现,对于一些参数,如热源,流速等随时间的变化,对t的定义都是通过real t=RP_Get_Real("flow-time" );来进行定义的。
天道酬勤!
3楼2013-07-15 09:15:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

leixiaobo713

银虫 (正式写手)

引用回帖:
2楼: Originally posted by pointh at 2013-07-15 09:01:11
有两个问题:
1.你想用时间变量t,但这个t在宏DEFINE_SOURCE里面已经定义了;
2.“if (t=0)”这种写法不太好,因为计算机里面的数和我们想的不太一样,我们认为是0,但计算机里面它可能是0.00000000001这种,因此 ...

我按照你的说法把程度改了下,如下:
#include "udf.h"
DEFINE_SOURCE(source_terms,c,t,dS,eqn)
{
real A=0.01;
real B=0.02;
real C=0.001;
real D=0.001;
real T=C_T(c,t);
real source;
if(t<1e-10)
  source=A*T+B*pow(T,2)+C*pow(T,3)+D*pow(T,4);
else
  source=0;
dS[eqn]=0;
return source;
}
但是interpreted后出现下面的提示:
line 10: invalid type for binary expression: pointer to structure < float.
天道酬勤!
4楼2013-07-15 09:32:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wudeshou

铁杆木虫 (正式写手)


xiegangmai: 金币+1, 谢谢参与! 2013-07-24 20:58:19
if(t=0)
   source=A*T+B*pow(T,2)+C*pow(T,3)+D*pow(T,4);
else
   source=0;

t=0是赋值,判断用==

» 本帖已获得的红花(最新10朵)

无止境--环保--近零排放--多相流--晶体生长--数值计算
5楼2013-07-15 12:09:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

leixiaobo713

银虫 (正式写手)

送红花一朵
引用回帖:
5楼: Originally posted by wudeshou at 2013-07-15 12:09:40
if(t=0)
   source=A*T+B*pow(T,2)+C*pow(T,3)+D*pow(T,4);
else
   source=0;

t=0是赋值,判断用==

真是多谢指点!!!
天道酬勤!
6楼2013-07-15 13:48:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

二亚

铜虫 (初入文坛)

太厉害了,呵呵
信念的力量是伟大的
7楼2013-09-28 17:22:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 leixiaobo713 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 今天系统多次维护,明天很可能放榜! +5 zju2000 2026-08-16 5/250 2026-08-16 23:23 by Haru815
[论文投稿] 岩土工程学报什么时候才能终审完呐 25+3 yeager111 2026-08-10 4/200 2026-08-16 20:42 by tfang
[基金申请] 2027广东省杰青 +3 奶牛小黑 2026-08-15 6/300 2026-08-16 20:07 by 奶牛小黑
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +10 majunge000 2026-08-11 12/600 2026-08-16 08:18 by xli1984
[精细化工] 招聘 金属平磨液,抛光液研发工程师 +3 小天0311 2026-08-14 3/150 2026-08-16 07:31 by H9PLUS
[基金申请] filecode=后面第一个是大写字母 +6 wangze12014 2026-08-14 7/350 2026-08-15 20:12 by gltch
[基金申请] filecode +8 cratir 2026-08-14 12/600 2026-08-15 18:08 by zyfgau
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +12 Tide man 2026-08-10 13/650 2026-08-15 16:34 by 氺木
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +8 布布和一二 2026-08-10 11/550 2026-08-14 14:58 by Equinoxhua
[硕博家园] 读博的好处 +4 lnee 2026-08-11 4/200 2026-08-14 10:20 by ahsoarli
[基金申请] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
信息提示
请填处理意见