zumaqiong 发表于 2010-1-21 17:57

使用Fluent,出现floating point error overflow

大家好!
我在做一个血管中血液流动的问题。

图片如附件所示。

从顶面有液体流入,其速度是v=681.55*(1-y*y)*pow(2.72,-0.5*(291.04*time*time+12.28*time+0.1296)),是一个v(x,t)的问题。

但是,我现在用这个速度方程,加载以后,出现floating point error overflow的问题,如果改另外的sin的函数,就不会出现问题。
我想请教一下,这是怎么回事。
另附我的udf
#include "udf.h"
DEFINE_PROFILE(Velocity_x,thread,position)
{
face_t f;
real x;
real v0,y,time;
real T=0.88;
int n=1;
begin_f_loop(f, thread)
{
   F_CENTROID(x,f,thread);
   y = x;
   time=CURRENT_TIME;
   if(time/T<1)
   F_PROFILE(f, thread, position) = 681.55*(1-y*y)*pow(2.72,-0.5*(291.04*time*time+12.28*time+0.1296)) ;
   else
   {
         F_PROFILE(f,thread,position)=681.55*(1-y*y)*pow(2.72,-0.5*(291.04*(time-n*T)*(time-n*T)+12.28*(time-n*T)+0.1296));
         n=n+1;
   }

}
end_f_loop(f, thread)
}
谢谢大家!!
再问,如果要是加入particles的话,应该如何做。

scott9 发表于 2010-1-26 11:41

学习了,我仔细看看呢,谢楼主
页: [1]
查看完整版本: 使用Fluent,出现floating point error overflow