找回密码
 注册
查看: 4698|回复: 3

变时间步长的udf设置

[复制链接]
发表于 2006-10-19 15:41:19 | 显示全部楼层 |阅读模式

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

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

x
手动调节成功的时间步长设置,试验了很多次,应该是可以收敛的,为什么改成用udf设置的那种变时间步长的设置之后fluent计算就不收敛了呢?很莫名其妙呢,但是显示的流动时间和时间步长都没有问题,应该不是低级错误,下面是我的变时间步长的程序,有没有做过这方面的比较的,请给个意见
DEFINE_DELTAT(timedeltat,domain)
{
   real time_step;
   real t = RP_Get_Real("flow-time");
   int n;
   n=t/86400.;
  
   if (t < 86400.*n + 0.5)         time_step = 0.5;
   else if (t < 86400.*n + 3.5)    time_step = 1.;
   else if (t < 86400.*n + 11.)    time_step = 1.5;
   else if (t < 86400.*n + 17.)    time_step = 2.;
   else if (t < 86400.*n + 20.)    time_step = 3.;
   else if (t < 86400.*n + 30.)    time_step = 5.;
   else if (t < 86400.*n + 120.)   time_step = 10.;
   else if (t < 86400.*n + 140.)   time_step = 20.;
   else if (t < 86400.*n + 180.)   time_step = 40.;
   else if (t < 86400.*n + 240.)   time_step = 60.;
   else if (t < 86400.*n + 360.)   time_step = 120.;
   else if (t < 86400.*n + 600.)   time_step = 240.;
   else                            time_step = 600.;                                
   return time_step;
}
发表于 2006-11-16 08:49:19 | 显示全部楼层

变时间步长的udf设置

  int n;
  n=t/86400.;
那就是说你的t相当大才会使得n>0,要不总是0。
发表于 2010-3-30 13:43:16 | 显示全部楼层
问题应该就是楼上所叙,不能算是高级错误
发表于 2010-6-3 14:46:11 | 显示全部楼层
学习了,很长见识
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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