| 查看: 2194 | 回复: 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 |
» 猜你喜欢
三甲基碘化亚砜的氧化反应
已经有4人回复
请问下大家为什么这个铃木偶联几乎不反应呢
已经有5人回复
请问有评职称,把科研教学业绩算分排序的高校吗
已经有5人回复
孩子确诊有中度注意力缺陷
已经有12人回复
2025冷门绝学什么时候出结果
已经有3人回复
天津工业大学郑柳春团队欢迎化学化工、高分子化学或有机合成方向的博士生和硕士生加入
已经有4人回复
康复大学泰山学者周祺惠团队招收博士研究生
已经有6人回复
AI论文写作工具:是科研加速器还是学术作弊器?
已经有3人回复
论文投稿,期刊推荐
已经有4人回复
硕士和导师闹得不愉快
已经有13人回复
» 本主题相关商家推荐: (我也要在这里推广)
» 本主题相关价值贴推荐,对您同样有帮助:
FLUENT中编写UDF时指针变量是否要初始化
已经有4人回复
fluent14编译UDF时总是出错,求高手啊!!!难道没人遇到过吗???
已经有11人回复
UDF编译时出现语法错误
已经有13人回复
fluent udf的应用
已经有20人回复
Fluent中UDF的编译问题
已经有25人回复
fluent UDF代码调用预定义程序的问题(如fortran程序)
已经有15人回复
ANSYS FLUENT 14 UDF 编译错误 求助
已经有15人回复
fluent试图编译udf时,点击add source files出现错误提示
已经有6人回复
fluent中通过UDF获得系统时间
已经有15人回复
64位计算机 64位fluent 64位c语言 无法使UDF运行
已经有7人回复
FLUENT UDF 编译通过,初始化出错的原因???求助
已经有4人回复
【求助】FLUENT UDF 气液两相流 汽蚀 汽化潜热(问题详见内容)
已经有21人回复
fluent中用udf编写三维速度边界条件出现错误,大家来指导一下啊
已经有9人回复
udf编程通过,但是在FLUENT中运行出错,麻烦udf高手帮忙看看
已经有4人回复
fluent 在udf编译时出'constant'错!
已经有6人回复
求助:UDF模型的编译问题
已经有15人回复
udf 编译过程中出错,紧急
已经有8人回复
【求助】UDF编译出现的问题
已经有6人回复
【求助】fluent计算中,udf编译通过,初始化出错
已经有11人回复

leixiaobo713
银虫 (正式写手)
- 应助: 1 (幼儿园)
- 金币: 1228.5
- 散金: 148
- 红花: 4
- 帖子: 490
- 在线: 121.9小时
- 虫号: 1997539
- 注册: 2012-09-13
- 性别: GG
- 专业: 金属功能材料

3楼2013-07-15 09:15:09
【答案】应助回帖
★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
leixiaobo713: 金币+10, ★★★★★最佳答案 2013-07-15 09:03:30
xiegangmai: 金币+2, 谢谢参与! 2013-07-24 20:58:09
感谢参与,应助指数 +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
leixiaobo713
银虫 (正式写手)
- 应助: 1 (幼儿园)
- 金币: 1228.5
- 散金: 148
- 红花: 4
- 帖子: 490
- 在线: 121.9小时
- 虫号: 1997539
- 注册: 2012-09-13
- 性别: GG
- 专业: 金属功能材料
|
我按照你的说法把程度改了下,如下: #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
wudeshou
铁杆木虫 (正式写手)
- 应助: 8 (幼儿园)
- 金币: 8990.6
- 散金: 1100
- 红花: 5
- 帖子: 599
- 在线: 220.5小时
- 虫号: 900698
- 注册: 2009-11-11
- 性别: GG
- 专业: 工程热物理相关交叉领域
★
xiegangmai: 金币+1, 谢谢参与! 2013-07-24 20:58:19
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














回复此楼

leixiaobo713