|
发表于 2014-2-10 20:42:00
|
显示全部楼层
关于这个问题再唠叨两句!
原帖由 通流 于 2014-2-6 00:43 发表
第二点的结论是很有教育意义的。
对于第三点,我是对于这套所谓的什么独立性的玩意不太感冒。这里的雷诺数比较低,事情还比较简单。对于高雷诺数的问题,加密网格以及减小时间步,这时带来的问题基本不可预料。
...
1. 关于“在非定常N-S方程求解器里面使用大时间步,得到的结果和求解定常N-S的结果一致。”,我的观点是大时间步长的非定常过程,时间精度损失为一阶。定常结果与时间无关,上述表述欠准确,表述应该修改为“在非定常N-S方程求解器里面使用大时间步时,非定常算法退化为采用时间推进的定常算法”。因为对于时间推进(或者时间松弛)的定常算法通常只保留时间的一阶精度。事实上,由
\partial f/\partial t=g(f,t)
对于非定常计算,两边对时间积分,得到:
f^{n+1}=f^n+Integer(g(f^n,ndt))
对于非定常计算,时间精度一般要求至少二阶,因此右端积分采用梯形公式近似,有:
f^{n+1}=f^n+0.5*dt*(g(f^n,ndt)+g(f^n,(n+1)dt))+O(dt^2)
将g(f^n,(n+1)dt))进行泰勒展开并线化,有:
g(f^n,(n+1)dt)=g(f^n,ndt)+(dg(f^n)/dt)*dt+O(dt)
从而有:
f^{n+1}=f^n+dt*g(f^n,ndt)+0.5*(dg(f^n)/dt)*dt*dt+O(dt^2)
如果dt非常大,上述格式退化为一阶:
f^{n+1}=f^n+dt*g(f^n,ndt)+O(dt)
从而退化为间推进的定常算法。也就是说非定常计算的时间不长不是由稳定性决定的,而是由流动物理固有的时间尺度去确定!
2. 对于通流:“对于第三点,我是对于这套所谓的什么独立性的玩意不太感冒。这里的雷诺数比较低,事情还比较简单。对于高雷诺数的问题,加密网格以及减小时间步,这时带来的问题基本不可预料。当然,这里还有一个很重要的事实。这个大时间步长的结果也是NS方程的解。只是这个解是不稳定的。对于绝大多数稳定性问题,分析的起点都是不稳定的定常解。这是从另一个角度对那些什么独立性的一个否定。独立性担心的是由于网格和时间步长造成解的不精确。现在的例子证明,大时间步和小时间步给出的是两个不一样的,但都是NS方程的解。”
“对于高雷诺数的问题,加密网格以及减小时间步,这时带来的问题基本不可预料。” 请教一下为什么?
“这个大时间步长的结果也是NS方程的解。只是这个解是不稳定的,”请教一下为什么?
关于网格收敛性,时间步长的收敛性也叫网格独立性和时间步长独立性,我觉得本身是没有问题,取决于你对解的要求。如果你要得到benchmark解,网格独立性和时间步长独立性应该而且必须做!如果你只要求一个趋势或者一个结论,大可不必如此大费周章!
另外,关于非定常采用大时间步长的问题,在Anderson的《computational fluid dynamics:the basics with applications》一书中讨论Crank-Nicolson格式(P434)的时候讨论了。 |
|