snappyHexMesh生成三维外形添加边界层的相关问题?



  • 本人最近刚开始使用SHM生成一个飞机的半模网格,发现边界层总是没法达到想要的效果。具体来说有曲率的物面上效果不好或根本长不出来,但是在比较平的物面上边界层可以长出来。我想要的效果是使得边界层尽量平铺物面长出来。


    如下图机头部分

    mesh.png

    机尾

    jiwei.png


    我调节了挺长时间参数,总是没有什么改进,请问各位这种问题有什么解决的办法?主要修改什么参数?
    贴上snappyHexMesh的配置,希望有哪位大神可以帮忙看看哪里有问题,我的surfaceFeature的 includedAngle取的是150°


    castellatedMesh true;
    snap            true;
    addLayers       true;
    
    geometry
    {
        aircraft
        {
            type triSurfaceMesh;
            file "aircraft.obj";
        }
        
        refinementBox 
        {
            type searchableBox;
            min (-30 -30 -30);
            max (45 0 30);
        }
    };
    
    castellatedMeshControls
    {
        maxLocalCells 5000000;
        maxGlobalCells 50000000;
        minRefinementCells 3;
        maxLoadUnbalance 0.10;
        nCellsBetweenLevels 3;//1;
    
        features
        (
            {
                file "aircraft.eMesh";
                level 8;
            }
        );
    
        refinementSurfaces
        {
            aircraft
            {
                level (6 8);
    
                patchInfo
                {
                    type wall;
                    inGroups (wingGroup);
                }
            }
        }
    
        resolveFeatureAngle 30;
    
        refinementRegions
        {
            refinementBox
            {
                mode inside;
                levels ((1E15 4));
            }
        }
        locationInMesh (-10 0 0);
    
        allowFreeStandingZoneFaces no;//true;
    }
    
    snapControls
    {
        nSmoothPatch 3;
        tolerance 1;
        nSolveIter 300;
        nRelaxIter 5;
        nFeatureSnapIter 10;
        implicitFeatureSnap true;//false;
        explicitFeatureSnap false;//true;
        multiRegionFeatureSnap true;//false;
    }
    
    addLayersControls
    {
        relativeSizes true;
    
        expansionRatio 1.2;
        finalLayerThickness 0.5;
        minThickness 0.05;
    
        layers
        {
            "aircraft.*"
            {
                nSurfaceLayers 10;
            }
        }
    
        nGrow 0;
        featureAngle 180;   //30;
    //    slipFeatureAngle 75;
    
        nSmoothSurfaceNormals 1;
        nSmoothNormals 3;
        nSmoothThickness 10;
    
        maxFaceThicknessRatio 0.5;
    
        minMedianAxisAngle 80;//90;
        maxThicknessToMedialRatio 0.3;
    
        nBufferCellsNoExtrude 0;
        nLayerIter 100;
    
        meshQualityControl::relaxed;
        nRelaxedIter 20;
        nRelaxIter 8;
    }
    
    meshQualityControls
    {
        maxNonOrtho 55;
        maxBoundarySkewness 20;
        maxInternalSkewness 4;
        maxConcave 80;
        minVol 1e-13;
        minArea 1e-13;  //-1;
        minTetQuality 1e-30;    //1e-15;
        minTwist 0.05;//0.02;
        minDeterminant 0.001;
        minFaceWeight 0.05;//0.02;
        minVolRatio 0.01;//-0.01;
        minTriangleTwist -1;
    
        nSmoothScale 4;
        errorReduction 0.75;
    
        relaxed
        {
            maxNonOrtho 65;
        }
    }
    
    debug 0;
    mergeTolerance 0.001;
    
    


  • 图和排版很不错,和酷炫。好多人贴图贴代码都要我亲手修改。
    不过这方面我也没有一点就透的经验,只能多次调试。如果最后搞定了感谢分享经验
    另外,ESI-OpenCFD那面snappyHexMesh更屌一些。



  • 谢谢李老师的回复,我去试一下ESI的SHM。
    目前看来如果将质量控制降低一些,尤其是对正交性要求降低,边界层看上去会好一点。但是我之所以用SHM,就是因为它可以一开始就将网格质量直接作为控制参数。:xinlei:


Log in to reply
 

CFD中文网 2016 - 2020 | 京ICP备15017992号-2