对于耦合流体模型,连续性和动量守恒方程将以耦合方式进行求解,即,作为方程的矢量同时求解。
速度场通过动量方程获得。压力根据连续性方程计算,密度通过状态方程计算。耦合方程组通过隐式或显式时间积分格式进行求解。
以下求解器和求解器选项可用于隐式格式:
隐式耦合
AMG 线性求解器
专家初始化
收敛加速器
以下求解器和求解器选项可用于显式格式:
耦合显式
库朗数跃升
单击任何链接可查看各个求解器或求解器选项的可用属性。
隐式耦合
隐式耦合求解器控制耦合流体模型的求解更新。如果已激活耦合能量模型和耦合或分离组分模型,则耦合隐式求解器也会控制这些模型。通过使用耦合代数多重网格法,稳态和非稳态分析中的隐式空间积分均可使用该求解器。
以下属性可用于隐式耦合求解器:
- CFL 控制方法
- 指定用于控制 Eqn. (968) 中的 CFL 数的方法,该属性可控制时间推进过程使用的局部时间步。
-
方法 |
对应方法节点 |
自动 稳态时间的默认值。根据 AMG 求解器的收敛行为调整 CFL 数,以保持指定的目标循环数。这种方法的目的是寻求线性系统的成型成本和求解成本之间的平衡。 |
- 自动 CFL
- 由于自动 CFL 控制数通过与 AMG 求解器的互动来实现操作,因此对 AMG 设置的更改会影响 CFL 行为。有些修改会使 AMG 求解器循环功增大,因而求解同一线性系统的循环数就会变少,因此通常这会使 CFL 数增大。如果模拟需要更严格的 AMG 收敛容差,则考虑增加目标 AMG 循环。默认值为 4 个目标循环,该值基于默认的 AMG 设置和收敛容差 0.1。如果必须使用 0.01 的收敛容差,则建议将目标 AMG 循环设为 6 或 7。
具有下列属性:
- 当前 CFL
- CFL 数的当前值。(只读。)
- 初始 CFL
- 自动控制开始之前的 CFL 数值。
- 最小 CFL
- 允许的最小 CFL 数值。
- 最大 CFL
- 允许的最大 CFL 数值。
- 目标 AMG 循环
- 自动 CFL 开启时,控制 AMG 循环的目标数。由于 CPU 和 GPU AMG 求解器具有不同特性(如每个周期的收敛速率),而自动 CFL 控制数以此为基础,因此,此值在 GPU 模式下会进行内部调整,以匹配 GPU AMG 求解器的特性。GPU 上的目标数比 CPU 高 50%。因此,对于默认设置 4,CPU 上的应用目标数为 4,GPU 上的应用目标数为 6。
|
常数 使用常数值控制 CFL 数。对于非稳态流,默认值为 CFL 数 50.0。 |
- 恒定 CFL
- 指定恒定 CFL 数。
|
专家驱动程序 激活专家驱动程序,即稳态模拟的自动收敛控制工具。 |
- 专家驱动程序 CFL
- 具有下列属性:
- 当前 CFL
- CFL 数的当前值。(只读。)
- 目标 CFL
- 跃升结束时的 CFL 数值。
- 初始 CFL
- 跃升开始之前的 CFL 数值。
- 跃升:开始迭代
- 指定跃升开始时的迭代。
- 跃升:结束迭代
- 指定跃升结束时的迭代。
- CFL 恢复率
- 当 AMG 线性求解器无法收敛时,将减少 CFL 数。专家驱动程序通过将 CFL 数恢复至其所需的跃升值或目标值,可以减少这种 CFL 数减少带来的影响。将恢复速率指定为所需的值。
- 目标 AMG 循环
- 控制 CFL 的减少。如果求解器减小 CFL 数(当 AMG 线性求解器未收敛时),且 AMG 循环数(在 CFL 恢复期间)大于指定的最佳(或目标)AMG 循环数,则 CFL 数将会进一步减少(每次减少 10%)。
|
线性跃升 使用线性跃升控制 CFL 数。 |
- 线性跃升 CFL
- 具有下列属性:
- 当前 CFL
- CFL 数的当前值。(只读。)
- 目标 CFL
- 跃升结束时的 CFL 数值。
- 初始 CFL
- 跃升开始之前的 CFL 数值。
- 开始迭代
- 指定开始跃升迭代,通常为 1。
- 结束迭代
- 指定结束跃升迭代,通常在前 10–100 个迭代内。
|
- 增强耗散
- 打开时,将显著提高耦合求解器在模拟初始阶段的收敛和稳定性。它提供的更多数值耗散将导致流体求解不准确。增强耗散仅可用于不可压缩流。当模拟达到增强耗散开始转换设置的迭代计数时,求解器将开始减少额外耗散量。这种减少将以平滑的非线性方式持续,直到模拟达到增强耗散结束转换设置的迭代计数为止。此时,额外耗散将会完全移除。默认值为关闭。
- 增强耗散开始转换
- 设置求解器开始减少额外耗散量时所处的迭代。默认值为 1。
- 增强耗散结束转换
- 达到此属性设置的迭代次数时,不包括额外耗散。默认值为 100。
- 显式松弛方法
- 显式松弛是在将所有耦合流体校正应用于流体求解之前显式将其松驰所用的比例因子,也称为阻尼更新。(请参见 Eqn. (960)。)这通常会提高数值稳定性并改进收敛,尤其是在 CFL 数较高的情况下运行时。对于非稳态求解器,默认值为无,因为时间精确积分通常会提供足够的稳定性。对于稳态求解器,默认值为 0.3。
-
方法 |
对应方法节点 |
常数 使用常数值控制显式松弛。 |
- 恒定松弛
- 显式松弛值应始终介于 0.15 到 1.0 之间。默认值为 0.3,此时结合自动 CFL 方法的 较高 CFL 数值通常能够良好地平衡效率和稳定性。
|
行搜索 通过执行行搜索控制显式松弛。 |
- 行搜索
- 通过求解介于最小显式松弛和最大显式松弛输入之间的最小残差约束,自动计算比例因子的值。由于此法的计算成本很高,因此仅在每 N 次迭代时执行一次,其中 N 是更新频率,只有检测到的残差显著增大时,才会自动执行此方法。要获得自动显式松弛因子计算的额外输出,激活详细。
|
无 不使用比例因子。这等效于显式松弛因子为 1。 |
无。 |
- 冻结流体
- 打开时,将停用流动求解器的求解更新。默认值为关闭。
- 压力参考位置
- 可以使用 Simcenter STAR-CCM+ 的自动算法来获取压力参考位置,也可以手动提供该位置。有关详细信息,请参见设置参考值。
-
方法 |
对应方法节点 |
自动选择 Simcenter STAR-CCM+ 将使用域中的最小 X, Y, Z 位置来设置边界面附近的网格单元处的参考位置。 |
无。 |
用户指定 可用于添加一个或多个参考位置,具体取决于非连续区域的数量。 |
- 压力参考点
- 右键单击此节点可添加参考点。
- 对于每个参考点,设置以下属性:
-
- 点坐标:指定压力参考点在选定坐标系中的几何位置。
- 参考系:指定用于定义点坐标的坐标系。
- 已启用:设为打开时,求解器使用压力参考点来查找参考网格单元。
|
- 冻结重构
- 开启时,Simcenter STAR-CCM+ 不会在每次迭代时更新重构梯度,而是使用上一次迭代更新的梯度。激活保留临时储存与此属性结合使用。默认情况下,此属性处于关闭状态。
- 归零重构
- 开启时,求解器在下一次迭代时会将重构梯度设为零。此操作意味着,用于迎风的面值 (Eqn. (905)) 以及用于计算网格单元梯度的面值(Eqn. (917) 和 Eqn. (918))将变为一阶估计值。默认情况下,此属性处于关闭状态。如果开启此属性之后关闭它,则求解器将在下一次迭代时重新计算梯度。
- 保留临时储存
- 开启时,Simcenter STAR-CCM+ 将保留求解器在迭代期间生成的额外场数据。保留的特定数据取决于求解器,且在后续迭代期间可用作场函数。默认情况下关闭。
- 非稳态优化容差
- 基于连续残差缩减的数字优化级别。容许值的范围为 1 到 0。值为 1 表示最高容差,从而可实现最大优化。值为零将禁用自动数字优化。新模拟的默认值为 1,但对于在引入此属性之前创建的模拟(即在 Simcenter STAR-CCM+ 14.04 或更早版本中创建的模拟),默认值为 0。
- 速度校正限制
- 打开(默认值)时,将单次迭代中允许的最大流速变化限制为因子 0.2。打开(详细)选项报告了限制量。
专家初始化
网格排序 (GS) 专家初始化先执行正常初始化,然后计算流体问题的近似无粘性求解。它仅对流体变量(例如,压力、速度和温度)和组分(适用于气体混合物)进行初始化。GS 不能用作模拟固体中热传导的专家初始化方法。
在初始化过程中,GS 执行以下步骤(这适用于手动初始化或开始模拟运行):
- 生成一系列粗糙网格。
- 对每个粗糙网格执行流体求解的正常初始化。
- 从最粗糙的网格开始:
- 运行大量迭代,对当前网格计算近似求解。
- 如果达到收敛或最大迭代次数,则在下一个更精细的网格上插入求解,除非下一个网格为最精细网格,否则重复上一步。
- 当 GS 到达最精细的网格级别时,此过程停止。
GS 使用完全隐式不完全牛顿求解算法来计算一阶无粘性流求解,这具有以下优势:
- 因完全隐式算法而增加稳定性。
- 因可以使用相对较大的 CFL 数而提高收敛速率。
- 完全自动生成粗糙网格并对其求解。
- 与通过正常初始化获得流体求解相比,无粘性求解可获得更精确的近似值。
- 在 GS 初始化后,流体求解的收敛速度更快、更稳定。
方法 |
对应方法节点 |
无 停用网格排序。 |
无。 |
网格排序 激活网格排序。 |
- 网格排序
- 指定以下属性:
-
- 最多网格级数
- 系统自动创建的粗糙网格级数。网格排序 (GS) 算法使用该级数从最粗糙的网格开始计算无粘性求解。
- 每级最大迭代
- GS 期间执行的求解器迭代次数,用于计算当前粗糙网格上流体问题的近似无粘性求解。
- 每级的收敛容差
- 求解收敛标准,求解器将其与每级的最大迭代次数一起用来停止当前网格级别上的循环。
- CFL 数
- 流动求解器在网格排序初始化期间使用的 Courant-Friedrichs-Levy (CFL) 数。此数与求解器在迭代期间对最精细网格使用的库朗数不同。
|
收敛加速器
连续性收敛加速器 (CCA) 使用基于密度/Riemann 通量离散设定压力校正方程并对其求解。此额外方程的求解为压力、速度和其他流场变量提供更新,从而使每次迭代的总体和单个网格单元质量失衡最小化。
对于连续性收敛加速器,可以设置亚松弛因子跃升参数和 AMG 线性求解器参数。
方法 |
对应方法节点 |
无 停用连续性收敛加速器。 |
无。 |
连续性收敛加速器 激活连续性收敛加速器。 |
- 连续性收敛加速器
- 指定以下属性:
-
- 增强稳定处理
- 设为打开时,将激活限制速度校正属性和增强质量失衡计算属性。将 AMG 加速方法设为无。默认值为关闭。
-
注 | 从打开切换回关闭时,不会将其他属性恢复为其默认值。如果需要,必须分别进行重置。 |
- 详细
- 设为打开时,在运行模拟时为此值提供更多输出。此属性用于在发生问题时进行调试。
- 收敛加速器更新频率
- 调用连续性收敛加速器时所用的迭代频率。默认值为 1,表示在每次迭代时调用连续性收敛加速器。
- 亚松弛因子
-
(位于 Eqn. (974) 中)。默认值为 0.1。
- CCA 开始迭代、CCA 截止迭代
- 在相应的迭代自动激活和停用连续性收敛加速器。
- 已冻结
- 设为打开时,禁止连续性收敛加速器在迭代时更新求解。
- 限制速度校正
- 打开时,进行限制速度校正,并由此限制速度校正公式 Eqn. (976) 中的压力校正梯度。这确保速度校正可以“平滑地”提供限制速度更新。
- 增强质量失衡计算
- 打开时,使用 Riemann 求解器通量计算连续性收敛加速器算法的步骤 6 中的最终网格单元质量平衡,具体取决于通量格式(请参见 Eqn. (956) 或 Eqn. (959))。此选项更精确,但计算成本较高。关闭时,仅校正质量通量。请参见 Eqn. (936)。在大多数情况下,此选项足以发挥预期作用(为默认值)。
- 最小压力校正比例缩放
- 指强初始瞬态、压力明显变化或旋转运动情况下的额外压力校正比例缩放最小值。默认值为 0.1
- 压力参考位置
- 可以使用 Simcenter STAR-CCM+ 的自动算法来获取参考位置,也可以手动提供该位置。
-
方法 |
对应方法节点 |
自动选择 Simcenter STAR-CCM+ 将使用域中的最小 X, Y, Z 位置来设置边界面附近的网格单元处的参考位置。 |
无。 |
用户指定 可用于添加一个或多个参考位置,具体取决于非连续区域的数量。 |
- 压力参考点
- 对于每个参考点,以下属性可用:
-
- 点坐标:指定压力参考点的坐标。
- 参考系:指定点坐标的坐标系。
- 已启用:设为打开时,使用压力参考点。
|
|
耦合显式
显式耦合求解器控制耦合流体模型和耦合能量模型的求解更新。通过使用龙格-库塔多阶段时间步格式,此求解器可用于显式积分。
以下属性可用于显式耦合求解器:
- 库朗数
-
根据 Eqn. (960) 控制每次迭代的局部时间步。对于非稳态流和稳态流,默认库朗数为 1。但对于稳态分析,通常使用值 2,以便与两次残余平滑迭代结合使用。尽管对于相同的尺寸问题所需的存储空间更少,但此限制比隐式空间积分格式的限制更为严格。
- 耗散阶段标志
- 指示已计算其耗散(以及粘性通量(如适用))的多阶段格式的阶段。这些标志的数量必须等于多阶段系数中的阶段数。
- 冻结流体
- 与隐式耦合相同。
- 多阶段系数
- 设置多阶段系数值,请参见 Eqn. (960)。矢量中的数值指示阶段数。
- 压力参考位置
- 与隐式耦合相同。
- 冻结重构
- 与隐式耦合相同。
- 归零重构
- 与隐式耦合相同。
- 残余平滑
- 设为打开时,将激活残余平滑。残余平滑是一种通过移除残差中的高波数振荡来增加显式时间步长的机制。此方法有助于拓宽稳定裕度,并允许使用略大一些的库朗数。
- 残余平滑可与显式空间积分格式一起使用。
- 有关详细信息,请参见残余平滑。
- 残余平滑迭代
- 通过使用 Eqn. (963),可设置残余平滑迭代次数。
- 残余平滑亚松弛
- 设置残余平滑亚松弛因子
,请参见 Eqn. (962)。默认值为 0.5。
- 保留临时储存
- 与隐式耦合相同。
库朗数跃升
库朗数 (CFL) 跃升可提供线性 CFL 数跃升来帮助求解收敛。
方法 |
对应方法节点 |
无跃升 关闭跃升计算。 |
无。 |
线性跃升 激活线性跃升值计算。 |
- 线性跃升
- 指定以下属性:
-
- 开始迭代:指定开始跃升迭代,通常为 1。
- 结束迭代:指定停止跃升的迭代。
- 初始值:指定跃升开始之前的库朗数值。
|
示例:如果指定的库朗数为 1,开始迭代为 100,结束迭代为 1000并且初始值为 0.1,则 Simcenter STAR-CCM+ 对 100 之前的迭代使用库朗数 0.1,对 1000 之后的迭代使用库朗数 1,且库朗数在这两个值之间呈线性增长。