mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Adding basic functionality from CV3D and creating initialPointsMethod runtime selectable method.
This commit is contained in:
@ -1,16 +1,25 @@
|
||||
//EXE_DEBUG = -DFULLDEBUG -g -O0
|
||||
EXE_FROUNDING_MATH = -frounding-math
|
||||
EXE_NDEBUG = -DNDEBUG
|
||||
|
||||
include $(GENERAL_RULES)/CGAL
|
||||
FFLAGS = -DCGAL_FILES='"${CGAL_PATH}/CGAL/files"'
|
||||
|
||||
EXE_INC = \
|
||||
${EXE_FROUNDING_MATH} \
|
||||
${EXE_NDEBUG} \
|
||||
${CGAL_INC} \
|
||||
-I$(WM_THIRD_PARTY_DIR)/mpfr-2.4.1 \
|
||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
||||
-I$(LIB_SRC)/meshTools/lnInclude \
|
||||
-I$(LIB_SRC)/dynamicMesh/lnInclude \
|
||||
-I$(LIB_SRC)/triSurface/lnInclude
|
||||
|
||||
EXE_LIBS = \
|
||||
-L$(BOOST_ROOT)/lib \
|
||||
-L$(WM_THIRD_PARTY_DIR)/mpfr-2.4.1/platforms/$(WM_ARCH)$(WM_COMPILER_ARCH)/lib \
|
||||
-lmeshTools \
|
||||
-ltriSurface
|
||||
|
||||
-ltriSurface \
|
||||
-ldynamicMesh \
|
||||
-lboost_thread-gcc43-mt-1_38 \
|
||||
-lmpfr
|
||||
|
||||
@ -10,6 +10,7 @@ EXE_INC = \
|
||||
${EXE_NDEBUG} \
|
||||
${CGAL_INC} \
|
||||
-I$(WM_THIRD_PARTY_DIR)/mpfr-2.4.1 \
|
||||
-I$(LIB_SRC)/conformalVoronoiMesh/lnInclude \
|
||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
||||
-I$(LIB_SRC)/meshTools/lnInclude \
|
||||
-I$(LIB_SRC)/dynamicMesh/lnInclude \
|
||||
@ -18,6 +19,7 @@ EXE_INC = \
|
||||
EXE_LIBS = \
|
||||
-L$(BOOST_ROOT)/lib \
|
||||
-L$(WM_THIRD_PARTY_DIR)/mpfr-2.4.1/platforms/$(WM_ARCH)$(WM_COMPILER_ARCH)/lib \
|
||||
-lconformalVoronoiMesh \
|
||||
-lmeshTools \
|
||||
-ltriSurface \
|
||||
-ldynamicMesh \
|
||||
|
||||
@ -31,6 +31,7 @@ Description
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "fvCFD.H"
|
||||
#include "conformalVoronoiMesh.H"
|
||||
|
||||
using namespace Foam;
|
||||
|
||||
@ -54,7 +55,7 @@ int main(int argc, char *argv[])
|
||||
)
|
||||
);
|
||||
|
||||
conformalVoronoiMesh mesh(cvMeshDict);
|
||||
conformalVoronoiMesh mesh(runTime, cvMeshDict);
|
||||
|
||||
while (runTime.run())
|
||||
{
|
||||
@ -69,8 +70,6 @@ int main(int argc, char *argv[])
|
||||
<< nl << endl;
|
||||
}
|
||||
|
||||
mesh.write();
|
||||
|
||||
Info << nl << "End\n" << endl;
|
||||
|
||||
return 0;
|
||||
|
||||
@ -32,14 +32,12 @@ geometry
|
||||
max ( 2 2 2);
|
||||
}
|
||||
|
||||
sphere
|
||||
dm_baffle.obj
|
||||
{
|
||||
type searchableSphere;
|
||||
centre (1.5 1.5 1.5);
|
||||
radius 1.03;
|
||||
type triSurfaceMesh;
|
||||
}
|
||||
|
||||
cubeMissingSkewedCorner_patched_refined.obj
|
||||
dangermouse.obj
|
||||
{
|
||||
type triSurfaceMesh;
|
||||
}
|
||||
@ -103,61 +101,75 @@ surfaceConformation
|
||||
// A faction of the local target cell size
|
||||
pointPairDistanceCoeff 0.05;
|
||||
|
||||
maxQuadAngle 125;
|
||||
|
||||
geometryToConformTo
|
||||
{
|
||||
// Independently specify the featureMethod of individual parts of the
|
||||
// geometry. Allows some parts to calculate their own features
|
||||
// (including analytical surfaces), others to be read from file.
|
||||
// Optional, if ommited, assume no features.
|
||||
|
||||
channelWalls
|
||||
{
|
||||
// Independently specify the feature characteristics of individual
|
||||
// parts of the geometry. Allows some parts to calculate their own
|
||||
// features (including analytical surfaces), others to be read from
|
||||
// file. Optional, if ommited, assume no features.
|
||||
features
|
||||
{
|
||||
// Included angle used to identify feature edges
|
||||
// 0 = no features, 180 = all features
|
||||
featureAngle 145;
|
||||
featureMethod extractFeatures;
|
||||
|
||||
maxQuadAngle 125;
|
||||
extractFeaturesDetails
|
||||
{
|
||||
// Included angle used to identify the surface's own feature
|
||||
// edges. 0 = no features, 180 = all features
|
||||
featureAngle 145;
|
||||
}
|
||||
}
|
||||
|
||||
sphere
|
||||
dm_baffle.obj
|
||||
{
|
||||
// Allows surfaces to be use to generate baffles, default to no.
|
||||
baffleSurface no;
|
||||
baffleSurface yes;
|
||||
|
||||
featureMethod featureEdgeMesh;
|
||||
|
||||
featureEdgeMeshDetails
|
||||
{
|
||||
featureEdgeMesh "LOCATION OF FEATUREEDGEMESH"
|
||||
}
|
||||
}
|
||||
|
||||
cubeMissingSkewedCorner_patched_refined.obj
|
||||
dangermouse.obj
|
||||
{
|
||||
// ignores whether or not the surface is closed when asked to
|
||||
// determine the volumeType of a point (whether it is inside or
|
||||
// outside). Intended to allow imperfect surface files to be
|
||||
// meshed. Only valid for triSurfaceMesh types.
|
||||
treatAsClosedSurface true;
|
||||
// Setting treatAsClosed true ignores whether or not the surface is
|
||||
// closed when asked to determine the volumeType of a point (whether
|
||||
// it is inside or outside). Intended to allow imperfect surface
|
||||
// files to be meshed. Only valid for triSurfaceMesh types, default
|
||||
// to false.
|
||||
treatAsClosed true;
|
||||
|
||||
features
|
||||
featureMethod triSurfaceFeatureSet;
|
||||
|
||||
trisurfacefeatureSetDetails
|
||||
{
|
||||
|
||||
featureSet #include "$FOAM_CASE/constant/triSurface/dangermouse.fSet"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
initialPositions
|
||||
initialPoints
|
||||
{
|
||||
initialPositionsModel uniformGrid;
|
||||
//initialPositionsModel pointsFile;
|
||||
minimumSurfaceDistance 0.0075;
|
||||
|
||||
uniformGridCoeffs
|
||||
initialPointsMethod uniformGrid;
|
||||
//initialPointsMethod pointsFile;
|
||||
|
||||
uniformGridDetails
|
||||
{
|
||||
initialCellSize 0.06;
|
||||
initialCellSize 0.005;
|
||||
randomiseInitialGrid yes;
|
||||
randomPerturbationCoeff 0.1;
|
||||
}
|
||||
|
||||
pointsFileCoeffs
|
||||
pointsFileDetails
|
||||
{
|
||||
pointsFile "40/internalDelaunayVertices"
|
||||
minimumSurfaceDistance 12.345;
|
||||
pointsFile "$FOAM_CASE/40/internalDelaunayVertices"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user