平台: 所有平台 版本: 所有版本

问题描述

我正在 COMSOL Multiphysics 中求解类似扩散的问题,发现在使用绝缘/对称条件定义的边界上,其通量法向分量的积分值与零相差较大。我还注意到,在施加通量的边界上,通量值似乎与施加的值不同。为什么会有这样的差异?

解决方法

您可能看到的是基于空间梯度计算的通量变量。空间梯度的计算是使用离散值完成的,其精度与网格相关。您设置的通量边界条件与求解后看到的情况之间存在差异,这主要归因于对空间梯度计算的后处理。换句话说,您使用所施加通量的精确值来计算解,由于通量值基于空间梯度计算,因此会产生后处理误差。最后的计算具有网格敏感性。通过细化网格可以提高匹配度,但在某些情况下,仍然存在很大的不确定性。对于大多数物理场,您应该查看预定义的精确边界通量变量。请注意,您只能在后处理工具中使用这些变量,在计算过程中,您无法在模型中访问或使用它们。

要使用精确的边界通量变量,请确保在物理场头节点的离散化栏中选中计算边界通量复选框。然后,COMSOL 会计算预定义的精确边界通量变量(将在后处理工具中提供),并存储这些变量和计算结果。您可以查看物理场接口文档,了解要使用的变量。请注意,对边界通量应用平滑处理选项(通常也会默认选择)可以提供接近奇点的更合适的通量值。注:要显示此选项,首先需要单击模型开发器顶部的显示按钮,然后选择离散化

如果您要对总通量(由边界上的表达式定义)进行积分,建议对与通量条件中指定的表达式相同的表达式进行积分。例如,在传热对流边界条件下,可以是 h*(To-T),其中 h 为传热系数。

为了使用另一种方法得到精确的通量,或在计算过程中在模型中使用此通量,可以使用弱边界约束。不过,这仅适用于因变量(例如 T 或 V)设为固定值(狄利克雷边界条件)的情况。该约束允许您访问边界上的附加变量,从而对通量进行精确积分。为了使用弱约束,您可以单击相关的边界条件,然后选中“约束设置”下的使用弱约束复选框。这同样仅适用于因变量(例如 T 或 V)设为固定值的边界。注:要查看弱约束选项和其他高级设置,首先需要单击模型开发器顶部的显示按钮,然后选择高级物理场选项。 此方法也适用于力学中的力计算。有关更多信息,请参阅 COMSOL Multiphysics Reference Manual 中的 Weak Constraints 一节。

另请参见

有关更多信息,您可以在“帮助”(在 COMSOL Multiphysics 中按 F1)中搜索 Computing Accurate Fluxes,也可以打开电子文档(在 COMSOL Multiphysics 中按 Ctrl+F1),然后转到 COMSOL Multiphysics Reference Manual> Building a COMSOL Model > Computing Accurate Fluxes 一节。

此外,您也可以在 Heat Transfer Module User's GuideHeat Transfer Theory > Theory for the Heat Transfer Interfaces > A Note on Heat Flux and Balance 章节中找到相关信息。