EGajetti |
January 2, 2023 04:47 |
Patches removed because to zero-size
3 Attachment(s)
Hello everybody,
I'm trying a multi region mesh, where I have a solid part and a fluid part defined with two different .stl with patches.
I define cellZones and faceZones for the two parts so to use splitMeshRegions.
However, at the end of snappyHexMesh, all the patches are removed with the following warning:
"Removing zero-sized patches".
This is my snappyHexMeshDict:
Code:
/*--------------------------------*- C++ -*----------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Version: 8
\\/ M anipulation |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object snappyHexMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#includeEtc "caseDicts/mesh/generation/snappyHexMeshDict.cfg"
castellatedMesh true;
snap true;
addLayers false;
geometry
{
solido_semplice_patch.stl
{
type triSurfaceMesh;
name solidoSemplice;
regions
{
solido{name contact_solido;
type wall;}
top{name topWall;
type wall;}
bottom{name bottomWall;
type wall;}
}
}
fluido_semplice_patch.stl
{
type triSurfaceMesh;
name fluidoSemplice;
regions
{
fluido{name contactFluido;
type wall;}
inlet{name entrata;
type patch;}
outlet{name uscita;
type patch;}
}
}
};
castellatedMeshControls
{
// Refinement Parameters
maxLocalCells 10000000;
maxGlobalCells 50000000;
minRefinementCells 0;
maxLoadUnbalance 0.10;
nCellsBetweenLevels 2;
// Locale curvature and feature angle refinement
resolveFeatureAngle 15;
planarAngle 30;
features
(
);
refinementSurfaces
{
solidoSemplice
{
level (2 2);
faceZone solidoSemplice;
cellZone solidoSemplice;
cellZoneInside insidePoint;
insidePoint (0.0 0.006 0);
}
fluidoSemplice
{
level (2 2);
faceZone fluidoSemplice;
cellZone fluidoSemplice;
cellZoneInside insidePoint;
insidePoint (0.0 0.0 0.000);
}
}
refinementRegions
{
}
locationInMesh (0 0 0);
allowFreeStandingZoneFaces true;
/*
faceZoneControls
{
solido_to_fluido
{
patchInfo
{
type patch;
}
faceType baffle;
}
fluido_to_solido
{
patchInfo
{
type patch;
}
faceType baffle;
}
}
*/
}
snapControls
{
// Number of patch smoothing iterations before finding correspondence to surface
nSmoothPatch 3;
// Maximum relative distance for points to be attracted by surface.
// True distance is this factor times local maximum edge length.
//Note: changed(corrected) w.r.t 17x! (17x used 2* tolerance)
tolerance 2.0;
// Number of mesh displacement relaxation iterations.
nSolveIter 20;
// Maximum number of snapping relaxation iterations.
// Should stop before upon reaching a correct mesh.
// Increase this value to improve the quality of the body fitted mesh.
nRelaxIter 20;
// Feature snapping
// Number of feature edge snapping iterations.
// Leave out altogether to disable.
// Increase this value to improve the quality of the edge features.
nFeatureSnapIter 15;
// Detect (geometric only) features by sampling the surface
// (default=false).
implicitFeatureSnap false;
// Use castellatedMeshControls::features (default = true)
explicitFeatureSnap true;
// Detect features between multiple surfaces
// (only for explicitFeatureSnap, default = false)
multiRegionFeatureSnap true;
}
addLayersControls
{
relativeSizes true;
expansionRatio 1.2;
finalLayerThickness 0.5;
minThickness 1e-3;
layers
{
}
// Advanced settings
nGrow 0;
featureAngle 130;
maxFaceThicknessRatio 0.5;
nSmoothSurfaceNormals 1;
nSmoothThickness 10;
minMedianAxisAngle 90;
maxThicknessToMedialRatio 0.3;
nSmoothNormals 3;
slipFeatureAngle 30;
nRelaxIter 5;
nBufferCellsNoExtrude 0;
nLayerIter 50;
nRelaxedIter 20;
}
meshQualityControls
{
maxNonOrtho 50;
maxBoundarySkewness 20;
maxInternalSkewness 4;
maxConcave 80;
minVol 1.00E-16;
minTetQuality 1e-12;
minArea -1;
minTwist 0.05;
minDeterminant 0.001;
minFaceWeight 0.05;
minVolRatio 0.01;
minTriangleTwist -1;
minFlatness 0.5;
nSmoothScale 4;
errorReduction 0.75;
}
mergeTolerance 1e-6;
// ************************************************************************* //
And this is my log.snappyHexMesh:
Code:
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Version: 8
\\/ M anipulation |
\*---------------------------------------------------------------------------*/
Build : 8-1c9b5879390b
Exec : snappyHexMesh -parallel -noFunctionObjects -overwrite
Date : Dec 23 2022
Time : 18:41:50
Host : "server1"
PID : 7783
I/O : uncollated
Case : /mnt/d/OpenFOAM/noTPMS
nProcs : 6
Slaves :
5
(
"server1.7784"
"server1.7785"
"server1.7786"
"server1.7787"
"server1.7788"
)
Pstream initialized with:
floatTransfer : 0
nProcsSimpleSum : 0
commsType : nonBlocking
polling iterations : 0
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 10)
allowSystemOperations : Allowing user-supplied system call operations
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time
Create mesh for time = 0
Read mesh in = 0.01 s
Overall mesh bounding box : (-0.008 -0.008 -0.009) (0.008 0.008 0.009)
Relative tolerance : 1e-06
Absolute matching distance : 2.891366459e-08
Reading refinement surfaces.
Read refinement surfaces in = 0.02 s
Reading refinement shells.
Read refinement shells in = 0 s
Setting refinement level of surface to be consistent with shells.
Checked shell refinement in = 0 s
Reading features.
Read features in = 0 s
Determining initial surface intersections
-----------------------------------------
Edge intersection testing:
Number of edges : 14656
Number of edges to retest : 14656
Number of intersected edges : 1704
Calculated surface intersections in = 0 s
Initial mesh : cells:4608 faces:14656 points:5491
Cells per refinement level:
0 4608
Adding patches for surface regions
----------------------------------
Patch Type Region
----- ---- ------
solidoSemplice:
1 wall bottomWall
2 wall bottomWall_slave
3 wall contact_solido
4 wall contact_solido_slave
5 wall topWall
6 wall topWall_slave
fluidoSemplice:
7 wall contactFluido
8 wall contactFluido_slave
9 wall entrata
10 wall entrata_slave
11 wall uscita
12 wall uscita_slave
Added patches in = 0.02 s
...
...
Removing zero-sized patches:
bottomWall type wall at position 1
bottomWall_slave type wall at position 2
contact_solido type wall at position 3
contact_solido_slave type wall at position 4
topWall type wall at position 5
topWall_slave type wall at position 6
contactFluido type wall at position 7
contactFluido_slave type wall at position 8
entrata type wall at position 9
entrata_slave type wall at position 10
uscita type wall at position 11
uscita_slave type wall at position 12
Snapped mesh : cells:125960 faces:401284 points:149373
Cells per refinement level:
0 584
1 18880
2 106496
Writing mesh to time constant
Wrote mesh in = 0.25 s.
Mesh snapped in = 3.4 s.
Checking final mesh ...
Checking faces in error :
non-orthogonality > 50 degrees : 0
faces with face pyramid volume < 1e-16 : 0
faces with face-decomposition tet quality < 1e-12 : 0
faces with concavity > 80 degrees : 0
faces with skewness > 4 (internal) or 20 (boundary) : 0
faces with interpolation weights (0..1) < 0.05 : 0
faces with volume ratio of neighbour cells < 0.01 : 0
faces with face twist < 0.05 : 0
faces on cells with determinant < 0.001 : 0
Finished meshing without any errors
Finished meshing in = 7.33 s.
End
Finalising parallel run
I think the problem lies in the fact that snappy maintains also the leaving between the stl and the residual blockMesh as region.
I also attach pictures of the domain.
How can I do to fix that issue?
Thank in advance,
Greetings,
Eleonora
|