AMG 线性求解器参考
在有限体积计算中,代数多重网格法以迭代方式求解离散线性系统。AMG 线性求解器节点包含用于多重网格循环策略的对象。
理论 | 请参见代数多重网格。 | ||
节点路径示例 | |||
属性 | 关键属性包括:循环类型和收敛容差。 请参见 AMG 线性求解器属性。 |
AMG 线性求解器属性
- 最大循环
- 指定当线性系统的残差保持高于 Epsilon 且不满足收敛容差时要运行的最大多重网格循环数。
- 详细说明
-
指定 AMG 线性求解器的反馈量(定向到控制台窗口)。
- 无
AMG 线性求解器静默运行。无反馈。
- 低
在每个多重网格循环完成时打印线性系统的残差。
- 高
另外,与“低”一样,在所有多重网格循环完成后,还打印多重网格级数和每个级别的方程数量。
- 诊断
提供最高级别的 AMG 系统性能相关信息。此选项会影响性能,因此不建议用于正常迭代。
- 无
- 收敛容差
- 必须在多重网格循环停止前减少线性系统残差(高于 Epsilon 的值)时所用的因子(前提是尚未达到最大循环数)。例如,收敛容差 0.01 需要继续循环,直到线性系统的残差下降两个数量级为止。容差 0.001 需要下降三个数量级,依此类推。
- 循环类型
-
指定多重网格循环策略。请参见多重网格循环。
- F 循环
限制后,在下一个最粗糙级别应用一个 W 循环,随后应用一个 V 循环(也在下一个最粗糙级别)。
- V 循环
限制后,在下一个最粗糙级别应用一个循环(也是 V 循环)。
- W 循环
限制后,在下一个最粗糙级别应用两个循环(也是 W 循环)。
这三个固定循环节点具有以下属性:
- 前置扫掠
- 每个循环开始时的平滑扫掠次数。
- 后置扫掠
- 每个循环结束时的平滑扫掠次数。
- 最大层数
- 序列中最大粗糙级别数。
- 可变循环
每次在给定网格级别上扫掠后都会监视残差,而非按规则模式使用所有多重网格级别。如果残差率超出给定阈值,会继续在更粗糙的级别上求解。如果给定级别上的残差降幅超过指定阈值,则求解将转到更精细的级别。任何级别允许的扫掠数将进一步受到限制。
对于非刚性线性系统,此类循环是一种更经济的循环策略。
“可变循环”节点具有以下属性:
- 约束容差
- 线性系统的两个连续残差的比低于悬浮到下一个粗糙级别的级数。
- 延长容差
- 指定求解在任何给定级别停止之前必须减少的线性系统残差量。
- 扫掠
- 每个循环开始时的平滑扫掠次数。
- F 循环
- 启用直接求解器
- 控制是否对 AMG 粗糙级别使用直接求解器。
- 最大直接求解器方程
- 设置直接求解器的最大方程数量。
- Epsilon
- 线性系统残差的截止值,低于该值时,无论收敛容差设置如何,收敛视为完成且多重网格循环停止。例如,Epsilon 值为 1.e-08 表示循环在线性系统的残差低于 1.e-08 时停止。
- 组尺寸控制
-
指定必须如何设置组尺寸。
- 自动
在二维情况下,组尺寸自动设为 2;在三维情况下,自动设为 4。
- 指定
允许用户指定的组尺寸。向此节点添加组尺寸子节点。
- 自动
- 组尺寸
- 给定多重网格级别上已聚结、在下一个最粗糙级别形成一个方程的方程数量。此值为只读并报告当前使用的组尺寸,后者根据“自动”设置或组尺寸子节点(如果指定)确定。
- 松弛格式
-
指定用于迭代校正(松弛)在多重网格循环期间设置的线性方程的方法。请参见 AMG 求解器。
- 雅可比
一种缓慢、简单的方法。
- 高斯-赛德尔
改进收敛。默认选项。
- ILU
一种更有效但成本更高的方法。
- 雅可比
- 加速方法
-
指定 AMG 求解器加速类型。
- 比例缩放
-
控制从下一个最粗糙级别延长校正的方式。仅当线性系统矩阵 (Eqn. (984)) 为对称正定时,比例缩放才适用。
- 自动
自动将比例缩放应用于粗糙级别校正以实现最佳收敛。
- 已禁用
延长粗糙级别校正,而不应用任何比例缩放(默认)。
- 自动