找回密码
 注册
查看: 3095|回复: 6

大家帮忙看看这段udf有什么问题?

[复制链接]
发表于 2011-8-23 15:20:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
一下这段udf能通过Interpreted,但是初始化时出错,错误提示为:
chip-exec: mean_age_source: wrong return type: void udf function 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.
不太清楚错误在哪,请高手们进来帮帮忙吧。拜托!
程序如下:
#include "udf.h"

DEFINE_DIFFUSIVITY(mean_age_diff,c,t,i)
{    return C_MU_EFF(c,t) / 1.0;
}
DEFINE_SOURCE(mean_age_source,c,t,ds,eqn)
{     real con,source;
      con=C_R(c,t);
      source=con;
      ds[eqn]=0;
      return source;
}
发表于 2011-8-24 09:25:06 | 显示全部楼层
从程序上来看没啥问题,但是有些宏的调用是有条件的,比如你用的C_MU_EFF必须在打开湍流模型,如k-e,k-w等等的情况下用,如果用的是层流模型,那就会出现错误提示。
发表于 2011-8-24 10:24:26 | 显示全部楼层
chip-exec: mean_age_source: wrong return type: void udf function expected

错误提示说明SOURCE函数有问题。

DEFINE_SOURCE(name,c,t,dS,eqn)

C语言是大小写敏感的,你的是ds,帮助文件中是dS。这种拼写错误最好的避免方法就是直接从帮助文件中复制粘贴。

[ 本帖最后由 mayo_0 于 2011-8-24 10:25 编辑 ]
发表于 2011-8-24 12:33:31 | 显示全部楼层
原帖由 mayo_0 于 2011-8-24 02:24 发表
chip-exec: mean_age_source: wrong return type: void udf function expected

错误提示说明SOURCE函数有问题。

DEFINE_SOURCE(name,c,t,dS,eqn)

C语言是大小写敏感的,你的是ds,帮助文件中是dS。这种拼写 ...

这个是虚参,写啥都无所谓的,写成ddss都可以的吧,不过没试过,后面的eqn写为i,我试过也可以。

[ 本帖最后由 gearboy78 于 2011-8-24 04:35 编辑 ]
发表于 2011-8-24 13:24:44 | 显示全部楼层
原帖由 gearboy78 于 2011-8-24 12:33 发表

这个是虚参,写啥都无所谓的,写成ddss都可以的吧,不过没试过,后面的eqn写为i,我试过也可以。


你说得对,这个是虚参,不影响。
发表于 2011-11-18 10:14:10 | 显示全部楼层
udf能通过Interpreted,但是初始化时出错。可能是模型问题,或者其他设置不满足物理意义。建议重新设置,从msh文件开始。
不要udf出错了,就认为是udf本生出错。其实,完全可能是其他问题。
发表于 2013-3-25 15:19:04 | 显示全部楼层
UDF本身没有问题,我遇到这样的问题是因为,UDF导入的位置不对。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表