diff --git a/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/Make/options b/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/Make/options index 4a072aa593..03ee51a4f6 100644 --- a/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/Make/options +++ b/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/Make/options @@ -24,7 +24,7 @@ EXE_INC = \ -IPrintTable \ -I../vectorTools -EXE_LIBS = \ +LIB_LIBS = \ -lmeshTools \ -ledgeMesh \ -lfileFormats \ diff --git a/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshCalcDualMesh.C b/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshCalcDualMesh.C index 92ee53c1f2..d2aa6a8027 100644 --- a/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshCalcDualMesh.C +++ b/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshCalcDualMesh.C @@ -30,6 +30,7 @@ License #include "indexedCellChecks.H" #include "CGAL/Exact_predicates_exact_constructions_kernel.h" +#include "CGAL/Gmpq.h" // * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * * // diff --git a/applications/utilities/mesh/manipulation/checkMesh/checkGeometry.C b/applications/utilities/mesh/manipulation/checkMesh/checkGeometry.C index d964ac12cc..ef521a257d 100644 --- a/applications/utilities/mesh/manipulation/checkMesh/checkGeometry.C +++ b/applications/utilities/mesh/manipulation/checkMesh/checkGeometry.C @@ -803,7 +803,7 @@ Foam::label Foam::checkGeometry(const polyMesh& mesh, const bool allGeometry) if (allGeometry) { cellSet cells(mesh, "underdeterminedCells", mesh.nCells()/100); - if (mesh.checkCellDeterminant(true, &cells, mesh.geometricD())) + if (mesh.checkCellDeterminant(true, &cells)) { noFailedChecks++; diff --git a/etc/controlDict b/etc/controlDict index a47741c94c..a0b999f35b 100644 --- a/etc/controlDict +++ b/etc/controlDict @@ -994,7 +994,7 @@ DimensionSets acceleration acceleration [ m s^-2 ] 1.0; kinematicPressure kinematicPressure [ Pa density^-1 ] 1.0; - // Scaled units. Only allowed in dymensionedType (dimensionedScalar, + // Scaled units. Only allowed in dimensionedType (dimensionedScalar, // dimensionedVector etc.) and UniformDimensionedField, not // in DimensionedField or GeometricField cm cm [ m ] 1e-2; diff --git a/src/OpenFOAM/Make/files b/src/OpenFOAM/Make/files index c4f142b88c..03072a6f02 100644 --- a/src/OpenFOAM/Make/files +++ b/src/OpenFOAM/Make/files @@ -427,6 +427,10 @@ $(polyMesh)/polyMeshInitMesh.C $(polyMesh)/polyMeshClear.C $(polyMesh)/polyMeshUpdate.C +polyMeshCheck = $(polyMesh)/polyMeshCheck +$(polyMeshCheck)/polyMeshCheck.C +$(polyMeshCheck)/polyMeshTools.C + primitiveMesh = meshes/primitiveMesh $(primitiveMesh)/primitiveMesh.C $(primitiveMesh)/primitiveMeshCellCells.C @@ -447,9 +451,9 @@ $(primitiveMesh)/primitiveMeshCalcCellShapes.C primitiveMeshCheck = $(primitiveMesh)/primitiveMeshCheck $(primitiveMeshCheck)/primitiveMeshCheck.C -$(primitiveMeshCheck)/primitiveMeshCheckMotion.C $(primitiveMeshCheck)/primitiveMeshCheckPointNearness.C $(primitiveMeshCheck)/primitiveMeshCheckEdgeLength.C +$(primitiveMeshCheck)/primitiveMeshTools.C primitivePatch = $(primitiveMesh)/primitivePatch $(primitivePatch)/patchZones.C diff --git a/src/OpenFOAM/meshes/polyMesh/polyMesh.C b/src/OpenFOAM/meshes/polyMesh/polyMesh.C index 6388190bf6..abe537320f 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyMesh.C +++ b/src/OpenFOAM/meshes/polyMesh/polyMesh.C @@ -1129,7 +1129,7 @@ Foam::tmp Foam::polyMesh::movePoints if (debug) { // Check mesh motion - if (primitiveMesh::checkMeshMotion(points_, true)) + if (checkMeshMotion(points_, true)) { Info<< "tmp polyMesh::movePoints" << "(const pointField&) : " diff --git a/src/OpenFOAM/meshes/polyMesh/polyMesh.H b/src/OpenFOAM/meshes/polyMesh/polyMesh.H index 09c046feb8..e4c1897671 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyMesh.H +++ b/src/OpenFOAM/meshes/polyMesh/polyMesh.H @@ -34,6 +34,7 @@ SourceFiles polyMeshFromShapeMesh.C polyMeshIO.C polyMeshUpdate.C + polyMeshCheck.C \*---------------------------------------------------------------------------*/ @@ -224,7 +225,45 @@ private: cellList& cells ); + // Geometry checks + //- Check non-orthogonality + bool checkFaceOrthogonality + ( + const vectorField& fAreas, + const vectorField& cellCtrs, + const bool report, + const bool detailedReport, + labelHashSet* setPtr + ) const; + + //- Check face skewness + bool checkFaceSkewness + ( + const pointField& points, + const vectorField& fCtrs, + const vectorField& fAreas, + const vectorField& cellCtrs, + const bool report, + const bool detailedReport, + labelHashSet* setPtr + ) const; + + bool checkEdgeAlignment + ( + const pointField& p, + const bool report, + const Vector