vivian_lee 发表于 2006-4-18 10:41

[讨论]为什么我的程序时间步长不能取小

我写了一个非稳态可压缩的程序。发现如果时间步长取小一点如10e-5,程序就发散了。<BR>如果取10e-4程序可以收敛。模型要求是时间步长10e-5。怎样才能使程序在10e-5的时间步长下收敛?大家有没有好的方法呀。<BR>谢谢!

shenzh 发表于 2006-4-19 09:13

改变初值试试看。

cora 发表于 2006-4-23 15:46

回复:(vivian_lee)[讨论]为什么我的程序时间步长不...

步长过大或者过小都有可能会导致误差增大,从而导致计算失稳

dutll 发表于 2006-4-24 20:52

这个很难说,并不是说步长越小,网格越密计算结果就更容易收敛,结果就越准确!

glaciery 发表于 2006-12-7 18:59

我也遇到过类似的问题,当我设5e-5时, 发现不能收敛.当 设置时间步成5e-4时,发现
可以收敛,我有设置了几个不同的时间步,发现时间步的设置对结果的影响很明显,
现在想知道如何设置合适的时间步呢? 需要一个个试吗?

zkh2008 发表于 2006-12-18 01:19

导致计算失稳

logos 发表于 2006-12-18 14:21

需要看时间步长与网格宽度之间的关系的

glaciery 发表于 2006-12-30 12:20

请问:楼上的时间步长和网格宽度之间存在什么样的关系呢?还与其他因素有关吗?:lol

lwd1981 发表于 2007-2-10 15:50

您满足了CFL条件没有?
还有您注意了您的网格"Re"没有?

zery 发表于 2010-3-19 22:09

CFL数是控制显示算法时的准则吧,对于隐式算法呢?
页: [1]
查看完整版本: [讨论]为什么我的程序时间步长不能取小