24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 2500  |  回复: 8

azhu081127

铜虫 (初入文坛)

[求助] 求解答--UDF中DEFINE_ADJUST报错 已有2人参与

以前使用过简单的DEFINE_PROFILE语句来定义入口边界条件,可能因为语句比较简单,所以没有出现过问题。
但最近在用FLUENT做室内热舒适评价的过程中却遇到诸多问题。为逐步解决这些问题,我决定先从最简单的计算出发,一步步解决。
但是,没想到,下面两个简单的UDF竟然会如此棘手。。。
求好心的朋友们帮忙解答~~感谢万分~~~

一、FLUENT UDF tutorial中关于DEFINE_ADJUST的UDF,求解湍流耗散的体积积分,此UDF与tutorial完全一致。

#include "udf.h"
DEFINE_ADJUST(turb_diss, d)
{
  Thread *t;
  real sum_diss=0.;
  cell_t c;
    thread_loop_c (t,d)
  {
   begin_c_loop (c,t)
       sum_diss += C_D(c,t)*C_VOLUME(c,t);
   end_c_loop (c,t)
  }
   printf("Volume integral of turbulent dissipation: %g\n", sum_diss);
}

(1)若使用Interpret功能,则可以正常运行得出结果。

(2)但若使用Compile功能,则会出现如下错误提示:
# Generating udf_names.c because of makefile turb_diss.obj
udf_names.c
udf_names.c(7) : error C2085: ‘udf_data’ : not in formal parameter list
udf_names.c(7) : error C2143: syntax error : missing ‘;’ before ‘=’
udf_names.c(8) : warning C4138: ‘*/’ found outside of comment
udf_names.c(10) : error C2065: ‘udf_data’ : undeclared identifier

(3)求助:是什么原因造成compile编译出现错误?

二、 对于自己编写一个求解摄氏度的非常简单程序:
#include "udf.h"
DEFINE_ADJUST(temp1, d)
{
  Thread *t;
  real tempa=0.;
  cell_t c;
  thread_loop_c (t,d)
  {
   begin_c_loop (c,t)
       tempa = C_T(c,t) - 273.15;
       C_UDSI(c,t,0)=tempa;
   end_c_loop (c,t)
  }
}

(1)使用Interpret功能时报错:
Chip-exec: temp1: wrong return type: float udf function expected
Chip-exec: temp1: argument 1: incorrect type (36): int expected
Chip-exec: temp1: argument 2: incorrect type (0): pointer expected
Chip-exec: temp1: argument 3: incorrect type (0): int expected
Error:
FLUENT received fatal signal (ACCESS_VIOLATION)
1. Note exact events leading to error.
2. Save case/data under new name.
3. Exit program and restart to continue.
4. Report error to your distributor.
Error Object: ()

(2)若使用Compile功能,则出现与tutorial case相同的错误,即:
udf_names.c(7) : error C2085: ‘udf_data’ : not in formal parameter list
udf_names.c(7) : error C2143: syntax error : missing ‘;’ before ‘=’
udf_names.c(8) : warning C4138: ‘*/’ found outside of comment
udf_names.c(10) : error C2065: ‘udf_data’ : undeclared identifier

(3)求助:
(3.1) 是什么原因造成了interpret出现错误?
(3.2) 同样,又是什么原因造成compile的错误?
(3.3) 关于user defined scalar(UDS): 在一个DEFINE_ADJUST中,能否通过C_UDSI(c,t,0),C_UDSI(c,t,1),C_UDSI(c,t,2)….. C_UDSI(c,t,i)来同时定义多个不同的UDS?还是说,要定义i个不同的DEFINE_ADJUST,来分别定义多个不同的UDS?
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小七工作室1

新虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
这个做的比较多,可以交流下
2楼2016-04-14 14:45:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

azhu081127

铜虫 (初入文坛)

引用回帖:
2楼: Originally posted by 小七工作室1 at 2016-04-14 14:45:10
这个做的比较多,可以交流下

你好,CFD模拟方面,我还是新手,很多问题都不是特别明白。
就像我在帖子中写的那样,我原来以为是特别简单的问题,结果却让我毫无头绪。。。
请问,你有没有遇到过类似的问题,你又是怎么解决的?
3楼2016-04-14 15:06:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

azhu081127

铜虫 (初入文坛)

大家请来帮帮忙啊~~~
4楼2016-04-14 18:54:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

keeep0394

新虫 (正式写手)

多核还是单核计算?这里面有累加,需注意

发自小木虫IOS客户端
5楼2016-04-14 21:55:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

azhu081127

铜虫 (初入文坛)

引用回帖:
5楼: Originally posted by keeep0394 at 2016-04-14 21:55:42
多核还是单核计算?这里面有累加,需注意

目前还是单核计算。如果成功运行,我会准备写并行计算的。之前有写过一个简单的并行计算下的UDF,但是里面没有累加计算。
不过,现在棘手的问题是:为什么这么简单的UDF,即使完全按照tutorial写,compile都不能运行。
DEFINE_ADJUST不是既可以interpret也可以compile的么?
真是沮丧啊~~
6楼2016-04-15 09:37:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

azhu081127

铜虫 (初入文坛)

求助,求助~
大家在运行UDF的时候没有遇到类似的问题么~~~
7楼2016-04-15 09:55:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

keeep0394

新虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
引用回帖:
6楼: Originally posted by azhu081127 at 2016-04-15 09:37:04
目前还是单核计算。如果成功运行,我会准备写并行计算的。之前有写过一个简单的并行计算下的UDF,但是里面没有累加计算。
不过,现在棘手的问题是:为什么这么简单的UDF,即使完全按照tutorial写,compile都不能运 ...

很大可能是环境变量没设置对,用的哪个版本的VS

发自小木虫IOS客户端
8楼2016-04-15 10:09:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

azhu081127

铜虫 (初入文坛)

引用回帖:
8楼: Originally posted by keeep0394 at 2016-04-15 10:09:58
很大可能是环境变量没设置对,用的哪个版本的VS
...

版本比较老了呵~~用的是VS6.0。
我之前写的DEFINE_PROFILE和DEFINE_CG_MOTION运行都没问题。。。
运行DEFINE_ADJUST会有问题么??
9楼2016-04-15 10:17:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 azhu081127 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 285求调剂 +9 哦呦呼o 2026-04-04 9/450 2026-04-04 23:38 by lqwchd
[考研] 295求调剂 +4 A你好研究生 2026-04-04 5/250 2026-04-04 22:46 by yu221
[考研] 调剂 +9 19945159693 2026-04-03 10/500 2026-04-04 20:16 by dongzh2009
[考研] 调剂 +4 是可乐不是可乐 2026-04-04 4/200 2026-04-04 19:41 by 唐沐儿
[考研] 292求调剂 +11 2022080213 2026-04-04 13/650 2026-04-04 18:38 by macy2011
[考研] 英一数二生物信息学287分,本科生物科学,求调剂 +6 碧水xyz 2026-03-29 7/350 2026-04-04 17:17 by babysonlkd
[考研] 085600,专业课化工原理,320分求调剂 +8 大馋小子 2026-03-29 8/400 2026-04-04 16:21 by dongzh2009
[考研] 317分 一志愿江南大学 化学工程学硕 求调剂 +6 YinTai 2026-04-03 6/300 2026-04-03 22:30 by 无际的草原
[考研] 350一志愿北京航空航天大学08500材料科学与工程求调剂 +5 kjnasfss 2026-04-03 5/250 2026-04-03 22:29 by 无际的草原
[考研] 303求调剂 +10 DLkz1314. 2026-03-30 10/500 2026-04-03 18:03 by Jimmyandyou
[考研] 求材料调剂 一志愿南昌大学 328分 +5 yyy..... 2026-04-03 5/250 2026-04-03 13:46 by 百灵童888
[论文投稿] chinese chemical letters英文版投稿求助 120+4 Yishengeryi 2026-03-30 6/300 2026-04-02 17:19 by Yishengeryi
[考研] 0832食品科学与工程学硕282调剂 +4 鱼在水中游a 2026-04-02 7/350 2026-04-02 14:12 by baoball
[考研] 314求调剂 +11 1xiaojun23 2026-03-31 12/600 2026-04-02 12:31 by 1xiaojun23
[考研] 材料调剂 +12 一样YWY 2026-04-01 12/600 2026-04-02 09:15 by olim
[考研] 考研调剂 +12 Amber00 2026-03-31 12/600 2026-04-02 09:04 by sanrepian
[考研] 求调剂 +4 DADA怪 2026-03-31 4/200 2026-04-01 14:30 by ZXlzxl0425
[考研] 085600,321分求调剂 +13 大馋小子 2026-03-31 13/650 2026-04-01 12:35 by chemdavid
[考研] 322求调剂 +8 三水sss 2026-04-01 8/400 2026-04-01 10:19 by 唐沐儿
[考研] 318求调剂 +10 陈晨79 2026-03-30 10/500 2026-03-31 17:37 by 544594351
信息提示
请填处理意见