全国服务热线

178-9711-7595
案例展示
当前位置:首页>>案例展示
如何在 COMSOL 中快速比较两个模型文件的差异
作者:管理员   时间:2023-12-23 13:16:03  来源:本站   浏览433次

假设你正在重现一个模型,也许是 COMSOL Multiphysics® 软件及其附加产品随附的案例库中的一个案例模型,也许你想了解如何使用软件的特定功能创建一个模型。然而,当你发现你创建的模型可能与原模型的输出结果不一样时,该如何查找这两个模型之间的差异呢?接下来,我们将为您介绍一个在 COMSOL 软件中查找两个模型之间差异的方法。

使用模型文件比较工具

对于在 COMSOL 软件中构建的任一模型文件,你随时都可以使用比较工具对 COMSOL Desktop® 中的当前模型和文件系统中的其他任何 COMSOL 模型文件(在比较工具中,称为远程文件)进行比较。通过比较模型文件,你可以:

· 识别并纠正当前模型中的错误;

· 记录并检查开发过程中的两个模型之间的差异;

· 将两个模型文件之间的差异输出为一个 XML 文件,用于下一步处理。

工具栏中开发工具下的比较按钮。

图片1.png 

图片2.png

比较按钮位于开发工具工具栏最右边。在 Windows® 操作系统中该工具栏位于软件界面的顶部,在 Linux® 操作系统和 macOS 中,位于软件界面的底部。

首先,单击比较按钮,打开选择 App 窗口,从文件系统中选择任意一个 COMSOL Multiphysics 文件(MPH 文件)。然后,单击打开按钮打开该文件并进行比较。比较结果将显示在 COMSOL Desktop® 中的比较结果窗口。

图片3.png 

显示了本地文件和远程文件差异列表的比较结果窗口。

单击选定属性的详细比较按钮,或双击行打开比较属性窗口,其中包含关于比较的更多详细信息。

图片4.png 

比较属性窗口列出了属性值之间差异的更加详细的视图。在这个案例中,选择了边界差异。

两个模型之间的典型差异

在构建或重现 COMSOL Multiphysics 模型时,可能会出现几个错误使模型的结果与预期不同。例如,模型中会包含一些与预期值不符的源值、通量、材料属性或其他输入值。这可能是由于一些例如小数点位置错位等小错误引起的。根据变化值的用途和影响,可能会对结果产生巨大影响。

另外,还可能出现的错误是,在确定边界条件在何处有效时选择了错误的边界;也有可能是选择了错误的边界设置;或者,输入了来自某些模型文档中的几何实体编号,而当前模型的实际几何组件的编号可能与模型文档中的不匹配。这个不匹配可能是由构建模型几何结构时的某些更改引起的,也可能是添加的边界条件或域源的选择是空的,或者这些选择对于任何几何实体都未激活。在这种情况下,模型树中的节点会出现警告,并会提示选择为空,来帮助我们识别这些物理场节点。

图片5.png 

添加的物理场节点选择为空时的提示信息和警告。

对于这些情况(很容易发现的空选择除外),比较工具对于查找两个假定相同的 COMSOL 模型之间的确切差异非常有用。下面我们以 COMSOL Multiphysics 案例库中的汽车消声器模型为例,来介绍如何使用比较工具查找这种差异。

此模型包含了一个内燃机消声器中压力波的传播模拟。下图显示了一个案例模型的解以及两个新构建的模型的解,新构建的模型分别使用了错误的入口压力幅值和出口边界选择。

图片6.pngCOMSOL案例库中原始模型的声压解(左),入口压力选择错误的模型的声压解(中)和出口边界选择错误的模型的声压解(右)。


意外更改产生的差异

假设你在输入入口压力幅值参数值 p0 时,手指在键盘上不小心滑动了一下,将该值设置为 11Pa,而不是案例库中案例模型中的 1Pa。很显然,产生的压力将比预期高 11 倍,如上图(中)所示。此时,通过比较工具,比较结果窗口会显示下图所示的差异:

图片7.png 

比较结果窗口显示了本地文件与远程文件的入口压力幅值差异。

在上图所示的差异中,照相机位置(视图下方)和求解器的时间标记(求解器序列下方)处显示的一些其他差异可以忽略。

结果栏节点显示了绘图数据范围存在差异,这是变更解产生的影响。如果凭借经验或预感判断该差异可能与压力有关,那么比较结果的筛选图仅显示入口压力幅值的变化:

图片8.png

比较结果窗口中的差异筛选图,仅显示了入口压力幅值的差异。

将入口压力幅值的参数 11Pa 校正为 1Pa,然后重新求解模型,得出的解与案例库模型的解相同。

边界选择错误产生的差异

出口边界选择不正确也会导致差异产生。在图形窗口选择出口管的上边界时,可能会选择错误的边界。错误的选择会影响解,因此声压会略有变化,并且压力等值面具有不同的形状和位置,如上图右方所示。使用比较工具,比较结果窗口将显示以下差异:

22.png

选择平面波辐射为出口边界条件时,比较结果窗口显示了本地值和远程值之间的差异。

与之前的比较一样,在上面的差异中,可以忽略其他差异。如果你认为差异与某些选择有关,那么比较结果的筛选图仅显示出口边界选择的变化:

图片11.png

比较结果窗口中差异的筛选图,仅显示了选择出口边界的差异。

通过将出口的选择更改为仅包括边界 50,然后重新求解模型,将得到与案例库模型相同的解。

结论和后续操作

本文,我们介绍了如何使用 COMSOL Multiphysics 中的比较工具查找两个 COMSOL 模型文件之间的差异。对两个常见的错误建模示例,比较工具查找出了错误解与预期解的差异。通过纠正这些差异,我们可以重新构建模型并得到正确的解。