问题描述

如何以及为什么,在完全耦合和分离方法之间解决求解多体模型?

如何,以及为什么,在直接和迭代的线性系统求解器之间切换?

解决方案

完全耦合与隔离解决方案方法

在解决多境模型时,有两种方法可以采用求解描述解决方案的(通常是非线性)的等式系统。

完全耦合方法形成单个大型方程式,用于解决所有未知数(字段),并在单个迭代中包括一次未知(多体效应)之间的所有耦合。

另一方面,隔离方法不会一次解决所有未知数。相反,它将问题归入两个或更多隔离步骤。每个步骤通常都代表单个物理,但有时甚至单个物理学都可以细分为步骤,有时有时一个步骤可以包含多个物理。这些单独的隔离步骤小于以完全耦合的方法形成的完整方程式。分离的步骤在单一迭代中顺序求解,因此需要更少的存储器。

该软件将在许多情况下自动选择分离的方法,尤其是3D模型。另一方面,对于大多数2D型号,默认使用完全耦合的方法。选择这些默认设置以实现一般稳健性。

无论求解非线性问题的方法,迭代都接近解决方案。也就是说,重复地调用完全耦合或分离的方法,并逐渐收敛于非线性问题的溶液。由于完全耦合的方法包括未知之间的所有耦合术语,因此与分离的方法相比,它通常会收敛更鲁棒,并且在更少的迭代中收敛。但是,每次迭代都需要相对较高的内存和时间来解决,因此隔离的方法可以整体更快。对于求解非线性模型的一般指导,请参阅:知识库103:改善非线性固定模型的收敛。有关如何降低内存要求的指导,请参阅知识库1030:错误:“内存不足”

设置完全耦合或隔离的方法

要在目前使用隔离方法的模型中使用完全耦合的方法,请扩展研究>求解器配置设置和寻找要么固定求解器或者时间依赖的求解器特征。右键单击此功能并选择完全耦合并在求解器序列中出现新的完全耦合功能,以及隔离求解器会变得灰暗。

完全耦合的功能。

要设置隔离方法,请右键单击固定求解器或者时间依赖的求解器功能和选择隔离添加新的隔离功能。然后,右键单击隔离功能并添加至少两个隔离步骤并选择与您希望在该步骤中解决的物理学对应的变量。

隔离特征和隔离步骤子比例。

直接与迭代线性系统求解器

无论完全耦合或分离的方法如何,在每个迭代内都解决了线性化的等式系统。有两种算法可用于解决方程线性系统,直接的迭代求解器。

直接求解器具有最强大和一般的优点。它们具有需要相对大量的内存和时间,以及内存要求和解决方案时间随着问题大小而快速上升。迭代求解器需要更少的记忆和时间,并且这些比例随着模型大小的增加而慢。然而,迭代求解器较强,它们的融合将慢,以便所谓的病情问题。例如,当材料属性中具有非常高的对比度时,可能会出现不良状态,或者几何纵横比非常高。几乎没有调节的问题的示例包括非常长的细长梁或电流模型的结构弯曲,其中材料电导率不同的数量级不同。

COMSOL Multiphysics中可用的直接溶剂是Pardiso,188金宝搏优惠腮腺炎和线轴,以及密集的矩阵求解器。Pardiso或腮腺炎可能是最快的,线轴可能会使用最小的内存。一切都应该收敛到同样的答案。密集矩阵求解器仅用于边界元素方法模型。

有许多不同类型的迭代索引可用,每个迭代求解器都包含几种较低级别的设置。通常建议手动选择迭代求解器并调整这些设置。当在特定问题中已知一个适当的迭代解器件时,软件将自动将该组合作为选项。

也意识到,随着您执行网格细化研究(参见:知识库1261:执行网格细化研究)软件可以自动在直接和迭代求解器之间切换,由自由度的数量的次数。如果您手动更改了求解器设置,则可能需要手动切换到迭代求解器以进行更大的问题,如果这样做是有意义的。

选择直接或迭代求解器

要在直接或迭代线性系统求解器之间切换,请转到完全耦合特征(如果使用完全耦合的方法)或其中一个隔离步骤特征(如果正在使用隔离的方法),在其中一般的部分,改变线性求解器到其中一个可用选项。

在完全耦合特征内使用的迭代求解器。

在隔离步骤特征中使用的直接求解器。