24小时热门版块排行榜    

查看: 1336  |  回复: 11
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

奋斗的珊瑚礁

新虫 (初入文坛)

[求助] UDF加载到Fluent中出现错误,希望各位虫友们帮忙分析一下 已有3人参与

这是我编写的一个二维边界,y方向的速度是时间的余弦函数。
#include "udf.h"
DEFINE_PROFILE(wallz_y_velocity, thread, index)
{
real x[ND_ND];
real y;
real t=RP_Get_Real("flow-time";
cell_t c;
Thread*c_thread;
begin_c_loop(c,c_thread)
{
y=x[1];
C_PROFILE(c,thread,index)=0.77*cos(15.708*t);
}
end_c_loop(c,c_thread)
}

加载到Fluent中出现错误,大家帮我分析一下;谢谢了!
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: ()
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

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

合欢魅影

木虫 (正式写手)

引用回帖:
6楼: Originally posted by 奋斗的珊瑚礁 at 2014-11-26 14:59:57
我的边界条件是条线结构,不是面结构,边界相当于一个可移动的线·····...

#include "udf.h"
DEFINE_PROFILE(inlet_pressure, thread, position)
{
real t,p;
face_t f;
begin_f_loop(f, thread)
{
t=RP_Get_Real("flow-time";
if (t>0 && t<=0.001)
{
p=1000000000*t+100;
}
if (t>0.001&&t<=0.003)
{
p=1000000+100;
}
if(t>=0.003&&t<=0.004)
{
p=1000000000*(0.004-t)+100;
}
else if(t>0.004)
{
p=100;
}
{
F_PROFILE(f,thread,position)=p;
}
end_f_loop(f,thread)
}
}


这是我之前做二维模拟时用到的压力入口边界条件的UDF。亲测可用。
7楼2014-11-26 15:16:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 12 个回答

合欢魅影

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
你这好像还没有提取坐标呀,y=x[1],x[1]有值吗?
2楼2014-11-26 10:58:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

合欢魅影

木虫 (正式写手)

【答案】应助回帖

#include "udf.h"
DEFINE_PROFILE(wallz_y_velocity, thread, index)
{
real x[ND_ND];
real y;
real t=RP_Get_Real("flow-time";
cell_t c;
Thread*c_thread;
begin_c_loop(c,c_thread)
{
C_CENTROID(x,c,c_thread)
y=x[1];
C_PROFILE(c,thread,index)=0.77*cos(15.708*t);
}
end_c_loop(c,c_thread)
}
3楼2014-11-26 11:03:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

合欢魅影

木虫 (正式写手)

【答案】应助回帖

上贴中少加入的一句后少了“;”。你也可以试试下面这个:
#include "udf.h"
DEFINE_PROFILE(wallz_y_velocity, thread, index)
{
real x[ND_ND];
real y;
real t=RP_Get_Real("flow-time" ;
face_t f;
begin_f_loop(f,thread)
{
F_CENTROID(x,f,thread)
y=x[1];
F_PROFILE(f,thread,index)=0.77*cos(15.708*t);
}
end_f_loop(f,thread)
}
4楼2014-11-26 11:12:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见