24小时热门版块排行榜    

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

Princess-C

新虫 (初入文坛)

[求助] udf编译没问题,初始化时提示received a fatal signal(segmentation fault) 已有1人参与

#include "udf.h"
DEFINE_PROFILE(evaporation_rate,t,index)   
{
real C1=1.5,C2=0.05;
real ds,da;
face_t f;
cell_t c0, c1 = -1;
Thread *t0,*t1 = NULL;
int i=0;

c0=F_C0(f,t);
t0=THREAD_T0(t);
begin_c_loop(c0,t0)
{
ds=0.010325;         
da=C_YI(c0,t0,i)/(1-C_YI(c0,t0,i));
F_PROFILE(f,t,index)=C1*C2*sqrt(1/3*(C_U(c0,t0)*C_U(c0,t0)+C_V(c0,t0)*C_V(c0,t0)+C_W(c0,t0)*C_W(c0,t0)))*(ds-da);
}
end_c_loop(c0,t0)
}

还遇到这种情况,保存前使用udf 的位置设置的是常数,计算后一定步数后打开导入udf能初始化,但是如果从一开始就导入udf,就会出现received a fatal signal(segmentation fault)
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tank_fire

铜虫 (小有名气)

【答案】应助回帖

你这个是在面循环?

循环体如前一个回答,应该是对面循环
面循环
{
c0=F_C0(f,t);
t0=THREAD_T0(t);//用两句找到含有这个面的cell
//然后对cell 数据进行操作
}


da=C_YI(c0,t0,i)/(1-C_YI(c0,t0,i));   这句可能会导致error,你初始化时候C_YI(c0,t0,i)如果是1 就是  除以0的情况
3楼2016-06-06 19:47:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 3 个回答

3_1415926

金虫 (小有名气)

begin_c_loop → begin_f_loop
2楼2016-06-06 08:26:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见