找回密码
 注册
查看: 1708|回复: 2

UDF能被编译,但一运行运算就出错,求大侠帮忙

[复制链接]
发表于 2011-8-12 08:52:53 | 显示全部楼层 |阅读模式

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

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

x
#include "udf.h"
#define WALL1_ID 17
real avg_d=0.6;


DEFINE_ADJUST(wall1_avg_d, domain)
{
        
        real NV_VEC(A);
        real sum_d_A=0.0,sum_A=0.0;
        face_t f;
        Thread*f_thread;
        f_thread = Lookup_Thread(domain, WALL1_ID);
        begin_f_loop(f, f_thread)
        {
                int i=2;
                Thread*t;
                F_AREA(A,f,f_thread);
                sum_A+=NV_MAG(A);               
                sum_d_A+=NV_MAG(A)*F_YI(f, t,i);
              
        }
        end_f_loop(f, f_thread)
         avg_d=sum_d_A/sum_A;   
}
      

DEFINE_PROFILE(Wall2_d,t,position)
{
        face_t f;
        begin_f_loop(f,t)
        {
                F_PROFILE(f,t,position) = avg_d;
  }
        end_f_loop(f,t)
}

以上是我写的UDF,目的是把目标面的物质质量分数传递到进口,但是UDF编译正确,运行计算的时候为什么出错呢?跪求大侠指点。
发表于 2011-8-12 09:01:45 | 显示全部楼层

回复 1# gjmfreeboy 的帖子

可能你需要把adjust里面的要写进profile吧。
 楼主| 发表于 2011-8-12 09:30:56 | 显示全部楼层

回复 2# 飞翔鸟 的帖子

哦,我试试,但是我传递温度的时候是没问题的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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