GMSH无法对体积内的元素进行网格化

时间:2019-02-27 16:01:25

标签: mesh

我正在尝试用箍筋和横梁制作一片梁的网格,但是我在箍筋方面遇到了一些麻烦,它在主要领域内,我不知道如何解决。我正在附加.geo文件,希望有人可以提供帮助。我不知道,也许还有其他方法可以对它进行网格化。

\begin{frame}
    \begin{columns}[onlytextwidth,T]
        \begin{column}{.45\textwidth}
            \tableofcontents[sections=1-2]
        \end{column}
        \begin{column}{.45\textwidth}
            \tableofcontents[sections=3-5]
        \end{column}
    \end{columns}
\end{frame}

1 个答案:

答案 0 :(得分:0)

一个不完整的答案;但是,我认为我确定了可能导致重大麻烦的问题:

圆形凸出部分(圆柱体)恰好在顶点处接触到箍筋,从而使基于OpenCASCADE的BooleanFragments操作变得复杂。

以下代码:

SetFactory("OpenCASCADE");

// Input
Rectangle(1) = {0, 0, 0, 300, 300, 0};
Disk(2) = {52, 52, 0, 10, 10};
Disk(3) = {52,248,0,10,10};
Disk(4) = {248,248,0,10,10};
Disk(5) = {248,52,0,10,10};
Rectangle(6) = {30,30,146,240,240,10};
Rectangle(7) = {40,40,146,220,220,10};


// Start Operations
s() = BooleanFragments{ Surface{1}; Delete; }{ Surface{2,3,4,5}; Delete;};
ext() = Extrude{0,0,300} {Surface{s()}; Layers{10}; Recombine;};
st() = BooleanFragments{ Surface{6}; Delete;}{Surface{7}; Delete;};
Recursive Delete {Surface{7}; }
Extrude{0,0,10} {Surface{22}; Layers{10}; Recombine;}
BooleanFragments{ Volume{5}; Delete;}{Volume{6}; Delete;}

// Mesh Options all elements needs to be Hexa
Mesh.RecombineAll = 2;

我将圆柱体稍微向内移动(50-> 52250-> 248)应该没有啮合问题。

enter image description here

但是,这会使气缸与回路断开连接,并彻底解决了问题。这是未修改的原始设置 中有问题的部分的放大图。

enter image description here

因此,在CAD工具中,您需要使用BooleanFragments自动处理这两个曲面(环和圆柱)的合并,这可能会出现问题,尤其是在必须浮动的情况下,点算术方面。