|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
问题描述:
一个udf 的使用,初步接触udf将模型简化了。大致描述如下:
一个封闭空间,上部安装风扇,系统内有隔墙。介质在风扇的作用下在系统内循环流动,两侧有热源。
介质通过热源是被加热,需要udf控制当系统内温度大于400k是热源停止放热,当温度小于400k时热源放
热。
图中:
1.圆柱侧面是温度监视面-intir,当该面温度平均值大于400k时两侧热源停止放热;
2.圆柱底部原面定义为fan
3.图中黄线为气流流动路线
4.两侧矩形体为热源
5.内部隔墙组成通道inter-wall
问题:
udf可以通过编译;
加载adjust之后,出现
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: ()
# include "udf.h"
real NV_VEC(A);
real avg_temp;
real sum_T_A=0.0;
real sum_A=0.0;
Thread *thread_out;
face_t f;
Domain *domain;
DEFINE_ADJUST(adjust,d)
{
domain=Get_Domain(1);
thread_out=Lookup_Thread(domain,5);
begin_f_loop(f,thread_out)
{
F_AREA(A,f,thread_out);
sum_A+=NV_MAG(A);
sum_T_A+=NV_MAG(A)*F_T(f, thread_out);
}
end_f_loop(f,thread_out)
avg_temp=sum_T_A/sum_A;
}
DEFINE_SOURCE(heat_source, cell, thread, dS, eqn)
{
real source;
if (avg_temp <= 400)
{source = 200;
dS[eqn] = 0;}
else
source = dS[eqn] = 0.0;
return source;
}
[ 本帖最后由 学习交流 于 2014-5-20 16:45 编辑 ] |
|