通过分区改善网格

2015年3月27日

通常,有限元建模的最乏味的步骤将您的CAD几何形状细分为有限元网格。这个步骤通常称为网格,有时可以完全自动化。但是,更常见的有限元分析师会希望半手动创建其网格。尽管这确实需要更多的工作,但有时这样做有很大的优势。在此博客条目中,我们将查看一种关键的手动网络融合技术之一:几何分区的概念。

网格算法如何工作?

首先,让我们对3D CAD几何形状在使用Comsol Multiphysics中的默认网格设置时如何进行概念介绍。默认网格设置将始终使用免费的四面体网格将任意音量离散为较小的元素。四面体元素(TET)是默认元素类型,因为任何几何形状,无论拓扑复杂,都可以细分并近似为TET。在本文中,我们只会讨论免费的四面体网格划分,尽管在某些情况下,其他类型的网格可以更合适,如所讨论的那样这里

描绘网格划分算法的示意图。
圆柱体(左)与表面上的三角形元件(灰色)啮合,四面体网格划分算法用TET(CYAN)细分了体积。为了清楚起见,省略了末端。

在概念层面上,四面体网格划分算法首先将三角形网格应用于您想要网格的所有面孔。然后将体积细分为四面体,使得尊重边界上的每个三角形,并且体积内部四面体的大小和形状符合指定的大小和生长标准。如果您收到错误消息“未能尊重几何面部的边界元素边缘”或类似,则是因为在此过程中四面体的形状过于失真。

当然,真正的算法只能在数学上说明,而不是用文字说明。但是,有一些情况可能会导致该算法一些困难,并且可以理解这些情况而不诉诸于任何方程式。如果:

  1. 该零件非常复杂,非常详细的区域与粗网格混合。
  2. 定义域的边缘和边界的长宽比非常大。

让我们看看每种情况的一些示例以及分区如何帮助我们。

简化复杂的几何形状

为了使我们开始,让我们考虑一个适度复杂的几何形状:螺旋几何原始。您当然可以想到比这更复杂的几何形状,但是我们可以说明从这种情况开始的许多概念。

继续并打开一个新的comsol模型文件,并创建一个带有十回合的螺旋,然后将其与默认设置隔离,如下所示。

夹住十旋螺旋原始。
带有相应的默认四面体网格的十旋螺旋原始。

当您将这个相对简单的部分进行融合时,您可能已经注意到,网格的步骤花费了相对较长的时间。因此,让我们看看分区如何简化这种几何形状。添加一个工作平面到您的几何序列,该序列将螺旋的长度一分为二,然后添加一个分割功能,使用工作平面作为分区对象。

在comsol多物理学中划分螺旋。
工作平面用于分区螺旋。

从上图中可以看到,最终的十转螺旋对象现在由二十个不同的域组成,每个域代表螺旋的半转。当您重新确定此模型时,您会发现缩短时间减少了,这很好。每个域代表一个比原始问题要容易得多的网格问题,此外,可以在多核计算机上并行分离域。

但是,您可能还会想到,我们现在有二十个不同的域,并且我们将此螺旋的六个表面细分为一百两个表面,包括内部边界,它们正在划分域。尽管现在这种几何形状的熔化速度要快得多,但我们添加了更多的域和边界,这些域和边界可能会分散注意力,因为我们应用了材料属性和边界条件。我们实际想要的是将分区的几何形状用于网格,但请忽略物理设置过程中的分区。

接下来要做的是添加虚拟操作,网格控制域手术。此功能将作为输入,将所有二十个域定义螺旋。输出似乎是我们的原始螺旋,当我们应用材料属性和物理设置时,将只有一个域和六个边界。

网格控制域。
网格控制域将仅出于网格划分的目的而指定这些域仅是不同的域。

现在,当您将这种几何形状隔离时,您会观察到您两者兼而有之。网格划分的时间相对较少,物理设置将易于应用。如果您还没有,请自己尝试一下!

我们在这里只查看了一个示例几何形状,但是在许多其他情况下,您还需要使用这种类型的分区。看起来像梳子或蛇形或物体的域,它们嵌入了许多孔,切口或域,所有当前情况都应考虑分区。另外,请记住,您不需要与飞机分开;您可以创建和使用其他对象进行分区。接下来,我们将以这样的示例来看一下。

高纵横比的几何形状

您正在使用的CAD几何形状通常包含一些边缘或表面,这些边缘或表面相对于定义域的其他边缘和表面大小不同。我们通常希望避免这种情况,因为大型领域上的小特征对于我们的分析目标可能并不那么重要。

我们已经研究了如何使用这些小型功能来使用虚拟操作以简化几何形状,但是如果这些小功能很重要,该怎么办?让我们研究如何根据下面显示的示例几何形状来帮助我们。

一个图像显示要分配的流域。
要网格的流域。三个小入口,甚至较小的圆角,从主管伸出。

您在上面看到的几何形状有一个大管,带有三个较小的管道从中伸出。两者之间的过渡的小圆角的尺寸比管道体积小100倍。如果我们将此域与默认网格设置相结合,则将在整个过程中使用相同的设置。但是,我们几乎肯定会希望在入口周围拥有较小的网眼尺寸。

默认网格将对模型中的所有元素使用一个设置。这在这里不是很有用。我们可以添加其他尺寸特征到网格,并将这些功能应用于小管周围的所有面,以调节这些边界处的元素大小,但这并不是最佳的。这是很多工作,可能不会给我们完全想要的东西。

我们还可以使用分区来定义一个少量的卷,我们希望在其中具有不同的网格设置。在下图中,已经包括了围绕每个较小管道并向管道延伸一定距离的其他圆柱体。

将其他圆柱体添加到域中。
其他域(线框)将用于分区蓝色域。

分区操作的结果。
分区操作的结果。

这些附加的气缸对象可用于划分原始建模域,如上所示。使用网格控制域,为了物理和材料设置的目的,将再次将此几何形状简化为单个域。但是,一旦到达网格划分步骤,就可以向网格序列添加大小功能,该功能将设置这些新分区域的元素大小设置。这使我们可以控制这些域中的元素大小,并使中间人更容易。

不同尺寸的功能。
可以将不同的大小特征应用于每个分区的几何形状。

当自动网格划分失败时怎么办?

我们在这里查看的几何形状可以用最小的努力或修改默认的网格划分设置进行融合,但并非总是如此。相对容易提出几何形状,没有网格划分算法将无法在合理的时间内啮合。在这种情况下我们能做什么?

答案(我敢肯定您已经猜到了)正在与其他概念进行分区:分裂和征服。当面对不啮合的域时,请使用分区将其分为两个域。尝试单独隔离每个。如果其中一个域没有网格,请继续对每个半部分进行分区。使用这种方法,您将很快放大原始域的问题区域。You can then decide if you want to simplify the problematic parts of the geometry via the usage of Virtual Operations, or you can use the techniques we’ve outlined here and mesh sub-domain by sub-domain, or you can even use some combination of the two.

您可以使用的另一种技术是在导入的几何形状的所有边界上应用自由的三角网格。表面网缝比体积网络更快,几乎总是会成功。视觉检查所得的表面网格。然后,通常会立即明显在模型中,小特征和有问题的区域所在的位置。一旦知道问题的位置,请删除自由的三角网格,因为免费的四面体网格划分算法通常需要调整边界上的网格,但是如果已经定义了表面网格,则不会这样做。

随着虚拟操作我们已经提到了用于简化网格划分的几何形状,您也可以使用维修和失败清理来自另一个来源的CAD数据的功能。与维修和失败操作相比,虚拟操作将简单地创建CAD几何形状的抽象,与维修和失败操作相比,该几何形状只能在Comsol软件内部使用,这些操作将直接修改CAD,并将创建可以写出的修改后的CAD表示。从comsol多物理学到其他软件包。

分区的汇总摘要

现在,我们研究了两个不同的代表性案例,其中默认网格设置不是最佳的 - 一个非常复杂的域以及具有极端纵横比的域。在这两种情况下,我们都可以将分区与网格控制域虚拟操作功能一起使用来简化网格划分操作。

我们还提出了一些处理案例的策略,其中几何不会与默认设置相关。还值得注意的是,这种情况在使用用于制造而不是分析目的的导入的CAD几何形状时最常出现。如果给您一个具有许多具有化妆品而不是功能性的功能的CAD文件,或者您可以合理确定不会影响问题的物理,请考虑在始发的CAD软件包中删除这些功能,然后才能到达COMSOL多物理。

在未来的博客文章中,我们还将考虑将分区与扫描的网格划分相结合,这是您使用Comsol Multiphysics时工具包中的另一种强大技术。敬请关注!

类别


评论(10)

发表评论
乐动体育app
加载...
Saleha Quadssia
Saleha Quadssia
2015年5月5日

嘿,
这是一篇很棒的帖子,我一直在尝试使用3D导入几何形状中的工作平面实现分区,但我最终以几何形状的一行,但仍然没有分割。因此,我决定尝试您在此处提出的简单螺旋模型以及同一问题。我最终以几何形状在工作平面的位置,但没有单独的域。我认为我缺少一些非常基本的东西。你能帮忙吗?
谢谢
问候,
Saleha

沃尔特·弗莱
沃尔特·弗莱
2015年5月5日

你好saleha,
这样的问题更适合于您的Comsol支持团队://www.dvdachetez.com/support/

Aditya日期
Aditya日期
2015年7月16日

Waka Waka

穆罕默德·阿尔玛贾迪(Mohammad Almajhadi)
穆罕默德·阿尔玛贾迪(Mohammad Almajhadi)
2015年10月5日

Saleha,
创建分区后,将“使用”选项更改为工作计划,然后按“构建所有”图标。

Malmajhadi

尼古拉·杨(Nicola Young)
尼古拉·杨(Nicola Young)
2016年2月17日

你好,

这种网格技术看起来非常有用。我正在尝试实现后者,您可以在进口周围划分网格。

目前尚不清楚如何做到这一点。我已经旋转了一个圆柱工作平面,对其进行了分区并将其设置为网状控制域。但是,该物体中的任何对象都在几何形状的最后一个构建阶段消失。

您能否解释一下如何在保持已经存在的域(在您的情况下)消失的同时实施网格分区?

非常感谢,
尼基

Stephan Piotrowski
Stephan Piotrowski
2020年8月7日

我认为这篇文章中缺少一些细节,因为我认为很难应用建议的策略。设置网格控制域似乎完全消除了几何形状。我现在正在使用此操作,我相信您必须检查“保留对象进行分区”选项,以便在分区后,您拥有分区域以及原始对象。奇怪的是,“分区域”操作似乎没有此选项。

Ravinder Banyal
Ravinder Banyal
2016年3月30日

你好
我有一个带有两个对象的3D几何形状。两个对象处于切线接触。一个对象是一个圆柱体,由另一个具有V形的对象支持。在2D(X-Y)飞机中,您可以将其视为字母“ O”掉落在字母“ V”的两条倾斜行之内。字母“ O”与字母“ V”的每条倾斜行进行了积分接触。我通过沿z方向挤出2D几何形状来获得我的3D几何形状(气缸+V块)。现在,2D中的点触点成为3D的线联系人。当我进行网格划分时,我会在错误消息中获取错误:“无法生成域网格。未能尊重几何表面上的边界元素边缘。”沿圆柱和V块之间的接触线的网格尺寸变得较小。 I do not really need small mesh along the contact lines. How can I overcome such mesh related issues where two objects/domains are in only in tangential contact?

布里奇特·坎宁安
布里奇特·坎宁安
2016年4月1日

你好,拉文德,

感谢您的评论。

有关您的建模工作的问题,请联系我们的支持团队。

在线支持中心://www.dvdachetez.com/support
电子邮件:support@comsol.com

Mahendar Kumbham
Mahendar Kumbham
2017年3月9日

非常有用的帖子。非常感谢您的参与。

Kamuran Turksoy
Kamuran Turksoy
2020年2月26日

当我使用网格控制域选项时,它将几何形状中的所有域结合在一起,并创建一个。即使我指定要合并的域,也会发生这种情况。

探索comsol乐动体育赛事播报博客