首页 理论教育 半直接求解器的优化与应用:测量、推导、控制

半直接求解器的优化与应用:测量、推导、控制

时间:2023-06-24 理论教育 版权反馈
【摘要】:在残差内积求解过程中可以通过行为测量半直接求解器的性能,被称为RTR。半直接算法可以推导出三种不同的方式:得到收敛;没有收敛,但得到了最大迭代数;求解已停止。注意可以通过使用以下方法确定导致求解器中止的变化率:命令:FLDATA23,DELT,Label,Value菜单:Main Menu→Preprocessor→FLOTRAN Set Up→CFD Solver Controls→desired DOF solverMain Menu→Solution→FLOTRAN Set Up→CFD Solver Controls→desired DOF solverLabel引用了正在求解的DOF。求解可压缩压力方程时或求解某些共轭传热问题的温度方程时,可能会发生停止。

半直接求解器的优化与应用:测量、推导、控制

在残差内积求解过程中可以通过行为测量半直接求解器的性能,被称为RTR(对于不可压缩压力方程为ZTR)。在整体迭代到一个分数的过程中,RTR应该是减小的。

此分数为半直接方法的收敛性判别准则,用以下方法进行设置:

命令:FLDATA21,CONV,Label,Value

菜单:Main Menu→Preprocessor→FLOTRAN Set Up→CFD Solver Controls→desired DOF solver

Main Menu→Solution→FLOTRAN Set Up→CFD Solver Controls→desired DOF solver

为了设置整体迭代过程中允许的最大迭代数,可选择以下方法:

命令:FLDATA22,MAXI,Label,Value

菜单:Main Menu→Preprocessor→FLOTRAN Set Up→CFD Solver Controls→desired DOF solver

Main Menu→Solution→FLOTRAN Set Up→CFD Solver Controls→desired DOF solver

对于使用的每个DOF,一般为PRES或TEMP,或两者都使用,关于半直接求解器如何执行的数据出现在文本文件Jobname.DBG中。

半直接算法可以推导出三种不同的方式:得到收敛;没有收敛,但得到了最大迭代数;求解已停止。

如果没有收敛,但得到了最大迭代数,就会要求更多的迭代(例如,在一个大的或病态问题中)。如果是这样的话,就增加最大迭代数。如果将收敛性判别准则设为一个非常小的值(例如,小于1.0×10-15),也可以得到最大收敛数。在这种情况下,迭代收敛准则应该减弱了。然而,这也意味着解是发散的,如果是这样的话,调试文件中会出现较大的RTR或ZTR值(可能大于1.0×1020),此时增加迭代数就没有用了。(www.xing528.com)

当新的迭代没有朝解的方向进行,而没有达到收敛性判别准则时,就会停止。如果变化率足够小,求解过程就会停止。

注意

可以通过使用以下方法确定导致求解器中止的变化率:

命令:FLDATA23,DELT,Label,Value

菜单:Main Menu→Preprocessor→FLOTRAN Set Up→CFD Solver Controls→desired DOF solver

Main Menu→Solution→FLOTRAN Set Up→CFD Solver Controls→desired DOF solver

Label引用了正在求解的DOF。求解可压缩压力方程时或求解某些共轭传热问题的温度方程时,可能会发生停止。RTR的值没有明显地减小,且在最后迭代处,DelMax的值小于确定的值。这就意味着基本上解不会改变了,进一步的计算也是多余的。

通过增加搜索方向的数目或者使用惯性松弛可以解决停止的问题。为了增加搜索方向,可以使用上述菜单路径之一(用FLDATA23,DELT命令),或者使用以下命令:

命令:FLDATA20,SRCH,Label,Value

默认值为2,适用于良态问题。需要的搜索方向数在不同的问题中变化很大。20的值可能会用到,但是要注意到确定的每个搜索方向在内存中需要N个计算存储位置(在问题中N为有限元节点数)。对于较大的SRCH值,需要的计算存储可能会超过可用的计算机资源,在这种情况下应该会用到惯性松弛。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈