白茶脆脆鲨_ 2024-01-30 21:20 采纳率: 0%
浏览 84

openfoam中snappyhexmesh命令生成边界层失败是什么原因?

openfoam中使用snappyhexmesh命令但未生成边界层是什么原因?

FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      snappyHexMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

#includeEtc "caseDicts/mesh/generation/snappyHexMeshDict.cfg"

castellatedMesh on;
snap            on;
addLayers       on;

geometry
{
    cylinder
    {
        type searchableCylinder;
        point1 (0.5 0.5 0);
        point2 (0.5 0.5 0.1);
        radius 0.2;
    }

    
}

castellatedMeshControls
{
    features
    (
      
    );

    refinementSurfaces
    {
        cylinder
        {
            level (3 3);
            patchInfo { type wall; }
        }
    }

    refinementRegions
    {
        
    }

    locationInMesh (0.8 0 0.1);
}

snapControls
{
    explicitFeatureSnap    false;
    implicitFeatureSnap    true;
}

addLayersControls
{
    layers
    {
        "CAD.*"
        {
            nSurfaceLayers 5;
        }
    }

    relativeSizes       true;
    expansionRatio      1.2;
    finalLayerThickness 0.5;
    minThickness        1e-3;
}

meshQualityControls
{}

writeFlags
(
    noRefinement
    // scalarLevels
    // layerSets
    // layerFields
);

mergeTolerance 1e-4;


// ************************************************************************* //


想在长1m宽1m厚0.1m的长方体中心挖一个圆柱体,生成5层的边界层,但是paraview中未显示边界层?

img

img

img

img


按说在cavity文件中应该生成1、2、3三个文件,但是只生成了1和2,请问是为什么?

  • 写回答

2条回答 默认 最新

  • 叫兽-郭老师 新星创作者: Java技术领域 2024-01-30 21:21
    关注

    参考通义千问和郭老师的小迷弟雅思莫了-编写提供,主要是为了帮助您快速解决问题,如下回答,您可以参考下,如有问题,评论区留言。

    在OpenFOAM中,使用snappyHexMesh命令未能成功生成边界层可能有以下几个原因:

    1. 几何体定义问题:您提供的snappyHexMeshDict配置文件中,圆柱体的尺寸和位置可能并未正确覆盖到所期望生成边界层的区域。请检查点1、点2以及半径是否准确描述了圆柱体的位置和大小。

    2. 细化级别不足:在castellatedMeshControls/refinementSurfaces/cylinder/level设置中,指定的细化级别(3 3)可能不足以生成所需的边界层数量。根据您的需求,至少应生成5层边界层,可能需要增加这里的细化级别。

    3. addLayersControls设置:虽然您已经设置了nSurfaceLayers为5,但是需要注意的是,边界层的生成还受到其他参数的影响,如relativeSizes、expansionRatio、finalLayerThickness等。确保这些参数能够满足您对边界层厚度和数量的要求。

    4. 几何体与网格生成范围不匹配:检查几何体是否完全位于长方体内部,并且网格生成的范围是否包含了整个圆柱体表面。

    5. 输出文件读取错误:Paraview中未显示边界层可能是由于读取或过滤器设置不当造成的,请确保加载所有相关的场文件,并正确应用切面和颜色映射以查看边界层。

    6. 原始网格质量:初始网格的质量也可能影响边界层的成功生成,如果初始网格过于粗糙或存在质量问题,可能导致边界层生成失败。

    7. snappyHexMesh运行时错误:运行过程中可能出现错误导致提前终止,检查.log文件以获取有关可能存在的错误或警告信息。

    综上所述,请逐一排查上述可能性,调整相关参数后重新尝试生成网格及边界层。

    评论

报告相同问题?

问题事件

  • 创建了问题 1月30日