CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Meshing & Mesh Conversion

[snappyHexMesh] unsymmetric boundary layer extrusion on simple symmetric geometry

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   March 28, 2017, 09:23
Default unsymmetric boundary layer extrusion on simple symmetric geometry
  #1
Senior Member
 
Attesz's Avatar
 
Attesz
Join Date: Mar 2009
Location: Munich
Posts: 368
Rep Power: 17
Attesz is an unknown quantity at this point
Hello all,

I am preparing a simple pipe simulation using snappy. Even though the geometry is a simple open pipe, snappy can not extrude boundary layers on the walls near the inlet. If I choose different refinement levels and boundary layer final thickness, it gets either better, or worse.

Is this normal? If not, what am I doing wrong?
mesh.jpg

Code:
/*--------------------------------*- C++ -*----------------------------------*\
|       o          |                                                          |
|    o     o       | HELYX-OS                                                  |
|   o   O   o      | Version: v2.4.0                                           |
|    o     o       | Web:     http://www.engys.com                            |
|       o          |                                                          |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version 2.0;
    format ascii;
    class dictionary;
    location system;
    object snappyHexMeshDict;
}

    castellatedMesh true;
    snap true;
    addLayers true;
    geometry
    {
        inner_wrap.stl
        {
            type triSurfaceMesh;
            name inner_wrap;
            appendRegionName false;
        }

        external_walls.stl
        {
            type triSurfaceMesh;
            name external_walls;
            appendRegionName false;
        }

        edge_wall.stl
        {
            type triSurfaceMesh;
            name edge_wall;
            appendRegionName false;
        }

        internal_walls.stl
        {
            type triSurfaceMesh;
            name internal_walls;
            appendRegionName false;
        }

        INLET.stl
        {
            type triSurfaceMesh;
            name INLET;
            appendRegionName false;
        }

        cylinder_vr5
        {
            type searchableCylinder;
            point1 ( 0.0 -0.5 0.28 );
            point2 ( 0.0 0.55 0.28 );
            radius 0.2;
        }

        cylinder_vr6
        {
            type searchableCylinder;
            point1 ( 0.0 -0.3 0.28 );
            point2 ( 0.0 0.5 0.28 );
            radius 0.08;
        }

        cylinder_vr4
        {
            type searchableCylinder;
            point1 ( 0.0 -1.0 0.28 );
            point2 ( 0.0 0.6 0.28 );
            radius 0.5;
        }

        cylinder_vr3
        {
            type searchableCylinder;
            point1 ( 0.0 -2.0 0.28 );
            point2 ( 0.0 0.8 0.28 );
            radius 1.0;
        }

        cylinder_vr2
        {
            type searchableCylinder;
            point1 ( 0.0 -3.0 0.28 );
            point2 ( 0.0 1.0 0.28 );
            radius 2.0;
        }

        cylinder_vr1
        {
            type searchableCylinder;
            point1 ( 0.0 -5.0 0.28 );
            point2 ( 0.0 1.5 0.28 );
            radius 3.0;
        }

    }

    castellatedMeshControls
    {
        features
        (
        
        {
            file "external_walls_line.eMesh";
            levels ((0.0 6));
            refineFeatureEdgesOnly false;
        }

        
        {
            file "edge_wall_line.eMesh";
            levels ((0.0 9));
            refineFeatureEdgesOnly false;
        }

        
        {
            file "internal_walls_line.eMesh";
            levels ((0.0 7));
            refineFeatureEdgesOnly false;
        }

        
        {
            file "INLET_line.eMesh";
            levels ((0.0 7));
            refineFeatureEdgesOnly false;
        }

        );
        refinementSurfaces
        {
            external_walls
            {
                level ( 0 0 );
            }

            edge_wall
            {
                level ( 8 8 );
            }

            internal_walls
            {
                level (7 7 );
            }

            INLET
            {
                level ( 7 7 );
            }

        }

        refinementRegions
        {
            inner_wrap
            {
                mode inside;
                levels (( 1E5 7 ));
            }

            edge_wall
            {
                mode distance;
                levels (( 0.01 8 ) ( 0.05 7 ) ( 0.1 6 ) );
            }

            cylinder_vr5
            {
                mode inside;
                levels (( 1E5 5 ));
            }

            cylinder_vr6
            {
                mode inside;
                levels (( 1E5 6 ));
            }

            cylinder_vr4
            {
                mode inside;
                levels (( 1E5 4 ));
            }

            cylinder_vr3
            {
                mode inside;
                levels (( 1E5 3 ));
            }

            cylinder_vr2
            {
                mode inside;
                levels (( 1E5 2 ));
            }

            cylinder_vr1
            {
                mode inside;
                levels (( 1E5 1 ));
            }

        }

        locationInMesh ( 0.0 0.0 1.0 );
        maxLocalCells 1000000;
        maxGlobalCells 20000000;
        minRefinementCells 0;
        nCellsBetweenLevels 5;
        resolveFeatureAngle 30.0;
        allowFreeStandingZoneFaces true;
        planarAngle 30.0;
        maxLoadUnbalance 0.1;
    }

    snapControls
    {
        nSolveIter 300;
        nSmoothPatch 5;
        tolerance 5.0;
        nRelaxIter 8;
        nFeatureSnapIter 80;
        implicitFeatureSnap true;
        explicitFeatureSnap true;
        multiRegionFeatureSnap true;
    }

    addLayersControls
    {
        layers
        {
            external_walls
            {
                nSurfaceLayers 5;
                expansionRatio 1.25;
                finalLayerThickness 0.8;
            }

            edge_wall
            {
                 nSurfaceLayers 5;
                expansionRatio 1.25;
                finalLayerThickness 0.8;
            }

            internal_walls
            {
                nSurfaceLayers 5;
                expansionRatio 1.25;
                finalLayerThickness 0.8;
            }

        }

        relativeSizes true;
        expansionRatio 1.2;
        finalLayerThickness 0.6;
        minThickness 0.0001;
        nGrow 0;
        featureAngle 240.0;
        slipFeatureAngle 80.0;
        nRelaxIter 5;
        nSmoothSurfaceNormals 1;
        nSmoothNormals 3;
        nSmoothThickness 10;
        maxFaceThicknessRatio 0.5;
        maxThicknessToMedialRatio 0.3;
        minMedialAxisAngle 90;
        nBufferCellsNoExtrude 0;
        nLayerIter 50;
        nRelaxedIter 20;
        writeVTK false;
        noErrors false;
        layerRecovery 1;
        growZoneLayers false;
        projectGrownUp 0.0;
    }

    meshQualityControls
    {
        maxNonOrtho 65.0;
        maxBoundarySkewness 20;
        maxInternalSkewness 4;
        maxConcave 80.0;
        minFlatness 0.5;
        minVol 1.0E-13;
        minTetQuality 1.0E-15;
        minArea -1.0;
        minTwist 0.02;
        minDeterminant 0.001;
        minFaceWeight 0.05;
        minVolRatio 0.01;
        minTriangleTwist -1.0;
        nSmoothScale 4;
        errorReduction 0.75;
        relaxed
        {
            maxNonOrtho 75;
        }

    }

    debug 0;
    mergeTolerance 1.0E-6;
    autoBlockMesh false;
Attesz is offline   Reply With Quote

Old   April 25, 2017, 08:13
Default
  #2
Senior Member
 
KaLium's Avatar
 
Kal-El
Join Date: Apr 2017
Location: Finland
Posts: 150
Rep Power: 9
KaLium is on a distinguished road
I think that is quite common problem.

Snappy is not very competent for making boundary layers in corners or in complex geometry.
KaLium is offline   Reply With Quote

Reply

Tags
boundary layer, snappy hex mesh


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
My radial inflow turbine Abo Anas CFX 27 May 11, 2018 02:44
Error - Solar absorber - Solar Thermal Radiation MichaelK CFX 12 September 1, 2016 06:15
Low Mixing time Problem Mavier CFX 5 April 29, 2013 01:00
Questions about Boundary Layer Thickness and Turbulence Models famerfamer STAR-CCM+ 3 July 12, 2012 10:47
errors Fahad Main CFD Forum 0 March 23, 2004 14:20


All times are GMT -4. The time now is 16:51.