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

[snappyHexMesh] Problems with Meshing!!

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   September 17, 2015, 13:30
Default Problems with Meshing!!
  #1
New Member
 
Berat Loshi
Join Date: Aug 2015
Posts: 25
Rep Power: 10
Berati26 is on a distinguished road
Im trying to Mesh my Geometry with snappyHexMesh but its definitely not working. When i put the comand: snappyHexMesh -overwrite on the terminal, it comes this Error:

Foam Fatal IO ERROR:

"ill defined primitiveEntry starting at keyword 'name' on line 47 and ending at line 335"

From function primitiveEntry::readEntry(const dictionary, Istream&)
in file InInclude/IOerror.C ar line 132

FOAM exiting
Error snappy.png

This is my snappyHexMesh file:



Pleas Help!
Attached Files
File Type: txt snappyHexMeshDict.txt (9.9 KB, 8 views)
Berati26 is offline   Reply With Quote

Old   September 17, 2015, 14:48
Default
  #2
Senior Member
 
Chris Sideroff
Join Date: Mar 2009
Location: Ottawa, ON, CAN
Posts: 434
Rep Power: 22
cnsidero is on a distinguished road
<strike>There's a semi-colon after the closing brace in the geometry dictionary. It should not be there.</strike>

Sorry the semi-colon after the geometry dictionary appears correct.

I believe the mistake is the missing semi-colons after the patch names. The first one has the correct syntax but the last four are missing it.

Code:
geometry
{
        Inlet.stl
        {type triSurfaceMesh; name Inlet;} //correct

	Outlet.stl
	{type triSurfaceMesh; name Outlet} //missing ;

	Zwande.stl
	{type triSurfaceMesh; name Zwande} //missing ;

	Becken.stl
	{type triSurfaceMesh; name Becken} //missing ;

	RUBvolumen.stl
	{type triSurfaceMesh; name RUBvolumen} //missing ;

};
cnsidero is offline   Reply With Quote

Old   September 18, 2015, 05:56
Default
  #3
New Member
 
Berat Loshi
Join Date: Aug 2015
Posts: 25
Rep Power: 10
Berati26 is on a distinguished road
Ou yes, thank you cnsidero! I put i now correctly. But now is comming the next Error. keyword feautures?
Berati26 is offline   Reply With Quote

Old   September 18, 2015, 05:57
Default
  #4
New Member
 
Berat Loshi
Join Date: Aug 2015
Posts: 25
Rep Power: 10
Berati26 is on a distinguished road
the error file!
Attached Images
File Type: png error2.png (34.5 KB, 16 views)
Berati26 is offline   Reply With Quote

Old   September 18, 2015, 07:55
Default
  #5
New Member
 
Berat Loshi
Join Date: Aug 2015
Posts: 25
Rep Power: 10
Berati26 is on a distinguished road
After running snappyHexMesh, processing time 30 minuts, --> Fatal ERROR :

Why i have 145 faces with face twist < 0,02 and the other errors?

can somebody help about this Error?
Attached Images
File Type: png Error3.png (42.8 KB, 9 views)
Berati26 is offline   Reply With Quote

Old   September 18, 2015, 11:09
Default
  #6
Member
 
DanielP
Join Date: Jan 2015
Posts: 33
Rep Power: 11
danielpiaget is on a distinguished road
Hello,

The error comes from not refining the relaxed part of the mesQualityControl dictionary. Add the following code inside (the brackets {}) the meshQualityControl :

relaxed
{
//- Maximum non-orthogonality allowed. Set to 180 to disable.
maxNonOrtho 80;
maxConcave 80;
}

Daniel
danielpiaget is offline   Reply With Quote

Old   September 18, 2015, 14:33
Default
  #7
Member
 
DanielP
Join Date: Jan 2015
Posts: 33
Rep Power: 11
danielpiaget is on a distinguished road
Hello again,

The projection of the Castellated Mesh created 145 faces that have a face twist < 0,02 in the Snap mesh. This is a quality criteria to check the quality of the mesh generated. The link below ( a presentaion from one of the creators of snappyHexMesh) explans how snappyHexMesh works,etc:

https://openfoamwiki.net/images/f/f0...SlidesOFW7.pdf

good luck,

Daniel
danielpiaget is offline   Reply With Quote

Old   September 24, 2015, 06:14
Default
  #8
New Member
 
Berat Loshi
Join Date: Aug 2015
Posts: 25
Rep Power: 10
Berati26 is on a distinguished road
Hallo Daniel, with the Changes i have make a mesh on the Surfaces of the Geometr. What i like to do is to Mesh the inside of the Pool. I put the Point on the Snappyhexmesh file outside the Geometry and inside the BlockMesh, but the Mesh ist on the faces. And this with Errors.
Berati26 is offline   Reply With Quote

Old   September 24, 2015, 06:54
Default
  #9
New Member
 
Berat Loshi
Join Date: Aug 2015
Posts: 25
Rep Power: 10
Berati26 is on a distinguished road
This is the Case, i dont now why its not doing what it have to do. The Geometry is in stl. the snappyhexmesh file its like i sow on examples, but if someone can look for a second, perhabs i cant see it .

Thanks a lot!
Attached Files
File Type: zip Becken 3.zip (13.4 KB, 1 views)
Berati26 is offline   Reply With Quote

Old   September 24, 2015, 11:32
Default
  #10
New Member
 
Berat Loshi
Join Date: Aug 2015
Posts: 25
Rep Power: 10
Berati26 is on a distinguished road
It is even possible to Mesh the inside Volumen of the Pool in 3D with snappyHexMesh?
Berati26 is offline   Reply With Quote

Old   September 28, 2015, 10:28
Default
  #11
Member
 
DanielP
Join Date: Jan 2015
Posts: 33
Rep Power: 11
danielpiaget is on a distinguished road
Hello,

I have added missing part in the snappyHexMeshdict so it's able to complete the mesh generation and place the locationInmesh point inside your STL surface.

Regarding your problem, I am not sure what exactly your computation domain needs to be. If you need to include the air above the pool, your Block mesh needs be modified to include the volume of air above the pool. In that case, the locationInMesh must be outside the STL , but inside the Block Mesh.

See below for the snappyHexMeshdict modifications:
-------------------------------------------------------------------------------------]
// Which of the steps to run
castellatedMesh true;
snap true;
addLayers true;


// Geometry. Definition of all surfaces. All surfaces are of class
// searchableSurface.
// Surfaces are used
// - to specify refinement for any mesh cell intersecting it
// - to specify refinement for any mesh cell inside/outside/near
// - to 'snap' the mesh boundary to the surface

geometry
{
Inlet.stl
{type triSurfaceMesh;
name Inlet;}

Outlet.stl
{type triSurfaceMesh; name Outlet;}

Zwande.stl
{type triSurfaceMesh; name Zwande;}

Becken.stl
{type triSurfaceMesh; name Becken;}


//- Refine a bit extra around the small centre hole

};



// Settings for the castellatedMesh generation.
castellatedMeshControls
{

// Refinement parameters
// ~~~~~~~~~~~~~~~~~~~~~

// If local number of cells is >= maxLocalCells on any processor
// switches from from refinement followed by balancing
// (current method) to (weighted) balancing before refinement.
maxLocalCells 1000000;

// Overall cell limit (approximately). Refinement will stop immediately
// upon reaching this number so a refinement level might not complete.
// Note that this is the number of cells before removing the part which
// is not 'visible' from the keepPoint. The final number of cells might
// actually be a lot less.
maxGlobalCells 2000000;

// The surface refinement loop might spend lots of iterations refining just a
// few cells. This setting will cause refinement to stop if <= minimumRefine
// are selected for refinement. Note: it will at least do one iteration
// (unless the number of cells to refine is 0)
minRefinementCells 10;

maxLoadUnbalance 0.10;

// Number of buffer layers between different levels.
// 1 means normal 2:1 refinement restriction, larger means slower
// refinement.
nCellsBetweenLevels 1;



// Explicit feature edge refinement
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

// Specifies a level for any cell intersected by its edges.
// This is a featureEdgeMesh, read from constant/triSurface for now.
features
(

);


// Surface based refinement
// ~~~~~~~~~~~~~~~~~~~~~~~~

// Specifies two levels for every surface. The first is the minimum level,
// every cell intersecting a surface gets refined up to the minimum level.
// The second level is the maximum level. Cells that 'see' multiple
// intersections where the intersections make an
// angle > resolveFeatureAngle get refined up to the maximum level.

refinementSurfaces
{
Inlet {level (0 0);}
Outlet {level (0 0);}
Zwande {level (3 3);}
Becken {level (4 4);}

}

resolveFeatureAngle 30;


// Region-wise refinement
// ~~~~~~~~~~~~~~~~~~~~~~

// Specifies refinement level for cells in relation to a surface. One of
// three modes
// - distance. 'levels' specifies per distance to the surface the
// wanted refinement level. The distances need to be specified in
// descending order.
// - inside. 'levels' is only one entry and only the level is used. All
// cells inside the surface get refined up to the level. The surface
// needs to be closed for this to be possible.
// - outside. Same but cells outside.

refinementRegions
{
Becken
{
mode distance;
levels ((1E15 3));
}
};


// Mesh selection
// ~~~~~~~~~~~~~~

// After refinement patches get added for all refinementSurfaces and
// all cells intersecting the surfaces get put into these patches. The
// section reachable from the locationInMesh is kept.
// NOTE: This point should never be on a face, always inside a cell, even
// after refinement.
// This is an outside point locationInMesh (-0.033 -0.033 0.0033);

locationInMesh (0.02 0.02 0.02); // Change the coordinates inside the mesh.

// Whether any faceZones (as specified in the refinementSurfaces)
// are only on the boundary of corresponding cellZones or also allow
// free-standing zone faces. Not used if there are no faceZones.
allowFreeStandingZoneFaces true;
}



// Settings for the snapping.
snapControls
{
//- Number of patch smoothing iterations before finding correspondence
// to surface
nSmoothPatch 3;

//- Relative distance for points to be attracted by surface feature point
// or edge. True distance is this factor times local
// maximum edge length.
tolerance 1.0;

//- Number of mesh displacement relaxation iterations.
nSolveIter 30;

//- Maximum number of snapping relaxation iterations. Should stop
// before upon reaching a correct mesh.
nRelaxIter 5;

// Feature snapping

//- Number of feature edge snapping iterations.
// Leave out altogether to disable.
nFeatureSnapIter 10;

//- Detect (geometric) features by sampling the surface
implicitFeatureSnap false;

//- Use castellatedMeshControls::features
explicitFeatureSnap true;

//- Detect features between multiple surfaces
// (only for explicitFeatureSnap, default = false)
multiRegionFeatureSnap false;
}



// Settings for the layer addition.
addLayersControls
{
// Are the thickness parameters below relative to the undistorted
// size of the refined cell outside layer (true) or absolute sizes (false).
relativeSizes true;

// Per final patch (so not geometry!) the layer information
layers
{
Becken
{
nSurfaceLayers 3;
}
}

// Expansion factor for layer mesh
expansionRatio 1.0;


// Wanted thickness of final added cell layer. If multiple layers
// is the thickness of the layer furthest away from the wall.
// See relativeSizes parameter.
finalLayerThickness 0.3;

// Minimum thickness of cell layer. If for any reason layer
// cannot be above minThickness do not add layer.
// See relativeSizes parameter.
minThickness 0.25;

// If points get not extruded do nGrow layers of connected faces that are
// also not grown. This helps convergence of the layer addition process
// close to features.
nGrow 0;


// Advanced settings

// When not to extrude surface. 0 is flat surface, 90 is when two faces
// are perpendicular
featureAngle 30;

// Maximum number of snapping relaxation iterations. Should stop
// before upon reaching a correct mesh.
nRelaxIter 5;

// Number of smoothing iterations of surface normals
nSmoothSurfaceNormals 1;

// Number of smoothing iterations of interior mesh movement direction
nSmoothNormals 3;

// Smooth layer thickness over surface patches
nSmoothThickness 10;

// Stop layer growth on highly warped cells
maxFaceThicknessRatio 0.5;

// Reduce layer growth where ratio thickness to medial
// distance is large
maxThicknessToMedialRatio 0.3;

// Angle used to pick up medial axis points
minMedianAxisAngle 90;

// Create buffer region for new layer terminations
nBufferCellsNoExtrude 0;


// Overall max number of layer addition iterations. The mesher will exit
// if it reaches this number of iterations; possibly with an illegal
// mesh.
nLayerIter 50;

// Max number of iterations after which relaxed meshQuality controls
// get used. Up to nRelaxIter it uses the settings in meshQualityControls,
// after nRelaxIter it uses the values in meshQualityControls::relaxed.
nRelaxedIter 20;
}



// Generic mesh quality settings. At any undoable phase these determine
// where to undo.
meshQualityControls
{
//--------------------------------------------------------------
//added parts ------------------------------------------------
//---------------------------------------------------------------
//- Maximum non-orthogonality allowed. Set to 180 to disable.
maxNonOrtho 65;

//- Max skewness allowed. Set to <0 to disable.
maxBoundarySkewness 20;
maxInternalSkewness 4;

//- Max concaveness allowed. Is angle (in degrees) below which concavity
// is allowed. 0 is straight face, <0 would be convex face.
// Set to 180 to disable.
maxConcave 80;

//- Minimum projected area v.s. actual area. Set to -1 to disable.
minFlatness 0.5;

//- Minimum pyramid volume. Is absolute volume of cell pyramid.
// Set to a sensible fraction of the smallest cell volume expected.
// Set to very negative number (e.g. -1E30) to disable.
minVol 1e-13;

minTetQuality 1e-30;

//- Minimum face area. Set to <0 to disable.
minArea -1;

//- Minimum face twist. Set to <-1 to disable. dot product of face normal
//- and face centre triangles normal
minTwist 0.05;

//- minimum normalised cell determinant
//- 1 = hex, <= 0 = folded or flattened illegal cell
minDeterminant 0.001;

//- minFaceWeight (0 -> 0.5)
minFaceWeight 0.05;

//- minVolRatio (0 -> 1)
minVolRatio 0.01;

//must be >0 for Fluent compatibility
minTriangleTwist -1;

//- if >0 : preserve single cells with all points on the surface if the
// resulting volume after snapping (by approximation) is larger than
// minVolCollapseRatio times old volume (i.e. not collapsed to flat cell).
// If <0 : delete always.
//minVolCollapseRatio 0.5;


// Advanced

//- Number of error distribution iterations
nSmoothScale 4;
//- amount to scale back displacement at error points
errorReduction 0.75;



// Optional : some meshing phases allow usage of relaxed rules.
// See e.g. addLayersControls::nRelaxedIter.
relaxed
{
//- Maximum non-orthogonality allowed. Set to 180 to disable.
maxNonOrtho 75;
}

//--------------------------------------------------------------
//added parts ------------------------------------------------
//---------------------------------------------------------------

}
debug 0;
mergeTolerance 1E-6;

// Advanced

// Write flags
//writeFlags
//(
// scalarLevels // write volScalarField with cellLevel for postprocessing
//layerSets // write cellSets, faceSets of faces in layer
// 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;


// ************************************************** *********************** //
danielpiaget is offline   Reply With Quote

Reply


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
[snappyHexMesh] Problems meshing an impeller with snappyHexMesh kandelabr OpenFOAM Meshing & Mesh Conversion 13 June 9, 2017 06:18
[GAMBIT] Problems while meshing a 3d CAD model CFDST ANSYS Meshing & Geometry 28 January 7, 2013 01:52
[ICEM] Problems with meshing of wind turbine Dosis ANSYS Meshing & Geometry 14 November 13, 2012 05:41
Problems of Icem meshing about Conical Forebody raja2010 ANSYS Meshing & Geometry 2 December 6, 2010 09:20
Problems with Meshing: Collapsed Cells Emmanuel Resch Siemens 1 July 30, 2007 03:02


All times are GMT -4. The time now is 22:40.