找回密码
 注册
查看: 1143|回复: 3

[求助]小弟跪求各位达人帮帮忙,急急急!!!(关于udf)

[复制链接]
发表于 2007-8-30 10:10:37 | 显示全部楼层 |阅读模式

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

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

x
小弟编了一个关于温度的边界条件udf,程序如下:
DEFINE_PROFILE(outer_temp, t, i)
{
  real temp;
  face_t f;
  int ID_bottom = 7;
  Domain *domain;
  Thread *thread_bottom = Lookup_Thread(domain, ID_bottom);
  begin_f_loop(f, thread_bottom)
    {
      temp=F_T(f, thread_bottom);
    }
  end_f_loop(f, thread_bottom)
  
  begin_f_loop(f, t)
    {
      F_PROFILE(f, t, i)=temp;
    }
  end_f_loop(f, t)
}  
编译连接都没有问题,可在导入到边界条件面板时出现了这样的问题,操作窗口这样提示到:
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: ()
恳求各位达人指迷津,小弟不胜感激!
[br][br][以下内容由 zwf1983716 在 2007年08月31日 09:26am 时添加] [br]
我的本意是想把流体控制区域里ID号为7的面的温度值附给我所定义的边界上.
发表于 2007-8-30 17:16:54 | 显示全部楼层

[求助]小弟跪求各位达人帮帮忙,急急急!!!(关于udf)

首先你把你的问题背景说清楚,这样会更利于别人理解你的问题。一上来就给一个UDF,也不知道你想要达到什么目的。
我觉得你的逻辑关系有问题,在第一个循环里,你试图把你指定的面的温度场付给一个变量,第二个循环里,你又试图把一个变量的值付给一个边界。
 楼主| 发表于 2007-9-2 09:40:23 | 显示全部楼层

[求助]小弟跪求各位达人帮帮忙,急急急!!!(关于udf)

我的本意是想把流体控制区域里ID号为7的面的温度值附给我所定义的边界上.
发表于 2007-9-3 14:58:26 | 显示全部楼层

[求助]小弟跪求各位达人帮帮忙,急急急!!!(关于udf)

UDF设置时很容易出现问题,建议编译完成后保存cas、dat文件,重新打开再设置边界条件;或者设置好边界条件后保存,然后重新打开,让Fluent自动编译UDF。这个方法有时候是有效的,不过要保证UDF文件没有错误。你的UDF逻辑上好像有问题,并不能把第一个边界的温度对应得付给第二个边界,第二个边界只能得到一个均一的温度值。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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