|
[Sponsors] |
[snappyHexMesh] Snapping issue at cell level change |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
March 10, 2023, 09:07 |
Snapping issue at cell level change
|
#1 |
New Member
Damien
Join Date: Jul 2012
Posts: 4
Rep Power: 13 |
Hello,
I am trying to mesh a table and a beam in an external flow (see first picture below). My table is thin (chord>2m, span~0.7m, thickness=~30mm, : it requires high splitting levels to castellated it properly in the vicinity of the leading edge/trailing edge/tip. But, in order to avoid a to fine mesh on the whole upper and lower side, I defined surfaces and a refinement level associated to these surfaces. The second picture shows the stl discretization. Unfortunately, the mesh projection step is ending badly as can be seen on the last picture below. If you have already encountered this problem or know how to solve it, please tell me. Thank you Damien ----------------- Here is my blockMeshDict: Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: v2012 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object blockMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // scale 1; xmin -4.0; xmax 8.0; ymin 4.5; ymax 5.5; zmin 1.0; zmax 12.0; vertices ( ($xmin $ymin $zmin) ($xmax $ymin $zmin) ($xmax $ymax $zmin) ($xmin $ymax $zmin) ($xmin $ymin $zmax) ($xmax $ymin $zmax) ($xmax $ymax $zmax) ($xmin $ymax $zmax) ); blocks ( hex (0 1 2 3 4 5 6 7) (48 4 44) simpleGrading (1 1 1) ); edges ( ); boundary ( Limit_ysplit_outer { type patch; faces ( (1 5 4 0) ); } Limit_ymax { type patch; faces ( (3 7 6 2) ); } Inlet { type patch; faces ( (0 4 7 3) ); } Outlet { type patch; faces ( (2 6 5 1) ); } Ground { type patch; faces ( (0 3 2 1) ); } Top { type patch; faces ( (4 5 6 7) ); } ); // ************************************************************************* // Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: v2012 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object snappyHexMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // Which of the steps to run castellatedMesh true; snap true; addLayers false; geometry { Beam_outer.stl { type triSurfaceMesh; name Beam_outer; regions { BEAM_WALL {name BEAM_WALL;} BEAM_YSPLIT {name BEAM_YSPLIT;} } }; Table_outer_splitted.stl { type triSurfaceMesh; name Table_outer; regions { TABLE_UPPER_L4 {name TABLE_UPPER_L4;} TABLE_UPPER_L3 {name TABLE_UPPER_L3;} TABLE_UPPER_L2 {name TABLE_UPPER_L2;} TABLE_UPPER_L1 {name TABLE_UPPER_L1;} TABLE_UPPER_L0 {name TABLE_UPPER_L0;} TABLE_LOWER_L4 {name TABLE_LOWER_L4;} TABLE_LOWER_L3 {name TABLE_LOWER_L3;} TABLE_LOWER_L2 {name TABLE_LOWER_L2;} TABLE_LOWER_L1 {name TABLE_LOWER_L1;} TABLE_LOWER_L0 {name TABLE_LOWER_L0;} TABLE_YSPLIT {name TABLE_YSPLIT;} TABLE_YMAX_TIP {name TABLE_YMAX_TIP;} TABLE_TE {name TABLE_TE;} TABLE_LE {name TABLE_LE;} } }; }; castellatedMeshControls { maxLocalCells 1000000; maxGlobalCells 20000000; minRefinementCells 20; maxLoadUnbalance 0.10; nCellsBetweenLevels 2; features ( {file "Table_outer.eMesh"; level 4;} {file "Beam_outer.eMesh"; level 4;} { file "Table_ytip_edges.eMesh"; levels ((0.01 5)); } { file "Beam_corner_edges1.eMesh"; levels ((0.025 5)); } { file "Beam_corner_edges2.eMesh"; levels ((0.028 5)); } { file "Beam_corner_edges3.eMesh"; levels ((0.025 5)); } { file "Beam_corner_edges4.eMesh"; levels ((0.028 5)); } ); resolveFeatureAngle 30; featureAngle 30; locationInMesh (0.1233 5.0846797987 3.33); allowFreeStandingZoneFaces true; refinementSurfaces { Beam_outer { level (4 4); regions { } } Table_outer { //Table1_5deg level (2 2); regions { TABLE_UPPER_L4 // Named region in the STL file { level (6 6); patchInfo {type wall;} } TABLE_LOWER_L4 // Named region in the STL file { level (6 6); patchInfo {type wall;} } TABLE_UPPER_L3 // Named region in the STL file { level (5 5); patchInfo {type wall;} } TABLE_LOWER_L3 // Named region in the STL file { level (5 5); patchInfo {type wall;} } TABLE_UPPER_L2 // Named region in the STL file { level (3 4); patchInfo {type wall;} } TABLE_LOWER_L2 // Named region in the STL file { level (3 4); patchInfo {type wall;} } TABLE_UPPER_L1 // Named region in the STL file { level (2 3); patchInfo {type wall;} } TABLE_LOWER_L1 // Named region in the STL file { level (2 3); patchInfo {type wall;} } TABLE_UPPER_L0 // Named region in the STL file { level (2 3); patchInfo {type wall;} } TABLE_LOWER_L0 // Named region in the STL file { level (2 3); patchInfo {type wall;} } TABLE_LE // Named region in the STL file { level (6 6); patchInfo {type wall;} } TABLE_TE // Named region in the STL file { level (6 6); patchInfo {type wall;} } TABLE_YMAX_TIP // Named region in the STL file { level (6 6); patchInfo {type wall;} } }//regions }//Table1_5deg } refinementRegions { } } snapControls { nSmoothPatch 10; tolerance 30.0; nSolveIter 10; nRelaxIter 7; nFeatureSnapIter 30; implicitFeatureSnap false; explicitFeatureSnap true; multiRegionFeatureSnap false; } addLayersControls { relativeSizes false; expansionRatio 1.2; firstLayerThickness 0.0005; minThickness 0.00005; nGrow 0; featureAngle 130; slipFeatureAngle 30; nRelaxIter 5; nSmoothSurfaceNormals 1; nSmoothNormals 3; nSmoothThickness 10; maxFaceThicknessRatio 0.5; maxThicknessToMedialRatio 0.3; minMedialAxisAngle 90; nBufferCellsNoExtrude 0; nLayerIter 15; layers { Beam_5deg_mesh { nSurfaceLayers 12; firstLayerThickness 0.001; } Table1_lower_wall // Named region in the STL file { nSurfaceLayers 12; firstLayerThickness 0.0005; } Table1_upper_wall // Named region in the STL file { nSurfaceLayers 12; firstLayerThickness 0.0005; } Table1_te_wall // Named region in the STL file { nSurfaceLayers 12; firstLayerThickness 0.0005; } Table1_le_wall // Named region in the STL file { nSurfaceLayers 12; firstLayerThickness 0.0005; } Table1_tip_wall // Named region in the STL file { nSurfaceLayers 12; firstLayerThickness 0.001; } } } meshQualityControls { #include "meshQualityDict" // Advanced //- Number of error distribution iterations nSmoothScale 1; //- Amount to scale back displacement at error points errorReduction 0.75; maxConcave 30.0; } // Advanced // Write flags writeFlags ( scalarLevels layerSets layerFields // write volScalarField for layer coverage ); // Merge tolerance. Is fraction of overall bounding box of initial mesh. // Note: the write tolerance needs to be higher than this. mergeTolerance 1e-6; // ************************************************************************* // |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[snappyHexMesh] Celllevel does not satisfy 2:1 constraint | zippy | OpenFOAM Meshing & Mesh Conversion | 0 | January 3, 2023 12:47 |
[snappyHexMesh] SHM Bad quality snapping/terracing | ryan55510 | OpenFOAM Meshing & Mesh Conversion | 0 | April 20, 2022 20:20 |
Parallel computing error using multiple nodes | Jingxue Wang | OpenFOAM Running, Solving & CFD | 11 | January 14, 2018 10:51 |
[snappyHexMesh] Edge Refinement | fracasce | OpenFOAM Meshing & Mesh Conversion | 3 | December 2, 2017 13:30 |
[Commercial meshers] Trimmed cell and embedded refinement mesh conversion issues | michele | OpenFOAM Meshing & Mesh Conversion | 2 | July 15, 2005 04:15 |